Michael Niedermayer
c00f368caa
avcodec/ac3dec: use av_freep() for saftey
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 04:38:16 +02:00
Michael Niedermayer
91b105ce5b
avcodec/ac3dec: avoid #if, use if() instead, its cleaner and shorter
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Nedeljko Babic <nbabic@mips.com>
2014-04-01 19:58:47 +02:00
Michael Niedermayer
b219142921
avcodec/ac3: rename identifier used to select the fixed point variant
...
the CONFIG_ prefix is used by configure, using it for other things
is potentially confusing to the reader
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Nedeljko Babic <nbabic@mips.com>
2014-04-01 19:58:31 +02:00
Nedeljko Babic
696e34a6e1
libavcodec: Implementation of AC3 fixedpoint decoder
...
Signed-off-by: Nedeljko Babic <nbabic@mips.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-01 19:01:57 +02:00
Michael Niedermayer
eadc21cfe7
avcodec/ac3_parser: add avpriv_ac3_parse_header2() and use it in libavcodec
...
The new function has the ability to allocate the structure, allowing it to grow
without needing major bumps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-01 01:51:01 +01:00
Michael Niedermayer
1db87da351
Merge commit '9cd4bc41760f8ad879e248920eacbe1e7757152c'
...
* commit '9cd4bc41760f8ad879e248920eacbe1e7757152c':
ac3dec: set AV_FRAME_DATA_DOWNMIX_INFO side data.
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-16 02:18:58 +01:00
Tim Walker
9cd4bc4176
ac3dec: set AV_FRAME_DATA_DOWNMIX_INFO side data.
2014-02-15 22:25:00 +01:00
Michael Niedermayer
3c7195a969
Merge commit '23d461fe8714a20ee5e6929f22c61512fdda568e'
...
* commit '23d461fe8714a20ee5e6929f22c61512fdda568e':
ac3dec: Allow asymmetric application of DRC when drc_scale > 1
Conflicts:
libavcodec/ac3dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-30 14:55:03 +01:00
John Stebbins
23d461fe87
ac3dec: Allow asymmetric application of DRC when drc_scale > 1
...
Amplification of quiet sounds is enhanced.
Inspired by gbooker's A52Decoder.
2014-01-29 23:26:25 +01:00
Michael Niedermayer
10f1ee2f92
Merge commit 'ade75fb811500f3e3f284737f123938d83be728f'
...
* commit 'ade75fb811500f3e3f284737f123938d83be728f':
(e)ac3: clip surround mix level indexes.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-19 21:46:32 +01:00
Michael Niedermayer
3a5a039ade
Merge commit 'c229f571fd3c7d7b567c27c87b2bbcdaee1b0e9f'
...
* commit 'c229f571fd3c7d7b567c27c87b2bbcdaee1b0e9f':
(e)ac3: parse and store the Lt/Rt and LFE mix levels.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-19 21:37:06 +01:00
Michael Niedermayer
c3d1215683
Merge commit '1f604f96ea70503caa642f68a85be6074a5b3f46'
...
* commit '1f604f96ea70503caa642f68a85be6074a5b3f46':
ac3: set default matrix encoding modes in parse_frame_header.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-19 21:18:18 +01:00
Tim Walker
ade75fb811
(e)ac3: clip surround mix level indexes.
...
Values 0-2 are reserved, 3 (-1.5dB) should be used instead.
2014-01-19 19:12:52 +01:00
Tim Walker
c229f571fd
(e)ac3: parse and store the Lt/Rt and LFE mix levels.
2014-01-19 19:12:42 +01:00
Tim Walker
1f604f96ea
ac3: set default matrix encoding modes in parse_frame_header.
...
Deduplicates some code.
2014-01-19 19:12:33 +01:00
Michael Niedermayer
d18234f319
Merge commit '7840c40445c9f52aeccba96de3d27613398bfbf2'
...
* commit '7840c40445c9f52aeccba96de3d27613398bfbf2':
(e)ac3dec: set AV_FRAME_DATA_MATRIXENCODING side data.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-05 23:14:26 +01:00
Michael Niedermayer
7b3c78b5e6
Merge commit '13345fc1f86fc3615789e196d5a339c1c27c9068'
...
* commit '13345fc1f86fc3615789e196d5a339c1c27c9068':
(e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode flags.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-05 23:06:53 +01:00
Tim Walker
7840c40445
(e)ac3dec: set AV_FRAME_DATA_MATRIXENCODING side data.
2014-01-05 16:41:56 +01:00
Tim Walker
13345fc1f8
(e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode flags.
2014-01-05 16:41:56 +01:00
Michael Niedermayer
785066ae8a
Merge commit 'c9ca220ef26e36abd22085e6fa156c0dbc43bbf0'
...
* commit 'c9ca220ef26e36abd22085e6fa156c0dbc43bbf0':
ac3dec: make drc_scale exponentially
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-09 19:58:07 +01:00
John Stebbins
c9ca220ef2
ac3dec: make drc_scale exponentially
...
The a52 spec suggests that "partial compression" should scale the
drc value in this manner.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-12-09 08:54:42 +01:00
Michael Niedermayer
4782c4284f
avcodec/ac3dec: check bap before use.
...
Fixes out of array read
Fixes assertion failure
Fixes asan_static-oob_16431c0_8036_rio_bravo_mono_64_spx.ac3
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-25 23:17:17 +01:00
Michael Niedermayer
ceaaf0d97e
Merge commit '48b24bd2d208ce0f124029ac4c5ac5cb1fca4175'
...
* commit '48b24bd2d208ce0f124029ac4c5ac5cb1fca4175':
ac3dec: Fix out-of-array read
Conflicts:
libavcodec/ac3dec.c
See: 2cbf27b08a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-24 05:05:09 +01:00
Tim Walker
48b24bd2d2
ac3dec: Fix out-of-array read
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-11-23 21:36:49 +01:00
Michael Niedermayer
94194bdcd7
Merge commit 'd4df02131b5522a99a4e6035368484e809706ed5'
...
* commit 'd4df02131b5522a99a4e6035368484e809706ed5':
ac3dec: Remove write-only channel_layout field from AC3DecodeContext
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-23 13:45:09 +01:00
Michael Niedermayer
2cbf27b08a
libavcodec/ac3dec: fix channel_layout
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-23 13:36:15 +01:00
Michael Niedermayer
2e5780a53f
Merge commit 'b53285462263ef8a795f0e289abd5799b4c57652'
...
* commit 'b53285462263ef8a795f0e289abd5799b4c57652':
ac3: implement request_channel_layout.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-23 12:18:33 +01:00
Tim Walker
d4df02131b
ac3dec: Remove write-only channel_layout field from AC3DecodeContext
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-11-22 23:27:34 +01:00
Tim Walker
b532854622
ac3: implement request_channel_layout.
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-11-22 23:27:33 +01:00
Michael Niedermayer
61f40fbb52
Merge commit 'ffb0af7f17eb0da86e9b140e86a1404d3c6c9e79'
...
* commit 'ffb0af7f17eb0da86e9b140e86a1404d3c6c9e79':
ac3dec: simplify an expression
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-20 04:20:36 +01:00
Tim Walker
ffb0af7f17
ac3dec: simplify an expression
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-11-19 18:52:17 +01:00
Michael Niedermayer
6c82c87dbb
ac3dec: fix outptr increment.
...
Fixes corrupt data errors when downmixing in the AC-3 decoder.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org
2013-10-28 08:33:21 -04:00
Michael Niedermayer
84f972f994
Merge commit '23a211cbba0b7c9ee694040031b2e5da1be54a00'
...
* commit '23a211cbba0b7c9ee694040031b2e5da1be54a00':
lavc: change all decoders to behave consistently with AV_EF_CRCCHECK.
Conflicts:
libavcodec/avcodec.h
libavcodec/tta.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 12:34:35 +01:00
Anton Khirnov
23a211cbba
lavc: change all decoders to behave consistently with AV_EF_CRCCHECK.
...
Just crccheck prints a warning, crccheck+explode returns an error.
Also document this behavior.
2013-10-28 07:22:18 +01:00
Michael Niedermayer
ee77140afa
Merge commit 'b2bed9325dbd6be0da1d91ffed3f513c40274fd2'
...
* commit 'b2bed9325dbd6be0da1d91ffed3f513c40274fd2':
cosmetics: Group .name and .long_name together in codec/format declarations
Conflicts:
libavcodec/8svx.c
libavcodec/alac.c
libavcodec/cljr.c
libavcodec/dnxhddec.c
libavcodec/dnxhdenc.c
libavcodec/dpxenc.c
libavcodec/dvdec.c
libavcodec/dvdsubdec.c
libavcodec/dvdsubenc.c
libavcodec/ffv1dec.c
libavcodec/flacdec.c
libavcodec/flvdec.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/g726.c
libavcodec/gif.c
libavcodec/gifdec.c
libavcodec/h261dec.c
libavcodec/h263dec.c
libavcodec/iff.c
libavcodec/imc.c
libavcodec/libopencore-amr.c
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c
libavcodec/libspeexenc.c
libavcodec/libvo-amrwbenc.c
libavcodec/libvorbisenc.c
libavcodec/libvpxenc.c
libavcodec/libx264.c
libavcodec/libxavs.c
libavcodec/libxvid.c
libavcodec/ljpegenc.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mpeg12dec.c
libavcodec/mpeg4videodec.c
libavcodec/msmpeg4dec.c
libavcodec/pgssubdec.c
libavcodec/pngdec.c
libavcodec/pngenc.c
libavcodec/proresdec_lgpl.c
libavcodec/proresenc_kostya.c
libavcodec/ra144enc.c
libavcodec/rawdec.c
libavcodec/rv10.c
libavcodec/sp5xdec.c
libavcodec/takdec.c
libavcodec/tta.c
libavcodec/v210dec.c
libavcodec/vp6.c
libavcodec/wavpack.c
libavcodec/xbmenc.c
libavcodec/yop.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04 12:34:23 +02:00
Diego Biurrun
b2bed9325d
cosmetics: Group .name and .long_name together in codec/format declarations
2013-10-03 23:32:01 +02:00
Michael Niedermayer
7efa9b1794
Merge commit 'b1f9cdc37ff5d5b391d2cd9af737ab4e5a0fc1c0'
...
* commit 'b1f9cdc37ff5d5b391d2cd9af737ab4e5a0fc1c0':
ac3: Return proper error codes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-28 12:28:25 +02:00
Michael Niedermayer
bfa1b42b3c
Merge commit '818d1f1a3e89d35213af0bd5dc4a772713951882'
...
* commit '818d1f1a3e89d35213af0bd5dc4a772713951882':
ac3: Clean up the error paths
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-28 12:16:10 +02:00
Luca Barbato
b1f9cdc37f
ac3: Return proper error codes
2013-08-27 16:19:12 +02:00
Luca Barbato
818d1f1a3e
ac3: Clean up the error paths
2013-08-27 16:19:12 +02:00
Michael Niedermayer
b4fe41c981
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
fmtconvert: Explicitly use int32_t instead of int
Conflicts:
libavcodec/ac3dec.c
libavcodec/fmtconvert.c
libavcodec/fmtconvert.h
See: f49564c607
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-17 10:48:56 +02:00
Christophe Gisquet
b6293e2798
fmtconvert: Explicitly use int32_t instead of int
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-17 11:02:47 +03:00
Michael Niedermayer
0b95f01140
Merge commit '8f24c12be7a3b3ea105e67bba9a867fe210a2333'
...
* commit '8f24c12be7a3b3ea105e67bba9a867fe210a2333':
ac3dec: Don't consume more data than the actual input packet size
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-15 23:42:58 +02:00
Martin Storsjö
8f24c12be7
ac3dec: Don't consume more data than the actual input packet size
...
This was handled properly in the normal return case at the end
of the function, but not in this special case.
Returning a value larger than the input packet size can cause
problems for certain library users.
Returning the actual input buffer size unconditionally, since
it is not guaranteed that frame_size is set to a sensible
value at this point.
Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-15 21:37:21 +03:00
Michael Niedermayer
ac20ba35e3
Merge commit '031be5b41b54c3b666f31d83fe3ad41c194af8c5'
...
* commit '031be5b41b54c3b666f31d83fe3ad41c194af8c5':
ac3dec: Consistently use AC3_BLOCK_SIZE and sizeof
Conflicts:
libavcodec/ac3dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-14 12:10:38 +02:00
Martin Storsjö
031be5b41b
ac3dec: Consistently use AC3_BLOCK_SIZE and sizeof
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-13 19:06:52 +03:00
Martin Storsjö
68e57cde68
ac3dec: Increment channel pointers only once per channel
...
If the channel mapping map multiple output channels to one
input channel, we should only increment the actual pointer once.
Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-13 18:55:07 +03:00
Christophe Gisquet
f49564c607
fmtconvert: int32_t input to int32_to_float_fmul_scalar
...
It was previously declared as int.
Does not change fate results for x86.
Conflicts:
libavcodec/ppc/fmtconvert_altivec.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-18 18:01:16 +02:00
Michael Niedermayer
cacbf64a76
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
avcodec: av_log_missing_feature(1) ---> avpriv_request_sample()
Conflicts:
libavcodec/aacsbr.c
libavcodec/amrnbdec.c
libavcodec/takdec.c
libavcodec/tta.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-14 13:07:25 +01:00
Diego Biurrun
12e25ed284
avcodec: av_log_missing_feature(1) ---> avpriv_request_sample()
2013-03-13 21:20:12 +01:00