[FFmpeg-devel] [PATCH]HE-AACv1 try 3 (all missing functionality added)
Alex Converse
alex.converse
Sun Feb 14 01:21:06 CET 2010
2010/2/12 Yuriy Kaminskiy <yumkam at mail.ru>:
> On 12.02.2010 23:15, Alex Converse wrote:
>> Notes:
>> ------------------------------------------------------------------------
>> diff --git a/libavcodec/aac.c b/libavcodec/aac.c
>> index 90581fc..460328f 100644
>> --- a/libavcodec/aac.c
>> +++ b/libavcodec/aac.c
>> @@ -1625,7 +1615,8 @@ static int decode_dynamic_range(DynamicRangeControl *che_drc,
>> ? *
>> ? * @return Returns number of bytes consumed
>> ? */
>> -static int decode_extension_payload(AACContext *ac, GetBitContext *gb, int cnt)
>> +static int decode_extension_payload(AACContext *ac, GetBitContext *gb, int cnt,
>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?int id, int tag)
>> ?{
>> ? ? ?int crc_flag = 0;
>> ? ? ?int res = cnt;
>> @@ -1633,7 +1624,18 @@ static int decode_extension_payload(AACContext *ac, GetBitContext *gb, int cnt)
>> ? ? ?case EXT_SBR_DATA_CRC:
>> ? ? ? ? ?crc_flag++;
>> ? ? ?case EXT_SBR_DATA:
>> - ? ? ? ?res = decode_sbr_extension(ac, gb, crc_flag, cnt);
>> + ? ? ? ?if (!ac->m4ac.sbr) {
>> + ? ? ? ? ? ?av_log(ac->avccontext, AV_LOG_ERROR, "SBR signaled to be not-present but was found in the bitstream.\n");
>> + ? ? ? ? ? ?skip_bits_long(gb, 8 * cnt - 4);
>> + ? ? ? ? ? ?return res;
>> + ? ? ? ?} else if (ac->m4ac.sbr == -1 && ac->output_configured == OC_LOCKED) {
>> + ? ? ? ? ? ?av_log(ac->avccontext, AV_LOG_ERROR, "Implicit SBR was found with a first occurrence after the first frame.\n");
>> + ? ? ? ? ? ?skip_bits_long(gb, 8 * cnt - 4);
>> + ? ? ? ? ? ?return res;
>> + ? ? ? ?} else {
>> + ? ? ? ? ? ?ac->m4ac.sbr = 1;
>> + ? ? ? ?}
>> + ? ? ? ?res = ff_decode_sbr_extension(ac, &ac->che[id][tag]->sbr, gb, crc_flag, cnt, id);
> does not this need get_che() too? I've cheched on one file (that failed on
> soc-svn before) - yep, same problem (sigsegv). Added attached patch (+ patch
> from issue1773, too lazy to check without) - seems work now. If you want - I'll
> upload audio-track.
>
Fixed differently.
More information about the ffmpeg-devel
mailing list