Commit Graph

92 Commits

Author SHA1 Message Date
Stefano Sabatini 0140566359 lavfi: add histeq filter
This is a port of virtual dub's histogram equalization filter by Donald
A. Graft. Based on the work by Jérémy Tran <tran.jeremy.av@gmail.com>,
done for SOCIS 2012.
2013-01-05 10:25:32 +01:00
Stefano Sabatini 172505b8bc lavfi: add kerndeint filter
This is a port of the kerndeint filter (libmpcodecs/vf_kerndeint) by
Donal A. Graft (original avisynth plugin author), and is based on the
work by Jérémy Tran <tran.jeremy.av@gmail.com> done for SOCIS 2012.
2013-01-05 10:25:32 +01:00
Stefano Sabatini 92f1bed14c tests/lavfi-regression: always require three parameters in do_lavfi_pixfmts()
Force commands to specify the name of the test to run. This simplifies
extending the function with a new parameter, which will be done in a
following patch.
2013-01-05 10:25:32 +01:00
Clément Bœsch 9b8de93036 lavfi: add pp filter.
Ported from MPlayer. Original author is A'rpi, with various
contributions from Michael Niedermayer. The original documentation was
mostly written by Diego Biurrun. See the MPlayer history for full
credits.

The filter is under GPL like the original filter, even if it differs
quite a lot. There is not much point in making it LGPL since pp is under
GPL.
2012-12-23 19:03:36 +01:00
Clément Bœsch 72380d15ae fate/mp=pp: remove dering subfilter test.
This subfilter gives a different output when linesize and width are
differents.
2012-12-23 19:03:36 +01:00
Clément Bœsch e36ba9884f fate/mp=pp: expand subfilters with dr (dering) in them.
Commands are equivalent at this point.
2012-12-23 19:03:36 +01:00
Clément Bœsch 72e84a08e6 fate: add hue filter test. 2012-12-02 14:44:26 +01:00
Michael Niedermayer 8c1f98d954 Merge commit 'bb6c67bb36b136de10256f0999128df4a42f9ffc'
* commit 'bb6c67bb36b136de10256f0999128df4a42f9ffc':
  lavfi: remove vf_slicify

Conflicts:
	doc/filters.texi
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/vf_slicify.c
	tests/lavfi-regression.sh
	tests/ref/lavfi/crop_scale_vflip

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-28 23:59:15 +01:00
Anton Khirnov bb6c67bb36 lavfi: remove vf_slicify
The following commit will make it useless.

The crop_scale_vflip FATE test changes because of off-by-one differences
in output when vflipped slices are passed to sws.
2012-11-28 08:44:01 +01:00
Clément Bœsch a8afb0830e fate/lavfi: increase vf tile coverage. 2012-11-11 22:43:18 +01:00
Stefano Sabatini 3c4aa50620 lavfi: add field filter
The filter is a port of libmpcodecs/vf_field.c, since there is no common
code I relicensed it as LGPL, while keeping the original author
copyright.
2012-10-31 12:07:11 +01:00
Stefano Sabatini 83938c3d4c lavfi/scale: accept named options, make parsing more robust
Also update documentation accordingly.
2012-10-29 17:39:26 +01:00
Michael Niedermayer d41c019da0 fate/scalenorm: unbreak fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-28 18:26:11 +01:00
Stefano Sabatini 74e81b4de1 tests: do not set bogus scale sws_flags option in the scalenorm test
sws_flags is not a valid scale option, and thus is ignored.
2012-10-28 17:20:50 +01:00
Michael Niedermayer f9f79cb0ec fate: make sure the global sws flags are set to be bitexact for scalenorm
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-28 13:05:35 +01:00
Nicolas George 14f69a0516 fate: add a test for scale with variable input format. 2012-10-28 09:59:03 +01:00
Matthieu Bouron e782d8728f fate: add vf_idet filter to lavfi regression tests
This test only make sure that the idet filter does not crash.

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-11 02:21:28 +02:00
Stefano Sabatini bdfffa66a0 tests/lavfi-regression: name temporary files after $testname in do_lavfi_pixfmts()
Fix a failure when running do_lavfi_pixfmts() for the
lavfi-tinterlace_merge and lavfi-tinterlace_pad tests concurrently.

