[FFmpeg-devel] [PATCH] aacdec: Allow SBR after DRC.

Alex Converse alex.converse at gmail.com
Fri Dec 9 02:18:28 EET 2016


On Thu, Dec 8, 2016 at 12:36 PM, Rostislav Pehlivanov
<atomnuker at gmail.com> wrote:
>
> On 8 December 2016 at 19:42, Alex Converse <alex.converse at gmail.com> wrote:
>>
>> On Thu, Dec 8, 2016 at 2:14 AM, Rostislav Pehlivanov
>> <atomnuker at gmail.com> wrote:
>> > On 7 December 2016 at 01:08, Alex Converse <alex.converse at gmail.com>
>> > wrote:
>> >
>> >> Fixes
>> >> https://www2.iis.fraunhofer.de/AAC/7.1auditionOutLeader_v2_rtb.mp4
>> >>
>> >> Reported-by: rcombs on IRC
>> >> ---
>> >>  libavcodec/aacdec_template.c | 6 ++++--
>> >>  1 file changed, 4 insertions(+), 2 deletions(-)
>> >>
>> >> diff --git a/libavcodec/aacdec_template.c
>> >> b/libavcodec/aacdec_template.c
>> >> index 8cfa34b..64d46e3 100644
>> >> --- a/libavcodec/aacdec_template.c
>> >> +++ b/libavcodec/aacdec_template.c
>> >> @@ -3038,8 +3038,10 @@ static int aac_decode_frame_int(AVCodecContext
>> >> *avctx, void *data,
>> >>              break;
>> >>          }
>> >>
>> >> -        che_prev       = che;
>> >> -        elem_type_prev = elem_type;
>> >> +        if (elem_type < TYPE_DSE) {
>> >> +            che_prev       = che;
>> >> +            elem_type_prev = elem_type;
>> >> +        }
>> >>
>> >>          if (err)
>> >>              goto fail;
>> >>
>> >
>> > I'm not quite following. So it prevents TYPE_DSE and above from getting
>> > into che_prev which goes into decode_extension_payload() which then
>> > decodes
>> > extensions. But DSE isn't the last in the enum, what about PCE, FIL and
>> > END
>> > elements?
>>
>> The actual use of elem_type_prev is to describe the element type of
>> che_prev, but che only updates for element types SCE, CPE, CCE, and
>> LFE (0, 1, 2, and 3). (che_prev is currently updated every element,
>> but if che isn't updated on an element then it's a noop.)
>>
>
> Thanks for the great explanation, now it all makes sense.
> Patch LGTM, feel free to push whenever you can.
>

Pushed


More information about the ffmpeg-devel mailing list