[FFmpeg-cvslog] r20271 - in trunk: Makefile doc/vfilters.texi
stefano
subversion
Sun Oct 18 09:46:06 CEST 2009
Author: stefano
Date: Sun Oct 18 09:46:06 2009
New Revision: 20271
Log:
Add documentation for libavfilter video filters.
Added:
trunk/doc/vfilters.texi
Modified:
trunk/Makefile
Modified: trunk/Makefile
==============================================================================
--- trunk/Makefile Sun Oct 18 09:01:06 2009 (r20270)
+++ trunk/Makefile Sun Oct 18 09:46:06 2009 (r20271)
@@ -81,7 +81,7 @@ cmdutils.o cmdutils.d: version.h
alltools: $(TOOLS)
documentation: $(addprefix doc/, developer.html faq.html ffmpeg-doc.html ffserver-doc.html \
- ffplay-doc.html general.html $(ALLMANPAGES))
+ ffplay-doc.html general.html vfilters.html $(ALLMANPAGES))
doc/%.html: doc/%.texi
texi2html -monolithic -number $<
Added: trunk/doc/vfilters.texi
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/doc/vfilters.texi Sun Oct 18 09:46:06 2009 (r20271)
@@ -0,0 +1,81 @@
+\input texinfo @c -*- texinfo -*-
+
+ at settitle Video Filter Documentation
+ at titlepage
+ at sp 7
+ at center @titlefont{Video Filter Documentation}
+ at sp 3
+ at end titlepage
+
+
+ at chapter Introduction
+
+Libavfilter is the filtering API of FFmpeg. It is the substitute of the
+now deprecated 'vhooks' and started as a Google Summer of Code project.
+
+Integrating libavfilter into the main FFmpeg repository is a work in
+progress. If you wish to try the unfinished development code of
+libavfilter then check it out from the libavfilter repository into
+some directory of your choice by:
+
+ at example
+ svn checkout svn://svn.ffmpeg.org/soc/libavfilter
+ at end example
+
+And then read the README file in the top directory to learn how to
+integrate it into ffmpeg and ffplay.
+
+But note that there may still be serious bugs in the code and its API
+and ABI should not be considered stable yet!
+
+In libavfilter, it is possible for filters to have multiple inputs and
+multiple outputs.
+To illustrate the sorts of things that are possible, we can
+use a complex filter graph. For example, the following one:
+
+ at example
+input --> split --> fifo -----------------------> overlay --> output
+ | ^
+ | |
+ +------> fifo --> crop --> vflip --------+
+ at end example
+
+splits the stream in two streams, sends one stream through the crop filter
+and the vflip filter before merging it back with the other stream by
+overlaying it on top. You can use the following command to achieve this:
+
+ at example
+./ffmpeg -i in.avi -s 240x320 -vfilters "[in] split [T1], fifo, [T2] overlay= 0:240 [out]; [T1] fifo, crop=0:0:-1:240, vflip [T2]
+ at end example
+
+where input_video.avi has a vertical resolution of 480 pixels. The
+result will be that in output the top half of the video is mirrored
+onto the bottom half.
+
+Video filters are loaded using the @var{-vfilters} option passed to
+ffmpeg or to ffplay. Filters in the same linear chain are separated by
+commas. In our example, @var{split, fifo, overlay} are in one linear
+chain, and @var{fifo, crop, vflip} are in another. The points where
+the linear chains join are labeled by names enclosed in square
+brackets. In our example, that is @var{[T1]} and @var{[T2]}. The magic
+labels @var{[in]} and @var{[out]} are the points where video is input
+and output.
+
+Some filters take in input a list of parameters: they are specified
+after the filter name and an equal sign, and are separated each other
+by a semicolon.
+
+There exist so-called @var{source filters} that do not have a video
+input, and we expect in the future some @var{sink filters} that will
+not have video output.
+
+ at chapter Available video filters
+
+When you configure your FFmpeg build, you can disable any of the
+existing video filters.
+The configure output will show the video filters included in your
+build.
+
+Below is a description of the currently available video filters.
+
+ at bye
More information about the ffmpeg-cvslog
mailing list