Since they were using the same names for the temporary files, the first
ending test was removing them, and the second test was failing at
removing unexisting files.
2012-09-06 01:09:36 +02:00
Stefano Sabatini 5780f9bbd5 tests: add tinterlace filter tests
Only the merge and pad modes are tested.
2012-09-06 00:40:01 +02:00
Stefano Sabatini 77c991d8c5 tests/lavfi-regressions: support user-specified test name in do_lavfi_pixfmts()
Make do_lavfi_pixfmts() support an user-specified name for the test.

This allows to specify two pixfmts tests for the same filter, e.g. to
test a filter with different parameters. Useful for the pending
tinterlace tests.
2012-09-06 00:40:01 +02:00
Clément Bœsch 3250231a02 lavfi: add edgedetect filter. 2012-08-16 22:03:32 +02:00
Nicolas George 39b0d40d92 fate: add test for the tile video filter. 2012-08-01 14:00:29 +02:00
Steven Robertson 82ecae8a70 lavfi: add alphaextract and alphamerge filters
These filters are designed for storing and transmitting video sequences
with alpha using higher-efficiency codecs such as x264 which don't
natively support an alpha channel. 'alphaextract' takes an input stream
with an alpha channel and returns a video containing just the alpha
component as a grayscale value; 'alphamerge' takes an RGB or YUV stream
and adds an alpha channel recovered from a second grayscale stream.

Signed-off-by: Steven Robertson <steven@strobe.cc>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-07-22 12:17:34 +02:00
Michael Niedermayer 039e9fe01c Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  lavfi: reclassify showfiltfmts as a TESTPROG
  graph2dot: fix printf format specifier
  swscale: yuv2planeX 8bit >=sse2 functions need aligned stack on x86-32.
  vp8: loopfilter >=sse2 functions need aligned stack on x86-32.
  amr: remove shift out of the AMR_BIT() macro.
  dsputilenc: group yasm and inline asm function pointer assignment.
  mov: use forward declaration of a function instead of a table.
  Clarify Doxygen comment for FF_API_* #defines.
  configure: simplify get_version()
  Create version.h headers for libraries that lack them
  gitignore: Use full path instead of relative path to specify patterns
  mpegvideo: remove VLAs
  Add XTEA encryption support in libavutil
  Add Blowfish encryption support in libavutil
  eval: Add the isinf() function and tests for it
  flacdec: move lpc filter to flacdsp
  flacdec: split off channel decorrelation as flacdsp
  avplay: Add an option for not limiting the input buffer size
  FATE: add a test for WMA cover art.
  FATE: add a test for apetag cover art
  ...

Conflicts:
	.gitignore
	configure
	ffplay.c
	libavcodec/Makefile
	libavcodec/error_resilience.c
	libavcodec/mpegvideo.c
	libavcodec/ratecontrol.c
	libavdevice/avdevice.h
	libavfilter/Makefile
	libavfilter/filtfmts.c
	libavfilter/version.h
	libavformat/mov.c
	libavformat/version.h
	libavutil/Makefile
	libavutil/avutil.h
	libavutil/version.h
	libswscale/swscale.h
	libswscale/x86/swscale_mmx.c
	tests/fate/libavutil.mak
	tests/lavfi-regression.sh
	tools/graph2dot.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-04 21:03:28 +02:00
Mans Rullgard 7c29377b70 lavfi: reclassify showfiltfmts as a TESTPROG
This tool uses lavfi internal symbols not accessible in shared
libraries.  TESTPROGS are linked statically to allow them use of
library internals not normally exported.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-04 17:48:25 +01:00
Stefano Sabatini ef255642d5 fate/lavfi: add lavfi-pixfmts_super2xsai test 2012-06-16 00:30:33 +02:00
Stefano Sabatini 36f714f825 tests/lavfi: use do_lavfi_pixfmts for the pixdesctest test
Simplify, and as a side effect extend the number of supported formats, in
particular add a test for pal8.
2012-05-26 12:02:30 +02:00
Stefano Sabatini 52b23cbf1c tests/lavfi: rework lavfi-regression.sh, avoid use of ffmpeg -pix_fmts
Use lavfi-showfiltfmts for checking the format supported by the scale
filter instead. The advantage is that the scale filter may support
formats which are not supported by libswscale (namely: the pal8 format).

