[FFmpeg-devel] [PATCH] libtheoraenc: Set encoding speed level from compression_level
Michael Niedermayer
michael at niedermayer.cc
Sat Jul 19 00:45:15 EEST 2025
Hi Bernat
On Tue, Jul 15, 2025 at 07:42:16PM +0200, bernat.arlandis at gmail.com wrote:
> From: Bernat Arlandis <berarma at hotmail.com>
>
> ---
> libavcodec/libtheoraenc.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/libavcodec/libtheoraenc.c b/libavcodec/libtheoraenc.c
> index eb94458639..ac6653fac8 100644
> --- a/libavcodec/libtheoraenc.c
> +++ b/libavcodec/libtheoraenc.c
> @@ -244,6 +244,17 @@ static av_cold int encode_init(AVCodecContext* avc_context)
> return AVERROR_EXTERNAL;
> }
>
> + // Set encoding speed
> + if (avc_context->compression_level != FF_COMPRESSION_DEFAULT) {
> + int max_speed_level;
> + int speed_level = avc_context->compression_level;
> + th_encode_ctl(h->t_state, TH_ENCCTL_GET_SPLEVEL_MAX, &max_speed_level, sizeof(max_speed_level));
> + if (speed_level > max_speed_level) {
> + speed_level = max_speed_level;
> + }
> + th_encode_ctl(h->t_state, TH_ENCCTL_SET_SPLEVEL, &speed_level, sizeof(speed_level));
> + }
If you want to, you can add a AVOption table with options matching the names
of libtheoraenc
See any other encoder that uses AVOptions
If the intend is to use compression_level instead, thats ok too and
ill apply the patch as is then
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
The real ebay dictionary, page 2
"100% positive feedback" - "All either got their money back or didnt complain"
"Best seller ever, very honest" - "Seller refunded buyer after failed scam"
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20250718/d72b4449/attachment.sig>
More information about the ffmpeg-devel
mailing list