Commit Graph

131 Commits

Author SHA1 Message Date
Michael Niedermayer
7491816010 libavfilter/libmpcodecs: add vf_stereo3d support
(code from mplayer see their svn for detailed authorship)
parameters must be integers as we do not have mplayers parser
also the stuff passed to it through non constant globals is not supported
this should be fixed in mplayer first.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-20 05:49:42 +02:00
Stefano Sabatini
37cc443c83 lavfi: add audio convert filter
Add aconvert filter to perform sample format, channel layout, and
packing format conversion.

The aconvert code depends on audio conversion code in libavcodec, so
this requires a dependency on libavcodec.

Based on previous work by S.N. Hemanth Meenakshisundaram and Mina Nagy
Zaki, performed for the GSoC 2010 and 2011.
2011-09-16 20:44:27 +02:00
Stefano Sabatini
ea8de109af lavfi: add avfilter_all_channel_layouts public symbol
This list is mainly useful to be directly used as a parameter by the
audio sink buffer, when there is no need to force a specific channel
layout.

The list of formats is generated programmatically, and avoids channel
layouts not supported by libavfilter (with more than 8 channels).

We preferred to avoid compile-time generation in order to avoid some
unnecessary complexity (build hacks, generating code maintainance
etc.).

A more compact way to express this list through the use of macros
should be possible when libavfilter will support more than 8 channels,
as there will be no need to filter out channel layouts with more than
8 channels.

See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: add ff_all_channel_layouts internal symbol
Date: Sat, 20 Aug 2011 15:33:16 +0200
2011-09-16 00:46:41 +02:00
Stefano Sabatini
4f7dfe12ea lavfi: rename vsink_buffer.c to sink_buffer.c, and vsink_buffer.h to buffersink.h
This is done in order to clarify the non-video-specific nature of the
buffersink code, as the result of the video/audio API unification of
the previous commit, and for improving overall consistency.
2011-09-06 18:51:09 +02:00
Stefano Sabatini
c4415f6ec9 lavfi: unify asink_buffer and vsink_buffer API
The new API is more generic (no distinction between audio/video for
pulling frames), and avoids code duplication.

A backward compatibility layer is kept for avoiding tools ABI breaks
(only for the video binary interface, audio interface was never used
in the tools).
2011-09-06 18:47:04 +02:00
Stefano Sabatini
24ddfb2bdb lavfi: add amovie source - audio movie source 2011-08-27 12:46:55 +02:00
Stefano Sabatini
276f43be68 lavfi: rename vsrc_movie.c to src_movie.c
The file is going to contain the amovie source, so give it a less
specific name.
2011-08-23 15:45:53 +02:00
Mina Nagy Zaki
587c8ab912 lavfi: add asrc_abuffer - audio buffer source
Originally based on code by Stefano Sabatini and S. N. Hemanth.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-21 11:37:57 +02:00
Stefano Sabatini
e30a0b1b3b lavfi: add ashowinfo filter
Useful for debugging.
2011-08-20 15:00:23 +02:00
Mina Nagy Zaki
3a9e227fb1 lavfi: add aresample filter
Based on a patch by Stefano.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-17 13:12:40 +02:00
Stefano Sabatini
6e89bdfecf lavfi: remove delogo mp wrapper
The delogo filter has been natively integrated into libavfilter,
simplify.
2011-08-14 12:26:44 +02:00
Stefano Sabatini
2701f6cc6a lavfi: port libmpcodecs delogo filter
The ported filter supports named option parsing and more YUV formats.
2011-08-14 12:17:10 +02:00
Mina Nagy Zaki
0a2295815d lavfi: add aformat filter
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-14 10:31:23 +02:00
Stefano Sabatini
e72657f83d lavfi: remove mp test wrapper
The source was natively integrated into libavfilter, with the name
mptestsrc.
2011-08-11 16:19:53 +02:00
Stefano Sabatini
1a5e63f924 lavfi: port mp test source 2011-08-11 16:19:48 +02:00
Stefano Sabatini
640a905ece lavfi: remove gradfun mp wrapper
The gradfun filter was already integrated natively in libavfilter.
Both filters issue the same output, and have a comparable performance.

