Anton Khirnov [Wed, 10 Apr 2013 07:40:20 +0000 (09:40 +0200)]
indeo3: switch parsing the header to bytestream2
Also add an additional sanity check to the alt_quant table.
Fixes invalid reads with corrupted files.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Anton Khirnov [Tue, 9 Apr 2013 18:33:25 +0000 (20:33 +0200)]
rv10: check that extradata is large enough
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Anton Khirnov [Tue, 9 Apr 2013 18:11:09 +0000 (20:11 +0200)]
rv10: return meaningful error codes.
Also improve some error messages.
Anton Khirnov [Tue, 9 Apr 2013 18:06:44 +0000 (20:06 +0200)]
rv10: cosmetics, reformat
Anton Khirnov [Tue, 9 Apr 2013 13:25:20 +0000 (15:25 +0200)]
qdm2: check that the FFT size is a power of 2
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Anton Khirnov [Mon, 8 Apr 2013 20:15:54 +0000 (22:15 +0200)]
svq1dec: clip motion vectors to the frame size.
Fixes invalid reads for corrupted files.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Anton Khirnov [Mon, 8 Apr 2013 20:12:12 +0000 (22:12 +0200)]
svq1dec: check that the reference frame has the same dimensions as the current one
They can be different if the last keyframe failed to decode correctly.
Fixes possible invalid reads in such a case.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Anton Khirnov [Sun, 14 Apr 2013 10:10:50 +0000 (12:10 +0200)]
af_channelmap: cosmetics, use an extra local variable to shorten the code
Anton Khirnov [Sun, 14 Apr 2013 10:07:24 +0000 (12:07 +0200)]
af_channelmap: sanity check input channel indices in all cases.
Fixes invalid reads from non-existing channels.
CC:libav-stable@libav.org
Anton Khirnov [Tue, 16 Apr 2013 14:09:16 +0000 (16:09 +0200)]
cmdutils: Fix build with lavfi disabled
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Rafaël Carré [Mon, 15 Apr 2013 11:14:28 +0000 (13:14 +0200)]
flvenc: do not mux more than one stream per type
FLV does not support multiple audio or video streams.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö [Wed, 10 Apr 2013 08:48:57 +0000 (11:48 +0300)]
fate: Set the bitexact flag for vp3/vp5/vp6 tests
This is required since there are bit-inexact implementations
of the vp3 idct (for bfin).
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Tue, 12 Mar 2013 14:28:12 +0000 (07:28 -0700)]
vp3: Use full transpose for all IDCTs
This way, the special IDCT permutations are no longer needed. This
is similar to how H264 does it, and removes the dsputil dependency
imposed by the scantable code.
Also remove the unused type == 0 cases from the plain C version
of the idct.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 3 Apr 2013 12:03:17 +0000 (05:03 -0700)]
vp3: bfin: Transpose the IDCTs
While this change isn't bitexact, the IDCTs weren't bitexact to
start with either.
This simplifies decoupling vp3 from dsputil.
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Wed, 10 Apr 2013 09:34:10 +0000 (12:34 +0300)]
x86: Move constants to the only place where they are used
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 10 Apr 2013 16:12:58 +0000 (19:12 +0300)]
bfin: Match DEFUN_END macros to the right functions
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Wed, 10 Apr 2013 23:31:15 +0000 (01:31 +0200)]
x86: dsputil: Move some ifdefs to avoid unused variable warnings
Diego Biurrun [Wed, 10 Apr 2013 23:30:25 +0000 (01:30 +0200)]
x86: dsputil: cosmetics: Remove two pointless variable indirections
Diego Biurrun [Thu, 11 Apr 2013 00:31:09 +0000 (02:31 +0200)]
x86: dsputil: Refactor some ff_{avg|put}_pixels function declarations
Diego Biurrun [Wed, 10 Apr 2013 23:19:44 +0000 (01:19 +0200)]
x86: dsputil: ff_h263_*_loop_filter declarations to a more suitable place
Diego Biurrun [Wed, 10 Apr 2013 23:17:12 +0000 (01:17 +0200)]
x86: h264qpel: int --> ptrdiff_t for some line_size parameters
Vittorio Giovara [Thu, 4 Apr 2013 13:39:40 +0000 (15:39 +0200)]
FATE: add a test for the interlace filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Vittorio Giovara [Tue, 12 Mar 2013 10:35:21 +0000 (11:35 +0100)]
lavfi: new interlace filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Thu, 28 Mar 2013 08:29:00 +0000 (09:29 +0100)]
cmdutils: allow -h filter=<name> to print information about a filter.
Anton Khirnov [Thu, 28 Mar 2013 08:10:09 +0000 (09:10 +0100)]
avtools: move media_type_string() from avprobe to cmdutils.
It will be useful outside of avprobe.
Anton Khirnov [Wed, 13 Mar 2013 08:10:34 +0000 (09:10 +0100)]
avconv: print filter options in -h full output.
Anton Khirnov [Tue, 12 Mar 2013 18:31:08 +0000 (19:31 +0100)]
avconv: update to the new options syntax.
The separators were changed from ',' to '|' in all the filters.
Anton Khirnov [Sun, 7 Apr 2013 05:33:24 +0000 (07:33 +0200)]
lavfi: do not segfault on NULL passed to avfilter_get_by_name()
Anton Khirnov [Wed, 3 Apr 2013 07:20:36 +0000 (09:20 +0200)]
lavfi: change the filter registering system to match the other libraries
Removes an arbitrary hardcoded limit on the number of filters.
Anton Khirnov [Thu, 28 Mar 2013 07:59:13 +0000 (08:59 +0100)]
lavfi: add a function for counting elements in AVFilterPad arrays.
The caller needs to know what valid indices can be passed to
avfilter_pad_get_name/type.
Anton Khirnov [Thu, 28 Mar 2013 07:51:36 +0000 (08:51 +0100)]
lavfi: mark filters with dynamic number of inputs or outputs with special flags
This will be useful in avtools in the following commits.
Any other caller might also want to know this information.
Anton Khirnov [Sun, 17 Mar 2013 19:16:12 +0000 (20:16 +0100)]
lavfi: add avfilter_init_dict() for initializing a filter with a dict.
Anton Khirnov [Sun, 17 Mar 2013 18:44:24 +0000 (19:44 +0100)]
lavfi: add avfilter_init_str() to replace avfilter_init_filter().
Drop the unused opaque parameter from its signature.
Anton Khirnov [Sun, 31 Mar 2013 11:02:55 +0000 (13:02 +0200)]
lavfi: make avfilter_free() remove the filter from its graph.
Anton Khirnov [Sun, 31 Mar 2013 10:17:07 +0000 (12:17 +0200)]
lavfi: add AVFilterContext.graph.
It will be useful in the following commits.
Anton Khirnov [Sun, 31 Mar 2013 06:31:40 +0000 (08:31 +0200)]
lavfi: deprecate avfilter_graph_add_filter().
Since this function adds a standalone filter to a filter graph and we do
not support creating such filters, there is no reason for this function
to exist.
Anton Khirnov [Sun, 31 Mar 2013 06:28:11 +0000 (08:28 +0200)]
lavfi: replace avfilter_open() with avfilter_graph_alloc_filter().
Since we do not support "standalone" filters not attached to an
AVFilterGraph, we should not have a public function to create such
filters. In addition that function is horribly named, the action it does
cannot be possibly described as "opening" a filter.
Anton Khirnov [Sat, 30 Mar 2013 21:31:18 +0000 (22:31 +0100)]
lavfi: merge avfiltergraph.h into avfilter.h
We do not support using filters without AVFilterGraph in practice
anyway, so there is no point in pretending we do.
Anton Khirnov [Thu, 28 Mar 2013 08:31:42 +0000 (09:31 +0100)]
lavfi: add const to the pads parameter of avfilter_pad_get_name/type
Anton Khirnov [Sun, 31 Mar 2013 06:20:06 +0000 (08:20 +0200)]
lavfi: add const to AVFilterContext.filter.
lavfi should never modify the filter through that pointer.
Anton Khirnov [Fri, 22 Mar 2013 23:13:44 +0000 (00:13 +0100)]
doc: document the prores encoder options
Adapted from the author's blag.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sat, 6 Apr 2013 17:04:56 +0000 (19:04 +0200)]
Cosmetics, restore alphabetic order in atomics lists.
Anton Khirnov [Thu, 4 Apr 2013 20:57:58 +0000 (22:57 +0200)]
img2enc: add an option for overwriting one file with subsequent images
Based on a patch by Michael Niedermayer <michaelni@gmx.at>.
Diego Biurrun [Wed, 10 Apr 2013 17:26:49 +0000 (19:26 +0200)]
Move misplaced file author information where it belongs
Anton Khirnov [Fri, 22 Mar 2013 06:59:10 +0000 (07:59 +0100)]
lavc: don't overwrite display dimensions with coded dimensions.
Anton Khirnov [Fri, 22 Mar 2013 07:20:27 +0000 (08:20 +0100)]
lavc: extend / update the [coded_]{width,height} doxy
Diego Biurrun [Fri, 5 Apr 2013 21:43:31 +0000 (23:43 +0200)]
h261: Move encoder/decoder shared table init to common code
Diego Biurrun [Thu, 4 Apr 2013 12:56:01 +0000 (14:56 +0200)]
h261: Move shared data tables from a header to a proper C file
Ronald S. Bultje [Tue, 12 Mar 2013 14:28:11 +0000 (07:28 -0700)]
dsputil: Make dsputil selectable
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Tue, 26 Mar 2013 14:43:57 +0000 (16:43 +0200)]
h264: Only initialize dsputil if error resilience is enabled
It is only used for error resilience. This allows building the
h264 decoder without dsputil, if error resilience is disabled.
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Tue, 19 Feb 2013 05:03:02 +0000 (21:03 -0800)]
h264: Integrate clear_blocks calls with IDCT
The non-intra-pcm branch in hl_decode_mb (simple, 8bpp) goes from 700
to 672 cycles, and the complete loop of decode_mb_cabac and hl_decode_mb
(in the decode_slice loop) goes from 1759 to 1733 cycles on the clip
tested (cathedral), i.e. almost 30 cycles per mb faster.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 3 Apr 2013 14:23:01 +0000 (17:23 +0300)]
h264: Clear the mb members via memset instead of using dsputil
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Sat, 9 Mar 2013 04:16:08 +0000 (20:16 -0800)]
dsputil: Make square put/avg_pixels functions local to h264qpel
Put a copy of the 8bit functions only in dsputil, where they are
used for some other things (e.g. mpeg4qpel, mspel, cavsqpel).
Signed-off-by: Martin Storsjö <martin@martin.st>
Christophe Gisquet [Sun, 7 Apr 2013 19:29:52 +0000 (19:29 +0000)]
x86inc: Fix number of operands for cmp* instructions
cmp{p,s}{s,d} instructions do take an imm8 operand.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Anton Khirnov [Tue, 9 Apr 2013 20:01:10 +0000 (22:01 +0200)]
af_channelmap: fix uninitialized variable use introduced in
ba8efac977f4276f05274947b2b67d144cbc965a
Anton Khirnov [Fri, 5 Apr 2013 13:37:29 +0000 (15:37 +0200)]
lavfi: add a bump and docs entries for the AVOptions switch
Anton Khirnov [Wed, 13 Mar 2013 08:09:36 +0000 (09:09 +0100)]
lavfi: add avfilter_get_class().
Useful for examining options, the same as the corresponding functions
for the other libs.
Anton Khirnov [Wed, 13 Mar 2013 07:48:16 +0000 (08:48 +0100)]
lavfi: make AVFilterContext export filter options.
Anton Khirnov [Wed, 3 Apr 2013 07:44:25 +0000 (09:44 +0200)]
lavfi: error out when options are provided to a filter that does not take any
Anton Khirnov [Wed, 13 Mar 2013 07:26:39 +0000 (08:26 +0100)]
lavfi: remove now unused args parameter from AVFilter.init
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vsrc_testsrc: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vsrc_movie: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vsrc_nullsrc: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vsrc_color: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
split: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_volume: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_join: switch to an AVOptions-based system.
Change the mappings separator from comma to '|' to avoid excessive
escaping, since comma is already used for separating filters in the
filtergraph description.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_channelsplit: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_channelmap: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_asyncts: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_amix: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_yadif: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_unsharp: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_transpose: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_settb: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_setpts: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_select: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_pad: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_overlay: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_lut: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_libopencv: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_hqdn3d: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_gradfun: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_scale: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_frei0r: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_fps: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_fieldorder: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_fade: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_drawtext: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_drawbox: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_delogo: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_cropdetect: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_crop: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_boxblur: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_blackframe: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_aspect: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
vf_(no)format: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_aformat: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
buffersrc: switch to an AVOptions-based system.
Anton Khirnov [Mon, 25 Feb 2013 20:21:29 +0000 (21:21 +0100)]
af_resample: switch to an AVOptions-based system.