[FFmpeg-devel] [PATCH v3 1/2] avcodec/aac_ac3_parser: simplify

Nicolas Gaullier nicolas.gaullier at cji.paris
Tue Jul 15 10:38:53 EEST 2025


On 7/12/25 12:52, Michael Niedermayer wrote:
> On Fri, Jul 11, 2025 at 11:54:29AM +0200, Nicolas Gaullier wrote:
>> Remove unused USAC/ADTS code: ff_adts_header_parse() parse the
>> object_type from a 2 bits field.
>> See also 696ea1c2236842572df88d573e24a39be3f19c98.
>>
>> Use ff_adts_header_parse_buf() wrapper to simplify as GetBitContext is
>> no longer needed (it was introduced for USAC).
>>
>> Partially reverts 64bb91fd3b5a00a8849531c7e8dd207f2a626096.
>>
>> Signed-off-by: Nicolas Gaullier <nicolas.gaullier at cji.paris>
>> ---
>>   libavcodec/aac_ac3_parser.c | 7 +++----
>>   1 file changed, 3 insertions(+), 4 deletions(-)
>>
>> diff --git a/libavcodec/aac_ac3_parser.c b/libavcodec/aac_ac3_parser.c
>> index e10ce13a3b..b49ce0277c 100644
>> --- a/libavcodec/aac_ac3_parser.c
>> +++ b/libavcodec/aac_ac3_parser.c
>> @@ -147,15 +147,14 @@ get_next:
>>           } else {
>>   #if CONFIG_AAC_PARSER
>>               AACADTSHeaderInfo hdr;
>> -            GetBitContext gb;
>>
>> -            init_get_bits8(&gb, buf, buf_size);
>>               if (buf_size < AV_AAC_ADTS_HEADER_SIZE ||
>> -                ff_adts_header_parse(&gb, &hdr) < 0)
>> +                ff_adts_header_parse_buf(buf, &hdr) < 0)
>>                   return i;
>>
>>               avctx->profile = hdr.object_type - 1;
>> -            s1->key_frame = (avctx->profile == AV_PROFILE_AAC_USAC) ? get_bits1(&gb) : 1;
>> +            /* ADTS does not support USAC */
>> +            s1->key_frame = 1;
>>               bit_rate = hdr.bit_rate;
> Are these 2 changes related ?
> if not they are maybe better in 2 seperate patches

They are related in that they both are partial revert of the same commit,
and they both apply to the same code section (so order matter).
I split it into two patches as I think it makes it clearer.

Nicolas



More information about the ffmpeg-devel mailing list