Alex Converse
f1ecd0802d
aacdec: Support native channel layout when requested.
13 years ago
Alex Converse
37bed6ff3f
aacdec: Try to sniff a reasonable channel layout for PCE based configurations.
...
This changes the output order of multichannel PCE based streams.
13 years ago
Alex Converse
8ece266213
aacdec: Remove incorrect comment.
...
It was only correct when element ids met very specific criteria.
13 years ago
Alex Converse
e600a1e44a
aacdec: Simplify output configuration.
13 years ago
Alex Converse
b5fc571e4f
latmdec: Check AudioSpecificConfig length before decoding extradata.
...
This is different than a normal get_bits() over read because
decode_audio_specific_config() creates its own GetBitContext.
Fixes Bug 170.
13 years ago
Alex Converse
4acd43a295
aacdec: Turn off PS for multichannel files that use PCE based configs.
...
Fixes al_sbr_cm_48_5.1.mp4.
13 years ago
Michael Niedermayer
810a14dbcc
aacdec: Evaluate further PCE elements.
...
Fixes Music\ Station\ Super\ Live\ -\ 2011.12.23.mkv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
91ab557b68
Revert "aacdec: Avoid unneeded reinit due to ADTS headers"
...
This has been fixed differently and its revert avoids error messages
when decoding xx.flv. This also reduces the difference to qatar.
This reverts commit 5a2b3f3a52
.
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Carl Eugen Hoyos
e5de928923
Fix a possible endless loop when decoding aac.
...
Fixes ticket #789 .
13 years ago
Martin Storsjö
132846b0c8
aacdec: Handle new extradata passed as side data
...
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Alex Converse
021914e27f
aacdec: Cleanup decode_ics_info.
...
Remove unused function argument.
Return an AVERROR.
Don't zero out ICS on failure.
13 years ago
Reimar Döffinger
36be045ed7
Support "VLB " audio in NSV files.
...
See samples/nsv/vlb_audio.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Alex Converse
5cd56e193f
aacdec: Use intfloat.h rather than local punning union.
13 years ago
Janne Grunau
d268b79e34
aac_latm: reconfigure decoder on audio specific config changes
13 years ago
Janne Grunau
fd095539d1
latmdec: fix audio specific config parsing
...
Pass the correct size in bits to mpeg4audio_get_config and add a flag
to disable parsing of the sync extension when the size is not known.
Latm with AudioMuxVersion 0 does not specify the size of the audio
specific config. Data after the audio specific config can be
misinterpreted as sync extension resulting in random and wrong configs.
13 years ago
Justin Ruggles
0eea212943
Add avcodec_decode_audio4().
...
Deprecate avcodec_decode_audio3().
Implement audio support in avcodec_default_get_buffer().
Implement the new audio decoder API in all audio decoders.
13 years ago
kaptnole
cb8db6423a
aacdec: Fix Sound fragments after seeking
...
Fixes Ticket420
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Alex Converse
963f685535
aacdec: Fix PS in ADTS.
...
Fixes File1.aac and Bug 80.
13 years ago
Michael Niedermayer
5a2b3f3a52
aacdec: Avoid unneeded reinit due to ADTS headers
...
Fixes Ticket 662
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
bc2dd36740
aacdec: allow output reconfiguration on channel changes
...
Locking the decoder against channel config changes in
parse_adts_frame_header() seems to be unnecessary and
streams with channel config changes are reported.
The sample in http://roundup.libav.org/issue999 still works.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
13 years ago
Justin Ruggles
71ccfb3f14
aac_latm: remove unneeded check for zero-size packet.
...
This is already checked by avcodec_decode_audio3()
13 years ago
Janne Grunau
28287045ca
cosmetics: simplify latm_decode_init
13 years ago
Janne Grunau
785f876cee
latm: avoid unnecessary reinit of the aac decoder
13 years ago
Janne Grunau
80e36425fb
aacdec: initialize sbr context only in new channel elements
13 years ago
Dustin Brody
9abc98737f
lavc: replace references to deprecated AVCodecContext.error_recognition to use AVCodecContext.err_recognition
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
13 years ago
Michael Niedermayer
b4d0e7804d
aacdec:only overwrite configuration if theres a actual change.
...
Fixes Ticket574
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Anton Khirnov
59a9a23581
lavc: use avpriv_ prefix for some mpeg4audio symbols used in lavf.
...
Specifically, ff_mpeg4audio_sample_rates, ff_mpeg4audio_get_config and
ff_copy_pce_data
13 years ago
Anton Khirnov
73ae27e17b
lavc: use avpriv_ prefix for ff_aac_parse_header().
...
It's used in lavf.
13 years ago
Michael Niedermayer
8daf04add4
aacdec: support chan config =1 stereo files
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
d12294304a
aacdec: fix undefined shifts
...
Since nnz can be zero, this is needed to avoid a shift by 32.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Michael Niedermayer
0bc5d4fd8b
aacdec: fix channel reconfigs on LATM
...
Fixes Ticket200
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
b6aaa6d9a0
aacdec: Make aac-latm closer to the spec (not reading random data leading to random false configurations)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
9815039053
aacdec: disable locking code for parse_adts_frame_header() non zero chan config.
...
This fixes changing channels
It possibly might cause regressions but i cant avoid this without having a test
case that needs the locking code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Alex Converse
44920d04ba
aac: Only set sample rate and object type from ADTS if output hasn't been configured.
...
Long term it would be nice to support error resilient reconfiguration
but right now setting this every frame does more harm than help.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years ago
Alex Converse
06d37fede4
aac: Set SBR and PS to unsignalled during headerless and ADTS initialization.
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years ago
Alex Converse
d8425ed4af
aac: Only output configure if audio was found.
...
Audio found is not triggered on a CCE because a CCE alone has no output.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years ago
Alex Converse
94d47382e0
aac: Don't attempt to output configure an invalid channel configuration.
13 years ago
Dustin Brody
680b1852ab
aac: propagate error return values for AV_LOG_ERROR-triggering events
13 years ago
Alex Converse
a6c49f18ab
aac: Remove some suspicious illegal memcpy()s from LTP.
13 years ago
Anton Khirnov
ec6402b7c5
lavc: use designated initialisers for all codecs.
...
It's more readable and less prone to breakage.
14 years ago
Alex Converse
a58858d60d
lavf: Cleanup try_decode_frame() logic.
...
This fixes AAC playback in ffplay.
14 years ago
Reimar Döffinger
896e59758a
Move resetting of channels, sample_rate back to av_find_stream_info.
...
Resetting it on codec init would incorrectly clear the values
if av_find_stream_info was already run before, in particular
breaking ffplay.
This fixes trac tickets #213 and #262 .
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
14 years ago
Benjamin Larsson
dafaef2fe1
Add support for aac streams in mp4/mov without extradata.
14 years ago
Justin Ruggles
e6c52cee54
Replace usages of av_get_bits_per_sample_fmt() with av_get_bytes_per_sample().
...
av_get_bits_per_sample_fmt() is deprecated.
14 years ago
Carl Eugen Hoyos
06fd213eb6
Do not reset channel_layout to 0.
...
The channel_layout may have been set by the demuxer.
14 years ago
Justin Ruggles
cef7d70181
aacdec: fix typo in scalefactor clipping check
14 years ago
Ronald S. Bultje
42da8ea8e8
LATM/AAC: Free previously initialized context on reinit.
...
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>
14 years ago
Justin Ruggles
9aa8193a23
Add floating-point sample format support to the ac3, eac3, dca, aac, and vorbis
...
decoders.
Based on patches by clsid2 in ffdshow-tryout.
14 years ago
Justin Ruggles
033a4a942a
aacdec: Use float instead of int16_t for ltp_state to avoid needless rounding.
14 years ago
Reimar Döffinger
6fd00e9dd9
aacdec: add decode_channel_map overread check
...
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
14 years ago