Diego Biurrun [Thu, 29 Nov 2012 09:34:54 +0000 (10:34 +0100)]
build: Add rtpenc_chain extra config option
Also fixes linking in various configs with only individual parts enabled
because the RTP muxer chaining code depends on the general RTP code,
which is now accounted for.
Diego Biurrun [Sat, 10 Nov 2012 13:47:52 +0000 (14:47 +0100)]
configure: Add --disable-all command line option
This option disables all programs, libraries and other parts of Libav
that get built as part of the compilation process.
Janne Grunau [Tue, 25 Dec 2012 23:24:21 +0000 (00:24 +0100)]
mpegvideo: initialize videodsp with correct pixel depth
Fixes decoding of 9/10 bit per pixel h264 videos as reported in
https://bugzilla.libav.org/show_bug.cgi?id=404 .
Anton Khirnov [Fri, 16 Nov 2012 17:42:16 +0000 (18:42 +0100)]
wnv1: cosmetics, reformat
Anton Khirnov [Fri, 16 Nov 2012 05:40:14 +0000 (06:40 +0100)]
xan: remove a trivially true if().
This function used to be shared with the xxan decoder, but that is not
true anymore.
Anton Khirnov [Thu, 15 Nov 2012 13:24:51 +0000 (14:24 +0100)]
ansi: do not depend on get_buffer() initializing the frame.
The background changes from 128 (used by the default/cmdutils
get_buffer()) to 0. This looks more correct.
Anton Khirnov [Thu, 15 Nov 2012 19:42:22 +0000 (20:42 +0100)]
zerocodec: remove an unused variable.
Anton Khirnov [Thu, 15 Nov 2012 17:24:29 +0000 (18:24 +0100)]
zmbv: remove some pointless comments and empty lines
Anton Khirnov [Thu, 15 Nov 2012 21:03:00 +0000 (22:03 +0100)]
yop: simplify/sanitize the decoding loop
Do not overwrite linesize set by get_buffer().
The last frame in the FATE test is not decoded anymore, since the file
is cut and a part of it is missing.
Anton Khirnov [Thu, 15 Nov 2012 09:38:38 +0000 (10:38 +0100)]
c93: set palette_has_changed.
Anton Khirnov [Thu, 15 Nov 2012 08:23:55 +0000 (09:23 +0100)]
bmp: cosmetics, reformat
Martin Storsjö [Sun, 23 Dec 2012 19:34:06 +0000 (21:34 +0200)]
hlsenc: Don't duplicate a string constant
Signed-off-by: Martin Storsjö <martin@martin.st>
Stefano Sabatini [Thu, 20 Dec 2012 23:27:00 +0000 (00:27 +0100)]
hlsenc: Allocate enough space for the pattern string
If s->filename doesn't contain any period/filename extension to strip
away, the buffer will be too small to fit both strings. This isn't
any buffer overflow since the concatenation uses av_strlcat with
the right buffer size.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Sun, 23 Dec 2012 15:10:04 +0000 (17:10 +0200)]
lavc: Correct the description of pkt_dts
The description as updated in
6e5c44b0f made it sound like it is
handled exactly like the pts, which it is not. Clarify that it
is the packet that triggered returning the frame instead of just
the last avpacket (in case of frame threading, it won't be the
dts of the last packet).
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Tue, 18 Dec 2012 14:04:48 +0000 (15:04 +0100)]
avfilter: Compile FIFO filters unconditionally
Building libavfilter without that functionality makes little sense.
Diego Biurrun [Sun, 23 Dec 2012 17:10:05 +0000 (18:10 +0100)]
Return proper error code after av_log_ask_for_sample()
Diego Biurrun [Thu, 20 Dec 2012 21:40:39 +0000 (22:40 +0100)]
configure: cosmetics: Separate hwaccel dependencies from decoders/encoders
Also move mpegvideo_select statement to the correct position.
Luca Barbato [Sat, 22 Dec 2012 16:58:24 +0000 (17:58 +0100)]
oggdec: check memory allocation
Luca Barbato [Fri, 21 Dec 2012 18:12:41 +0000 (19:12 +0100)]
oggdec: K&R cosmetic formatting
Luca Barbato [Fri, 21 Dec 2012 11:05:46 +0000 (12:05 +0100)]
hlsenc: correctly report target duration
Anton Khirnov [Wed, 14 Nov 2012 07:56:04 +0000 (08:56 +0100)]
8bps: cosmetics
Remove some pointless comments and empty lines.
Anton Khirnov [Wed, 14 Nov 2012 08:09:43 +0000 (09:09 +0100)]
aasc: cosmetics, reformat
Anton Khirnov [Wed, 14 Nov 2012 13:28:36 +0000 (14:28 +0100)]
ansi: remove an extra return
Anton Khirnov [Wed, 14 Nov 2012 13:49:44 +0000 (14:49 +0100)]
asvdec: cosmetics, reformat
Anton Khirnov [Wed, 14 Nov 2012 14:10:24 +0000 (15:10 +0100)]
aura: cosmetics, reformat
Anton Khirnov [Tue, 13 Nov 2012 21:10:54 +0000 (22:10 +0100)]
4xm: don't rely on get_buffer() initializing the frame.
Anton Khirnov [Thu, 6 Dec 2012 13:06:46 +0000 (14:06 +0100)]
huffyuv: split encoder and decoder into separate files.
Anton Khirnov [Fri, 21 Dec 2012 20:52:34 +0000 (21:52 +0100)]
lavc: make pkt_{p,d}ts doxy less confusing
Anton Khirnov [Fri, 21 Dec 2012 20:50:50 +0000 (21:50 +0100)]
lavc: rewrite and extend AVFrame doxy
Justin Ruggles [Thu, 8 Nov 2012 23:35:49 +0000 (18:35 -0500)]
opt: avoid segfault in av_opt_next() if the class does not have an option list
CC: libav-stable@libav.org
Justin Ruggles [Fri, 10 Feb 2012 22:51:11 +0000 (17:51 -0500)]
ttadec: fix last frame handling when seeking
Using a frame count, as is done currently, does not work at all with
seeking. Instead, when the number of samples in the final frame has
been decoded, we check if only the 32-bit CRC is remaining. If so, we
assume that it is the final frame.
There is no longer a need to keep total_frames in TTAContext.
Justin Ruggles [Sat, 22 Dec 2012 06:21:09 +0000 (01:21 -0500)]
alacdec: do not be too strict about the extradata size
Sometimes the extradata has duplicate atoms, but that shouldn't prevent
decoding. Just ensure that it is at least 36 bytes as a sanity check.
CC: libav-stable@libav.org
Justin Ruggles [Sun, 16 Dec 2012 16:02:39 +0000 (11:02 -0500)]
flac: only set channel layout if not previously set or on channel count change
Fixes Bug 402
Reinhard Tartler [Fri, 21 Dec 2012 14:16:33 +0000 (15:16 +0100)]
prepare 9_beta3 release
Martin Storsjö [Tue, 11 Dec 2012 13:12:31 +0000 (15:12 +0200)]
rtpdec_vp8: Don't return known-broken packets
This is built on the assumption that the first partition of each
VP8 packet is essential for decoding any later packet - if this
partition is broken/missed, the arithmetic coder gets out of sync
and decoding the bitstream in further packet ends up with total
garbage. If packets of a frame are lost, make sure the first
partition is intact (return only this part of the packet, nothing
else), otherwise stop returning data until the next keyframe is
received.
Alternatively, one would simply not return any packets at all
until the next keyframe, if packet loss is detected.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 10 Dec 2012 12:38:32 +0000 (14:38 +0200)]
rtpdec: Pass the sequence number to depacketizers
This allows depacketizers to figure out if packets have been lost.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Tue, 18 Dec 2012 14:08:56 +0000 (15:08 +0100)]
configure: Make avconv depend on null, anull and resample filters
Building avconv without that functionality makes little sense.
Diego Biurrun [Thu, 20 Dec 2012 19:44:39 +0000 (20:44 +0100)]
build: avfilter: Remove duplicate compilation entry for vf_scale
vf_scale should not be unconditionally compiled even if disabled.
Diego Biurrun [Wed, 19 Dec 2012 17:48:21 +0000 (18:48 +0100)]
miscellaneous typo fixes
Luca Barbato [Thu, 20 Dec 2012 13:07:23 +0000 (14:07 +0100)]
lavc: add missing files for arm
Across the many retouches those did not make the main commit.
Ronald S. Bultje [Sat, 15 Dec 2012 17:46:02 +0000 (09:46 -0800)]
lavc: introduce VideoDSPContext
Move some functions from dsputil. The idea is that videodsp contains
functions that are useful for a large and varied set of video decoders.
Currently, it contains emulated_edge_mc() and prefetch().
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö [Thu, 20 Dec 2012 11:53:27 +0000 (13:53 +0200)]
rtp: Don't read priv_data unless it is allocated
This makes all users of rtpenc_chain (rtsp muxer, sapenc, mov
rtp hinting) work again, broken since
8034130e0.
Signed-off-by: Martin Storsjö <martin@martin.st>
Björn Axelsson [Thu, 13 Dec 2012 13:48:25 +0000 (14:48 +0100)]
flvenc: Check whether seeking back to the header succeeded
The FLV muxer tries to update the header in write_trailer, which is
impossible if writing to a pipe or network stream. Don't write header
data if seeking to the header fails.
Signed-off-by: Martin Storsjö <martin@martin.st>
Jernej Virag [Mon, 17 Dec 2012 09:04:15 +0000 (10:04 +0100)]
sapenc: Pass the title on to the chained muxers
This makes sure it ends up in the SDP, providing a proper session name
in the SAP announcements.
Signed-off-by: Martin Storsjö <martin@martin.st>
Justin Ruggles [Wed, 31 Oct 2012 19:40:12 +0000 (15:40 -0400)]
lavr: add option for dithering during sample format conversion to s16
Anton Khirnov [Thu, 13 Dec 2012 16:53:31 +0000 (17:53 +0100)]
mpeg12: do not decode extradata more than once.
Fixes CVE-2012-2803.
CC: libav-stable@libav.org
Anton Khirnov [Wed, 19 Dec 2012 20:53:22 +0000 (21:53 +0100)]
cmdutils: pass number of groups to split_commandline().
This makes the code simpler and avoids mixing designated and
non-designated initializers in a potentially unsafe way in avconv.
Janne Grunau [Wed, 19 Dec 2012 09:31:12 +0000 (10:31 +0100)]
mov: handle h263 and flv1 for codec_tag 'H','2','6','3'
The sample in https://bugzilla.libav.org/show_bug.cgi?id=393 and
samples/F4V/H263_NM_f.mp4 both have codec_tag H263 for different
codecs. H263 is apparently used by Flash Media Server for Sorensen
Spark videos.
Patch based on commit
5442083b1c541dd166b3adf39131259fc846a62b by
Carl Eugen Hoyos. Fixes bug 393.
Victor Lopez [Wed, 19 Dec 2012 08:12:24 +0000 (09:12 +0100)]
h264: fix sps parsing for SVC and CAVLC 4:4:4 Intra profiles
Fixes bug 396.
CC: libav-stable@libav.org
Janne Grunau [Tue, 18 Dec 2012 21:57:58 +0000 (22:57 +0100)]
mpegvideo: increase edge_emu_buffer size for VC1
The VC1 decoder uses edge_emu_buffer simultaneously for luma and chroma
and needs more space. That was not a problem before
f1d8763a02b5fce
since the size for edge_emu_buffer was always calculated with 2 byte per
pixel since the linesize was not known.
Fixes occasionally fate errors in vc1_sa10143.
Ronald S. Bultje [Wed, 19 Dec 2012 01:02:31 +0000 (17:02 -0800)]
lavc: merge latest x86inc.asm fixes with x264
Unbreak NASM support.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Janne Grunau [Tue, 18 Dec 2012 19:11:28 +0000 (20:11 +0100)]
avcodec: bump minor for adaptive h264 frame-mt
Also adds forgotten Changelog entry.
Anton Khirnov [Sat, 15 Dec 2012 10:45:59 +0000 (11:45 +0100)]
avconv: pass the actually selected decoder to filter_codec_opts().
Anton Khirnov [Fri, 8 Jun 2012 19:35:16 +0000 (21:35 +0200)]
avconv: use new options parser.
Anton Khirnov [Mon, 11 Jun 2012 08:18:51 +0000 (10:18 +0200)]
cmdutils: don't log an error in opt_default().
It results in spurious errors when using the new preparser.
Anton Khirnov [Sun, 10 Jun 2012 18:46:30 +0000 (20:46 +0200)]
cmdutils: add a commandline pre-parser.
It splits the commandline into a more convenient internal representation
for further parsing.
This will allow e.g.
- processing global options first independently of their location on the
commandline, eliminating ugly hacks for processing e.g. cpuflags
first
- better options validation and error reporting. It is now possible for
the parser to know that it's applying an input option to an output
file or vice versa and act accordingly.
Anton Khirnov [Sun, 10 Jun 2012 15:57:52 +0000 (17:57 +0200)]
cmdutils: split parse_option().
Separate the code that searches for the option to use and the code that
actually writes it. The writing code will be reused by the new options
parser.
Anton Khirnov [Thu, 7 Jun 2012 19:52:07 +0000 (21:52 +0200)]
cmdutils: add a macro to simplify grow_array() calls.
Janne Grunau [Thu, 6 Sep 2012 11:30:08 +0000 (13:30 +0200)]
h264: support frame parameter changes during frame-mt
Fixes CVE-2012-2782.
Janne Grunau [Sun, 25 Nov 2012 21:42:07 +0000 (22:42 +0100)]
mpegvideo: allocate scratch buffers after linesize is known
Since we can't know which stride a custom get_buffer() implementation is
going to use we have to allocate this scratch buffers after the linesize
is known. It was pretty safe for 8 bit per pixel pixel formats since we
always allocated memory for up to 16 bits per pixel. It broke hoever
with cmdutis.c's alloc_buffer() and high pixel bit depth since it
allocated larger edges than mpegvideo expected.
Fixes fuzzed sample nasa-8s2.ts_s244342.
Michael Niedermayer [Sun, 18 Nov 2012 17:46:05 +0000 (18:46 +0100)]
ff_h264_direct_ref_list_init: fix B slice check.
Fixes null pointer dereference.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Janne Grunau [Mon, 17 Dec 2012 20:36:05 +0000 (21:36 +0100)]
h264: increase dist_scale_factor for up to 32 references
Compute dist_scale_factor_field only for MBAFF since that is the only
case in which it is used.
Diego Biurrun [Fri, 7 Dec 2012 15:07:51 +0000 (16:07 +0100)]
misc typo, style and wording fixes
Diego Biurrun [Sun, 2 Dec 2012 22:32:41 +0000 (23:32 +0100)]
configure: formatting cosmetics
Michael Niedermayer [Thu, 6 Oct 2011 20:54:00 +0000 (22:54 +0200)]
h264: use mbaff ref indices in fill_colmap() only for mbaff references
Prevents writing beyond array bounds.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Janne Grunau [Sat, 15 Dec 2012 21:21:23 +0000 (22:21 +0100)]
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.
Derek Buitenhuis [Sun, 16 Dec 2012 20:29:12 +0000 (15:29 -0500)]
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>
Diego Biurrun [Wed, 12 Dec 2012 15:55:35 +0000 (16:55 +0100)]
au: Reorder code so that both muxer and demuxer are under #ifdefs
This reduces code size when either piece has been disabled.
Diego Biurrun [Sun, 16 Dec 2012 22:19:39 +0000 (23:19 +0100)]
fate: Move RALF test into lossless audio group
Diego Biurrun [Sun, 9 Dec 2012 12:35:21 +0000 (13:35 +0100)]
cosmetics: Use consistent names for multiple inclusion guards.
Hendrik Leppkes [Sun, 16 Dec 2012 08:52:35 +0000 (09:52 +0100)]
avresample: use valid log context in mixing functions
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Justin Ruggles [Fri, 30 Nov 2012 01:58:05 +0000 (20:58 -0500)]
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.
Justin Ruggles [Fri, 30 Nov 2012 01:49:36 +0000 (20:49 -0500)]
lavr: only save/restore the mixing matrix if mixing is being done
Martin Storsjö [Wed, 12 Dec 2012 14:59:45 +0000 (16:59 +0200)]
rtpdec_vp8: Cosmetics: Fix bad alignment/indentation
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 3 Apr 2009 15:08:07 +0000 (18:08 +0300)]
rtpenc: Allow including a SDES/CNAME block in RTCP SR packets
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Sun, 9 Dec 2012 23:10:42 +0000 (01:10 +0200)]
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>
Janne Grunau [Fri, 14 Dec 2012 20:08:24 +0000 (21:08 +0100)]
h264: fix memleak on error during SPS parsing
Introduced in
d7d6efe42b0d.
Janne Grunau [Fri, 14 Dec 2012 22:22:55 +0000 (23:22 +0100)]
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.
Justin Ruggles [Fri, 14 Dec 2012 02:18:15 +0000 (21:18 -0500)]
lavr: move AudioMix struct definition to audio_mix.c
Luca Barbato [Fri, 14 Dec 2012 08:55:04 +0000 (09:55 +0100)]
vp56: release frames on error
Fixes CVE-2012-2783
CC: libav-stable@libav.org
Luca Barbato [Fri, 14 Dec 2012 07:22:06 +0000 (08:22 +0100)]
vp56: make parse_header return standard error codes
Returning 0 for failure is misleading.
CC: libav-stable@libav.org
Anton Khirnov [Thu, 13 Dec 2012 18:38:20 +0000 (19:38 +0100)]
ivi_common: check that scan pattern is set before using it.
Fixes CVE-2012-2791.
CC: libav-stable@libav.org
Anton Khirnov [Thu, 13 Dec 2012 18:31:42 +0000 (19:31 +0100)]
ivi_common: use proper logging context in ivi_decode_blocks().
Anton Khirnov [Thu, 13 Dec 2012 18:25:52 +0000 (19:25 +0100)]
ivi_common: make some functions and tables static.
Justin Ruggles [Thu, 13 Dec 2012 23:30:20 +0000 (18:30 -0500)]
asyncts: ignore min_delta only if first_pts is set
Justin Ruggles [Thu, 13 Dec 2012 18:20:51 +0000 (13:20 -0500)]
asyncts: merge two conditions
Janne Grunau [Thu, 13 Dec 2012 21:42:11 +0000 (22:42 +0100)]
x86inc: fully concatenate tokens to fix macro expansion for nasm
Fixes build errors with nasm introduced in
6f40e9f070f7 for stack
memory alignment. Noticed by BugMaster.
Janne Grunau [Sun, 9 Dec 2012 18:19:51 +0000 (19:19 +0100)]
h264: initialize frame-mt context copies properly
Janne Grunau [Wed, 12 Dec 2012 15:42:05 +0000 (16:42 +0100)]
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.
Janne Grunau [Wed, 12 Dec 2012 15:36:20 +0000 (16:36 +0100)]
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.
Janne Grunau [Fri, 16 Nov 2012 00:12:40 +0000 (01:12 +0100)]
h264: set parameters from SPS whenever it changes
Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with
alternating bit depths.
Justin Ruggles [Thu, 13 Dec 2012 16:55:40 +0000 (11:55 -0500)]
asyncts: cosmetics: reindent
Justin Ruggles [Wed, 12 Dec 2012 18:19:16 +0000 (13:19 -0500)]
doc: improve documentation for the asyncts filter first_pts option
Note the time base for the option. Add an additional example description.
Justin Ruggles [Tue, 11 Dec 2012 22:36:09 +0000 (17:36 -0500)]
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.
Justin Ruggles [Wed, 12 Dec 2012 18:26:57 +0000 (13:26 -0500)]
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.
Justin Ruggles [Wed, 12 Dec 2012 18:10:13 +0000 (13:10 -0500)]
asyncts: fix flushing of final samples at EOF
Luca Barbato [Thu, 13 Dec 2012 15:20:19 +0000 (16:20 +0100)]
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
Alex Converse [Wed, 12 Dec 2012 01:26:10 +0000 (17:26 -0800)]
aacdec: Fix an off-by-one overwrite when switching to LTP profile from MAIN.
Found-by: pawlkt
CC: libav-stable@libav.org
Ronald S. Bultje [Wed, 12 Dec 2012 19:00:22 +0000 (20:00 +0100)]
x86inc: fix stack alignment on win64
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Tue, 11 Dec 2012 22:01:29 +0000 (00:01 +0200)]
rtpproto: Remove unused defines
Signed-off-by: Martin Storsjö <martin@martin.st>