Laurent Aimar
a4ed7c3fe9
qtrle: check for invalid line offset
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Laurent Aimar
6d45702f7f
vqavideo: check for out of bound reads.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Laurent Aimar
b226af3910
vqavideo: check for invalid/unsupported version
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Laurent Aimar
6c1fb3e763
eamad: release the reference frame on video size changes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Laurent Aimar
da35797359
eamad: check for out of bound reads when doing MC
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Laurent Aimar
6e20554a6d
eamad: avoid NULL derefence when missing the reference frame.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Laurent Aimar
6bfe0d4c3d
eatgv: fix pointer arithmetic overflows.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:02 +02:00
Laurent Aimar
09302a897d
eatgv: fix out of bound reads on corrupted motions vectors.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:02 +02:00
Laurent Aimar
74b9c59839
eamad: clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffer
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:02 +02:00
Laurent Aimar
31ac9b30ae
atrac1: give a valid context pointer to av_log().
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:02 +02:00
Themaister
a3e11fa43c
Start adding pixel definitions for planar rgb.
2011-10-08 23:19:14 +02:00
Mohamed Naufal
0ef2e660c1
libstagefright: reindent after previous commit
2011-10-09 00:48:52 +05:30
Mans Rullgard
bb59156606
vp8: fix signed overflows
...
In addition to avoiding undefined behaviour, an unsigned type
makes more sense for packing multiple 8-bit values.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-08 20:03:55 +01:00
Mans Rullgard
e708afd3c0
motion_est: fix some signed overflows
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-08 20:03:55 +01:00
Mans Rullgard
559c244d42
dca: fix signed overflow in shift
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-08 20:03:55 +01:00
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>
2011-10-08 20:03:55 +01:00
Michael Niedermayer
db27bef747
dct-test: document the number of bits we use for testing.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 19:58:27 +02:00
Michael Niedermayer
3d5971d9f7
dct-test: better term for meximum error.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 19:57:30 +02:00
Laurent Aimar
a00676e48e
bink: Check for various out of bound writes
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-08 16:32:01 +02:00
Laurent Aimar
24adf7832b
bink: Check for out of bound writes when building tree
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-08 16:25:56 +02:00
Mans Rullgard
ac6eab1496
put_bits: fix invalid shift by 32 in flush_put_bits()
...
If flush_put_bits() is called when the 32-bit buffer is empty,
e.g. after writing a multiple of 32 bits, and invalid shift by
32 is performed. Since flush_put_bits() is called infrequently,
this additional check should have negligible performance impact.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-08 02:41:58 +01:00
Michael Niedermayer
9b47173545
Merge remote-tracking branch 'qatar/master'
...
* qatar/master: (24 commits)
mpegps: Use av_get_packet() instead of poorly emulating it.
motionpixels: decode only the 111 complete frames for fate
mpc8: Check out of bound bands limit
xan: Prevent NULL dereference with missing palette
xan: Check for out of bound reads in xan_huffman_decode()
xan: Fixed out of bound accesses in xan_unpack()
motionpixels: Prevent calling init_vlc() with invalid parameters
shorten: Fix out of bound writes in fix_bitshift()
dsicinav: Check for out of bounds writes
tiertexseqv: Check for out of bound reads
quickdraw: Check for out of bound reads
dsicinav: Check for out of bounds reads
motionpixels: Fix the size of workspace buffers
motionpixels: Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffer
wmavoice: Check for corrupted extra data
wmavoice: Check for out of bound writes
xan: Prevent NULL dereferences with missing reference frame
bink: Prevent NULL dereferences with missing reference frame
wavpack: Reset internal state on corrupted blocks
wmapro: Validate the number of audio channels before using it
...
Conflicts:
libavcodec/h264.c
libavcodec/xan.c
tests/ref/fate/motionpixels
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 03:39:01 +02:00
Michael Niedermayer
74f77eb048
H264: set colorspace and full range to values indicating unspecified by default
...
Code based on ffdshow
Author unknown
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 03:13:21 +02:00
Clément Bœsch
3775af0fec
bintext: reset x and y pos after each frame decode.
...
This makes successive frames decode possible.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 22:28:07 +02:00
Laurent Aimar
9bd854b1ff
mpc8: Check out of bound bands limit
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 17:15:45 +02:00
Laurent Aimar
7d17a794f0
xan: Prevent NULL dereference with missing palette
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 17:15:31 +02:00
Laurent Aimar
3db3fdf4c6
xan: Check for out of bound reads in xan_huffman_decode()
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:32 +02:00
Laurent Aimar
3e0757c2a8
xan: Fixed out of bound accesses in xan_unpack()
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:32 +02:00
Laurent Aimar
1cd0a55163
motionpixels: Prevent calling init_vlc() with invalid parameters
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:32 +02:00
Laurent Aimar
5f05cf4ea9
shorten: Fix out of bound writes in fix_bitshift()
...
The data pointers s->decoded[*] already take into account s->nwrap.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
1720603287
dsicinav: Check for out of bounds writes
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
64263dd526
tiertexseqv: Check for out of bound reads
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
4fd56f842c
quickdraw: Check for out of bound reads
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
e3ca9b93d9
dsicinav: Check for out of bounds reads
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
210c80331e
motionpixels: Fix the size of workspace buffers
...
Some buffers must be mod 4 in width and/or height.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
d337dd3a90
motionpixels: Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffer
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
d99427cb8b
wmavoice: Check for corrupted extra data
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
1c1449b548
wmavoice: Check for out of bound writes
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
06be075cda
xan: Prevent NULL dereferences with missing reference frame
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
c7e631986b
bink: Prevent NULL dereferences with missing reference frame
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
2c6cf13940
wavpack: Reset internal state on corrupted blocks
...
wavpack_decode_block() supposes that it is called back with the exact
same buffer unless it has returned with an error. With multi-channels
files, wavpack_decode_frame() was breaking this assumption.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:31 +02:00
Laurent Aimar
2c1ba79941
wmapro: Validate the number of audio channels before using it
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:30 +02:00
Laurent Aimar
95010d18b2
shorten: Prevent block size from increasing
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:30 +02:00
Laurent Aimar
124a16f678
xan: Prevent out of bound accesses
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:30 +02:00
Michael Niedermayer
f22bc68dc0
Merge remote-tracking branch 'hexene/stagefright'
...
* hexene/stagefright:
libstagefright: start decode_thread() only after decode_frame() is called at least once.
libstagefright: mark the dummy frame as keyframe.
libstagefright: limit the output queue size
libstagefright: return EOS if CustomSource::read() is called after decode_thread() returns
libstagefright: set the correct frame size
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 15:32:30 +02:00
Mohamed Naufal
a85996d834
libstagefright: start decode_thread() only after decode_frame() is called at least once.
...
This prevents the situation where EOS is passed as the first frame to the
h/w decoder and thus avoids a potential crash.
2011-10-07 18:32:44 +05:30
Mohamed Naufal
fedbf9177c
libstagefright: mark the dummy frame as keyframe.
...
This makes sure decoder->read() returns if it is the first frame fed.
2011-10-07 18:32:40 +05:30
Mohamed Naufal
295f13953d
libstagefright: limit the output queue size
2011-10-07 18:32:36 +05:30
Mohamed Naufal
23ea48f2f7
libstagefright: return EOS if CustomSource::read() is called after decode_thread() returns
2011-10-07 18:32:31 +05:30
Mohamed Naufal
09a49e8919
libstagefright: set the correct frame size
2011-10-07 18:32:23 +05:30
Michael Niedermayer
14c21c1ff5
H264: Only wait before triggering ff_thread_setup_complete() until the next slice that contains a start-of-field/frame macroblock
...
This allows concurrent decoding of the last field/frame, rather than
only the last slice, of data packets with multiple NAL units packed
together.
This will fix the slowdown reported in e.g. bug 52.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-07 14:23:26 +02:00
Michael Niedermayer
86602d1c79
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
vp6: Reset the internal state when aborting key frames header parsing
vp56: Release old pictures after a resolution changes
vp6: Check for huffman tree build errors
vp56: Check for missing reference frame data
cinepak: Fix invalid read access on extra data
vmd: fix segfaults on corruped streams
cook: Fix js_vlc_bits value validation for joint stereo
segafilm: Check for memory allocation failures in segafilm demuxer.
segafilm: Fix potential division by 0 on corrupted streams in the demuxer
Fixed segfault on corrupted sega streams in the demuxer.
Fixed deference of NULL pointer in motionpixels decoder.
libx264: support 9- and 10-bit output.
h264: correct implicit_weight for field-interlaced pictures.
mpegvideo: set correct offset for edge emulation buffer.
mpegvideo: fix position of bottom edge.
Conflicts:
libavcodec/motionpixels.c
libavcodec/mpegvideo.c
libavcodec/version.h
libavcodec/vmdav.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 03:38:50 +02:00
Michael Niedermayer
b93cb8383f
lavc: add ff_init_buffer_info()
...
Fixes seeking per fileposition in ffplay.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 02:29:31 +02:00
Laurent Aimar
5ec55d216e
h264: reject unsupported 422 9 bit streams
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 00:57:05 +02:00
Laurent Aimar
e588a5c2d4
h264: fix the size of PPS::chroma_qp_table
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 00:57:05 +02:00
Laurent Aimar
a72cad0a6c
vp6: Reset the internal state when aborting key frames header parsing
...
It prevents leaving the state only half initialized.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 00:37:32 +02:00
Laurent Aimar
3d09d0017d
vp56: Release old pictures after a resolution changes
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 00:27:24 +02:00
Laurent Aimar
066fff755a
vp6: Check for huffman tree build errors
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 00:27:03 +02:00
Laurent Aimar
0ec6d6e9b6
vp56: Check for missing reference frame data
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 00:25:43 +02:00
Laurent Aimar
d239d4b447
cinepak: Fix invalid read access on extra data
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 23:35:29 +02:00
Laurent Aimar
c0cbe36b18
vmd: fix segfaults on corruped streams
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 23:33:09 +02:00
Laurent Aimar
3a742470a8
cook: Fix js_vlc_bits value validation for joint stereo
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 23:31:06 +02:00
Michael Niedermayer
a3ba542af3
h264: fix fill_colmap() to not store entries mbaff style when the reference is not mbaff at all
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 22:54:00 +02:00
Laurent Aimar
69a0bce753
Fixed deference of NULL pointer in motionpixels decoder.
...
Some of the arguments given to init_vlc() come from the stream
and can be corrupted.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 22:29:12 +02:00
Clément Bœsch
696a780c47
bintext: fix warning message wording.
2011-10-06 18:42:42 +02:00
Gwenole Beauchesne
825dd135d8
vaapi: fix VC-1 decoding (reconstruct bitstream TTFRM correctly).
2011-10-06 15:35:48 +02:00
Michael Niedermayer
5bebb6e64b
mpeg1dec: More complete sofdec support
...
Fixes Ticket517
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 12:40:31 +02:00
Anton Khirnov
d97efd7f87
libx264: support 9- and 10-bit output.
2011-10-06 09:16:06 +02:00
Michael Niedermayer
6638207bce
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
Fix 'heigth' vs. 'height' typos.
lavc/lavf: use unique private classes.
lavc: use designated initializers for av_codec_context_class
Conflicts:
libavdevice/fbdev.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 03:42:14 +02:00
Ronald S. Bultje
4418aa9cb3
h264: correct implicit_weight for field-interlaced pictures.
2011-10-05 04:01:23 -07:00
Ronald S. Bultje
330deb7592
mpegvideo: set correct offset for edge emulation buffer.
...
Using the old code, half of it was unused and the other half was too
small for e.g. >8bpp interlaced data, causing random buffer overruns.
2011-10-05 04:01:23 -07:00
Ronald S. Bultje
0884dd5a1b
mpegvideo: fix position of bottom edge.
...
It was wrong in colorspaces where horizontal and vertical chroma
subsampling are not the same, e.g. 422.
2011-10-05 04:01:23 -07:00
Diego Biurrun
e83c2ddebf
Fix 'heigth' vs. 'height' typos.
2011-10-05 11:12:01 +02:00
Anton Khirnov
a4ea00d021
lavc/lavf: use unique private classes.
...
This is needed by the new AVOptions API.
2011-10-05 07:52:30 +02:00
Anton Khirnov
0ba1e1978d
lavc: use designated initializers for av_codec_context_class
2011-10-05 07:52:05 +02:00
Michael Niedermayer
ec1ffae0cd
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
qcelpdec: cosmetics: do not add line break before opening bracket in 'for', 'while', 'if/else', and 'switch' statements.
qcelp: check output buffer size before decoding
qcelpdec: fix the return value of qcelp_decode_frame().
sipr: fix the output data size check and only calculate it once.
Synchronize various 4CCs and codec tags from FFmpeg.
qdm2: check output buffer size before decoding
Fix out of bound reads in the QDM2 decoder.
Check for out of bound writes in the QDM2 decoder.
ogg/celt: do not set sample_fmt in the demuxer
Conflicts:
libavcodec/avcodec.h
libavcodec/qdm2.c
libavformat/oggparsecelt.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 04:07:59 +02:00
Michael Niedermayer
f7da257a89
h264: remove assert() on ref_frame_count.
...
This assert can fail if a SPS with a smaller value becomes active.
Fixes Ticket532
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 03:21:47 +02:00
Laurent Aimar
0333d234b0
h264: do not let invalid values in h->ref_count after a decoder reset.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 00:07:39 +02:00
Laurent Aimar
253d18b352
h264: bit depth/chroma idc changes must go through a full format negociation.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 00:07:39 +02:00
Laurent Aimar
a51fbb56bb
h254: explicitly initialize bit depth/chroma idc
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 00:07:39 +02:00
Michael Niedermayer
751a4efd4d
libx264: Fix loop failure due to bufsize becoming 0
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 23:21:52 +02:00
Justin Ruggles
dd376b1a12
qcelpdec: cosmetics: do not add line break before opening bracket in 'for',
...
'while', 'if/else', and 'switch' statements.
also fixes some spacing, but only if already changing a line
2011-10-04 17:10:11 -04:00
Justin Ruggles
e43dd3d2a8
qcelp: check output buffer size before decoding
2011-10-04 17:10:11 -04:00
Chris Rankin
bde2570013
qcelpdec: fix the return value of qcelp_decode_frame().
...
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-10-04 17:09:53 -04:00
Justin Ruggles
1b5a189f06
sipr: fix the output data size check and only calculate it once.
2011-10-04 16:13:20 -04:00
Diego Biurrun
12bd8532cf
Synchronize various 4CCs and codec tags from FFmpeg.
2011-10-04 11:58:53 +02:00
Clément Bœsch
1912c215e0
doxygen: remove a few @file parameters.
...
It is not mandatory and prevents breakage on rename.
2011-10-04 08:04:17 +02:00
Clément Bœsch
dc3aeba3b1
ass_split: fix invalid doxygen group end markers.
2011-10-04 07:48:56 +02:00
Clément Bœsch
a667e90aae
proresdec_gpl: remove wrong @file reference.
2011-10-04 07:48:56 +02:00
Clément Bœsch
64960fedee
bintext: remove wrong @file reference.
2011-10-04 07:48:55 +02:00
Michael Niedermayer
f962518036
pngdec: set reference correctly for corepng.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 06:39:29 +02:00
Michael Niedermayer
51b0694bc0
ff_dv_frame_profile2: Check input buffer size.
...
Based on code by DivX, Inc. / drffmpeg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 04:22:55 +02:00
Michael Niedermayer
dd968a2edf
cinepak: detect keyframes
...
Code by DivX, Inc.
Taken from drffmpeg
Author: unknown
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 04:16:28 +02:00
Justin Ruggles
7d49f79f1c
qdm2: check output buffer size before decoding
2011-10-03 21:34:19 -04:00
Laurent Aimar
5a19acb17c
Fix out of bound reads in the QDM2 decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-10-03 21:34:19 -04:00
Laurent Aimar
291d74a46d
Check for out of bound writes in the QDM2 decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-10-03 21:34:19 -04:00
Michael Niedermayer
2f9d6ffda7
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
id3v2: remove pointless casts
id3v2: read TXXX frames with two calls to decode_str() instead of one.
id3v2: don't discard the whole tag when encountering empty frames.
libvpx: fix build with older libvpx versions.
ARM: check for inline asm 'y' operand modifier support
Conflicts:
libavcodec/libvpxenc.c
libavformat/id3v2.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 03:24:59 +02:00
Luca Barbato
98df93c9fe
libvpxenc: support vpxencs command line options.
...
This simplifies useage for users who are used to vpxenc.
We continue to support the previous options with the exception of the flags
for which it would be slightly messy.
2011-10-04 03:18:33 +02:00
Michael Niedermayer
eaa21b6870
H264: hotfix for speedloss on frame threading and h264 files with slices.
...
This fix is not ideal as it still limits the multithreading on field pictures
to the 2nd field only.
Ill try to fix it properly to allow both fields to decode concurrently but this
needs more work.
This bug exists since and was caused by:
commit ea6331f8bb
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date: Mon Jun 20 10:24:33 2011 -0400
h264-mt: fix deadlock in packets with multiple slices (e.g. MP4).
2011-10-04 00:26:18 +02:00
Michael Niedermayer
a9255d3781
threads: warn in case of multiple finished setup calls.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-03 23:43:22 +02:00
Michael Niedermayer
360a3d8991
h264_parser: print AU size on error.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-03 23:43:22 +02:00
Michael Niedermayer
d5c0e89e7a
h264_parser: AVC support.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-03 23:43:22 +02:00
Anton Khirnov
24ec9ac475
libvpx: fix build with older libvpx versions.
...
VPX_ERROR_RESILIENT_DEFAULT and VPX_ERROR_RESILIENT_PARTITIONS weren't
defined before 4cb0ebe5b27d35ccc2a78c1d16f2622ddef21f74 (CommitDate: Tue
Jun 28 11:10:17 2011)
2011-10-03 13:06:24 +02:00
Mans Rullgard
6308729e68
ARM: check for inline asm 'y' operand modifier support
...
The inline asm added in bf5d46d
uses the 'y' modifier which
is only supported from gcc 4.5. This check allows building
with older compilers.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-03 08:56:24 +01:00
Ronald S. Bultje
a5dfeb612e
VP8: armv6 optimizations.
...
From 52.503s (~40fps) to 27.973sec (~80fps) decoding of 480p sintel
trailer, i.e. a ~2x speedup overall, on a Nexus S.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-03 01:49:36 +02:00
Michael Niedermayer
487e088e5e
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpc8: check output buffer size before decoding
mpc7: return error if packet is too small.
mpc7: check output buffer size before decoding
nellymoserdec: allocate float_buf only when decoding to int16
nellymoserdec: use NELLY_BUF_LEN instead of 128
nellymoserdec: use NELLY_BLOCK_LEN instead of 64 when appropriate.
nellymoserdec: allow user to request SAMPLE_FMT_FLT for output samples.
nellymoser: check output buffer size before decoding
win32: improve threading algorithm warning
Conflicts:
libavcodec/nellymoserdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-03 01:02:45 +02:00
Laurent Aimar
a4fd95b5d5
h264: fix intra 16x16 mode check when using mbaff and constrained_intra_pred.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 21:20:57 +02:00
Michael Niedermayer
6edce391cf
libvpxenc: cosmetics to make code more similar to lucas.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 21:20:46 +02:00
Laurent Aimar
c2b7f7748b
h264: check for invalid bit depth value.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 19:00:54 +02:00
Laurent Aimar
27d3361e34
h264: add entries for 11 and 12 bits in ff_h264_chroma_qp[][]
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 18:59:58 +02:00
Laurent Aimar
bcf881a685
h264: fix the check for invalid SPS:num_ref_frames.
...
This patch set the limit to 16.
For information, thoses previous commits:
41f7e2d11d
5cbb0e70a0
assumed it was either 30 or 32.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 16:48:58 +02:00
Laurent Aimar
2428b53f6d
h264: do not let invalid values in h->ref_count on ff_h264_decode_ref_pic_list_reordering() errors.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 16:48:58 +02:00
Laurent Aimar
db5b487551
Reject video with non multiple of 16 width/height in the 4xm decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 16:48:58 +02:00
Justin Ruggles
5674d4b0a3
mpc8: check output buffer size before decoding
2011-10-02 10:34:39 -04:00
Justin Ruggles
8290d1f38b
mpc7: return error if packet is too small.
2011-10-02 10:34:39 -04:00
Justin Ruggles
c8b5c4d274
mpc7: check output buffer size before decoding
2011-10-02 10:34:39 -04:00
Justin Ruggles
fac6b7f9f2
nellymoserdec: allocate float_buf only when decoding to int16
2011-10-02 10:19:04 -04:00
Justin Ruggles
32b484464c
nellymoserdec: use NELLY_BUF_LEN instead of 128
2011-10-02 10:19:04 -04:00
Justin Ruggles
ded0800d44
nellymoserdec: use NELLY_BLOCK_LEN instead of 64 when appropriate.
2011-10-02 10:19:04 -04:00
Justin Ruggles
84464b2e7f
nellymoserdec: allow user to request SAMPLE_FMT_FLT for output samples.
2011-10-02 10:19:04 -04:00
Justin Ruggles
8b31c086b6
nellymoser: check output buffer size before decoding
2011-10-02 10:19:04 -04:00
Luca Barbato
0e5cc174bb
win32: improve threading algorithm warning
...
If no threading is requested do not issue warning about unsupported
threading algorithm.
2011-10-02 08:58:08 +02:00
Michael Niedermayer
f8a4075eb8
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
lavc: add video/audio/encoding flags to global_quality option
libvpxenc: use libvpx's own defaults for some parameters
vpxenc: add private options
Conflicts:
libavcodec/libvpxenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 04:43:48 +02:00
Michael Niedermayer
0a19b4b0ba
4xm decoder: fix data size for i2 frames.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:40:26 +02:00
Michael Niedermayer
1008f639e2
4xm decoder: print some error messages in case of errors.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:39:59 +02:00
Laurent Aimar
9c661e952f
Check for out of bound accesses in the 4xm decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:24:17 +02:00
Laurent Aimar
b399cbfba5
Prevent block size from inreasing in the shorten decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:24:17 +02:00
Laurent Aimar
581898ae88
Check for out of bound reads in PTX decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:24:17 +02:00
Laurent Aimar
e1d5bbeb39
Fix the check for missing references in ff_er_frame_end() for H264.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:24:17 +02:00
Laurent Aimar
90a69b2f61
Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffers used in 4xm decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:24:17 +02:00
Laurent Aimar
4a8ff0636d
Prevent NULL dereference when the huffman table is invalid in the 4xm decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 03:24:16 +02:00
Michael Niedermayer
8c851ef5a8
h264: increase ref_poc size to 32 as it can be per field.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 00:47:54 +02:00
Michael Niedermayer
3af2de76ac
h264: set unused ref_counts to 0 as a precautionary meassure.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 00:45:41 +02:00
Michael Niedermayer
78f08c06e6
ff_dot_product(): change return value to int64_t
...
Idea-by: Vitor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 23:16:25 +02:00
Vitor Sessak
edf1a8e361
g729dec: initialize bit reader with the correct buffer size
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 18:18:06 +02:00
Michael Niedermayer
4159719473
g723.1_data: remove unneeded L
...
Found-by: Vitor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 18:13:30 +02:00
Michael Niedermayer
c9c7a776db
h264: try reading SPS with wrong escaping, it sometimes works better
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 17:59:27 +02:00
Anton Khirnov
b036a7180c
lavc: add video/audio/encoding flags to global_quality option
2011-10-01 07:16:56 +02:00
Luca Barbato
6450f26c9a
libvpxenc: use libvpx's own defaults for some parameters
...
Specifically, qmin/qmax, gop_size and keyint_min.
Fixes bug 47.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-01 07:16:56 +02:00
Luca Barbato
e3eb015ba4
vpxenc: add private options
...
Make libvpx support close to the libx264 one. Thanks to
Jan Gerber <j@v2v.cc> for the support.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-01 07:16:56 +02:00
Michael Niedermayer
fe70c1f45f
g729dec: prevent out of array access
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 06:07:05 +02:00
Michael Niedermayer
ef74ab20c2
Merge remote-tracking branch 'qatar/master'
...
* qatar/master: (34 commits)
dpcm: return error if packet is too small
dpcm: use smaller data types for static tables
dpcm: use sol_table_16 directly instead of through the DPCMContext.
dpcm: replace short with int16_t
dpcm: check to make sure channels is 1 or 2.
dpcm: misc pretty-printing
dpcm: remove unnecessary variable by using bytestream functions.
dpcm: move codec-specific variable declarations to their corresponding decoding blocks.
dpcm: consistently use the variable name 'n' for the next input byte.
dpcm: output AV_SAMPLE_FMT_U8 for Sol DPCM subcodecs 1 and 2.
dpcm: calculate and check actual output data size prior to decoding.
dpcm: factor out the stereo flag calculation
dpcm: cosmetics: rename channel_number to ch
avserver: Fix a bug where the socket is IPv4, but IPv6 is autoselected for the loopback address.
lavf: Avoid using av_malloc(0) in av_dump_format
dxva2_h264: pass the correct 8x8 scaling lists
dca: NEON optimised high freq VQ decoding
avcodec: reject audio packets with NULL data and non-zero size
dxva: Add ability to enable workaround for older ATI cards
latmenc: Set latmBufferFullness to largest value to indicate it is not used
...
Conflicts:
libavcodec/dxva2_h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:54:46 +02:00
Laurent Aimar
5ca5d432e0
Fix out of bound reads/writes in the TIFF decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:40 +02:00
Laurent Aimar
4a7876c6e4
Check for out of bound writes in the QDM2 decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:40 +02:00
Laurent Aimar
491eaf35ae
Fix out of bound reads in the QDM2 decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:40 +02:00
Laurent Aimar
346876ec16
Fix out of bound reads due to integer overflow in the ADPCM IMA Electronic Arts EACS decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:40 +02:00
Laurent Aimar
a5d46235f3
Check for out of bound reads in the Electronic Arts CMV decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:40 +02:00
Laurent Aimar
113d7be624
Prevent NULL dereferences when missing the reference frame in the Electronic Arts CMV decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:40 +02:00
Laurent Aimar
e9064c9ce8
Fix potential pointer arithmetic overflows in the Electronic Arts CMV decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:39 +02:00
Laurent Aimar
39993860e1
Prevent infinite loop in the ANM decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:39 +02:00
Laurent Aimar
7afe9e5638
Check for out of bound reads in AVS decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:39 +02:00
Michael Niedermayer
7322483d72
mpegvideo: increase emu edge buffer size
...
This fixes a crash with 422 H.264
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 01:16:25 +02:00
Justin Ruggles
08bd22a61b
dpcm: return error if packet is too small
2011-09-30 18:15:53 -04:00
Justin Ruggles
0354fb7ebe
dpcm: use smaller data types for static tables
2011-09-30 18:15:53 -04:00
Justin Ruggles
5a54d51017
dpcm: use sol_table_16 directly instead of through the DPCMContext.
2011-09-30 18:15:53 -04:00
Justin Ruggles
f47f7efd14
dpcm: replace short with int16_t
2011-09-30 18:15:53 -04:00
Justin Ruggles
8d77d12a2b
dpcm: check to make sure channels is 1 or 2.
2011-09-30 18:15:53 -04:00
Justin Ruggles
4bad464e7f
dpcm: misc pretty-printing
2011-09-30 18:15:53 -04:00
Justin Ruggles
1de8401c56
dpcm: remove unnecessary variable by using bytestream functions.
...
Uses 'buf' directly instead of a separate iterator variable 'in'.
2011-09-30 18:15:53 -04:00
Justin Ruggles
fc6faee0d1
dpcm: move codec-specific variable declarations to their corresponding decoding blocks.
2011-09-30 18:15:53 -04:00
Justin Ruggles
989bb7bd04
dpcm: consistently use the variable name 'n' for the next input byte.
2011-09-30 18:15:52 -04:00
Justin Ruggles
04b24cf94b
dpcm: output AV_SAMPLE_FMT_U8 for Sol DPCM subcodecs 1 and 2.
...
Uses the native sample format for the codec instead of left-shifting all
samples by 8.
2011-09-30 18:15:52 -04:00
Justin Ruggles
76db17dc7d
dpcm: calculate and check actual output data size prior to decoding.
2011-09-30 18:15:52 -04:00
Justin Ruggles
3db8db406f
dpcm: factor out the stereo flag calculation
2011-09-30 18:15:52 -04:00
Justin Ruggles
b09c7eefb7
dpcm: cosmetics: rename channel_number to ch
...
Make the code easier to read.
2011-09-30 18:15:52 -04:00
Reimar Döffinger
812010c17e
Remove unused variable.
...
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-09-30 23:33:43 +02:00
Carl Eugen Hoyos
bcb1555489
dxva2_h264: pass the correct 8x8 scaling lists
...
Copy the Inter 8x8 scaling list as second 8x8 matrix into DXVA2's
quantization matrix data structure instead of a potentially unset
Intra chroma scaling matrix.
Fix dxva2 decoding for some H264 samples.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-30 20:15:17 +02:00
Mans Rullgard
bf5d46d8e6
dca: NEON optimised high freq VQ decoding
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-30 19:01:23 +01:00
Justin Ruggles
6326afd5e9
avcodec: reject audio packets with NULL data and non-zero size
...
There is no valid reason the user should ever send such packets in the
first place, but the documentation for CODEC_CAP_DELAY states that the
codec is guaranteed not to get a NULL packet unless that capability is
set. That isn't true without preventing this case.
2011-09-30 11:02:50 -04:00
Jean First
f65c6f751f
Enable multithreding when decoding with libopenjpeg
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 15:40:56 +02:00
Jean First
125ea3ee06
Warn the user if lowres > max_lowres, set lowres to max_lowres and continue
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 15:30:35 +02:00
Joakim Plate
dcce09d64b
dxva: Add ability to enable workaround for older ATI cards
...
The workaround needs to be enabled per PCI ID which cannot be detected inside
libavcodec. So add a flag to manually enable the alternate behavior.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-30 11:17:53 +02:00
Laurent Aimar
f42b3195d3
Fix out of bound writes in fix_bitshift() of the shorten decoder.
...
The data pointers s->decoded[*] already take into account s->nwrap.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 04:14:23 +02:00
Michael Niedermayer
c329972687
g729: dont force all cpu optims to off but override just the one that doesnt work.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 03:02:02 +02:00
Michael Niedermayer
8045af65d4
ppc: fix usage of dsp_mask
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:43:20 +02:00
Michael Niedermayer
30ba924bc8
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
dca: clear inactive subbands only once in qmf_32_subbands()
vf_unsharp: set default chroma size value to 5x5
vf_unsharp: fix out-of-buffer read
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:19:36 +02:00
Laurent Aimar
5d7e3d7167
Check for out of bound reads in the Tiertex Limited SEQ decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:09:59 +02:00
Laurent Aimar
62234a4d3a
Fix the size of workspace buffers in the motion pixels decoder.
...
Some buffers must be mod 4 in width and/or height.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:09:59 +02:00
Laurent Aimar
e60619f9b4
Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffer used in motion pixels decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:09:59 +02:00
Laurent Aimar
3035c4034b
Check for out of bounds writes in the Delphine Software International CIN decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:09:58 +02:00
Laurent Aimar
8e5f093c2c
Check for out of bounds reads in the Delphine Software International CIN decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:09:57 +02:00
Laurent Aimar
44e2f0c3cd
Check for out of bound reads in the QuickDraw decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 02:09:57 +02:00
Michael Niedermayer
9cff6d9eff
libstagefright: change Libav to FFmpeg in copyright header with permission of author.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 00:08:20 +02:00
Laurent Aimar
c8b835954a
Check for out of bound reads in xan_huffman_decode() of the xan decoder.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 23:21:15 +02:00
Justin Ruggles
e562fbd003
adpcm: move codec-specific variable declarations to the sections for the corresponding codecs.
2011-09-29 16:54:01 -04:00
Justin Ruggles
9662539c10
adpcm: check buffer size in Funcom ISS decoder before reading header.
...
Also use the post-header data size to control termination of the main
decoding loop.
2011-09-29 16:54:01 -04:00
Justin Ruggles
ba5d2890d7
adpcm: simplify reading of Funcom ISS frame header.
2011-09-29 16:54:01 -04:00
Justin Ruggles
5c9eb4fabb
adpcm: check buffer size in IMA DK4 decoder before reading header.
...
Also use the post-header data size to control termination of the main
decoding loop.
2011-09-29 16:54:01 -04:00
Justin Ruggles
a57ea1a87e
adpcm: simplify reading of IMA DK4 frame header.
2011-09-29 16:54:01 -04:00
Justin Ruggles
8114f94ac9
adpcm_ms: clean up reading of predictor coefficients
2011-09-29 16:54:01 -04:00
Justin Ruggles
943f4db552
adpcm_4xm: process planar packets sequentially rather than simultaneously.
...
Also properly clip the right channel step_index.
2011-09-29 16:54:00 -04:00
Justin Ruggles
119974b164
adpcm_ima_wav: process channel-interleaved blocks sequentially rather than simultaneously.
...
Speeds up the ADPCM IMA WAV decoder by 15-20% overall.
2011-09-29 16:54:00 -04:00
Justin Ruggles
7c287b18a0
adpcm: update reference links
...
Add Multimedia Wiki link.
Mark dead links with [dead]. Some can still be accessed through archive.org.
Update URLs for pages which have moved.
Replace duplicated links in adpcmenc.c with a note to see the ADPCM decoder
reference documents.
2011-09-29 16:54:00 -04:00
Justin Ruggles
ac94b8bcc6
adpcm: simplify packet size bounds checking in the ADPCM IMA QT decoder.
...
This is easier to understand. It also avoids returning existing samples mixed
with new samples when the packet is too small.
2011-09-29 16:54:00 -04:00
Justin Ruggles
de0b586a87
adpcm: simplify and speed up several ADPCM decoders.
2011-09-29 16:54:00 -04:00
Justin Ruggles
5a9ed7c110
adpcm: pretty-print tables
2011-09-29 16:54:00 -04:00
Michael Niedermayer
04b4353f07
g723.1: very minor simplify of gen_acb_excitation()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 21:50:59 +02:00
Michael Niedermayer
631eee6e90
g723.1: use MULL(a,b,15) for MULL2()
...
idea by vitor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 21:46:37 +02:00
Michael Niedermayer
cb58adaaa3
g723.1: simplify scale_vector()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 21:44:04 +02:00
Michael Niedermayer
431f8af824
g723.1: replace loop of normalize_bits( by av_log2()
...
idea by vitor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 21:44:03 +02:00