Xi Wang
eba1ff3130
atrac3: avoid oversized shifting in decode_bytes()
...
When `off' is 0, `0x537F6103 << 32' in the following expression invokes
undefined behavior, the result of which is not necessarily 0.
(0x537F6103 >> (off * 8)) | (0x537F6103 << (32 - (off * 8)))
Avoid oversized shifting.
CC: libav-stable@libav.org
Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 years ago
Diego Biurrun
6d97484d72
avcodec: av_log_ask_for_sample() ---> avpriv_request_sample()
12 years ago
Clément Bœsch
1ec94b0f06
lavc: factorize ff_{thread_,re,}get_buffer error messages.
...
Coccinelle profile used:
@@
expression r, ctx, f, loglevel, str, flags;
@@
-if ((r = ff_get_buffer(ctx, f, flags)) < 0) {
- av_log(ctx, loglevel, str);
- return r;
-}
+if ((r = ff_get_buffer(ctx, f, flags)) < 0)
+ return r;
@@
expression r, ctx, f, loglevel, str;
@@
-if ((r = ff_reget_buffer(ctx, f)) < 0) {
- av_log(ctx, loglevel, str);
- return r;
-}
+if ((r = ff_reget_buffer(ctx, f)) < 0)
+ return r;
@@
expression r, ctx, f, loglevel, str, flags;
@@
-if ((r = ff_thread_get_buffer(ctx, f, flags)) < 0) {
- av_log(ctx, loglevel, str);
- return r;
-}
+if ((r = ff_thread_get_buffer(ctx, f, flags)) < 0)
+ return r;
...along with some manual patches for the remaining ones.
12 years ago
Anton Khirnov
759001c534
lavc decoders: work with refcounted frames.
12 years ago
Justin Ruggles
9a75ace2b2
atrac3: decode directly to the user-provided AVFrame
12 years ago
Carl Eugen Hoyos
034a125c8c
Support more atrac3-in-mkv samples.
...
The mkv demuxer sometimes finds 12 bytes of realmedia
extradata after the matroska real audio properties.
12 years ago
Michael Niedermayer
c8f25cafd2
atrac3: fix buffer size for get_bits.
...
Fixes out of array reads
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Karcher
dcbb920f15
Fix atrac3 decoder broken in e55d53905f
...
Signed-off-by: Michael Karcher <ffmpeg@mkarcher.dialup.fu-berlin.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Karcher
0e3afacd4d
atrac3: use correct loop variable in add_tonal_components()
...
Signed-off-by: Michael Karcher <ffmpeg@mkarcher.dialup.fu-berlin.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org
12 years ago
Anton Khirnov
594d4d5df3
lavc: add a wrapper for AVCodecContext.get_buffer().
...
It will be useful in the upcoming transition to refcounted AVFrames.
12 years ago
Reimar Döffinger
8aa29f063c
atrac3: do not use init_static_data to init VLC data.
...
It would be called while registering the codec, which means
it needlessly wastes memory when it is never used.
Instead do the work when first opening the codec.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years ago
Peter Ross
9ccc349f77
ensure comment blocks that contain doxygen commands start with double asterix
...
Reveiwed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
13451f5520
atrac3dec: Check coding mode against channels.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Justin Ruggles
44d854a518
atrac3: return an error if extradata_size is not a specific known size
...
Also fixes 3 compiler warnings about using uninitialized variables.
12 years ago
Justin Ruggles
5d1007f74d
atrac3: initialize static tables in AVCodec.init_static_data()
12 years ago
Justin Ruggles
a1f4cd371a
atrac3: replace a calculation with FFALIGN()
...
This allocates 4 bytes less than the previous code if avctx->block_align is
a multiple of 4, but the extra 4 bytes is not really needed.
12 years ago
Justin Ruggles
78edce3f19
atrac3: separate window initialization from IMDCT initialization
12 years ago
Justin Ruggles
808686fc1e
atrac3: remove unused ATRAC3Context field, sample_rate
12 years ago
Justin Ruggles
c51311b907
atrac3: move the 'frame_factor' field from ATRAC3Context to where it is used
12 years ago
Justin Ruggles
89a6c32bc1
atrac3: use sizeof(variable) instead of sizeof(type)
12 years ago
Justin Ruggles
327747de15
atrac3: simplify MDCT window calculation
12 years ago
Justin Ruggles
a2664c91fb
atrac3: move the 'samples_per_frame' field from ATRAC3Context to where it is used
12 years ago
Justin Ruggles
7e76f27081
atrac3: remove unused ATRAC3Context field, bit_rate
12 years ago
Justin Ruggles
7c1f93afe6
atrac3: remove unused ATRAC3Context field, samples_per_channel
12 years ago
Justin Ruggles
cdd0e0de81
atrac3: use AVCodecContext.block_align instead of keeping a private copy
12 years ago
Justin Ruggles
64ebbb8f89
atrac3: move the 'delay' field from ATRAC3Context to where it is used
12 years ago
Justin Ruggles
5ac673b553
atrac3: use AVCodecContext.channels instead of keeping a private copy
12 years ago
Justin Ruggles
56a9d2b44e
atrac3: move the 'version' field from ATRAC3Context to where it is used
12 years ago
Justin Ruggles
aefdb735c3
atrac3: simplify some loop indexing
12 years ago
Justin Ruggles
e55d53905f
atrac3: cosmetics: pretty-printing and renaming
...
also does some minor refactoring.
12 years ago
Justin Ruggles
9af4eaa8ea
atrac3: use float planar sample format
12 years ago
Michael Niedermayer
c5f0b6bf41
atrac3: replace powf(2,...) by exp2f()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
13 years ago
Michael Niedermayer
2f48dff455
atrac3: switch to av_assert
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Justin Ruggles
d5a7229ba4
Add a float DSP framework to libavutil
...
Move vector_fmul() from DSPContext to AVFloatDSPContext.
13 years ago
Martin Storsjö
00c3b67b8a
cosmetics: Align codec declarations
...
Also break some long lines, remove codec function placeholder comments
and add spaces in sample/pixel format lists.
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Michael Niedermayer
c509f4f747
atrac3: Fix crash in tonal component decoding.
...
Add a check to avoid writing past the end of the channel_unit.components[]
array.
Bug Found by: cosminamironesei
Fixes CVE-2012-0853
CC: libav-stable@libav.org
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
13 years ago
Martin Storsjö
9cf0841ef3
dsputil: Add ff_ prefix to the dsputil*_init* functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Martin Storsjö
99560a4caa
libavcodec: Add ff_ prefix to some nonstatic symbols
...
Prefix the functions atrac_generate_tables, atrac_iqmf, dct_quantize_c.
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Diego Biurrun
d4b63054d9
cosmetics: Drop unnecessary parentheses around return values.
13 years ago
Michael Niedermayer
9af6abdc17
atrac3: Fix crash in tonal component decoding.
...
Fixes Ticket780
Bug Found by: cosminamironesei
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Diego Biurrun
ee41963f19
cosmetics: drop some completely pointless parentheses
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
Justin Ruggles
2073224697
atrac3: support float or int16 output using request_sample_fmt
13 years ago
Justin Ruggles
a047851329
atrac3: add CODEC_CAP_SUBFRAMES capability
...
the decoder can handle multiple frames in a packet
13 years ago
Justin Ruggles
8f98577d4d
atrac3: return appropriate error codes instead of -1
13 years ago
Justin Ruggles
47b617021d
atrac3: make sure all memory is freed on init failure
13 years ago
Justin Ruggles
c91613857d
atrac3: add a couple macro constants
13 years ago
Justin Ruggles
1fead73d7b
atrac3: return error if packet is too small
13 years ago
Justin Ruggles
7e4881a2d0
atrac3: check output buffer size before decoding
13 years ago