Michael Niedermayer [Mon, 1 Jul 2013 08:01:04 +0000 (10:01 +0200)]
jpeg2000: Validate SIZ parsing
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Michael Niedermayer [Mon, 1 Jul 2013 08:01:03 +0000 (10:01 +0200)]
jpeg2000: Validate SOT parsing
Avoid some overreads.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Michael Niedermayer [Mon, 1 Jul 2013 08:01:02 +0000 (10:01 +0200)]
jpeg2000: Use bytestream2
Prevent a number of overreads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Mon, 1 Jul 2013 08:01:01 +0000 (10:01 +0200)]
jpeg2000: Clean up return paths and error messages
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Mon, 1 Jul 2013 08:01:00 +0000 (10:01 +0200)]
jpeg2000: Define the maximum decomposition levels
And define the resolution levels according.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Michael Niedermayer [Mon, 1 Jul 2013 08:00:59 +0000 (10:00 +0200)]
jpeg2000: Check code-block size
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Mon, 1 Jul 2013 08:00:58 +0000 (10:00 +0200)]
jpeg2000: Validate resolution levels
There are 32 maximum decomposition levels, thus 33 resolution levels.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Anton Khirnov [Fri, 28 Jun 2013 16:38:37 +0000 (18:38 +0200)]
oggdec: do not fall back on binary search in the generic code.
Binary search is already attempted in the format-specific seek function,
so the fallback is only reached if binary search failed already.
Loren Merritt [Tue, 2 Jul 2013 05:56:56 +0000 (07:56 +0200)]
lls/x86: use 3-operator vaddpd in ADDPD_MEM
Fixes build with yasm-1.1
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Luca Barbato [Mon, 1 Jul 2013 04:49:46 +0000 (06:49 +0200)]
Revert "indeo5: reject negative motion vectors"
Negative motion vectors are possible.
This reverts commit
1194a410807bac3eafbeb632578b937656d273e7.
Luca Barbato [Sun, 30 Jun 2013 08:40:37 +0000 (10:40 +0200)]
indeo: check for reference when inheriting mvs
The same is done already for qdelta.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Sun, 30 Jun 2013 08:35:07 +0000 (10:35 +0200)]
indeo5: reject negative motion vectors
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Sun, 30 Jun 2013 08:11:05 +0000 (10:11 +0200)]
indeo: use proper error code
Luca Barbato [Sun, 30 Jun 2013 07:57:56 +0000 (09:57 +0200)]
indeo: Properly forward the error codes
If the tile data size does not match the buffer size it did not
return an AVERROR_INVALIDDATA causing futher corruption later.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Loren Merritt [Sun, 30 Jun 2013 22:56:58 +0000 (22:56 +0000)]
x86: lpc: fix a segfault in av_evaluate_lls_sse2()
Luca Barbato [Sat, 29 Jun 2013 04:07:57 +0000 (06:07 +0200)]
mjpeg: Check the unescaped size for overflows
And contextually check init_get_bits success and fix the reporting
message.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Sat, 29 Jun 2013 04:13:53 +0000 (06:13 +0200)]
mjpeg: Move code out of else branch
Simplify the control flow and spare some vertical space.
Derek Buitenhuis [Sat, 29 Jun 2013 18:20:20 +0000 (14:20 -0400)]
avconv: Don't include colorspace.h
The header is private, and avconv.c doesn't use it
for anything.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Luca Barbato [Sat, 29 Jun 2013 00:16:50 +0000 (02:16 +0200)]
wmapro: error out on impossible scale factor offsets
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Fri, 28 Jun 2013 23:56:09 +0000 (01:56 +0200)]
wmapro: check the min_samples_per_subframe
Must be at least WMAPRO_BLOCK_MIN_SIZE.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Sat, 29 Jun 2013 03:41:58 +0000 (05:41 +0200)]
pictor: use the correct logging context
Broken in
6d97484d72e33f7dde9493a9ead1a72e2f029605
Loren Merritt [Sun, 16 Jun 2013 00:53:47 +0000 (00:53 +0000)]
lpc: use levinson for the first pass of multipass cholesky
Levinson is faster, and cholesky is only needed if we want to apply different
weights to different samples, which doesn't happen on the first pass.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Loren Merritt [Tue, 18 Jun 2013 21:30:43 +0000 (21:30 +0000)]
x86: lpc: simd av_evaluate_lls
1.5x-1.8x faster on sandybridge
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Loren Merritt [Tue, 18 Jun 2013 21:30:42 +0000 (21:30 +0000)]
x86: lpc: simd av_update_lls
4x-6x faster on sandybridge
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Loren Merritt [Tue, 18 Jun 2013 21:30:41 +0000 (21:30 +0000)]
lpc: use function pointers, in preparation for asm
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Loren Merritt [Tue, 18 Jun 2013 21:30:40 +0000 (21:30 +0000)]
lpc: remove "decay" argument
We never used the rolling-average mode, and this makes av_update_lls 15% faster.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Fri, 28 Jun 2013 03:23:21 +0000 (05:23 +0200)]
wmapro: check num_vec_coeffs against the actual available buffer
Prevent yet another buffer overwrite.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Fri, 28 Jun 2013 03:21:33 +0000 (05:21 +0200)]
wmapro: return early on unsupported condition
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Fri, 28 Jun 2013 02:03:47 +0000 (04:03 +0200)]
wmapro: make sure there is room to store the current packet
Prevent horrid and hard to trace struct overwrite.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Fri, 28 Jun 2013 01:40:35 +0000 (03:40 +0200)]
lavc: move put_bits_left in put_bits.h
Luca Barbato [Mon, 6 May 2013 23:29:36 +0000 (01:29 +0200)]
aac: return meaningful errors
Luca Barbato [Wed, 26 Jun 2013 23:22:06 +0000 (01:22 +0200)]
aac: K&R formatting cosmetics
Alex Smith [Mon, 24 Jun 2013 21:10:12 +0000 (21:10 +0000)]
configure: Do not omit frame pointers for msvc/icl debug builds
Because O1 or O2 are required to build libav with msvc/icl, this must be
explicitly set instead of just omitting Oy.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Alex Smith [Mon, 24 Jun 2013 21:10:11 +0000 (21:10 +0000)]
configure: Do not explicitly set Oy for msvc/icl
It is implied by O1 or O2, both of which are required to build libav
with msvc/icl. Silences warnings when targeting x64 with icl.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Mon, 24 Jun 2013 22:26:08 +0000 (18:26 -0400)]
fate: Add Canopus Lossless YUY2 test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Mon, 24 Jun 2013 18:12:16 +0000 (14:12 -0400)]
cllc: Use outbuf in RGB and ARGB functions
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Sun, 23 Jun 2013 23:29:38 +0000 (19:29 -0400)]
cllc: Implement YUV support
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Sun, 23 Jun 2013 23:49:28 +0000 (19:49 -0400)]
doc/platform: Add info about ICL
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Rafaël Carré [Sun, 23 Jun 2013 21:00:34 +0000 (23:00 +0200)]
lavf: don't abort if both encoder and muxer aspect ratios are not set
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Rafaël Carré [Sun, 23 Jun 2013 21:00:33 +0000 (23:00 +0200)]
matroskaenc: restore compatibility with non referenced AVPacket
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Kieran Kunhya [Sat, 22 Jun 2013 15:16:11 +0000 (10:16 -0500)]
lavc: Add option to encode MPEG-2 AAC with libfdk-aac
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diego Biurrun [Thu, 20 Jun 2013 11:42:21 +0000 (13:42 +0200)]
configure: whitespace cosmetics
Diego Biurrun [Thu, 20 Jun 2013 11:42:20 +0000 (13:42 +0200)]
configure: Simplify an expression with enabled_all.
Alex Smith [Wed, 19 Jun 2013 21:07:49 +0000 (21:07 +0000)]
configure: More msvc/icl combining
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Luca Barbato [Thu, 20 Jun 2013 09:36:04 +0000 (11:36 +0200)]
ogg: relax demuxer conformance checks
Some samples in the wild are missing headers that are expected by the
specification but in practice do not affect decoding.
Luca Barbato [Wed, 19 Jun 2013 22:06:08 +0000 (00:06 +0200)]
avconv: report the error for codec open failure
External codec may have corner case reason to fail at init, better
report them instead having the user wonder.
Luca Barbato [Fri, 21 Jun 2013 10:47:01 +0000 (12:47 +0200)]
avconv: drop additional strerror fallback
strerror_r is called by av_strerror already.
Anton Khirnov [Tue, 18 Jun 2013 09:41:04 +0000 (11:41 +0200)]
lavc: free the padded last frame during audio encoding properly
Anton Khirnov [Thu, 20 Jun 2013 11:27:14 +0000 (13:27 +0200)]
vsrc_movie: do not free avoption variables in uninit()
The generic code frees them as well. Since av_free was used to free them
instead of av_freep, this would result in a double free.
Alex Smith [Wed, 19 Jun 2013 00:39:47 +0000 (20:39 -0400)]
configure: Remove unneeded icl inline compatibility definition
Signed-off-by: Martin Storsjö <martin@martin.st>
Anton Khirnov [Wed, 29 May 2013 19:03:20 +0000 (21:03 +0200)]
lavfi: switch ff_default_get_audio_buffer() to av_frame_get_buffer()
This simplifies the code and avoids using libavcodec-specific
avcodec_fill_audio_frame().
Vittorio Giovara [Mon, 17 Jun 2013 09:54:26 +0000 (11:54 +0200)]
lavfi: math typo in interlace filter
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Kostya Shishkov [Wed, 12 Jun 2013 12:30:51 +0000 (14:30 +0200)]
smacker: check frame size validity
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Kostya Shishkov [Wed, 12 Jun 2013 12:28:07 +0000 (14:28 +0200)]
smacker: pad the extradata allocation
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Kostya Shishkov [Wed, 12 Jun 2013 12:27:00 +0000 (14:27 +0200)]
smacker: check the return value of smacker_decode_tree
Also prevent a memory leak.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Kostya Shishkov [Wed, 12 Jun 2013 12:22:24 +0000 (14:22 +0200)]
smacker: fix an off by one in huff.length computation
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Janne Grunau [Sat, 15 Jun 2013 19:11:55 +0000 (22:11 +0300)]
utils: fix avcodec_flush_buffers pre-reference counting compatibility
The to_free AVframe must be freed just like the other ones.
Indeed, the calling application may expect all frames to be
released.
(This regression caused use-after-free in VLC with hwaccel.)
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Sat, 15 Jun 2013 10:03:27 +0000 (12:03 +0200)]
avf: move url utility functions in a separate file
Luca Barbato [Sat, 15 Jun 2013 09:56:36 +0000 (11:56 +0200)]
avf: move ff_write_chained to mux.c
Luca Barbato [Sat, 15 Jun 2013 09:44:07 +0000 (11:44 +0200)]
avf: move riff tags accessors where they belong
Luca Barbato [Sat, 15 Jun 2013 09:41:36 +0000 (11:41 +0200)]
avf: move ff_http_match_no_proxy to network
It is only used by network protocols.
Luca Barbato [Sat, 15 Jun 2013 09:26:09 +0000 (11:26 +0200)]
avf: split off format register and lookup function
Luca Barbato [Sat, 15 Jun 2013 08:28:30 +0000 (10:28 +0200)]
bitstream: forward error values and drop few abort()
Luca Barbato [Sat, 15 Jun 2013 08:19:51 +0000 (10:19 +0200)]
bitstream: K&R formatting cosmetics
Luca Barbato [Tue, 11 Jun 2013 15:57:31 +0000 (17:57 +0200)]
h264_mp4toannexb_bsf: return a padded buffer
The code using the returned buffer might expect it to be
FF_INPUT_BUFFER_PADDING_SIZE padded as any other avpacket.
Luca Barbato [Tue, 11 Jun 2013 14:44:04 +0000 (16:44 +0200)]
h264_mp4toannexb_bsf: factor out extradata parsing
Luca Barbato [Tue, 11 Jun 2013 14:12:01 +0000 (16:12 +0200)]
h264_mp4toannexb_bsf: K&R formatting cosmetics
Luca Barbato [Mon, 10 Jun 2013 14:37:43 +0000 (16:37 +0200)]
4xm: check bitstream_size boundary before using it
Prevent buffer overread.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Sun, 9 Jun 2013 19:50:57 +0000 (21:50 +0200)]
4xm: refactor decode_p_block
Directly return from code 1, 2 and 6 codepaths and simplify the
remaining one to have a single overflow check and a single call to
mcdc.
Luca Barbato [Sun, 9 Jun 2013 16:27:05 +0000 (18:27 +0200)]
4xm: do not overread the source buffer in decode_p_block
Check for out of picture macroblocks before calling mcdc.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Fri, 7 Jun 2013 14:18:22 +0000 (16:18 +0200)]
4xm: do not overread the prestream buffer
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Fri, 7 Jun 2013 14:16:46 +0000 (16:16 +0200)]
4xm: validate the buffer size before parsing it
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Thu, 6 Jun 2013 14:58:57 +0000 (16:58 +0200)]
4xm: reject frames not compatible with the declared version
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Thu, 6 Jun 2013 12:21:19 +0000 (14:21 +0200)]
4xm: drop pointless assert
Make sure the value of wlog2 is always between 0 and 3.
Luca Barbato [Wed, 5 Jun 2013 20:33:34 +0000 (22:33 +0200)]
4xm: forward errors from decode_p_block
Partially mitigate out of memory writes.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Wed, 5 Jun 2013 18:30:48 +0000 (20:30 +0200)]
4xm: fold last_picture lazy allocation in decode_p_frame
Luca Barbato [Wed, 5 Jun 2013 16:56:28 +0000 (18:56 +0200)]
4xm: do not overread while parsing header
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Wed, 5 Jun 2013 16:45:45 +0000 (18:45 +0200)]
4xm: refactor fourxm_read_header
Split sound and video tag parsing in separate functions.
Luca Barbato [Wed, 5 Jun 2013 15:32:49 +0000 (17:32 +0200)]
4xm: K&R formatting cosmetics
Luca Barbato [Wed, 5 Jun 2013 15:12:16 +0000 (17:12 +0200)]
4xm: use the correct logging context
Michael Niedermayer [Sun, 9 Jun 2013 14:55:10 +0000 (16:55 +0200)]
g2meet: Fix a typo in the height comparison
Signed-off-by: Martin Storsjö <martin@martin.st>
Kostya Shishkov [Tue, 11 Jun 2013 17:09:38 +0000 (19:09 +0200)]
g2meet: do not leak buffers
Kostya Shishkov [Tue, 11 Jun 2013 17:07:38 +0000 (19:07 +0200)]
g2meet: more graceful cursor loading
Kostya Shishkov [Tue, 11 Jun 2013 16:34:26 +0000 (18:34 +0200)]
g2meet: reset dimensions on header parsing errors
Anton Khirnov [Sat, 25 May 2013 17:22:59 +0000 (19:22 +0200)]
lavc: add a libwavpack encoder wrapper
Anton Khirnov [Tue, 4 Jun 2013 17:01:22 +0000 (19:01 +0200)]
lavc: use AVFrame API properly in pad_last_frame().
This also simplifies the code.
Sean McGovern [Mon, 27 May 2013 22:11:50 +0000 (18:11 -0400)]
matroskadec: introduce resync function.
This allows handling matroska files with errors.
Fixes test4.mkv and test7.mkv from the official Matroska test suite,
and by extension Bugzilla #62.
Based on a patch by Reimar Doffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Martin Storsjö [Wed, 5 Jun 2013 11:51:28 +0000 (14:51 +0300)]
configure: Don't add -fPIC on windows targets
This avoids warnings about this option not having any effect on
this platform.
We still want to enable the pic configure item for these platforms
(if detected via the compiler builtin define __PIC__) to get proper
inline assembly workarounds.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 28 May 2013 12:10:37 +0000 (15:10 +0300)]
configure: Don't explicitly disable PIC for windows targets
This reverts
e08c946c6 and
05165c2f7a. The actual intention of
e08c946c6 was to fix shared library builds for arm/win32, which
can also be accomplished in other ways.
Disabling pic on those platforms broke inline assembly on cygwin/64
(since some inline assembly requires knowing whether we are building
as PIC or not), and might also break inline assembly on other
compilers on windows.
As a side-effect, this unfortunately brings back all the warnings
about PIC not having any effect on that platform.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 28 May 2013 12:08:57 +0000 (15:08 +0300)]
configure: arm: Don't try to enable pic for shared libraries on win32
The object file format doesn't support PIC loads in ARM assembly,
there are no relocation types in PE/COFF that correspond to
BFD_RELOC_32_PCREL (R_ARM_REL32 in ELF).
Signed-off-by: Martin Storsjö <martin@martin.st>
Yusuke Nakamura [Sat, 8 Jun 2013 15:16:27 +0000 (00:16 +0900)]
utvideodec: Set colorspace by codec_tag.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Yusuke Nakamura [Sat, 8 Jun 2013 14:54:41 +0000 (23:54 +0900)]
riff: Support ULH0 and ULH2 fourccs.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Yusuke Nakamura [Sat, 8 Jun 2013 14:23:16 +0000 (23:23 +0900)]
utvideodec: Support ULH0 and ULH2 formats.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Luca Barbato [Mon, 3 Jun 2013 09:11:38 +0000 (11:11 +0200)]
faxcompr: return meaningful errors
And optionally forward them to the caller instead of concealing them.
Unify err and ret in a single variable.
Luca Barbato [Mon, 3 Jun 2013 08:37:15 +0000 (10:37 +0200)]
faxcompr: K&R formatting cosmetics
Luca Barbato [Mon, 3 Jun 2013 02:53:02 +0000 (04:53 +0200)]
tiff: do not overread the source buffer
At least 2 bytes from the source are read every loop.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Mon, 3 Jun 2013 02:00:43 +0000 (04:00 +0200)]
tiff: cleanup the error paths
Return the proper error values and optionally report them.
Luca Barbato [Mon, 3 Jun 2013 01:58:17 +0000 (03:58 +0200)]
tiff: refactor fax support in a separate function
Luca Barbato [Mon, 3 Jun 2013 01:51:05 +0000 (03:51 +0200)]
tiff: refactor deflate support in a separate function
Report when zlib support is missing.
Luca Barbato [Thu, 6 Jun 2013 06:02:50 +0000 (08:02 +0200)]
h264_parser: K&R formatting cosmetics