The new implementation is also a bit cleaner, because it doesn't depend
on the ffmpeg output.
2012-05-26 10:46:46 +02:00
Michael Niedermayer 7432bcfe5a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vsrc_buffer: fix check from 7ae7c41.
  libxvid: Reorder functions to avoid forward declarations; make functions static.
  libxvid: drop some pointless dead code
  wmal: vertical alignment cosmetics
  wmal: Warn about missing bitstream splicing feature and ask for sample.
  wmal: Skip seekable_frame_in_packet.
  wmal: Drop unused variable num_possible_block_size.
  avfiltergraph: make the AVFilterInOut alloc/free API public
  graphparser: allow specifying sws flags in the graph description.
  graphparser: fix the order of connecting unlabeled links.
  graphparser: add avfilter_graph_parse2().
  vsrc_buffer: allow using a NULL buffer to signal EOF.
  swscale: handle last pixel if lines have an odd width.
  qdm2: fix a dubious pointer cast
  WMAL: Do not try to read rawpcm coefficients if bits is invalid
  mov: Fix detecting there is no sync sample.
  tiffdec: K&R cosmetics
  avf: has_duration does not check the global one
  dsputil: fix optimized emu_edge function on Win64.

Conflicts:
	doc/APIchanges
	libavcodec/libxvid_rc.c
	libavcodec/libxvidff.c
	libavcodec/tiff.c
	libavcodec/wmalosslessdec.c
	libavfilter/avfiltergraph.h
	libavfilter/graphparser.c
	libavfilter/version.h
	libavfilter/vsrc_buffer.c
	libswscale/output.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-14 22:37:43 +02:00
multiple authors 13cc3645b0 libavfilter: add colormatrix filter
Ported by: Baptiste Coudurier
cleanup+fate by ubitux
For detailed authorship of the original code please see avisynth
2012-04-04 23:54:53 +02:00
Michael Niedermayer 52ae41a874 fate: disable deshake test as it isnt binary identical across archs.
probably due to float rounding

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-29 07:03:04 +01:00
Michael Niedermayer 9aa7b3cd53 fate: switch lavfi-pp targets which need bitexact flags to use them.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-29 02:24:59 +01:00
Michael Niedermayer 0ae9b32e51 fate: More libpostproc tests to improve coverage.
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-29 01:45:36 +01:00
Michael Niedermayer 1ebc5e71a0 tests: add libpostproc test
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-02-28 16:34:06 +01:00
Nicolas George a4c22e3cac fate: add test for the life video source. 2012-02-27 17:13:21 +01:00
Nicolas George 48f3d43113 fate: add test for the unsharp video filter. 2012-02-27 14:45:14 +01:00
Nicolas George d8cf9d8a6c fate: add test for the transpose video filter. 2012-02-27 14:45:14 +01:00
Nicolas George b0de06aee6 fate: add test for the thumbnail video filter. 2012-02-27 14:45:14 +01:00
Nicolas George 01f1468eff fate: add test for the select video filter. 2012-02-27 14:45:14 +01:00
Nicolas George f2a05174eb fate: add test for the pad video filter. 2012-02-27 14:45:14 +01:00
Nicolas George 220de4fa20 fate: add test for the overlay video filter.
The test also covers somewhat the split, scale,
pad and fifo filters and the graph parser.
2012-02-27 14:45:13 +01:00
Nicolas George 9380003087 fate: add test for the fade video filter. 2012-02-27 14:45:13 +01:00
Nicolas George e36504b5a9 fate: add test for the drawbox video filter. 2012-02-27 14:45:13 +01:00
Nicolas George f69f150fc8 fate: add test for the deshake video filter. 2012-02-27 14:45:13 +01:00
Nicolas George 4d27a5b2c2 fate: add tests for the setsar and setdar video filters. 2012-02-27 14:45:13 +01:00
Nicolas George 47bd0bc461 fate: add tests for testsrc.
This test uses the lavfi device and
is ready for more similar tests.
2012-02-27 14:45:13 +01:00
Michael Niedermayer 0cb233cf46 Merge commit 'b2c087871dafc7d030b2d48457ddff597dfd4925'
* commit 'b2c087871dafc7d030b2d48457ddff597dfd4925':
  Move x86util.asm from libavcodec/ to libavutil/.
  Move x86inc.asm to libavutil/.
  APIchanges: note error_recognition in lavf
  lavf: add support for error_recognition, use it in avidec, and bump minor API version
  avconv: change semantics of -map
  avconv: get rid of new* options.
  cmdutils: allow precisely specifying a stream for AVOptions.
  configure: add missing CFLAGS to fix building on the HURD
  libx264: Include hint for possible values for configuring libx264
  cmdutils: allow ':'-separated modifiers in option names.
  avconv: make -map_metadata work consistently with the other options
  avconv: remove deprecated options.
  avconv: make -map_chapters accept only the input file index.
  Make a copy of ffmpeg under a new name -- avconv.
  ffmpeg: add a warning stating that the program is deprecated.
  Add weighted motion compensation for RV40 B-frames
  RV3/4: calculate B-frame motion weights once per frame
  Move RV3/4-specific DSP functions into their own context
  mjpeg: propagate decode errors from ff_mjpeg_decode_sos and ff_mjpeg_decode_dqt
  h264: notice memory allocation failure