See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: remove gradfun mp wrapper
Date: Fri,  5 Aug 2011 00:19:04 +0200
2011-08-07 17:43:02 +02:00
Mina Nagy Zaki
a8dcf5eebb lavfi: add asink_abuffer - audio buffer sink
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-08-06 13:17:49 +02:00
Stefano Sabatini
cc0dc50d02 vf_mp: remove blackframe filter wrapper
blackframe is integrated as a native filter.
2011-07-23 10:55:50 +02:00
Stefano Sabatini
8c2863b87f vf_mp: remove cropdetect wrapper
The cropdetect filter is natively integrated into libavfilter.
2011-07-21 13:04:48 +02:00
Stefano Sabatini
b43ca2deb6 vf_mp: remove rgbtest wrapper
The filter was integrated natively into libavfilter as a source with
name rgbtestsrc.
2011-07-15 01:44:57 +02:00
Stefano Sabatini
9dbe8d9e22 lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
The licence was changed from GPL to LGPL with explicit approval from
the original author.

See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: add rgbtestsrc source,
        ported from MPlayer libmpcodecs
Date: Mon, 11 Jul 2011 16:32:41 +0200
2011-07-15 01:44:56 +02:00
Stefano Sabatini
4bd28579e5 vf_mp: remove boxblur wrapper
It is natively included in libavfilter.
2011-07-15 01:06:00 +02:00
Stefano Sabatini
6b61920ab7 lavfi: port boxblur filter from libmpcodecs
With the following additions:
* support to gray format
* support to yuva420p format
* parametric luma/chroma/alpha radius
* consistency check on the radius values, avoid crashes with invalid values
2011-07-14 00:00:31 +02:00
Michael Niedermayer
3602ad7ee6 Merge commit '142e76f1055de5dde44696e71a5f63f2cb11dedf'
* commit '142e76f1055de5dde44696e71a5f63f2cb11dedf':
  swscale: fix crash with dithering due incorrect offset calculation.
  matroskadec: fix stupid typo (!= -> ==)
  build: remove duplicates from order-only directory prerequisite list
  build: rework rules for things in the tools dir
  configure: fix --cpu=host with gcc 4.6
  ARM: use const macro to define constant data in asm
  bitdepth: simplify FUNC/FUNCC macros
  dsputil: remove ff_emulated_edge_mc macro used in one place
  9/10-bit: simplify clipping macros
  matroskadec: reindent
  matroskadec: defer parsing of cues element until we seek.
  lavc: add support for codec-specific defaults.
  lavc: make avcodec_alloc_context3 officially public.
  lavc: remove a half-working attempt at different defaults for audio/video codecs.
  ac3dec: add a drc_scale private option
  lavf: add avformat_find_stream_info()
  lavc: introduce avcodec_open2() as a replacement for avcodec_open().

Conflicts:
	Makefile
	libavcodec/utils.c
	libavformat/avformat.h
	libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11 04:23:25 +02:00
Mans Rullgard
28e1c97916 build: rework rules for things in the tools dir
Declaring tools associated with each library in their respective
makefiles allows these tools to easily depend on the correct
prerequisites and link against the libs they need.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-10 21:13:38 +01: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
Mans Rullgard
57b4a3dd2b build: include sub-makefiles using full path instead of symlinks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 18:15:19 +01:00
Stefano Sabatini
2f222b9550 lavfi: add testsrc source 2011-06-26 19:49:24 +02:00
Reimar Döffinger
1109680434 Revert "build: Remove redundant config.mak includes from subdirectory Makefiles."
This reverts commit a6213f3dce.
2011-06-26 09:49:36 +02:00
Michael Niedermayer
4ccb7911ba Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: silence some annoying armcc warnings
  ffplay: Remove unused-but-set channels variable from update_sample_display().
  build: Add DEP_LIBS dependency directly to the shared library build rule.
  build: Remove multiple inclusion guards from config.mak.
  build: Remove redundant config.mak includes from subdirectory Makefiles.
  aacenc: Mark psy_3gpp_window() as av_unused.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-26 02:31:32 +02:00
