Mans Rullgard [Sat, 8 Oct 2011 12:41:23 +0000 (13:41 +0100)]
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>
Laurent Aimar [Tue, 27 Sep 2011 12:16:41 +0000 (12:16 +0000)]
bink: Check for various out of bound writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Tue, 27 Sep 2011 12:16:41 +0000 (12:16 +0000)]
bink: Check for out of bound writes when building tree
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Mans Rullgard [Sat, 8 Oct 2011 01:09:42 +0000 (02:09 +0100)]
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>
Alex Converse [Sat, 8 Oct 2011 00:02:36 +0000 (17:02 -0700)]
mpegps: Use av_get_packet() instead of poorly emulating it.
Janne Grunau [Fri, 7 Oct 2011 16:08:55 +0000 (18:08 +0200)]
motionpixels: decode only the 111 complete frames for fate
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sun, 25 Sep 2011 20:06:20 +0000 (20:06 +0000)]
mpc8: Check out of bound bands limit
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 03:12:07 +0000 (03:12 +0000)]
xan: Prevent NULL dereference with missing palette
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 20:38:01 +0000 (20:38 +0000)]
xan: Check for out of bound reads in xan_huffman_decode()
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 03:12:07 +0000 (03:12 +0000)]
xan: Fixed out of bound accesses in xan_unpack()
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 03:12:07 +0000 (03:12 +0000)]
motionpixels: Prevent calling init_vlc() with invalid parameters
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Fri, 30 Sep 2011 01:26:22 +0000 (01:26 +0000)]
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>
Laurent Aimar [Thu, 29 Sep 2011 23:13:35 +0000 (23:13 +0000)]
dsicinav: Check for out of bounds writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 23:13:35 +0000 (23:13 +0000)]
tiertexseqv: Check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 23:13:35 +0000 (23:13 +0000)]
quickdraw: Check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 23:13:35 +0000 (23:13 +0000)]
dsicinav: Check for out of bounds reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 29 Sep 2011 23:13:35 +0000 (23:13 +0000)]
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>
Laurent Aimar [Thu, 29 Sep 2011 23:13:35 +0000 (23:13 +0000)]
motionpixels: Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffer
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Tue, 27 Sep 2011 22:15:31 +0000 (22:15 +0000)]
wmavoice: Check for corrupted extra data
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Tue, 27 Sep 2011 22:15:31 +0000 (22:15 +0000)]
wmavoice: Check for out of bound writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Tue, 27 Sep 2011 22:15:32 +0000 (22:15 +0000)]
xan: Prevent NULL dereferences with missing reference frame
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Tue, 27 Sep 2011 22:15:31 +0000 (22:15 +0000)]
bink: Prevent NULL dereferences with missing reference frame
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Mon, 26 Sep 2011 22:18:29 +0000 (22:18 +0000)]
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>
Laurent Aimar [Mon, 26 Sep 2011 22:18:29 +0000 (22:18 +0000)]
wmapro: Validate the number of audio channels before using it
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sun, 25 Sep 2011 20:06:19 +0000 (20:06 +0000)]
mpc8: Fix return value on EOF
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sun, 2 Oct 2011 00:48:12 +0000 (00:48 +0000)]
shorten: Prevent block size from increasing
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Tue, 27 Sep 2011 22:15:33 +0000 (22:15 +0000)]
xan: Prevent out of bound accesses
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Michael Niedermayer [Mon, 3 Oct 2011 22:14:48 +0000 (00:14 +0200)]
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>
Laurent Aimar [Fri, 23 Sep 2011 20:36:11 +0000 (22:36 +0200)]
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>
Laurent Aimar [Wed, 21 Sep 2011 18:46:33 +0000 (20:46 +0200)]
vp56: Release old pictures after a resolution changes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Wed, 21 Sep 2011 18:46:32 +0000 (20:46 +0200)]
vp6: Check for huffman tree build errors
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Wed, 21 Sep 2011 18:46:30 +0000 (20:46 +0200)]
vp56: Check for missing reference frame data
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sun, 11 Sep 2011 17:17:43 +0000 (19:17 +0200)]
cinepak: Fix invalid read access on extra data
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sun, 11 Sep 2011 17:17:45 +0000 (19:17 +0200)]
vmd: fix segfaults on corruped streams
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sat, 17 Sep 2011 14:56:35 +0000 (16:56 +0200)]
cook: Fix js_vlc_bits value validation for joint stereo
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Thu, 6 Oct 2011 20:53:41 +0000 (22:53 +0200)]
segafilm: Check for memory allocation failures in segafilm demuxer.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Mon, 12 Sep 2011 19:09:57 +0000 (21:09 +0200)]
segafilm: Fix potential division by 0 on corrupted streams in the demuxer
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sun, 11 Sep 2011 17:17:41 +0000 (19:17 +0200)]
Fixed segfault on corrupted sega streams in the demuxer.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Laurent Aimar [Sat, 10 Sep 2011 11:28:13 +0000 (13:28 +0200)]
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>
Anton Khirnov [Wed, 5 Oct 2011 19:09:51 +0000 (21:09 +0200)]
libx264: support 9- and 10-bit output.
Ronald S. Bultje [Mon, 3 Oct 2011 15:41:51 +0000 (08:41 -0700)]
h264: correct implicit_weight for field-interlaced pictures.
Ronald S. Bultje [Mon, 3 Oct 2011 15:38:03 +0000 (08:38 -0700)]
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.
Ronald S. Bultje [Mon, 3 Oct 2011 14:37:24 +0000 (07:37 -0700)]
mpegvideo: fix position of bottom edge.
It was wrong in colorspaces where horizontal and vertical chroma
subsampling are not the same, e.g. 422.
Diego Biurrun [Wed, 5 Oct 2011 09:12:01 +0000 (11:12 +0200)]
Fix 'heigth' vs. 'height' typos.
Anton Khirnov [Mon, 3 Oct 2011 17:14:03 +0000 (19:14 +0200)]
lavc/lavf: use unique private classes.
This is needed by the new AVOptions API.
Anton Khirnov [Mon, 3 Oct 2011 12:13:17 +0000 (14:13 +0200)]
lavc: use designated initializers for av_codec_context_class
Justin Ruggles [Wed, 14 Sep 2011 17:46:48 +0000 (13:46 -0400)]
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
Justin Ruggles [Wed, 14 Sep 2011 17:38:07 +0000 (13:38 -0400)]
qcelp: check output buffer size before decoding
Chris Rankin [Wed, 7 Sep 2011 09:17:30 +0000 (10:17 +0100)]
qcelpdec: fix the return value of qcelp_decode_frame().
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Justin Ruggles [Tue, 20 Sep 2011 19:27:44 +0000 (15:27 -0400)]
sipr: fix the output data size check and only calculate it once.
Diego Biurrun [Fri, 30 Sep 2011 15:28:28 +0000 (17:28 +0200)]
Synchronize various 4CCs and codec tags from FFmpeg.
Justin Ruggles [Wed, 14 Sep 2011 17:57:04 +0000 (13:57 -0400)]
qdm2: check output buffer size before decoding
Laurent Aimar [Fri, 30 Sep 2011 22:45:04 +0000 (00:45 +0200)]
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>
Laurent Aimar [Fri, 30 Sep 2011 22:45:05 +0000 (00:45 +0200)]
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>
Justin Ruggles [Mon, 26 Sep 2011 19:06:33 +0000 (15:06 -0400)]
ogg/celt: do not set sample_fmt in the demuxer
Anton Khirnov [Sun, 2 Oct 2011 07:14:30 +0000 (09:14 +0200)]
id3v2: remove pointless casts
Anton Khirnov [Sun, 2 Oct 2011 07:06:34 +0000 (09:06 +0200)]
id3v2: read TXXX frames with two calls to decode_str() instead of one.
Read the key in the first, value in the second.
This allows to avoid pointless strdups and simplify decode_str() by
dropping two of its parameters.
Anton Khirnov [Sun, 2 Oct 2011 05:16:09 +0000 (07:16 +0200)]
id3v2: don't discard the whole tag when encountering empty frames.
While they're technically invalid, it's better to skip them and try to
read the rest of the tag.
Anton Khirnov [Sun, 2 Oct 2011 14:10:53 +0000 (16:10 +0200)]
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)
Mans Rullgard [Sun, 2 Oct 2011 22:38:32 +0000 (23:38 +0100)]
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>
Justin Ruggles [Wed, 14 Sep 2011 15:39:21 +0000 (11:39 -0400)]
mpc8: check output buffer size before decoding
Justin Ruggles [Wed, 14 Sep 2011 15:16:42 +0000 (11:16 -0400)]
mpc7: return error if packet is too small.
Justin Ruggles [Tue, 13 Sep 2011 22:53:18 +0000 (18:53 -0400)]
mpc7: check output buffer size before decoding
Justin Ruggles [Wed, 14 Sep 2011 16:37:01 +0000 (12:37 -0400)]
nellymoserdec: allocate float_buf only when decoding to int16
Justin Ruggles [Wed, 14 Sep 2011 16:28:41 +0000 (12:28 -0400)]
nellymoserdec: use NELLY_BUF_LEN instead of 128
Justin Ruggles [Wed, 14 Sep 2011 16:27:12 +0000 (12:27 -0400)]
nellymoserdec: use NELLY_BLOCK_LEN instead of 64 when appropriate.
Justin Ruggles [Wed, 14 Sep 2011 16:25:00 +0000 (12:25 -0400)]
nellymoserdec: allow user to request SAMPLE_FMT_FLT for output samples.
Justin Ruggles [Wed, 14 Sep 2011 16:16:05 +0000 (12:16 -0400)]
nellymoser: check output buffer size before decoding
Luca Barbato [Sun, 25 Sep 2011 22:51:14 +0000 (00:51 +0200)]
win32: improve threading algorithm warning
If no threading is requested do not issue warning about unsupported
threading algorithm.
Anton Khirnov [Fri, 30 Sep 2011 15:12:13 +0000 (17:12 +0200)]
lavc: add video/audio/encoding flags to global_quality option
Luca Barbato [Fri, 30 Sep 2011 10:15:59 +0000 (12:15 +0200)]
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>
Luca Barbato [Mon, 26 Sep 2011 08:22:38 +0000 (10:22 +0200)]
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>
Justin Ruggles [Sun, 11 Sep 2011 17:18:51 +0000 (13:18 -0400)]
dpcm: return error if packet is too small
Justin Ruggles [Sun, 11 Sep 2011 16:46:06 +0000 (12:46 -0400)]
dpcm: use smaller data types for static tables
Justin Ruggles [Sun, 11 Sep 2011 16:43:03 +0000 (12:43 -0400)]
dpcm: use sol_table_16 directly instead of through the DPCMContext.
Justin Ruggles [Sun, 11 Sep 2011 16:41:48 +0000 (12:41 -0400)]
dpcm: replace short with int16_t
Justin Ruggles [Sun, 11 Sep 2011 16:40:40 +0000 (12:40 -0400)]
dpcm: check to make sure channels is 1 or 2.
Justin Ruggles [Sun, 11 Sep 2011 16:37:17 +0000 (12:37 -0400)]
dpcm: misc pretty-printing
Justin Ruggles [Sun, 11 Sep 2011 16:24:03 +0000 (12:24 -0400)]
dpcm: remove unnecessary variable by using bytestream functions.
Uses 'buf' directly instead of a separate iterator variable 'in'.
Justin Ruggles [Sun, 11 Sep 2011 16:13:13 +0000 (12:13 -0400)]
dpcm: move codec-specific variable declarations to their corresponding decoding blocks.
Justin Ruggles [Sun, 11 Sep 2011 16:08:38 +0000 (12:08 -0400)]
dpcm: consistently use the variable name 'n' for the next input byte.
Justin Ruggles [Sun, 11 Sep 2011 16:04:46 +0000 (12:04 -0400)]
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.
Justin Ruggles [Sun, 11 Sep 2011 15:51:08 +0000 (11:51 -0400)]
dpcm: calculate and check actual output data size prior to decoding.
Justin Ruggles [Sun, 11 Sep 2011 15:19:00 +0000 (11:19 -0400)]
dpcm: factor out the stereo flag calculation
Justin Ruggles [Sun, 11 Sep 2011 15:13:04 +0000 (11:13 -0400)]
dpcm: cosmetics: rename channel_number to ch
Make the code easier to read.
Nathan Caldwell [Wed, 28 Sep 2011 00:48:43 +0000 (18:48 -0600)]
avserver: Fix a bug where the socket is IPv4, but IPv6 is autoselected for the loopback address.
This fixes bind(8080): Address family not supported by protocol.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Martin Storsjö [Fri, 30 Sep 2011 17:30:35 +0000 (20:30 +0300)]
lavf: Avoid using av_malloc(0) in av_dump_format
On OS X, av_malloc(0) returns pointers that cause crashes when
freed.
Signed-off-by: Martin Storsjö <martin@martin.st>
Carl Eugen Hoyos [Wed, 21 Sep 2011 20:42:48 +0000 (20:42 +0000)]
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>
Mans Rullgard [Wed, 28 Sep 2011 20:53:03 +0000 (21:53 +0100)]
dca: NEON optimised high freq VQ decoding
Signed-off-by: Mans Rullgard <mans@mansr.com>
Justin Ruggles [Sat, 24 Sep 2011 01:54:44 +0000 (21:54 -0400)]
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.
Joakim Plate [Mon, 4 Jul 2011 22:18:32 +0000 (00:18 +0200)]
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>
Kieran Kunhya [Fri, 23 Sep 2011 15:51:07 +0000 (10:51 -0500)]
latmenc: Set latmBufferFullness to largest value to indicate it is not used
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Justin Ruggles [Sat, 10 Sep 2011 18:37:09 +0000 (14:37 -0400)]
adpcm: move codec-specific variable declarations to the sections for the corresponding codecs.
Justin Ruggles [Sat, 10 Sep 2011 18:24:00 +0000 (14:24 -0400)]
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.
Justin Ruggles [Sat, 10 Sep 2011 18:21:39 +0000 (14:21 -0400)]
adpcm: simplify reading of Funcom ISS frame header.
Justin Ruggles [Sat, 10 Sep 2011 17:54:02 +0000 (13:54 -0400)]
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.
Justin Ruggles [Sat, 10 Sep 2011 17:52:33 +0000 (13:52 -0400)]
adpcm: simplify reading of IMA DK4 frame header.
Justin Ruggles [Sat, 10 Sep 2011 03:18:03 +0000 (23:18 -0400)]
adpcm_ms: clean up reading of predictor coefficients
Justin Ruggles [Fri, 9 Sep 2011 22:43:19 +0000 (18:43 -0400)]
adpcm_4xm: process planar packets sequentially rather than simultaneously.
Also properly clip the right channel step_index.
Justin Ruggles [Fri, 9 Sep 2011 20:26:11 +0000 (16:26 -0400)]
adpcm_ima_wav: process channel-interleaved blocks sequentially rather than simultaneously.
Speeds up the ADPCM IMA WAV decoder by 15-20% overall.