Conflicts:
	.gitignore
	Makefile
	cmdutils.c
	configure
	doc/ffplay.texi
	doc/ffprobe.texi
	doc/ffserver.texi
	libavcodec/libx264.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/version.h
	tests/lavf-regression.sh
	tests/lavfi-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-13 02:56:08 +02:00
Anton Khirnov 6291d7e416 Make a copy of ffmpeg under a new name -- avconv.
It will be further developed with a few incompatible changes.

ffmpeg.c will stay as is for some time, so any scripts using it won't be
broken.
2011-08-12 13:27:30 +02:00
Stefano Sabatini 9c484d2944 lavfi-showfiltfmts: extend output format for specifying audio data
This is required for extending lavfi tests to audio filtering.
2011-07-28 10:04:09 +02:00
Michael Niedermayer bb9d5171a7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  swscale: Add Doxygen for hyscale_fast/hScale.
  fate: enable lavfi-pixmt tests on big endian systems
  PPC: swscale: disable altivec functions for unsupported formats
  fate: merge identical pixdesc_be/le tests
  swscale: Add Doxygen for yuv2planar*/yuv2packed* functions.
  build: call texi2pod.pl with full path instead of symlink
  build: include sub-makefiles using full path instead of symlinks
  swscale: update big endian reference values after dff5a835.
  wavpack: skip blocks with no samples
  cosmetics: remove outdated comment that is no longer true
  build: replace some addprefix/addsuffix with substitution refs
  avutil: Remove unused arbitrary precision integer code.
  configure: Drop check for availability of ten assembler operands.
  aacenc: Save channel configuration for later use.
  aacenc: Fix codebook trellising for zeroed bands.
  swscale: change prototypes of scaled YUV output functions.
  swscale: re-add support for non-native endianness.
  swscale: disentangle yuv2rgbX_c_full() into small functions.
  swscale: split yuv2packed[12X]_c() remainders into small functions.
  swscale: split yuv2packedX_altivec in smaller functions.
  ...

Conflicts:
	Makefile
	configure
	libavcodec/x86/dsputil_mmx.c
	libavfilter/Makefile
	libavformat/Makefile
	libavutil/integer.c
	libavutil/integer.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/x86/swscale_template.c
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-29 05:23:12 +02:00