Diego Biurrun
a6213f3dce build: Remove redundant config.mak includes from subdirectory Makefiles.
Calling Make from subdirectories is not supported and config.mak has
multiple inclusion guards anyway, so the top-level include is enough.
2011-06-25 13:02:51 +02:00
Stefano Sabatini
c6e288a7cd lavfi: fix Makefile HEADERS
Add a missing space between vsink_buffer.h and vsrc_buffer.h.
1000l.
2011-06-19 22:58:31 +02:00
Stefano Sabatini
44f669e7bc lavfi: add vsink_buffer, and use it in ff* tools
Also add the public interface libavfilter/vsink_buffer.h.
2011-06-19 19:18:33 +02:00
Stefano Sabatini
15f03725ce lavfi: add negate filter
This filter is a simple wrapper around the LUT filter.
2011-06-19 19:06:55 +02:00
Stefano Sabatini
dd2793c880 lavfi: add LUT (LookUp Table) generic filters 2011-06-19 19:06:35 +02:00
Stefano Sabatini
07586b68a8 lavfi: add select filter
Address trac issue #92.
2011-05-25 12:54:07 +02:00
Stefano Sabatini
83db719777 lavfi: make vsrc_buffer.h header public
Address trac issue #33.
2011-05-22 19:30:47 +02:00
Bobby Bingham
a38a00eddf libavfilter: vf_split from soc.
Commited by michael, for detailed authorship see soc repo
2011-05-21 17:23:29 +02:00
Stefano Sabatini
566666caf3 lavfi: add libavfilter/avcodec.h and avfilter_copy_frame_props()
avfilter_copy_frame_props() avoids code duplication and increases
robustness.

The added files libavfilter/avcodec.[ch] are used for containing
utilities useful for gluing togheter libavfilter and libavcodec.
2011-05-07 12:03:49 +02:00
Stefano Sabatini
a5b64584f3 lavfi: Port drawtext filter by Hemanth from the libavfilter soc repo
With the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats
* fix minor errors and typos in the filter description
* extend/clarify examples in the filter description

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-07 10:17:40 +02:00
Stefano Sabatini
31d8467d82 lavfi: add showinfo filter 2011-04-27 11:12:45 +02:00
Mark Himsley
2f84bb4236 lavfi: add fieldorder filter
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 07:37:41 +02:00
Mark Himsley
aa0c515a3c lavfi: add fieldorder filter
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-11 00:14:21 +02:00
Brandon Mintern
aadfc9ee74 lavfi: add fade filter
Port fade filter from libavfilter soc repo, with minor fixes by
Stefano.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-03 08:47:16 +02:00
Carl Eugen Hoyos
8214249051 Add libmpcodecs to the list of libavfilter subdirectories. 2011-02-25 15:34:20 +01:00
Stefano Sabatini
bd8e750300 Port drawtext filter by Hemanth from the libavfilter soc repo, with
the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:45 +01:00
Stefano Sabatini
c8c0189d62 lavfi: put color source in a dedicated file
Move the color source code from vf_pad.c to vsrc_color.c.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-21 14:09:46 +00:00
Stefano Sabatini
5ad06110e0 lavfi: add drawutils
Add drawutils.h and drawutils.c, and use them in the pad filter.
The new functions are going to be shared by other filters.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-21 14:09:08 +00:00
Brandon Mintern
704865fc87 lavfi: add fade filter
Port fade filter from libavfilter soc repo, with minor fixes by
Stefano.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-21 13:56:48 +01:00
Stefano Sabatini
fd0b42cce0 lavfi: put color source in a dedicated file
Move the color source code from vf_pad.c to vsrc_color.c.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-21 13:45:44 +01:00