summaryrefslogtreecommitdiffstats
path: root/libavcodec/aacdec.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-06-211-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (28 commits) Replace usages of av_get_bits_per_sample_fmt() with av_get_bytes_per_sample(). x86: cabac: fix register constraints for 32-bit mode cabac: move x86 asm to libavcodec/x86/cabac.h x86: h264: cast pointers to intptr_t rather than int x86: h264: remove hardcoded edi in decode_significance_8x8_x86() x86: h264: remove hardcoded esi in decode_significance[_8x8]_x86() x86: h264: remove hardcoded edx in decode_significance[_8x8]_x86() x86: h264: remove hardcoded eax in decode_significance[_8x8]_x86() x86: cabac: change 'a' constraint to 'r' in get_cabac_inline() x86: cabac: remove hardcoded esi in get_cabac_inline() x86: cabac: remove hardcoded edx in get_cabac_inline() x86: cabac: remove unused macro parameter x86: cabac: remove hardcoded ebx in inline asm x86: cabac: remove hardcoded struct offsets from inline asm cabac: remove inline asm under #if 0 cabac: remove BRANCHLESS_CABAC_DECODER switch cabac: remove #if 0 cascade under never-set #ifdef ARCH_X86_DISABLED document libswscale bump error_resilience: skip last-MV predictor step if MVs are not available. error_resilience: actually add counter when adding a MV predictor. ... Conflicts: Changelog libavcodec/error_resilience.c libavfilter/defaults.c libavfilter/vf_drawtext.c libswscale/swscale.h tests/ref/vsynth1/error tests/ref/vsynth2/error Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace usages of av_get_bits_per_sample_fmt() with av_get_bytes_per_sample().Justin Ruggles2011-06-201-1/+1
| | | | | | | | av_get_bits_per_sample_fmt() is deprecated.
* | Do not reset channel_layout to 0.Carl Eugen Hoyos2011-05-251-2/+0
| | | | | | | | The channel_layout may have been set by the demuxer.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-05-241-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | * qatar/master: configure: Add -U__STRICT_ANSI__ to CPPFLAGS on Cygwin and DOS. aacdec: fix typo in scalefactor clipping check fate: fix fate-h264-conformance-frext-pph10i4-panasonic-a crcs. fate: update 9/10bit refs. h264: Properly set coded_{width, height} when parsing H.264. x86 asm: Add SECTION_TEXT to dct32_sse.asm. Fix 9/10 bit in swscale. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: fix typo in scalefactor clipping checkJustin Ruggles2011-05-231-1/+1
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-05-211-0/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: configure: make executable again LATM/AAC: Free previously initialized context on reinit. configure: Do not unconditionally add -Wall to host CFLAGS. configure: Set OS/2 objformat to a.out. Add support for a.out object format to assembler macros. fate: disable threading for encoding fate: add comment field fate: allow overriding default build and install dirs mpegtsenc: Add an AVClass pointer to the private data mpegaudio: clean up #includes mpegaudio: move all header parsing to mpegaudiodecheader.[ch] Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * LATM/AAC: Free previously initialized context on reinit.Ronald S. Bultje2011-05-201-0/+1
| | | | | | | | | | | | | | | | Fixes memory leaks which are the result of overwriting already-initialized MDCT contexts during context reinitialization, e.g. in valgrind fate-aac-latm_000000001180bc60. Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-05-191-14/+22
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: APIchanges: fill in date and commit for request_sample_fmt Add floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders. Add support for request_sample_format in ffmpeg and ffplay. Add APIchanges entry for request_sample_fmt. Add request_sample_fmt field to AVCodecContext. Add float_interleave() to FmtConvertContext with x86-optimized versions. Remove unused make variable SEEK_REFFILE fate: remove redundant aref and vref references fate: remove do_ffmpeg_nocheck function fate: do not collect -benchmark output mpegaudiodec: remove decode_end() function fate: run aref and vref as regular tests mpegaudio: sanitise compute_antialias_* names mpeg12: add slice-threading checks to slice-threading initializers. h264: copy pixel_shift between slice threading contexts. mdec: enable frame-level multithreading. mdec.c: fix overread. Conflicts: libavcodec/aacdec.c libavcodec/ac3dec.c libavcodec/avcodec.h libavcodec/dca.c libavcodec/h264.c libavcodec/mdec.c libavcodec/mpeg12.c libavcodec/options.c libavcodec/version.h libavcodec/vorbisdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add floating-point sample format support to the ac3, eac3, dca, aac, and vorbisJustin Ruggles2011-05-181-10/+24
| | | | | | | | | | | | decoders. Based on patches by clsid2 in ffdshow-tryout.
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-05-161-3/+3
|\ \ | |/ | | | | | | | | | | | | | | | | | | * qatar/master: aacdec: Use float instead of int16_t for ltp_state to avoid needless rounding. acelp: Remove unused gray_decode table. dfa: Remove unused variable. configure: Include AVX availability in summary output. configure: use same CPPFLAGS in kFreeBSD as Linux Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: Use float instead of int16_t for ltp_state to avoid needless rounding.Justin Ruggles2011-05-151-3/+3
| |
* | aacdec: add decode_channel_map overread checkReimar Döffinger2011-05-071-0/+4
| | | | | | | | | | | | | | | | All decode_channel_map calls together can easily read more data than the amount of padding available. Thus below patch adds an input length check before reading them. Fixes some invalid reads with sample from http://bugzilla.mplayerhq.hu/show_bug.cgi?id=1138
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-281-28/+23
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: vorbisdec: Rename silly "class_" variable to plain "class". simple_idct_alpha: Drop some useless casts. Simplify av_log_missing_feature(). ac3enc: remove check for mismatching channels and channel_layout If AVCodecContext.channels is 0 and AVCodecContext.channel_layout is non-zero, set channels based on channel_layout. If AVCodecContext.channel_layout and AVCodecContext.channels are both non-zero, check to make sure they do not contradict eachother. cosmetics: indentation Check AVCodec.supported_samplerates and AVCodec.channel_layouts in avcodec_open(). aacdec: remove sf_scale and sf_offset. aacdec: use a scale of 2 in the LTP MDCT rather than doubling the coefficient table values from the spec. Define POW_SF2_ZERO in aac.h and use for ff_aac_pow2sf_tabp[] offsets instead of hardcoding 200 everywhere. Large intensity stereo and PNS indices are legal. Clip them instead of erroring out. A magnitude of 100 corresponds to 2^25 so the will most likely result in clipped output anyway. qpeg: use reget_buffer() in decode_frame() ultimotion: use reget_buffer() in ulti_decode_frame() smacker: remove unnecessary call to avctx->release_buffer in decode_frame() avparser: don't av_malloc(0). Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: remove sf_scale and sf_offset.Alex Converse2011-04-271-18/+8
| | | | | | | | | | | | | | Instead, scalefactors are adjusted by the offset amount, removing the need for sf_scale, and the MDCT scales are adjusted to compensate for the higher scalefactors. Floating-point output will be handled by modifying the MDCT scales.
| * aacdec: use a scale of 2 in the LTP MDCT rather than doubling the coefficientJustin Ruggles2011-04-271-1/+1
| | | | | | | | table values from the spec.
| * Define POW_SF2_ZERO in aac.h and use for ff_aac_pow2sf_tabp[] offsets insteadAlex Converse2011-04-271-3/+3
| | | | | | | | of hardcoding 200 everywhere.
| * Large intensity stereo and PNS indices are legal. Clip them instead ofAlex Converse2011-04-271-11/+16
| | | | | | | | | | | | | | erroring out. A magnitude of 100 corresponds to 2^25 so the will most likely result in clipped output anyway. None of the conformance streams fall in the range that need to be clipped.
* | aacdec: Allow selecting float output at runtime.Reimar Döffinger2011-04-251-28/+10
| |
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-241-0/+9
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Handle unicode file names on windows rtp: Rename the open/close functions to alloc/free Lowercase all ff* program names. Refer to ff* tools by their lowercase names. NOT Pulled Replace more FFmpeg instances by Libav or ffmpeg. Replace `` by $() syntax in shell scripts. patcheck: Allow overiding grep program(s) through environment variables. NOT Pulled Remove stray libavcore and _g binary references. vorbis: Rename decoder/encoder files to follow general file naming scheme. aacenc: Fix whitespace after last commit. cook: Fix small typo in av_log_ask_for_sample message. aacenc: Finish 3GPP psymodel analysis for non mid/side cases. Remove RDFT dependency from AAC decoder. Add some debug log messages to AAC extradata Fix mov debug (u)int64_t format strings. bswap: use native types for av_bwap16(). doc: FLV muxing is supported. applehttp: Handle AES-128 encrypted streams Add a protocol handler for AES CBC decryption with PKCS7 padding doc: Mention that DragonFly BSD requires __BSD_VISIBLE set Conflicts: ffplay.c ffprobe.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add some debug log messages to AAC extradataAlex Converse2011-04-221-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Wed, Apr 20, 2011 at 11:39 AM, Justin Ruggles <justin.ruggles@gmail.com> wrote: > On 04/20/2011 02:26 PM, Alex Converse wrote: > >> --- >>  libavcodec/aacdec.c |   10 +++++++++- >>  1 files changed, 9 insertions(+), 1 deletions(-) >> >> >> >> 0002-Add-some-Debug-log-messages-to-AAC-extradata.patch >> >> >> diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c >> index c9761a1..3ec274f 100644 >> --- a/libavcodec/aacdec.c >> +++ b/libavcodec/aacdec.c >> @@ -79,7 +79,6 @@ >>             Parametric Stereo. >>   */ >> >> - >>  #include "avcodec.h" >>  #include "internal.h" >>  #include "get_bits.h" > > > stray whitespace change > oops, fixed >From 94e8d0eea77480630f84368c97646cabc0f50628 Mon Sep 17 00:00:00 2001 From: Alex Converse <aconverse@google.com> Date: Wed, 20 Apr 2011 11:23:34 -0700 Subject: [PATCH] Add some debug log messages to AAC extradata MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------1" This is a multi-part message in MIME format. --------------1 Content-Type: text/plain; charset=UTF-8; format=fixed Content-Transfer-Encoding: 8bit
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-231-10/+9
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Use av_log_ask_for_sample() to request samples from users. Make av_log_ask_for_sample() accept a variable number of arguments. vqavideo: We no longer need to ask for version 1 samples. aacdec: indentation cosmetics Conflicts: libavcodec/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aacdec: indentation cosmeticsYoung Han Lee2011-04-221-10/+9
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-131-6/+6
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Partially merged:flvdec: Allow parsing keyframes metadata without seeking in most cases Error out if vaapi is not found avio: undeprecate av_url_read_fseek/fpause under nicer names libvo-*: Don't use deprecated sample format names and enum names DUPLICATE flvdec: Fix support for flvtool2 "keyframes based" generated index DUPLICATE libavcodec: Use "const enum AVSampleFormat[]" in AVCodec initialization Fix the conversion of AV_SAMPLE_FMT_FLT and _DBL to AV_SAMPLE_FMT_S32. Convert some undefined 1<<31 shifts into 1U<<31. Conflicts: configure libavcodec/libvo-aacenc.c libavcodec/libvo-amrwbenc.c libavformat/flvdec.c Marged-by: Michael Niedermayer <michaelni@gmx.at>
| * Convert some undefined 1<<31 shifts into 1U<<31.Alex Converse2011-04-111-6/+6
| | | | | | | | | | | | | | | | | | | | | | According to ISO 9899:1999 S 6.5.7/4: The result of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits are filled with zeros. If E1 has an unsigned type, the value of the result is E1× 2^E2, reduced modulo one more than the maximum value representable in the result type. If E1 has a signed type and nonnegative value, and E1× 2^E2 is representable in the result type, then that is the resulting value; otherwise, the behavior is undefined.
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-061-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: psymodel: extend API to include PE and bit allocation. avio: always compile dyn_buf functions Remove unnecessary parameter from ff_thread_init() and fix behavior Revert "aac_latm_dec: use aac context and aac m4ac" configure: tell user if libva is enabled like the rest of external libs. Add silence support for AV_SAMPLE_FMT_U8. avio: make URL_PROTOCOL_FLAG_NESTED_SCHEME internal avio: deprecate av_url_read_seek avio: deprecate av_url_read_pause ac3enc: NEON optimised extract_exponents Conflicts: libavcodec/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Revert "aac_latm_dec: use aac context and aac m4ac"Janne Grunau2011-04-051-2/+2
| | | | | | | | | | This reverts commit 36864ac3540445c513484017aa9927e942fac24a since it breaks LATM decoding in ffplay.
* | Float output for libavcodec AAC decoderclsid22011-04-031-1/+25
| | | | | | | | git-svn-id: https://ffdshow-tryout.svn.sourceforge.net/svnroot/ffdshow-tryout@3770 3b938f2f-1a1a-0410-8054-a526ea5ff92c
* | Merge remote-tracking branch 'newdev/master'Michael Niedermayer2011-03-211-3/+5
|\ \ | |/ | | | | Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Move sine windows to a separate fileMans Rullgard2011-03-201-0/+1
| | | | | | | | | | | | | | These windows do not really belong in fft/mdct files and were easily confused with the similarly named tables used by rdft. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Move ff_kbd_window_init() to a separate fileMans Rullgard2011-03-191-0/+1
| | | | | | | | | | | | | | This function is not tightly coupled to mdct, and it's in the way of making a fixed-point mdct implementation. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * fft: remove inline wrappers for function pointersMans Rullgard2011-03-191-3/+3
| | | | | | | | | | | | | | This removes the rather pointless wrappers (one not even inline) for calling the fft_calc and related function pointers. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-5/+5
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * aac_latm_dec: use aac context and aac m4acThadeu Lima de Souza Cascardo2011-03-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | When decoding latm config, use the corresponding aac context and its m4ac instead of using NULL and a local variable. This fixes decoding of audio in MPEG TS from SBTVD (the Brazillian Digital TV Sytem), when there is no extradata. This is the case when using the decoder with gst-ffmpeg and a GStreamer mpegts demuxer. Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
| * aacdec: Reduce the size of buf_mdct.Young Han Lee2011-02-211-8/+11
| | | | | | | | | | It was doubled in size for the LTP implementation. This brings it back down to its original size.
| * aacdec: dsputilize the scalar multiplication in intensity stereoYoung Han Lee2011-02-191-5/+7
| |
| * aacdec: Implement LTP support.Young Han Lee2011-02-141-10/+146
| | | | | | | | Ported from gsoc svn.
| * Replace remaining occurrences of CODEC_TYPE_* with AVMEDIA_TYPE*Anton Khirnov2011-02-031-1/+1
| | | | | | | | | | | | Tested to compile with lavc major bump. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Separate format conversion DSP functions from DSPContext.Justin Ruggles2011-02-021-1/+3
| | | | | | | | | | | | | | This will be beneficial for use with the audio conversion API without requiring it to depend on all of dsputil. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Remove unneeded add bias from 3 functions.Justin Ruggles2011-01-311-10/+10
| | | | | | | | | | | | | | | | DSPContext.vector_fmul_window() DCADSPContext.lfe_fir() SynthFilterContext.synth_filter_float() Signed-off-by: Mans Rullgard <mans@mansr.com>
| * aacdec: Convert some loop copies into memcpy()s.Alex Converse2011-01-281-6/+3
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * cosmetics: indentation and spacingJustin Ruggles2011-01-281-2/+2
| |
| * Remove the add bias hack for the C version of DSPContext.float_to_int16_*().Justin Ruggles2011-01-281-26/+16
| |
| * Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.Diego Elio Pettenò2011-01-261-2/+2
| | | | | | | | | | | | | | None of these symbols should be accessed directly, so declare them as hidden. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Remove redundant checks against MIN_CACHE_BITSMans Rullgard2011-01-231-8/+0
| | | | | | | | | | | | | | With the removal of the libmpeg2 bitstream reader, MIN_CACHE_BITS is always >= 25, so tests against smaller values can be removed. Signed-off-by: Mans Rullgard <mans@mansr.com>
* | aac_latm_dec: use aac context and aac m4acThadeu Lima de Souza Cascardo2011-03-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | When decoding latm config, use the corresponding aac context and its m4ac instead of using NULL and a local variable. This fixes decoding of audio in MPEG TS from SBTVD (the Brazillian Digital TV Sytem), when there is no extradata. This is the case when using the decoder with gst-ffmpeg and a GStreamer mpegts demuxer. Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com> (cherry picked from commit 36864ac3540445c513484017aa9927e942fac24a)
* | aacdec: Reduce the size of buf_mdct.Young Han Lee2011-02-221-8/+11
| | | | | | | | | | | | It was doubled in size for the LTP implementation. This brings it back down to its original size. (cherry picked from commit e22910b21a6c78b0159f98426b10c204f12bc15a)
* | aacdec: dsputilize the scalar multiplication in intensity stereoYoung Han Lee2011-02-201-5/+7
| | | | | | | | (cherry picked from commit 9707f84fa73c23352937fc7e4e0a85eaf3135cbc)
* | aacdec: Implement LTP support.Young Han Lee2011-02-151-10/+146
| | | | | | | | | | Ported from gsoc svn. (cherry picked from commit ead15f1dc196ad164d105e31c8c9025f8a4ee4e7)
* | Replace remaining occurrences of CODEC_TYPE_* with AVMEDIA_TYPE*Anton Khirnov2011-02-041-1/+1
| | | | | | | | | | | | | | Tested to compile with lavc major bump. Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit b2ed95ec48aceb21a9bb47af85d259ee52b8b7ea)
* | Separate format conversion DSP functions from DSPContext.Justin Ruggles2011-02-041-1/+3
| | | | | | | | | | | | | | | | This will be beneficial for use with the audio conversion API without requiring it to depend on all of dsputil. Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit c73d99e672329c8f2df290736ffc474c360ac4ae)
OpenPOWER on IntegriCloud