Michael Niedermayer
9fb7a5af97
ws_snd1: Fix wrong samples counts.
...
This makes the check that avoids overwrite of the samples array actually
work properly.
fixes CVE-2012-0848
CC: libav-stable@libav.org
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-16 15:18:45 -05:00
Ronald S. Bultje
c6643fddba
golomb: avoid infinite loop on all-zero input (or end of buffer).
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-16 08:36:08 -08:00
Justin Ruggles
f320fb894c
bethsoftvid: pass palette in side data instead of in a separate packet.
...
Update FATE reference to account for now non-existent palette packet.
This also fixes the FATE test if frame data is not initialized in
get_buffer(), so update comment in avconv accordingly.
2012-02-16 10:47:11 -05:00
Kostya Shishkov
17b11ffec7
proresenc: initialise 'sign' variable
2012-02-16 06:48:24 +01:00
Christophe GISQUET
f3e084909b
mpegaudio: replace memcpy by SIMD code
...
By replacing memcpy with an unrolled loop using the alignment knowledge
it has, some speedup can be obtained.
Before (gcc 4.6.1): ~400 cycles
After: ~370 cycles
Overall, around 2% speed increase when decoding a 2400s mp3 to f32le.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-02-15 20:11:54 -08:00
Ronald S. Bultje
ae591aeea5
vc1: prevent using last_frame as a reference for I/P first frame.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-15 19:58:10 -08:00
Martin Storsjö
210f72845c
ppc: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:29 +02:00
Martin Storsjö
f73673a770
sh4: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:26 +02:00
Martin Storsjö
efd29844eb
mpegvideo: Add ff_ prefix to nonstatic functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:23 +02:00
Martin Storsjö
0ca1bdb37d
rtjpeg: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:20 +02:00
Martin Storsjö
6c28d65754
rv: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:17 +02:00
Martin Storsjö
d1b357d78b
vp56: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:14 +02:00
Martin Storsjö
27cfdc3e4f
vorbis: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:11 +02:00
Martin Storsjö
04d3822524
msmpeg4: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:08 +02:00
Martin Storsjö
5f2c159c0f
vc1: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:05 +02:00
Martin Storsjö
1fec055066
msmpeg4: Add ff_ prefixes to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:07:01 +02:00
Martin Storsjö
35e02a3d0e
snow: Add ff_ prefix to nonstatic symbols
...
This allows getting rid of a hack for conflicting symbol/define
names.
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:58 +02:00
Martin Storsjö
d6c8dcb8ac
mpeg12: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:56 +02:00
Martin Storsjö
6f13a371ec
mpeg4: Add ff_ prefixes to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:52 +02:00
Martin Storsjö
e9ca85e714
lagarith: Add ff_ prefix to lag_rac_init
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:49 +02:00
Martin Storsjö
c8e1b2fbc9
libavcodec: Add ff_ prefix to j_rev_dct*
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:46 +02:00
Martin Storsjö
873c89e2a6
dsputil: Add ff_ prefix to inv_zigzag_direct16
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:42 +02:00
Martin Storsjö
3e2efacdd8
libavcodec: Prefix fdct_ifast, fdct_ifast248
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:38 +02:00
Martin Storsjö
9cf0841ef3
dsputil: Add ff_ prefix to the dsputil*_init* functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:34 +02:00
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>
2012-02-15 22:06:29 +02:00
Martin Storsjö
e96b4a53df
vlc/rl: Add ff_ prefix to the nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:26 +02:00
Martin Storsjö
ddce8953a5
h263: Add ff_ prefix to nonstatic symbols
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:22 +02:00
Martin Storsjö
a082ac4125
mpegvideo: Remove a leftover function declaration
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:12 +02:00
Kostya Shishkov
1a265f6187
prores encoder
2012-02-15 07:14:51 +01:00
Kostya Shishkov
8835c2c829
prores: move data shared between decoder and encoder to common file
2012-02-15 07:14:45 +01:00
Kostya Shishkov
3ec623c22f
prores: fix multithreaded decoding case when slice quantisers are not the same
...
Since quantisation matrices are stored in context, decoding slices with
different quantisers in parallel leads to unpredictable content of
aforementioned matrices and wrong output picture thereof.
2012-02-15 07:14:35 +01:00
Paul B Mahol
dc4e57489f
CDXL demuxer and decoder
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-14 22:32:53 +01:00
Janne Grunau
18d1d5886b
rv30: check block type validity
...
Prevents crashes with the fuzzed samples from bugs 88, 89 and 125 after
"golomb: avoid infinite loop on all-zero input".
2012-02-14 19:03:10 +01:00
Paul B Mahol
2af3dc8698
ttadec: CRC checking
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-14 13:00:55 -05:00
Janne Grunau
2bd730010d
rv34: handle size changes during frame multithreading
...
Factors all context dynamic memory handling to its own functions.
Fixes bug 220.
2012-02-14 14:46:11 +01:00
Janne Grunau
b54b40b33c
rv40: prevent undefined signed overflow in rv40_loop_filter()
2012-02-14 14:42:55 +01:00
Janne Grunau
29330721b0
rv34: use AVERROR return values in ff_rv34_decode_frame()
...
Also adds an error message.
2012-02-14 14:42:55 +01:00
Janne Grunau
bf61ef2316
rv34: use uint16_t for RV34DecContext.deblock_coefs
...
It is used as bitfield with 16 entries.
2012-02-14 14:42:55 +01:00
Diego Biurrun
a8798c7eb9
Drop unnecessary av_uninit attributes from some variable declarations.
...
Recent versions of gcc (4.4+) no longer give false positive warnings.
2012-02-13 19:20:52 +01:00
Diego Biurrun
0bf184e59c
Move PS2 MMI code below the mips subdirectory, where it belongs.
...
Also give a more suitable name to the MMI-optimized IDCT;
it is not PS2-specific, as the name currently suggests.
2012-02-13 09:59:53 +01:00
Diego Biurrun
75f11901b5
mips: Move MMI function declarations to a header.
...
This fixes compilation with -Werror=missing-prototypes.
2012-02-13 09:59:52 +01:00
Anton Khirnov
3dffa1b46c
cljr: implement encode2.
2012-02-12 08:05:57 +01:00
Anton Khirnov
177bb4bf50
cljr: set the properties of the coded_frame, not input frame.
2012-02-12 08:05:38 +01:00
Anton Khirnov
89829242a6
dnxhdenc: switch to encode2.
2012-02-12 08:03:46 +01:00
Anton Khirnov
3f77c41171
bmpenc: switch to encode2().
2012-02-12 08:02:28 +01:00
Aneesh Dogra
41afdd913a
sunrast: Return AVERROR values instead of -1.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-02-11 13:32:29 -08:00
Aneesh Dogra
4fbccfab23
sunrast: Add support for gray8 decoding.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-02-11 11:05:43 -08:00
Justin Ruggles
764852d653
alacenc: use AVCodec.encode2()
2012-02-11 12:49:23 -05:00
Justin Ruggles
bee80054f7
alacenc: cosmetics: indentation
2012-02-11 12:49:22 -05:00
Justin Ruggles
b6e8ff72ea
alacenc: consolidate bitstream writing into a single function.
...
Simplifies use of verbatim mode.
2012-02-11 12:49:22 -05:00
Justin Ruggles
b590f3a7bf
alacenc: only encode frame size in header for a final smaller frame
...
Otherwise it is not needed because it matches the frame size as encoded in
the extradata.
2012-02-11 12:49:22 -05:00
Justin Ruggles
ba821b098b
alacenc: store current frame size in AlacEncodeContext.
...
This avoids an indirection and will simplify implementation of encode2()
2012-02-11 12:49:22 -05:00
Justin Ruggles
65d15aec77
alacenc: return AVERROR codes in alac_encode_frame()
2012-02-11 12:49:22 -05:00
Justin Ruggles
302daf5800
alacenc: calculate a new max frame size for the final small frame
...
Gives a better estimate of buffer requirements and a better decision of
whether or not to use verbatim mode.
2012-02-11 12:49:22 -05:00
Justin Ruggles
fc9cf0b2a6
alacenc: pretty-printing and other cosmetics
2012-02-11 12:49:22 -05:00
Justin Ruggles
51c2483862
alacenc: fix error handling and potential memleaks in alac_encode_init()
2012-02-11 12:49:22 -05:00
Justin Ruggles
6e63228323
alacenc: do not set coded_frame->key_frame
...
It is already set in avcodec_alloc_frame()
2012-02-11 12:49:21 -05:00
Justin Ruggles
64fe3eaeb3
alacenc: do not set bits_per_coded_sample
...
encoded ALAC does not have a fixed number of bits per sample
2012-02-11 12:49:21 -05:00
Justin Ruggles
43a4cb070b
alacenc: remove unneeded frame_size check in alac_encode_frame()
2012-02-11 12:49:21 -05:00
Ronald S. Bultje
7416d61036
tta: error out if samplerate is zero.
...
Prevents a division by zero later on.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-11 08:13:53 -08:00
Justin Ruggles
6ab681a4c1
ttadec: fix invalid free when an error occurs while decoding 24-bit tta
2012-02-10 20:35:10 -05:00
Justin Ruggles
9d7cee50aa
wavpack: add needed braces for 2 statements inside an if block
2012-02-10 20:27:55 -05:00
Paul B Mahol
f98ede7e61
v210enc: remove redundant check for pix_fmt
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-10 15:59:23 -05:00
Paul B Mahol
c388558d31
wavpack: allow user to disable CRC checking
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-10 15:54:08 -05:00
Aneesh Dogra
eeb9e61a51
v210enc: Use Bytestream2 functions
...
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-10 15:38:24 -05:00
Paul B Mahol
dcd2b55e1a
Check AVCodec.pix_fmts in avcodec_open2()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-02-10 13:24:37 -05:00
Alex Converse
9e1db721c4
svq3: Prevent illegal reads while parsing extradata.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-02-10 09:57:39 -08:00
Rafaël Carré
b24aaabd44
remove ParseContext1
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-10 15:48:52 +01:00
Rafaël Carré
797639dcfd
vc1: use ff_parse_close
...
It works as long as ParseContext is the first member of the private struct
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-10 15:48:52 +01:00
Rafaël Carré
07554ace70
mpegvideo parser: move specific fields into private context
...
This obviates using ParseContext1, which is slated for removal.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-10 15:48:51 +01:00
Rafaël Carré
e40924887a
mpeg4video parser: move specific fields into private context
...
This obviates using ParseContext1, which is slated for removal.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-10 15:48:51 +01:00
Rafaël Carré
53a09964f0
cavs parser: fix parser context type
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-10 15:48:51 +01:00
Yordan Makariev
0c5d78a898
4xm, timefilter: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-10 15:48:50 +01:00
Ronald S. Bultje
45b7bd7c53
h264: disallow constrained intra prediction modes for luma.
...
Conversion of the luma intra prediction mode to one of the constrained
("alzheimer") ones can happen by crafting special bitstreams, causing
a crash because we'll call a NULL function pointer for 16x16 block intra
prediction, since constrained intra prediction functions are only
implemented for chroma (8x8 blocks).
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-09 22:57:01 -08:00
Alex Converse
81749f30cd
dv: Move tables from dvdata.h to dvdata.c
2012-02-09 19:16:15 -08:00
Alex Converse
8dbdc2d840
dv: Move a table used only by the demuxer out of a shared header.
2012-02-09 19:16:15 -08:00
Alex Converse
89c9a8d3fd
dv: Move functions used only by the encoder out of a shared header.
2012-02-09 19:16:15 -08:00
Alex Converse
3746072712
dv: Split dvdata.h into dvdata.h and dvquant.h
2012-02-09 19:16:15 -08:00
Justin Ruggles
b758cf7343
avcodec: set avpkt->size to 0 if encode2() did not output a packet
2012-02-09 21:51:41 -05:00
Justin Ruggles
a75bc764ec
avcodec: for audio encoding, set packet dts to packet pts.
...
There are no audio encoders which do frame reordering.
2012-02-09 21:51:29 -05:00
Justin Ruggles
d483bb58c3
ac3dsp: do not use pshufb in ac3_extract_exponents_ssse3()
...
We need to do unsigned saturation in order to cover the corner case when the
absolute coefficient value is 16777215 (the maximum value).
Fixes Bug #216
2012-02-09 21:04:44 -05:00
Michael Niedermayer
e6d9fa66f1
ac3dec: Move center and surround mix level tables to the parser.
...
That way all mix levels as exported by avpriv_ac3_parse_header()
will have the same meaning.
Previously the 3-bit center mix level for E-AC-3 was used to index in a
4-entry table, leading to out-of-array reads.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-02-09 16:36:02 -08:00
Alex Converse
7b05025856
aacdec: Unify preconfigured layout and PCE layout.
2012-02-09 13:33:07 -08:00
Alex Converse
f1ecd0802d
aacdec: Support native channel layout when requested.
2012-02-09 13:33:07 -08:00
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.
2012-02-09 13:33:06 -08:00
Martin Storsjö
e7d4a2a721
libavcodec: Don't do av_free(av_malloc(0)) for bitstream filters
...
This fixes crashes on exit when closing a bitstream filter that
hasn't allocated any private data, on OS X.
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-09 23:13:50 +02:00
Janne Grunau
c57fe49da8
eac3dec: replace undefined 1<<31 with INT32_MIN in noise generation
2012-02-09 21:28:37 +01:00
Ronald S. Bultje
73e15e8e6b
prores: specify array size outside DECLARE_ALIGNED brackets.
2012-02-09 11:07:12 -08:00
Paul B Mahol
9aff2d1753
tta: use skip_bits_long()
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-02-09 17:10:26 +01:00
Diego Biurrun
f769cfedd8
build: Add missing directories to DIRS declarations.
2012-02-09 12:26:48 +01:00
Diego Biurrun
aa06d65693
arm: Add missing #include to vp8.h to fix a make checkheaders warning.
2012-02-09 12:26:47 +01:00
Diego Biurrun
0bba26466f
cosmetics: Delete empty lines at end of file.
2012-02-09 12:26:45 +01:00
Aneesh Dogra
ab9ae40152
bytestream: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-02-09 11:37:14 +01:00
Anton Khirnov
cd1ad18a65
rawenc: switch to encode2().
...
This changes a number of FATE results, since before this commit, the
timestamps in all tests using rawenc were made up by lavf.
In most cases, the previous timestamps were completely bogus.
In some other cases -- raw formats, mostly h264 -- the new timestamps
are bogus as well. The only difference is that timestamps invented by
the muxer are replaced by timestamps invented by the demuxer.
cscd -- avconv sets output codec timebase from r_frame_rate
and r_frame_rate is in this case some guessed number 31.42 (377/12),
which is not accurate enough to represent all timestamps. This results
in some frames having duplicate pts. Therefore, vsync 0 needs to be
changed to vsync 2 and avconv drops two frames. A proper fix in the
future would be to set output timebase to something saner in avconv.
nuv -- previous timestamps for video were wrong AND the cscd
comment applies, one frame is dropped.
vp8-signbias -- the file contains two frames with identical timestamps,
so -vsync 0 needs to be removed/changed to -vsync 2 and avconv drops one
frame.
vc1-ism -- apparrently either the demuxer lies about timestamps or the
file is broken, since dts == pts on all packets, but reordering clearly
takes place.
2012-02-08 21:51:24 +01:00
Anton Khirnov
38d5533228
pixdesc: mark pseudopaletted formats with a special flag.
...
This makes it possible to dintinguish them from PAL8.
Fixes an invalid write in avpicture_layout().
2012-02-08 21:01:31 +01:00
Anton Khirnov
06484d0b8a
libx264: implement encode2().
2012-02-08 20:59:07 +01:00
Anton Khirnov
05d699222d
libx264: split extradata writing out of encode_nals().
...
This is done in preparation for the following patch.
2012-02-08 20:58:48 +01:00
Anton Khirnov
52f82a1148
lavc: add avcodec_encode_video2() that encodes from an AVFrame -> AVPacket
...
Deprecate avcodec_encode_video().
2012-02-08 20:54:24 +01:00
Ronald S. Bultje
ce1e250ee9
h264: manually save/restore XMM registers for functions using INIT_MMX.
...
On Win64, these registers are callee-save, so not saving/restoring them
correctly is a violation of ABI and can lead to crashes or corrupt data.
2012-02-08 10:31:14 -08:00
Alex Converse
314af0ff94
aacdec: Use correct speaker order for 7.1.
...
The spec says the following speaker mapping is default:
center front speaker
left, right center front speakers,
left, right outside front speakers,
left surround, right surround rear speakers,
front low frequency effects speaker
2012-02-08 09:56:37 -08:00