summaryrefslogtreecommitdiff
path: root/src/codec/ffmpeg
diff options
context:
space:
mode:
authorAndrew Opalach <andrew@akon.city> 2026-08-26 17:56:52 -0400
committerAndrew Opalach <andrew@akon.city> 2026-08-26 17:56:52 -0400
commit197d41a3e23cab35848f623c6133baccc62aacbe (patch)
tree04943c1de9653de53615e10ced1eab07c2562325 /src/codec/ffmpeg
parent6094c907b26e21f13373bae6bf3306dbae40af3c (diff)
downloadcamu-197d41a3e23cab35848f623c6133baccc62aacbe.tar.gz
camu-197d41a3e23cab35848f623c6133baccc62aacbe.tar.bz2
camu-197d41a3e23cab35848f623c6133baccc62aacbe.zip
OSD stuff and Android fixes
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/codec/ffmpeg')
-rw-r--r--src/codec/ffmpeg/common.c2
-rw-r--r--src/codec/ffmpeg/common.h2
-rw-r--r--src/codec/ffmpeg/encoder.c7
3 files changed, 5 insertions, 6 deletions
diff --git a/src/codec/ffmpeg/common.c b/src/codec/ffmpeg/common.c
index 5e10bcb..bda7a18 100644
--- a/src/codec/ffmpeg/common.c
+++ b/src/codec/ffmpeg/common.c
@@ -17,7 +17,7 @@ s64 camu_ff_get_frame_duration(AVFrame *frame)
}
// https://code.videolan.org/videolan/libplacebo/-/blob/a7a18af88ff0a17c04840dcb3246047bb6b46df3/src/include/libplacebo/utils/libav_internal.h#L854
-const u8 *camu_ff_get_stream_side_data(const AVStream *stream, enum AVPacketSideDataType type)
+const u8 *camu_ff_get_stream_side_data(AVStream *stream, enum AVPacketSideDataType type)
{
#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(60, 15, 100)
AVCodecParameters *codecpar = stream->codecpar;
diff --git a/src/codec/ffmpeg/common.h b/src/codec/ffmpeg/common.h
index b49ce88..5a0be3d 100644
--- a/src/codec/ffmpeg/common.h
+++ b/src/codec/ffmpeg/common.h
@@ -10,7 +10,7 @@
s64 camu_ff_get_frame_duration(AVFrame *frame);
-const u8 *camu_ff_get_stream_side_data(const AVStream *stream, enum AVPacketSideDataType type);
+const u8 *camu_ff_get_stream_side_data(AVStream *stream, enum AVPacketSideDataType type);
const u8 *camu_ff_get_frame_side_data(AVFrame *frame, enum AVFrameSideDataType type);
// userdata, level, fmt, args
diff --git a/src/codec/ffmpeg/encoder.c b/src/codec/ffmpeg/encoder.c
index 641acc5..7824461 100644
--- a/src/codec/ffmpeg/encoder.c
+++ b/src/codec/ffmpeg/encoder.c
@@ -44,10 +44,9 @@ bool camu_ff_encoder_init(struct camu_ff_encoder *enc, char *encoder_name, char
enc->codec_context->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
}
+ u32 kbps = bitrate / 1000;
AVDictionary *opts = NULL;
- char kbps[16];
- al_snprintf(kbps, sizeof(kbps), "%uk", bitrate / 1000);
- av_dict_set(&opts, "b", kbps, 0);
+ av_dict_set(&opts, "b", al_print_s32(kbps)->data, 0);
av_dict_set(&opts, "vbr", "off", 0);
av_dict_set(&opts, "compression_level", "10", 0);
av_dict_set(&opts, "frame_duration", "20", 0);
@@ -59,7 +58,7 @@ bool camu_ff_encoder_init(struct camu_ff_encoder *enc, char *encoder_name, char
}
av_dict_free(&opts);
- log_info("Encoder: %s (%s) %sbps.", codec->name,
+ log_info("Encoder: %s (%s) %ubps.", codec->name,
codec->long_name ? codec->long_name : codec->name, kbps);
AVCodecContext *out_codec = enc->codec_context;