summaryrefslogtreecommitdiff
path: root/libavcodec/aacdec.c
Commit message (Collapse)AuthorAge
* Merge commit '2c6811397bdf13d43ca206e48d6d6da9c2cd47c6'Hendrik Leppkes2016-01-01
|\ | | | | | | | | | | | | * commit '2c6811397bdf13d43ca206e48d6d6da9c2cd47c6': lavc: add profiles to AVCodecDescriptor Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * aacdec: fix aac_static_table_init() prototypeAnton Khirnov2015-12-07
| |
| * aac: Make codec init run under ff_thread_onceDerek Buitenhuis2015-10-15
| | | | | | | | | | | | This makes AAC init threadsafe. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * aac: Make sure to set err on the failure pathLuca Barbato2015-08-23
| | | | | | | | Bug-Id: CID 1308153
* | aac: Make codec init run under ff_thread_onceDerek Buitenhuis2015-10-15
| | | | | | | | | | | | This makes AAC init threadsafe. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | avcodec/aacdec: Fix integer overflow in argument to ↵Michael Niedermayer2015-08-03
| | | | | | | | | | | | decode_audio_specific_config() Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '059a934806d61f7af9ab3fd9f74994b838ea5eba'Michael Niedermayer2015-07-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '059a934806d61f7af9ab3fd9f74994b838ea5eba': lavc: Consistently prefix input buffer defines Conflicts: doc/examples/decoding_encoding.c libavcodec/4xm.c libavcodec/aac_adtstoasc_bsf.c libavcodec/aacdec.c libavcodec/aacenc.c libavcodec/ac3dec.h libavcodec/asvenc.c libavcodec/avcodec.h libavcodec/avpacket.c libavcodec/dvdec.c libavcodec/ffv1enc.c libavcodec/g2meet.c libavcodec/gif.c libavcodec/h264.c libavcodec/h264_mp4toannexb_bsf.c libavcodec/huffyuvdec.c libavcodec/huffyuvenc.c libavcodec/jpeglsenc.c libavcodec/libxvid.c libavcodec/mdec.c libavcodec/motionpixels.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/noise_bsf.c libavcodec/nuv.c libavcodec/nvenc.c libavcodec/options.c libavcodec/parser.c libavcodec/pngenc.c libavcodec/proresenc_kostya.c libavcodec/qsvdec.c libavcodec/svq1enc.c libavcodec/tiffenc.c libavcodec/truemotion2.c libavcodec/utils.c libavcodec/utvideoenc.c libavcodec/vc1dec.c libavcodec/wmalosslessdec.c libavformat/adxdec.c libavformat/aiffdec.c libavformat/apc.c libavformat/apetag.c libavformat/avidec.c libavformat/bink.c libavformat/cafdec.c libavformat/flvdec.c libavformat/id3v2.c libavformat/isom.c libavformat/matroskadec.c libavformat/mov.c libavformat/mpc.c libavformat/mpc8.c libavformat/mpegts.c libavformat/mvi.c libavformat/mxfdec.c libavformat/mxg.c libavformat/nutdec.c libavformat/oggdec.c libavformat/oggparsecelt.c libavformat/oggparseflac.c libavformat/oggparseopus.c libavformat/oggparsespeex.c libavformat/omadec.c libavformat/rawdec.c libavformat/riffdec.c libavformat/rl2.c libavformat/rmdec.c libavformat/rtpdec_latm.c libavformat/rtpdec_mpeg4.c libavformat/rtpdec_qdm2.c libavformat/rtpdec_svq3.c libavformat/sierravmd.c libavformat/smacker.c libavformat/smush.c libavformat/spdifenc.c libavformat/takdec.c libavformat/tta.c libavformat/utils.c libavformat/vqf.c libavformat/westwood_vqa.c libavformat/xmv.c libavformat/xwma.c libavformat/yop.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * lavc: Consistently prefix input buffer definesVittorio Giovara2015-07-27
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'Michael Niedermayer2015-07-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'def97856de6021965db86c25a732d78689bd6bb0': lavc: AV-prefix all codec capabilities Conflicts: cmdutils.c ffmpeg.c ffplay.c libavcodec/8svx.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/adpcm.c libavcodec/alac.c libavcodec/atrac3plusdec.c libavcodec/bink.c libavcodec/dnxhddec.c libavcodec/dvdec.c libavcodec/dvenc.c libavcodec/ffv1dec.c libavcodec/ffv1enc.c libavcodec/fic.c libavcodec/flacdec.c libavcodec/flacenc.c libavcodec/flvdec.c libavcodec/fraps.c libavcodec/frwu.c libavcodec/gifdec.c libavcodec/h261dec.c libavcodec/hevc.c libavcodec/iff.c libavcodec/imc.c libavcodec/libopenjpegdec.c libavcodec/libvo-aacenc.c libavcodec/libvorbisenc.c libavcodec/libvpxdec.c libavcodec/libvpxenc.c libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/mjpegdec.c libavcodec/mpegaudiodec_float.c libavcodec/msmpeg4dec.c libavcodec/mxpegdec.c libavcodec/nvenc_h264.c libavcodec/nvenc_hevc.c libavcodec/pngdec.c libavcodec/qpeg.c libavcodec/ra288.c libavcodec/rv10.c libavcodec/s302m.c libavcodec/sp5xdec.c libavcodec/takdec.c libavcodec/tiff.c libavcodec/tta.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/vp6.c libavcodec/vp9.c libavcodec/wavpack.c libavcodec/yop.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * lavc: AV-prefix all codec capabilitiesVittorio Giovara2015-07-27
| | | | | | | | | | | | Express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * lavc: AV-prefix all codec flagsVittorio Giovara2015-07-27
| | | | | | | | | | | | Convert doxygen to multiline and express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | libavcodec: Implementation of AAC_fixed_decoder (LC-module) [4/4]Jovan Zelincevic2015-07-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Build system modified There are several warnings occurring during build after this patch is applied. The cause of most of these warnings is in that some definitions needed here are logical part of sbr module and are added in later patches. When this patches are applied these warnings stop occurring. The only warning that is added here and is not fixed with later patches is warning that warns that type mismatch for table ff_aac_eld_window_480. The reason for this warning is in that ER AAC ELD 480 is not integrated in to the fixed point implementation at this moment and there is no fixed point version of this table. Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libavcodec: Implementation of AAC_fixed_decoder (LC-module) [3/4]Djordje Pesut2015-07-09
| | | | | | | | | | | | | | Add fixed point implementation Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libavcodec: Implementation of AAC_fixed_decoder (LC-module) [1/4]Jovan Zelincevic2015-07-09
| | | | | | | | | | | | | | Move existing code to the new template files Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/aacdec: Do not return a uninitialized valueMichael Niedermayer2015-06-08
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'bc76c46943272515805d7ac48ca39f14826d1fed'Michael Niedermayer2015-06-08
|\| | | | | | | | | | | | | | | | | | | | | * commit 'bc76c46943272515805d7ac48ca39f14826d1fed': aac: Wait to know the channels before allocating frame Conflicts: libavcodec/aacdec.c See: 676a395ab903cac623c5d6ddd0928c789e08a59e Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aac: Wait to know the channels before allocating frameLuca Barbato2015-06-07
| | | | | | | | | | | | | | | | The channel configuration can be delivered only by the PCE, try to parse it first and not try to decode until a channel configuration is set. CC: libav-stable@libav.org
* | Merge commit 'a188108ebf28ebac9d2b8fc7d5b391aef45698b3'Michael Niedermayer2015-06-08
|\| | | | | | | | | | | | | * commit 'a188108ebf28ebac9d2b8fc7d5b391aef45698b3': aac: Support channel configurations 11 and 12 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aac: Support channel configurations 11 and 12Sebastian Dröge2015-06-07
| | | | | | | | | | | | | | | | | | | | | | These are defined in ISO/IEC 14496-3:2009/PDAM 4 for 6.1 and 7.1. It also defines another 7.1 layout with configuration 14, that one is not added here for now. 11: 3/3.1 FC FL+FR BL+BR BC LFE 12: 3/2/2.1 FC FL+FR SiL+SiR BL+BR LFE Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '677c804aa3a78d61b21e6423165a252846c20f0e'Michael Niedermayer2015-06-08
|\| | | | | | | | | | | | | | | * commit '677c804aa3a78d61b21e6423165a252846c20f0e': aac: correctly map 7.1ch-wide AAC from FDK AAC encoder Sample: FDK_7.1ch_wide.aac Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aac: correctly map 7.1ch-wide AAC from FDK AAC encodernu7742015-06-07
| | | | | | | | | | | | | | | | | | | | FDK AAC encoder outputs SCE(front)+CPE(front)+CPE(back)+CPE(back) on MODE_7_1_REAR_SURROUND configuration. Since decoder couldn't properly map 4 back channels, decoding failed unless -request_channel_layout 0x8000000000000000 has been specified. Now we treat first CPE(back) as CPE(side) on channel mapping. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '0289f81241e720452b5a77713488d54d3ec252d7'Michael Niedermayer2015-06-03
|\| | | | | | | | | | | | | | | | | | | | | * commit '0289f81241e720452b5a77713488d54d3ec252d7': aac: Correctly map multichannel ADTS AAC with non-zero channel_config + PCE Conflicts: libavcodec/aacdec.c Sample: 5.1ch_PCE_issue.aac Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aac: Correctly map multichannel ADTS AAC with non-zero channel_config + PCEnu7742015-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The decoder assigns channels using default channel configuration for 5.1ch when it parses an ADTS frame header using consecutive channel ids. When a PCE comes, it reassigns channels using PCE configuration using directly the ids provided. They can be arbitrary. Always use consecutive channel ids to avoid decoding glitches due spurious reconfigurations due the channel ids mismatch between the two otherwise-identical channel maps. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * aacdec: consistently use avctx for logging in decode_eld_specific_configAndreas Cadhalpun2015-04-19
| | | | | | | | | | | | ac may be NULL and then accessing ac->avctx results in a segmentation fault. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* | aacdec: remove a duplicated lineAndreas Cadhalpun2015-05-13
| | | | | | | | | | | | | | got_frame_ptr is set again after the if block. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | aacdec: don't return frames without dataAndreas Cadhalpun2015-05-12
| | | | | | | | | | | | | | | | | | | | | | Since commit 676a395a aac->frame->data is not necessarily allocated at the end of aac_decode_frame_int if avctx->channels is 0. In this case a bogus frame without any data, but non-zero nb_samples is returned. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'Michael Niedermayer2015-04-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25': lavc: Replace av_dlog and tprintf with internal macros Conflicts: libavcodec/aacdec.c libavcodec/audio_frame_queue.c libavcodec/bitstream.c libavcodec/dcadec.c libavcodec/dnxhddec.c libavcodec/dvbsubdec.c libavcodec/dvdec.c libavcodec/dvdsubdec.c libavcodec/get_bits.h libavcodec/gifdec.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_refs.c libavcodec/imc.c libavcodec/interplayvideo.c libavcodec/jpeglsdec.c libavcodec/libopencore-amr.c libavcodec/mjpegdec.c libavcodec/mpeg12dec.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_parser.c libavcodec/pngdec.c libavcodec/ratecontrol.c libavcodec/rv10.c libavcodec/svq1dec.c libavcodec/vqavideo.c libavcodec/wmadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara2015-04-19
| |
* | aacdec: consistently use avctx for logging in decode_eld_specific_configAndreas Cadhalpun2015-04-16
| | | | | | | | | | | | | | ac may be NULL and then accessing ac->avctx results in a segmentation fault. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | aacdec: Use macros for constantsRostislav Pehlivanov2015-04-14
| | | | | | | | | | | | | | | | | | | | This commit replaces the previous hardcoded constants with both new and previously defined macros from aac.h. This change makes it easy for anyone reading the code to know how encoding and decoding scalefactors works. It's also possibly a step in unifying some of the code across both the encoder and decoder. Reviewed-by: Claudio Freire <klaussfreire@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/aacdec: Fix storing state before PCE decodeMichael Niedermayer2015-04-09
| | | | | | | | | | | | Fixes Ticket4460 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '87e85a133f3ce2f037b90e9c7bbca99951df6c15'Michael Niedermayer2015-03-04
|\| | | | | | | | | | | | | * commit '87e85a133f3ce2f037b90e9c7bbca99951df6c15': aac: Relax reserved_bit validation Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aac: Relax reserved_bit validationVittorio Giovara2015-03-04
| | | | | | | | | | | | | | | | | | | | | | Although the specification mandates this bit to zero, it may happen that software tools incorrectly flip it to one, invalidating a possibly valid stream. Relax this restriction, by failing only when AV_EF_BITSTREAM is set. This behaviour is similar to aac decoders in Firefox and Quicktime. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit 'ee964145b5d229571e00bf6883a44189d02babe2'Michael Niedermayer2015-02-28
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'ee964145b5d229571e00bf6883a44189d02babe2': lavc: remove unused traces of fmtconvert usage Conflicts: libavcodec/aac.h libavcodec/aacdec.c libavcodec/atrac3.c libavcodec/vorbisdec.c libavcodec/wma.c libavcodec/wma.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: remove unused traces of fmtconvert usageAnton Khirnov2015-02-28
| | | | | | | | | | Those decoders have been switched to float output and so do not use fmtconvert anymore.
* | Merge commit 'd615187f74ddf3413778a8b5b7ae17255b0df88e'Michael Niedermayer2015-02-04
|\| | | | | | | | | | | | | | | | | | | * commit 'd615187f74ddf3413778a8b5b7ae17255b0df88e': aacdec: Support for ER AAC ELD 480. Conflicts: libavcodec/aacdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: Support for ER AAC ELD 480.Alex Converse2015-02-03
| | | | | | | | Based in part on work from Niel van der Westhuizen <espes@pequalsnp.com>.
* | Merge commit '7640c4a371a97899dfb443d980fd0bf8ac587754'Michael Niedermayer2015-02-04
|\| | | | | | | | | | | | | * commit '7640c4a371a97899dfb443d980fd0bf8ac587754': aacdec: Tables for length 480 AAC ELD. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: Tables for length 480 AAC ELD.Niel van der Westhuizen2015-02-03
| |
* | Merge commit '0ee2573347ecdb9cb5656001f7201d819eec16d8'Michael Niedermayer2015-02-04
|\| | | | | | | | | | | | | | | | | | | * commit '0ee2573347ecdb9cb5656001f7201d819eec16d8': aacdec: Support for ER AAC in LATM Conflicts: libavcodec/aacdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: Support for ER AAC in LATMNiel van der Westhuizen2015-02-03
| |
* | Merge commit 'edd9ea3ffba1d5873dead1c57c74b1e3cc912167'Michael Niedermayer2015-02-04
|\| | | | | | | | | | | | | * commit 'edd9ea3ffba1d5873dead1c57c74b1e3cc912167': aacdec: Refactor aac_er_decode_frame. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: Refactor aac_er_decode_frame.Alex Converse2015-02-03
| |
* | Merge commit '82bd8a57692d8f3643ad0903c97e4a0f84393f53'Michael Niedermayer2015-02-04
|\| | | | | | | | | | | | | * commit '82bd8a57692d8f3643ad0903c97e4a0f84393f53': aacdec: Refactor decode_ics_info. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: Refactor decode_ics_info.Alex Converse2015-02-03
| |
* | avcodec/aacdec: remove unneeded #include, theres no assert() in aacdecMichael Niedermayer2015-01-30
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/aacdec: reduce noisiness of missing channel elementsMichael Niedermayer2014-12-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '7464e98f74c03d3efa0cdc8d7abad06e4c3c277a'Michael Niedermayer2014-12-02
|\| | | | | | | | | | | | | | | | | | | * commit '7464e98f74c03d3efa0cdc8d7abad06e4c3c277a': aac: Simplify decode_mid_side_stereo Conflicts: libavcodec/aacdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aac: Simplify decode_mid_side_stereoLuca Barbato2014-12-02
| | | | | | | | | | Might spare few cycles if the compiler is naive and makes the function more readable.
| * aacdec: avoid an out-of-bounds writeVittorio Giovara2014-11-24
| | | | | | | | | | | | | | Also move the check in the case it is actually used. CC: libav-stable@libav.org Bug-Id: CID 1087090