[FFmpeg-soc] [soc]: r5388 - in sbr-wip: . TODO aacsbr.c aacsbr.h aacsbrdata.h checkout.sh ffmpeg.diff

Alex Converse alex.converse at gmail.com
Sun Sep 27 20:53:09 CEST 2009


On Sun, Sep 27, 2009 at 10:12 AM, Robert Swain <robert.swain at gmail.com> wrote:
> 2009/9/27 Diego Biurrun <diego at biurrun.de>:
>> On Sat, Sep 26, 2009 at 04:59:27PM +0200, superdump wrote:
>>> +--- libavcodec/aac.c (revision 20025)
>>> ++++ libavcodec/aac.c (working copy)
>>> +@@ -101,7 +103,11 @@
>>> + static VLC vlc_scalefactors;
>>> + static VLC vlc_spectral[11];
>>> +
>>> ++extern av_cold void ff_aac_sbr_init();
>>> ++extern int ff_decode_sbr_extension(AACContext *ac, SpectralBandReplication *sbr,
>>> ++                                GetBitContext *gb, int crc, int cnt, int id_aac);
>>
>> These local declarations should be in a header file.
>
> I was going to put them in a header, but because of the dependency on
> definition of the AACContext and SpectralBandReplication structures,
> if I were to put them in aacsbr.h as I intended, it would introduce a
> circular dependency between aac.h and aacsbr.h.
>
> I could create another header file just for these, or stick them in
> aacsbrdata.h but that would be out of place for them. Suggestions
> welcome.
>

The sbr code (currently) only uses a handful of fields from the AAC
context. Perhaps it would be best to not have the sbre code depend on
the AAC context at all and make them arguments to
initialization/function calls. This will most likely be necessary to
implement BSAC+SBR, USAC, and MP3pro down the road.

Regards,

Alex Converse


More information about the FFmpeg-soc mailing list