| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
|
|
| |
There is no point in delaying the check and it avoids bugs with a
half-initialized context.
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
|
|
| |
Fixes possible access to freed memory.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
| |
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
| |
|
|
|
|
| |
AVStream.codec is always non-NULL
|
|
|
|
|
|
|
| |
Fixes a potential divide by zero.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
| |
Aligns frame dimensions to 16, which fixes potential invalid writes.
|
|
|
|
|
|
|
|
|
|
| |
They end up overwriting past the line end.
Partially based on a patch by Michael Niedermayer <michaelni@gmx.at>
Bug-Id: vlc/9700
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
|
|
|
|
|
|
|
| |
Right now it will spuriously fail if the linesize is exactly equal to
the data width.
CC:libav-stable@libav.org
|
|
|
|
|
|
|
|
|
|
|
| |
The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on
get_buffer2() to always provide buffers with linesize == 2 * width.
This is wrong, since we place no such restriction on get_buffer2()
implementations.
Fix this by decoding into internal buffers and copying them to output
frames. Since this is a very obscure decoder, the performance hit should
not be an issue.
|
|
|
|
|
|
|
|
|
|
|
| |
The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on
get_buffer2() to always provide buffers with linesize == 2 * width.
This is wrong, since we place no such restriction on get_buffer2()
implementations.
Fix this by decoding into internal buffers and copying them to output
frames. Since this is a very obscure decoder, the performance hit should
not be an issue.
|
| |
|
|
|
|
|
|
|
|
|
| |
Some HEVC conformance streams zip on
http://wftp3.itu.int/av-arch/jctvc-site/bitstream_exchange/draft_conformance/
were updated without changing the actual stream. Rename them in FATE
accordingly to make it easier to track future stream updates.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
|
|
|
|
|
|
|
| |
Also remove superseded conformance streams. The conformance streams all
come from http://wftp3.itu.int/av-arch/jctvc-site/bitstream_exchange/draft_conformance/
Signed-off-by: Anton Khirnov <anton@khirnov.net>
|
|
|
|
| |
Signed-off-by: Martin Storsjö <martin@martin.st>
|
| |
|
|
|
|
| |
flags.
|
| |
|
|
|
|
| |
each substream.
|
| |
|
|
|
|
|
|
| |
When downmixing 2.1 to 2-channel, if the 2.0 portion is Lt/Rt, sum-difference or dual mono, the actual output will be the same (with the LFE either mixed-in or discarded).
Also, when downmixing an arbitrary layout to 2-channel, if the bitstream contains custom downmix coefficients targeting Lt/Rt, then the output will be Lt/Rt rather than regular Stereo.
|
|
|
|
| |
Includes a libavcodec utility function to update a frame's side data.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
New versions of FreeType have moved the location of their API
header(s) and hide the location behind a macro.
Since the location changes between versions and no other way
to know the location exists, this workaround becomes necessary.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
|
|
|
|
|
|
|
|
| |
This avoids crashes when avserver tries to create an SDP, since
d77f4af.
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
|
| |
|
|
|
|
| |
AAC LD uses a low overlap sine window instead of a KBD window.
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
| |
Signed-off-by: Martin Storsjö <martin@martin.st>
|
|
|
|
| |
It has been disabled as 'broken' over 3 years ago in b716a792
|
| |
|
|
|
|
|
|
|
| |
function
This introduces some code duplication. However, much of it should go
away once the decoders stop using MpegEncContext.
|
|
|
|
| |
fc6a3ef40d34ce8443ae57c2452f3f273d7d4891
|
| |
|
|
|
|
| |
output zeroing
|
|
|
|
|
|
|
|
|
|
|
| |
Specifically, when the corresponding input channel exists and its matrix
column is all-zero (which is necessary for zeroing the output), the
matrix column must be removed from the matrix.
This is not done currently, so the mixing code would end up using
uninitialized pointers from stack.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
|
|
|
|
|
|
|
| |
This should make it easier to catch problems where some of those
pointers are used uninitialized, since reading from NULL should always
crash, while random numbers from stack can turn out to be valid
pointers, so random memory may be silently overwritten.
|
|
|
|
|
|
|
|
| |
If it was set before then we can end up trying to decode a slice without
a valid slice header, which can lead to invalid memory access.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
| |
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
|
|
|
| |
The code cannot handle there being none, but that should not happen for
valid files.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
| |
It is a public function, it must not assert on its parameters.
|
|
|
|
|
| |
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
| |
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
|
|
|
| |
It has been checking the number of bits in the offset instead of the
actual offset.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
|
|
|
|
|
|
|
|
| |
Otherwise the generic code will unref them, which can then result in
last_picture_ptr == current_picture_ptr, which causes deadlocks at least
in rv40.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
|
| |
|
|
|
|
| |
And remove all the circular inclusions of avutil.h while at it.
|