Commit Graph

35995 Commits

Author SHA1 Message Date
Janne Grunau 61c6eef545 h264: prevent decoding of slice NALs in extradata
It is not posible to call get_buffer during frame-mt codec
initialization. Libavformat might pass huge amounts of data as
extradata after parsing broken files. The 'extradata' for the fuzzed
sample sample_varPAR_s5374_r001-02.avi is 2.8M large and contains
multiple slices.
2012-12-18 11:01:14 +01:00
Derek Buitenhuis 26e4f0c70f doxy: Clarify what avpriv_set_pts_info does
The "pts for a given stream" was nonsensical.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-12-17 11:20:00 -05:00
Diego Biurrun c35f0e8495 au: Reorder code so that both muxer and demuxer are under #ifdefs
This reduces code size when either piece has been disabled.
2012-12-17 17:02:22 +01:00
Diego Biurrun 4d6c96fd69 fate: Move RALF test into lossless audio group 2012-12-17 17:02:22 +01:00
Diego Biurrun 81c7c817a4 cosmetics: Use consistent names for multiple inclusion guards. 2012-12-17 17:02:22 +01:00
Hendrik Leppkes 0cf3505930 avresample: use valid log context in mixing functions
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-12-16 19:59:58 -05:00
Justin Ruggles f1c2915ce1 lavr: remove automatic context close/open for resampling compensation
It adds unnecessary complication for insignificant usability improvement.
The user really should know if they'll need resampling compensation before
opening the context.

Note that only the documentation has changed. The current functionality will
still work until the next major bump.
2012-12-16 19:26:17 -05:00
Justin Ruggles f322b20735 lavr: only save/restore the mixing matrix if mixing is being done 2012-12-16 19:26:17 -05:00
Martin Storsjö e798085f96 rtpdec_vp8: Cosmetics: Fix bad alignment/indentation
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-16 21:33:20 +02:00
Martin Storsjö 3b2e8d1d21 rtpenc: Allow including a SDES/CNAME block in RTCP SR packets
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-16 21:32:58 +02:00
Martin Storsjö 65e053271a rtpenc_vp8: Include the picture number in VP8 packets
This makes it easier for receivers to decide what to do if data
is lost.

Refactor calculating the max payload size, to avoid hardcoding the
header size in too many places, reducing the number of lines that
have to be touched if the header is adjusted further.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-16 21:32:13 +02:00
Janne Grunau a421bbfe83 h264: fix memleak on error during SPS parsing
Introduced in d7d6efe42b.
2012-12-15 19:16:39 +01:00
Janne Grunau 27c8337e59 h264-mt: handle NAL_DPAs before calling ff_thread_finish_setup
Since a NAL_DPA can start a new frame it has to be handled before
ff_thread_finish_setup is called.
2012-12-15 19:06:37 +01:00
Justin Ruggles 230acdde26 lavr: move AudioMix struct definition to audio_mix.c 2012-12-15 12:26:15 -05:00
Luca Barbato f33b5ba63e vp56: release frames on error
Fixes CVE-2012-2783

CC: libav-stable@libav.org
2012-12-14 13:21:59 +01:00
Luca Barbato bb675d3ac6 vp56: make parse_header return standard error codes
Returning 0 for failure is misleading.

CC: libav-stable@libav.org
2012-12-14 13:21:59 +01:00
Anton Khirnov deabb52ab4 ivi_common: check that scan pattern is set before using it.
Fixes CVE-2012-2791.

CC: libav-stable@libav.org
2012-12-14 07:10:53 +01:00
Anton Khirnov 07acdd651d ivi_common: use proper logging context in ivi_decode_blocks(). 2012-12-14 07:10:48 +01:00
Anton Khirnov 8ab42021f2 ivi_common: make some functions and tables static. 2012-12-14 07:08:38 +01:00
Justin Ruggles 4e5a8878d5 asyncts: ignore min_delta only if first_pts is set 2012-12-13 18:51:56 -05:00
Justin Ruggles c0dc57f126 asyncts: merge two conditions 2012-12-13 18:51:56 -05:00
Janne Grunau 0995ad8db4 x86inc: fully concatenate tokens to fix macro expansion for nasm
Fixes build errors with nasm introduced in 6f40e9f070 for stack
memory alignment. Noticed by BugMaster.
2012-12-13 23:57:09 +01:00
Janne Grunau 0eae920c3c h264: initialize frame-mt context copies properly 2012-12-13 21:02:42 +01:00
Janne Grunau 6a27ae28f9 mpegvideo: treat delayed pictures as used
This requires to move the avcodec_default_free_buffers() call to
ff_MPV_common_end() since otherwise delayed pictures would get freed
during a size change.
2012-12-13 21:02:42 +01:00
Janne Grunau bd255f9feb lavc: set frame parameters after decoding only if necessary
Direct rendering capable decoders call get_buffer() which will set the
frame parameters.

Prevents frames with wrong parameters when a decoder outputs delayed
frames after a resolution or pixel format change.
2012-12-13 21:02:42 +01:00
Janne Grunau 072be3e896 h264: set parameters from SPS whenever it changes
Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with
alternating bit depths.
2012-12-13 21:02:42 +01:00
Justin Ruggles 0ee440fe38 asyncts: cosmetics: reindent 2012-12-13 13:02:21 -05:00
Justin Ruggles b35e5d985d doc: improve documentation for the asyncts filter first_pts option
Note the time base for the option. Add an additional example description.
2012-12-13 13:02:21 -05:00
Justin Ruggles c143de40c3 asyncts: fix the asyncts behavior when using the first_pts option
Currently it will do padding, but it does not properly handle
start-of-stream trimming as documented.
2012-12-13 13:02:21 -05:00
Justin Ruggles 8083332c2d asyncts: use clipped delta value when setting resample compensation
The max_comp option is supposed to limit maximum compensation, but
currently the clipped value is not actually used.
2012-12-13 13:02:21 -05:00
Justin Ruggles f266486b2e asyncts: fix flushing of final samples at EOF 2012-12-13 13:02:21 -05:00
Luca Barbato be75fed975 vp6: properly fail on unsupported feature
Interlacing is not supported at all and mismanaged down the normal
codepaths causing possible buffer management issues.

CC: libav-stable@libav.org
2012-12-13 17:05:45 +01:00
Alex Converse 6d5b009267 aacdec: Fix an off-by-one overwrite when switching to LTP profile from MAIN.
Found-by: pawlkt
CC: libav-stable@libav.org
2012-12-12 13:22:10 -08:00
Ronald S. Bultje 140367aff9 x86inc: fix stack alignment on win64
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 21:30:49 +02:00
Martin Storsjö 29d2595ad7 rtpproto: Remove unused defines
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 16:01:24 +02:00
Martin Storsjö f3f60dcbdd rtpdec_mpeg4: Cosmetic cleanup
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:50 +02:00
Martin Storsjö 584a017925 rtpdec: Cosmetic cleanup of the header
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:44 +02:00
Martin Storsjö abf74a1169 rtpdec: Get rid of a useless _s suffix on a struct name
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:38 +02:00
Martin Storsjö 7941159df6 rtpdec/enc: Remove outdated/useless/misleading comments
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:33 +02:00
Martin Storsjö d6ec745246 rtpdec: Improve some comments
The previous comment about the buffer was wildly inaccurate and
misleading.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:28 +02:00
Martin Storsjö e66d448c75 rtpdec: Remove unused context variables
These stem from back when both the rtp muxer and rtp depacketizing
shared the same struct.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:22 +02:00
Martin Storsjö 81ef519252 rtpdec: Limit writing to the buffer size
This fixes potential buffer overwrites.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:18:16 +02:00
Martin Storsjö 48238fd00b svq1: Fix building with -DDEBUG
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:17:52 +02:00
Anton Khirnov c4182d72c9 svq1: return meaningful error codes. 2012-12-12 10:00:08 +01:00
Anton Khirnov 998fdcff41 lavc: replace some forgotten instances of PixelFormat with AVPixelFormat 2012-12-12 09:59:58 +01:00
Anton Khirnov 84a0806680 svq1: unmacroify macros used only once. 2012-12-12 09:59:41 +01:00
Anton Khirnov 95baf701db svq1: deMpegEncContextize
This decoder is quite simple and none of the MpegEncContext complexity
is actually needed.
2012-12-12 09:57:21 +01:00
Justin Ruggles 42b5688d5e lavr: fix segfault due to overlooked change needed in 14758e3
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-12 09:09:00 +01:00
Ronald S. Bultje 6f40e9f070 x86inc: support stack mem allocation and re-alignment in PROLOGUE
Use this in VP8/H264-8bit loopfilter functions so they can be used if
there is no aligned stack (e.g. MSVC 32bit or ICC 10.x).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-12 05:23:46 +01:00
Justin Ruggles 14758e3211 lavr: temporarily store custom matrix in AVAudioResampleContext
This allows AudioMix to be treated the same way as other conversion contexts
and removes the requirement to allocate it at the same time as the
AVAudioResampleContext.

The current matrix get/set functions are split between the public interface
and AudioMix private functions.
2012-12-11 14:00:32 -05:00