]> git.sesse.net Git - casparcg/blobdiff - dependencies/ffmpeg/doc/ffplay.html
Upgraded ffmpeg to newest stable
[casparcg] / dependencies / ffmpeg / doc / ffplay.html
index afe53874003a70bd25a9d43c38eb2a2ca45f729b..c44c5997c66f40717cf62af339581c6ba0103afa 100644 (file)
@@ -1,6 +1,7 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd">
+<!DOCTYPE html>
 <html>
-<!-- Created on September 2, 2011 by texi2html 1.82
+<!-- Created on June 19, 2014 by texi2html 1.82 -->
+<!--
 texi2html was written by: 
             Lionel Cons <Lionel.Cons@cern.ch> (original author)
             Karl Berry  <karl@freefriends.org>
@@ -8,38 +9,22 @@ texi2html was written by:
             and many others.
 Maintained by: Many creative people.
 Send bugs and suggestions to <texi2html-bug@nongnu.org>
+
 -->
 <head>
-<title>ffplay Documentation</title>
+<title>FFmpeg documentation : ffplay </title>
 
-<meta name="description" content="ffplay Documentation">
-<meta name="keywords" content="ffplay Documentation">
-<meta name="resource-type" content="document">
-<meta name="distribution" content="global">
+<meta name="description" content="ffplay Documentation: ">
+<meta name="keywords" content="FFmpeg documentation : ffplay ">
 <meta name="Generator" content="texi2html 1.82">
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<style type="text/css">
-<!--
-a.summary-letter {text-decoration: none}
-blockquote.smallquotation {font-size: smaller}
-pre.display {font-family: serif}
-pre.format {font-family: serif}
-pre.menu-comment {font-family: serif}
-pre.menu-preformatted {font-family: serif}
-pre.smalldisplay {font-family: serif; font-size: smaller}
-pre.smallexample {font-size: smaller}
-pre.smallformat {font-family: serif; font-size: smaller}
-pre.smalllisp {font-size: smaller}
-span.roman {font-family:serif; font-weight:normal;}
-span.sansserif {font-family:sans-serif; font-weight:normal;}
-ul.toc {list-style: none}
--->
-</style>
-
+<link rel="stylesheet" type="text/css" href="default.css" />
 
+<link rel="icon" href="favicon.png" type="image/png" />
 </head>
-
-<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
+<body>
+<div id="container">
+<div id="body">
 
 <a name="SEC_Top"></a>
 <h1 class="settitle">ffplay Documentation</h1>
@@ -51,195 +36,25 @@ ul.toc {list-style: none}
 <ul class="toc">
   <li><a name="toc-Synopsis" href="#Synopsis">1. Synopsis</a></li>
   <li><a name="toc-Description" href="#Description">2. Description</a></li>
-  <li><a name="toc-Options-4" href="#Options-4">3. Options</a>
-  <ul class="toc">
-    <li><a name="toc-Generic-options" href="#Generic-options">3.1 Generic options</a></li>
-    <li><a name="toc-AVOptions" href="#AVOptions">3.2 AVOptions</a></li>
-    <li><a name="toc-Main-options" href="#Main-options">3.3 Main options</a></li>
-    <li><a name="toc-Advanced-options" href="#Advanced-options">3.4 Advanced options</a></li>
-    <li><a name="toc-While-playing" href="#While-playing">3.5 While playing</a></li>
-  </ul></li>
-  <li><a name="toc-Expression-Evaluation" href="#Expression-Evaluation">4. Expression Evaluation</a></li>
-  <li><a name="toc-Decoders" href="#Decoders">5. Decoders</a></li>
-  <li><a name="toc-Video-Decoders" href="#Video-Decoders">6. Video Decoders</a>
-  <ul class="toc">
-    <li><a name="toc-rawvideo" href="#rawvideo">6.1 rawvideo</a>
-    <ul class="toc">
-      <li><a name="toc-Options-3" href="#Options-3">6.1.1 Options</a></li>
-    </ul>
-</li>
-  </ul></li>
-  <li><a name="toc-Demuxers" href="#Demuxers">7. Demuxers</a>
-  <ul class="toc">
-    <li><a name="toc-image2-1" href="#image2-1">7.1 image2</a></li>
-    <li><a name="toc-applehttp" href="#applehttp">7.2 applehttp</a></li>
-  </ul></li>
-  <li><a name="toc-Muxers" href="#Muxers">8. Muxers</a>
-  <ul class="toc">
-    <li><a name="toc-crc-1" href="#crc-1">8.1 crc</a></li>
-    <li><a name="toc-framecrc-1" href="#framecrc-1">8.2 framecrc</a></li>
-    <li><a name="toc-image2" href="#image2">8.3 image2</a></li>
-    <li><a name="toc-mpegts" href="#mpegts">8.4 mpegts</a></li>
-    <li><a name="toc-null" href="#null">8.5 null</a></li>
-    <li><a name="toc-matroska" href="#matroska">8.6 matroska</a></li>
-  </ul></li>
-  <li><a name="toc-Input-Devices" href="#Input-Devices">9. Input Devices</a>
-  <ul class="toc">
-    <li><a name="toc-alsa-1" href="#alsa-1">9.1 alsa</a></li>
-    <li><a name="toc-bktr" href="#bktr">9.2 bktr</a></li>
-    <li><a name="toc-dv1394" href="#dv1394">9.3 dv1394</a></li>
-    <li><a name="toc-fbdev" href="#fbdev">9.4 fbdev</a></li>
-    <li><a name="toc-jack" href="#jack">9.5 jack</a></li>
-    <li><a name="toc-lavfi" href="#lavfi">9.6 lavfi</a>
-    <ul class="toc">
-      <li><a name="toc-Options" href="#Options">9.6.1 Options</a></li>
-      <li><a name="toc-Examples" href="#Examples">9.6.2 Examples</a></li>
-    </ul></li>
-    <li><a name="toc-libdc1394" href="#libdc1394">9.7 libdc1394</a></li>
-    <li><a name="toc-openal" href="#openal">9.8 openal</a>
-    <ul class="toc">
-      <li><a name="toc-Options-1" href="#Options-1">9.8.1 Options</a></li>
-      <li><a name="toc-Examples-2" href="#Examples-2">9.8.2 Examples</a></li>
-    </ul></li>
-    <li><a name="toc-oss" href="#oss">9.9 oss</a></li>
-    <li><a name="toc-sndio-1" href="#sndio-1">9.10 sndio</a></li>
-    <li><a name="toc-video4linux-and-video4linux2" href="#video4linux-and-video4linux2">9.11 video4linux and video4linux2</a></li>
-    <li><a name="toc-vfwcap" href="#vfwcap">9.12 vfwcap</a></li>
-    <li><a name="toc-x11grab" href="#x11grab">9.13 x11grab</a>
-    <ul class="toc">
-      <li><a name="toc-follow_005fmouse-AVOption" href="#follow_005fmouse-AVOption">9.13.1 <var>follow_mouse</var> AVOption</a></li>
-      <li><a name="toc-show_005fregion-AVOption" href="#show_005fregion-AVOption">9.13.2 <var>show_region</var> AVOption</a></li>
-    </ul>
-</li>
-  </ul></li>
-  <li><a name="toc-Output-Devices" href="#Output-Devices">10. Output Devices</a>
+  <li><a name="toc-Options" href="#Options">3. Options</a>
   <ul class="toc">
-    <li><a name="toc-alsa" href="#alsa">10.1 alsa</a></li>
-    <li><a name="toc-oss-1" href="#oss-1">10.2 oss</a></li>
-    <li><a name="toc-sdl" href="#sdl">10.3 sdl</a>
-    <ul class="toc">
-      <li><a name="toc-Options-2" href="#Options-2">10.3.1 Options</a></li>
-      <li><a name="toc-Examples-1" href="#Examples-1">10.3.2 Examples</a></li>
-    </ul></li>
-    <li><a name="toc-sndio" href="#sndio">10.4 sndio</a></li>
+    <li><a name="toc-Stream-specifiers-1" href="#Stream-specifiers-1">3.1 Stream specifiers</a></li>
+    <li><a name="toc-Generic-options" href="#Generic-options">3.2 Generic options</a></li>
+    <li><a name="toc-AVOptions" href="#AVOptions">3.3 AVOptions</a></li>
+    <li><a name="toc-Main-options" href="#Main-options">3.4 Main options</a></li>
+    <li><a name="toc-Advanced-options" href="#Advanced-options">3.5 Advanced options</a></li>
+    <li><a name="toc-While-playing" href="#While-playing">3.6 While playing</a></li>
   </ul></li>
-  <li><a name="toc-Protocols" href="#Protocols">11. Protocols</a>
-  <ul class="toc">
-    <li><a name="toc-applehttp-1" href="#applehttp-1">11.1 applehttp</a></li>
-    <li><a name="toc-concat" href="#concat">11.2 concat</a></li>
-    <li><a name="toc-file" href="#file">11.3 file</a></li>
-    <li><a name="toc-gopher" href="#gopher">11.4 gopher</a></li>
-    <li><a name="toc-http" href="#http">11.5 http</a></li>
-    <li><a name="toc-mmst" href="#mmst">11.6 mmst</a></li>
-    <li><a name="toc-mmsh" href="#mmsh">11.7 mmsh</a></li>
-    <li><a name="toc-md5" href="#md5">11.8 md5</a></li>
-    <li><a name="toc-pipe" href="#pipe">11.9 pipe</a></li>
-    <li><a name="toc-rtmp" href="#rtmp">11.10 rtmp</a></li>
-    <li><a name="toc-rtmp_002c-rtmpe_002c-rtmps_002c-rtmpt_002c-rtmpte" href="#rtmp_002c-rtmpe_002c-rtmps_002c-rtmpt_002c-rtmpte">11.11 rtmp, rtmpe, rtmps, rtmpt, rtmpte</a></li>
-    <li><a name="toc-rtp" href="#rtp">11.12 rtp</a></li>
-    <li><a name="toc-rtsp" href="#rtsp">11.13 rtsp</a></li>
-    <li><a name="toc-sap" href="#sap">11.14 sap</a>
-    <ul class="toc">
-      <li><a name="toc-Muxer" href="#Muxer">11.14.1 Muxer</a></li>
-      <li><a name="toc-Demuxer" href="#Demuxer">11.14.2 Demuxer</a></li>
-    </ul></li>
-    <li><a name="toc-tcp" href="#tcp">11.15 tcp</a></li>
-    <li><a name="toc-udp" href="#udp">11.16 udp</a></li>
-  </ul></li>
-  <li><a name="toc-Filtergraph-description" href="#Filtergraph-description">12. Filtergraph description</a>
-  <ul class="toc">
-    <li><a name="toc-Filtergraph-syntax" href="#Filtergraph-syntax">12.1 Filtergraph syntax</a></li>
-  </ul></li>
-  <li><a name="toc-Audio-Filters" href="#Audio-Filters">13. Audio Filters</a>
-  <ul class="toc">
-    <li><a name="toc-aformat" href="#aformat">13.1 aformat</a></li>
-    <li><a name="toc-anull" href="#anull">13.2 anull</a></li>
-    <li><a name="toc-aresample" href="#aresample">13.3 aresample</a></li>
-    <li><a name="toc-ashowinfo" href="#ashowinfo">13.4 ashowinfo</a></li>
-  </ul></li>
-  <li><a name="toc-Audio-Sources" href="#Audio-Sources">14. Audio Sources</a>
-  <ul class="toc">
-    <li><a name="toc-abuffer" href="#abuffer">14.1 abuffer</a></li>
-    <li><a name="toc-amovie" href="#amovie">14.2 amovie</a></li>
-    <li><a name="toc-anullsrc" href="#anullsrc">14.3 anullsrc</a></li>
-  </ul></li>
-  <li><a name="toc-Audio-Sinks" href="#Audio-Sinks">15. Audio Sinks</a>
-  <ul class="toc">
-    <li><a name="toc-abuffersink" href="#abuffersink">15.1 abuffersink</a></li>
-    <li><a name="toc-anullsink" href="#anullsink">15.2 anullsink</a></li>
-  </ul></li>
-  <li><a name="toc-Video-Filters" href="#Video-Filters">16. Video Filters</a>
-  <ul class="toc">
-    <li><a name="toc-blackframe" href="#blackframe">16.1 blackframe</a></li>
-    <li><a name="toc-boxblur" href="#boxblur">16.2 boxblur</a></li>
-    <li><a name="toc-copy" href="#copy">16.3 copy</a></li>
-    <li><a name="toc-crop" href="#crop">16.4 crop</a></li>
-    <li><a name="toc-cropdetect" href="#cropdetect">16.5 cropdetect</a></li>
-    <li><a name="toc-delogo" href="#delogo">16.6 delogo</a></li>
-    <li><a name="toc-drawbox" href="#drawbox">16.7 drawbox</a></li>
-    <li><a name="toc-drawtext" href="#drawtext">16.8 drawtext</a></li>
-    <li><a name="toc-fade" href="#fade">16.9 fade</a></li>
-    <li><a name="toc-fieldorder" href="#fieldorder">16.10 fieldorder</a></li>
-    <li><a name="toc-fifo" href="#fifo">16.11 fifo</a></li>
-    <li><a name="toc-format" href="#format">16.12 format</a></li>
-    <li><a name="toc-frei0r-1" href="#frei0r-1">16.13 frei0r</a></li>
-    <li><a name="toc-gradfun" href="#gradfun">16.14 gradfun</a></li>
-    <li><a name="toc-hflip" href="#hflip">16.15 hflip</a></li>
-    <li><a name="toc-hqdn3d" href="#hqdn3d">16.16 hqdn3d</a></li>
-    <li><a name="toc-lut_002c-lutrgb_002c-lutyuv" href="#lut_002c-lutrgb_002c-lutyuv">16.17 lut, lutrgb, lutyuv</a></li>
-    <li><a name="toc-mp" href="#mp">16.18 mp</a></li>
-    <li><a name="toc-negate" href="#negate">16.19 negate</a></li>
-    <li><a name="toc-noformat" href="#noformat">16.20 noformat</a></li>
-    <li><a name="toc-null-1" href="#null-1">16.21 null</a></li>
-    <li><a name="toc-ocv" href="#ocv">16.22 ocv</a>
-    <ul class="toc">
-      <li><a name="toc-dilate-1" href="#dilate-1">16.22.1 dilate</a></li>
-      <li><a name="toc-erode" href="#erode">16.22.2 erode</a></li>
-      <li><a name="toc-smooth" href="#smooth">16.22.3 smooth</a></li>
-    </ul></li>
-    <li><a name="toc-overlay" href="#overlay">16.23 overlay</a></li>
-    <li><a name="toc-pad" href="#pad">16.24 pad</a></li>
-    <li><a name="toc-pixdesctest" href="#pixdesctest">16.25 pixdesctest</a></li>
-    <li><a name="toc-scale" href="#scale">16.26 scale</a></li>
-    <li><a name="toc-select" href="#select">16.27 select</a></li>
-    <li><a name="toc-setdar-1" href="#setdar-1">16.28 setdar</a></li>
-    <li><a name="toc-setpts" href="#setpts">16.29 setpts</a></li>
-    <li><a name="toc-setsar-1" href="#setsar-1">16.30 setsar</a></li>
-    <li><a name="toc-settb" href="#settb">16.31 settb</a></li>
-    <li><a name="toc-showinfo" href="#showinfo">16.32 showinfo</a></li>
-    <li><a name="toc-slicify" href="#slicify">16.33 slicify</a></li>
-    <li><a name="toc-split" href="#split">16.34 split</a></li>
-    <li><a name="toc-transpose" href="#transpose">16.35 transpose</a></li>
-    <li><a name="toc-unsharp" href="#unsharp">16.36 unsharp</a></li>
-    <li><a name="toc-vflip" href="#vflip">16.37 vflip</a></li>
-    <li><a name="toc-yadif" href="#yadif">16.38 yadif</a></li>
-  </ul></li>
-  <li><a name="toc-Video-Sources" href="#Video-Sources">17. Video Sources</a>
-  <ul class="toc">
-    <li><a name="toc-buffer" href="#buffer">17.1 buffer</a></li>
-    <li><a name="toc-color" href="#color">17.2 color</a></li>
-    <li><a name="toc-movie" href="#movie">17.3 movie</a></li>
-    <li><a name="toc-mptestsrc" href="#mptestsrc">17.4 mptestsrc</a></li>
-    <li><a name="toc-nullsrc" href="#nullsrc">17.5 nullsrc</a></li>
-    <li><a name="toc-frei0r_005fsrc" href="#frei0r_005fsrc">17.6 frei0r_src</a></li>
-    <li><a name="toc-rgbtestsrc_002c-testsrc" href="#rgbtestsrc_002c-testsrc">17.7 rgbtestsrc, testsrc</a></li>
-  </ul></li>
-  <li><a name="toc-Video-Sinks" href="#Video-Sinks">18. Video Sinks</a>
-  <ul class="toc">
-    <li><a name="toc-buffersink" href="#buffersink">18.1 buffersink</a></li>
-    <li><a name="toc-nullsink" href="#nullsink">18.2 nullsink</a></li>
-  </ul>
-</li>
+  <li><a name="toc-See-Also" href="#See-Also">4. See Also</a></li>
+  <li><a name="toc-Authors" href="#Authors">5. Authors</a></li>
 </ul>
 </div>
 
-<hr size="1">
 <a name="Synopsis"></a>
 <h1 class="chapter"><a href="ffplay.html#toc-Synopsis">1. Synopsis</a></h1>
 
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay [options] [&lsquo;<tt>input_file</tt>&rsquo;]
-</pre></td></tr></table>
-
+<p>ffplay [<var>options</var>] [&lsquo;<tt>input_file</tt>&rsquo;]
+</p>
 <a name="Description"></a>
 <h1 class="chapter"><a href="ffplay.html#toc-Description">2. Description</a></h1>
 
@@ -247,24 +62,66 @@ ul.toc {list-style: none}
 libraries and the SDL library. It is mostly used as a testbed for the
 various FFmpeg APIs.
 </p>
-<a name="Options-4"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Options-4">3. Options</a></h1>
+<a name="Options"></a>
+<h1 class="chapter"><a href="ffplay.html#toc-Options">3. Options</a></h1>
 
-<p>All the numerical options, if not specified otherwise, accept in input
-a string representing a number, which may contain one of the
-International System number postfixes, for example &rsquo;K&rsquo;, &rsquo;M&rsquo;, &rsquo;G&rsquo;.
-If &rsquo;i&rsquo; is appended after the postfix, powers of 2 are used instead of
-powers of 10. The &rsquo;B&rsquo; postfix multiplies the value for 8, and can be
-appended after another postfix or used alone. This allows using for
-example &rsquo;KB&rsquo;, &rsquo;MiB&rsquo;, &rsquo;G&rsquo; and &rsquo;B&rsquo; as postfix.
+<p>All the numerical options, if not specified otherwise, accept a string
+representing a number as input, which may be followed by one of the SI
+unit prefixes, for example: &rsquo;K&rsquo;, &rsquo;M&rsquo;, or &rsquo;G&rsquo;.
+</p>
+<p>If &rsquo;i&rsquo; is appended to the SI unit prefix, the complete prefix will be
+interpreted as a unit prefix for binary multiplies, which are based on
+powers of 1024 instead of powers of 1000. Appending &rsquo;B&rsquo; to the SI unit
+prefix multiplies the value by 8. This allows using, for example:
+&rsquo;KB&rsquo;, &rsquo;MiB&rsquo;, &rsquo;G&rsquo; and &rsquo;B&rsquo; as number suffixes.
 </p>
 <p>Options which do not take arguments are boolean options, and set the
 corresponding value to true. They can be set to false by prefixing
-with &quot;no&quot; the option name, for example using &quot;-nofoo&quot; in the
-commandline will set to false the boolean option with name &quot;foo&quot;.
+the option name with &quot;no&quot;. For example using &quot;-nofoo&quot;
+will set the boolean option with name &quot;foo&quot; to false.
+</p>
+<p><a name="Stream-specifiers"></a>
+</p><a name="Stream-specifiers-1"></a>
+<h2 class="section"><a href="ffplay.html#toc-Stream-specifiers-1">3.1 Stream specifiers</a></h2>
+<p>Some options are applied per-stream, e.g. bitrate or codec. Stream specifiers
+are used to precisely specify which stream(s) a given option belongs to.
+</p>
+<p>A stream specifier is a string generally appended to the option name and
+separated from it by a colon. E.g. <code>-codec:a:1 ac3</code> contains the
+<code>a:1</code> stream specifier, which matches the second audio stream. Therefore, it
+would select the ac3 codec for the second audio stream.
+</p>
+<p>A stream specifier can match several streams, so that the option is applied to all
+of them. E.g. the stream specifier in <code>-b:a 128k</code> matches all audio
+streams.
+</p>
+<p>An empty stream specifier matches all streams. For example, <code>-codec copy</code>
+or <code>-codec: copy</code> would copy all the streams without reencoding.
 </p>
+<p>Possible forms of stream specifiers are:
+</p><dl compact="compact">
+<dt> &lsquo;<samp><var>stream_index</var></samp>&rsquo;</dt>
+<dd><p>Matches the stream with this index. E.g. <code>-threads:1 4</code> would set the
+thread count for the second stream to 4.
+</p></dd>
+<dt> &lsquo;<samp><var>stream_type</var>[:<var>stream_index</var>]</samp>&rsquo;</dt>
+<dd><p><var>stream_type</var> is one of following: &rsquo;v&rsquo; for video, &rsquo;a&rsquo; for audio, &rsquo;s&rsquo; for subtitle,
+&rsquo;d&rsquo; for data, and &rsquo;t&rsquo; for attachments. If <var>stream_index</var> is given, then it matches
+stream number <var>stream_index</var> of this type. Otherwise, it matches all
+streams of this type.
+</p></dd>
+<dt> &lsquo;<samp>p:<var>program_id</var>[:<var>stream_index</var>]</samp>&rsquo;</dt>
+<dd><p>If <var>stream_index</var> is given, then it matches the stream with number <var>stream_index</var>
+in the program with the id <var>program_id</var>. Otherwise, it matches all streams in the
+program.
+</p></dd>
+<dt> &lsquo;<samp>#<var>stream_id</var></samp>&rsquo;</dt>
+<dd><p>Matches the stream by a format-specific ID.
+</p></dd>
+</dl>
+
 <a name="Generic-options"></a>
-<h2 class="section"><a href="ffplay.html#toc-Generic-options">3.1 Generic options</a></h2>
+<h2 class="section"><a href="ffplay.html#toc-Generic-options">3.2 Generic options</a></h2>
 
 <p>These options are shared amongst the ff* tools.
 </p>
@@ -273,9 +130,48 @@ commandline will set to false the boolean option with name &quot;foo&quot;.
 <dd><p>Show license.
 </p>
 </dd>
-<dt> &lsquo;<samp>-h, -?, -help, --help</samp>&rsquo;</dt>
-<dd><p>Show help.
+<dt> &lsquo;<samp>-h, -?, -help, --help [<var>arg</var>]</samp>&rsquo;</dt>
+<dd><p>Show help. An optional parameter may be specified to print help about a specific
+item. If no argument is specified, only basic (non advanced) tool
+options are shown.
+</p>
+<p>Possible values of <var>arg</var> are:
+</p><dl compact="compact">
+<dt> &lsquo;<samp>long</samp>&rsquo;</dt>
+<dd><p>Print advanced tool options in addition to the basic tool options.
+</p>
+</dd>
+<dt> &lsquo;<samp>full</samp>&rsquo;</dt>
+<dd><p>Print complete list of options, including shared and private options
+for encoders, decoders, demuxers, muxers, filters, etc.
+</p>
+</dd>
+<dt> &lsquo;<samp>decoder=<var>decoder_name</var></samp>&rsquo;</dt>
+<dd><p>Print detailed information about the decoder named <var>decoder_name</var>. Use the
+&lsquo;<samp>-decoders</samp>&rsquo; option to get a list of all decoders.
+</p>
+</dd>
+<dt> &lsquo;<samp>encoder=<var>encoder_name</var></samp>&rsquo;</dt>
+<dd><p>Print detailed information about the encoder named <var>encoder_name</var>. Use the
+&lsquo;<samp>-encoders</samp>&rsquo; option to get a list of all encoders.
+</p>
+</dd>
+<dt> &lsquo;<samp>demuxer=<var>demuxer_name</var></samp>&rsquo;</dt>
+<dd><p>Print detailed information about the demuxer named <var>demuxer_name</var>. Use the
+&lsquo;<samp>-formats</samp>&rsquo; option to get a list of all demuxers and muxers.
+</p>
+</dd>
+<dt> &lsquo;<samp>muxer=<var>muxer_name</var></samp>&rsquo;</dt>
+<dd><p>Print detailed information about the muxer named <var>muxer_name</var>. Use the
+&lsquo;<samp>-formats</samp>&rsquo; option to get a list of all muxers and demuxers.
 </p>
+</dd>
+<dt> &lsquo;<samp>filter=<var>filter_name</var></samp>&rsquo;</dt>
+<dd><p>Print detailed information about the filter name <var>filter_name</var>. Use the
+&lsquo;<samp>-filters</samp>&rsquo; option to get a list of all filters.
+</p></dd>
+</dl>
+
 </dd>
 <dt> &lsquo;<samp>-version</samp>&rsquo;</dt>
 <dd><p>Show version.
@@ -284,42 +180,21 @@ commandline will set to false the boolean option with name &quot;foo&quot;.
 <dt> &lsquo;<samp>-formats</samp>&rsquo;</dt>
 <dd><p>Show available formats.
 </p>
-<p>The fields preceding the format names have the following meanings:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>D</samp>&rsquo;</dt>
-<dd><p>Decoding available
-</p></dd>
-<dt> &lsquo;<samp>E</samp>&rsquo;</dt>
-<dd><p>Encoding available
-</p></dd>
-</dl>
-
 </dd>
 <dt> &lsquo;<samp>-codecs</samp>&rsquo;</dt>
-<dd><p>Show available codecs.
+<dd><p>Show all codecs known to libavcodec.
+</p>
+<p>Note that the term &rsquo;codec&rsquo; is used throughout this documentation as a shortcut
+for what is more correctly called a media bitstream format.
+</p>
+</dd>
+<dt> &lsquo;<samp>-decoders</samp>&rsquo;</dt>
+<dd><p>Show available decoders.
+</p>
+</dd>
+<dt> &lsquo;<samp>-encoders</samp>&rsquo;</dt>
+<dd><p>Show all available encoders.
 </p>
-<p>The fields preceding the codec names have the following meanings:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>D</samp>&rsquo;</dt>
-<dd><p>Decoding available
-</p></dd>
-<dt> &lsquo;<samp>E</samp>&rsquo;</dt>
-<dd><p>Encoding available
-</p></dd>
-<dt> &lsquo;<samp>V/A/S</samp>&rsquo;</dt>
-<dd><p>Video/audio/subtitle codec
-</p></dd>
-<dt> &lsquo;<samp>S</samp>&rsquo;</dt>
-<dd><p>Codec supports slices
-</p></dd>
-<dt> &lsquo;<samp>D</samp>&rsquo;</dt>
-<dd><p>Codec supports direct rendering
-</p></dd>
-<dt> &lsquo;<samp>T</samp>&rsquo;</dt>
-<dd><p>Codec can handle input truncated at random locations instead of only at frame boundaries
-</p></dd>
-</dl>
-
 </dd>
 <dt> &lsquo;<samp>-bsfs</samp>&rsquo;</dt>
 <dd><p>Show available bitstream filters.
@@ -337,41 +212,185 @@ commandline will set to false the boolean option with name &quot;foo&quot;.
 <dd><p>Show available pixel formats.
 </p>
 </dd>
-<dt> &lsquo;<samp>-loglevel <var>loglevel</var></samp>&rsquo;</dt>
+<dt> &lsquo;<samp>-sample_fmts</samp>&rsquo;</dt>
+<dd><p>Show available sample formats.
+</p>
+</dd>
+<dt> &lsquo;<samp>-layouts</samp>&rsquo;</dt>
+<dd><p>Show channel names and standard channel layouts.
+</p>
+</dd>
+<dt> &lsquo;<samp>-colors</samp>&rsquo;</dt>
+<dd><p>Show recognized color names.
+</p>
+</dd>
+<dt> &lsquo;<samp>-loglevel [repeat+]<var>loglevel</var> | -v [repeat+]<var>loglevel</var></samp>&rsquo;</dt>
 <dd><p>Set the logging level used by the library.
+Adding &quot;repeat+&quot; indicates that repeated log output should not be compressed
+to the first line and the &quot;Last message repeated n times&quot; line will be
+omitted. &quot;repeat&quot; can also be used alone.
+If &quot;repeat&quot; is used alone, and with no prior loglevel set, the default
+loglevel will be used. If multiple loglevel parameters are given, using
+&rsquo;repeat&rsquo; will not change the loglevel.
 <var>loglevel</var> is a number or a string containing one of the following values:
 </p><dl compact="compact">
 <dt> &lsquo;<samp>quiet</samp>&rsquo;</dt>
+<dd><p>Show nothing at all; be silent.
+</p></dd>
 <dt> &lsquo;<samp>panic</samp>&rsquo;</dt>
+<dd><p>Only show fatal errors which could lead the process to crash, such as
+and assert failure. This is not currently used for anything.
+</p></dd>
 <dt> &lsquo;<samp>fatal</samp>&rsquo;</dt>
+<dd><p>Only show fatal errors. These are errors after which the process absolutely
+cannot continue after.
+</p></dd>
 <dt> &lsquo;<samp>error</samp>&rsquo;</dt>
+<dd><p>Show all errors, including ones which can be recovered from.
+</p></dd>
 <dt> &lsquo;<samp>warning</samp>&rsquo;</dt>
+<dd><p>Show all warnings and errors. Any message related to possibly
+incorrect or unexpected events will be shown.
+</p></dd>
 <dt> &lsquo;<samp>info</samp>&rsquo;</dt>
+<dd><p>Show informative messages during processing. This is in addition to
+warnings and errors. This is the default value.
+</p></dd>
 <dt> &lsquo;<samp>verbose</samp>&rsquo;</dt>
+<dd><p>Same as <code>info</code>, except more verbose.
+</p></dd>
 <dt> &lsquo;<samp>debug</samp>&rsquo;</dt>
+<dd><p>Show everything, including debugging information.
+</p></dd>
 </dl>
 
 <p>By default the program logs to stderr, if coloring is supported by the
 terminal, colors are used to mark errors and warnings. Log coloring
 can be disabled setting the environment variable
-<code>FFMPEG_FORCE_NOCOLOR</code> or <code>NO_COLOR</code>, or can be forced setting
-the environment variable <code>FFMPEG_FORCE_COLOR</code>.
+<code>AV_LOG_FORCE_NOCOLOR</code> or <code>NO_COLOR</code>, or can be forced setting
+the environment variable <code>AV_LOG_FORCE_COLOR</code>.
 The use of the environment variable <code>NO_COLOR</code> is deprecated and
 will be dropped in a following FFmpeg version.
 </p>
 </dd>
+<dt> &lsquo;<samp>-report</samp>&rsquo;</dt>
+<dd><p>Dump full command line and console output to a file named
+<code><var>program</var>-<var>YYYYMMDD</var>-<var>HHMMSS</var>.log</code> in the current
+directory.
+This file can be useful for bug reports.
+It also implies <code>-loglevel verbose</code>.
+</p>
+<p>Setting the environment variable <code>FFREPORT</code> to any value has the
+same effect. If the value is a &rsquo;:&rsquo;-separated key=value sequence, these
+options will affect the report; options values must be escaped if they
+contain special characters or the options delimiter &rsquo;:&rsquo; (see the
+&ldquo;Quoting and escaping&rdquo; section in the ffmpeg-utils manual). The
+following option is recognized:
+</p><dl compact="compact">
+<dt> &lsquo;<samp>file</samp>&rsquo;</dt>
+<dd><p>set the file name to use for the report; <code>%p</code> is expanded to the name
+of the program, <code>%t</code> is expanded to a timestamp, <code>%%</code> is expanded
+to a plain <code>%</code>
+</p></dd>
+</dl>
+
+<p>Errors in parsing the environment variable are not fatal, and will not
+appear in the report.
+</p>
+</dd>
+<dt> &lsquo;<samp>-hide_banner</samp>&rsquo;</dt>
+<dd><p>Suppress printing banner.
+</p>
+<p>All FFmpeg tools will normally show a copyright notice, build options
+and library versions. This option can be used to suppress printing
+this information.
+</p>
+</dd>
+<dt> &lsquo;<samp>-cpuflags flags (<em>global</em>)</samp>&rsquo;</dt>
+<dd><p>Allows setting and clearing cpu flags. This option is intended
+for testing. Do not use it unless you know what you&rsquo;re doing.
+</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -cpuflags -sse+mmx ...
+ffmpeg -cpuflags mmx ...
+ffmpeg -cpuflags 0 ...
+</pre></td></tr></table>
+<p>Possible flags for this option are:
+</p><dl compact="compact">
+<dt> &lsquo;<samp>x86</samp>&rsquo;</dt>
+<dd><dl compact="compact">
+<dt> &lsquo;<samp>mmx</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>mmxext</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse2</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse2slow</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse3</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse3slow</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>ssse3</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>atom</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse4.1</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>sse4.2</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>avx</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>xop</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>fma4</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>3dnow</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>3dnowext</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>cmov</samp>&rsquo;</dt>
+</dl>
+</dd>
+<dt> &lsquo;<samp>ARM</samp>&rsquo;</dt>
+<dd><dl compact="compact">
+<dt> &lsquo;<samp>armv5te</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>armv6</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>armv6t2</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>vfp</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>vfpv3</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>neon</samp>&rsquo;</dt>
+</dl>
+</dd>
+<dt> &lsquo;<samp>PowerPC</samp>&rsquo;</dt>
+<dd><dl compact="compact">
+<dt> &lsquo;<samp>altivec</samp>&rsquo;</dt>
+</dl>
+</dd>
+<dt> &lsquo;<samp>Specific Processors</samp>&rsquo;</dt>
+<dd><dl compact="compact">
+<dt> &lsquo;<samp>pentium2</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>pentium3</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>pentium4</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>k6</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>k62</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>athlon</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>athlonxp</samp>&rsquo;</dt>
+<dt> &lsquo;<samp>k8</samp>&rsquo;</dt>
+</dl>
+</dd>
+</dl>
+
+</dd>
+<dt> &lsquo;<samp>-opencl_bench</samp>&rsquo;</dt>
+<dd><p>Benchmark all available OpenCL devices and show the results. This option
+is only available when FFmpeg has been compiled with <code>--enable-opencl</code>.
+</p>
+</dd>
+<dt> &lsquo;<samp>-opencl_options options (<em>global</em>)</samp>&rsquo;</dt>
+<dd><p>Set OpenCL environment options. This option is only available when
+FFmpeg has been compiled with <code>--enable-opencl</code>.
+</p>
+<p><var>options</var> must be a list of <var>key</var>=<var>value</var> option pairs
+separated by &rsquo;:&rsquo;. See the &ldquo;OpenCL Options&rdquo; section in the
+ffmpeg-utils manual for the list of supported options.
+</p></dd>
 </dl>
 
 <a name="AVOptions"></a>
-<h2 class="section"><a href="ffplay.html#toc-AVOptions">3.2 AVOptions</a></h2>
+<h2 class="section"><a href="ffplay.html#toc-AVOptions">3.3 AVOptions</a></h2>
 
 <p>These options are provided directly by the libavformat, libavdevice and
 libavcodec libraries. To see the list of available AVOptions, use the
 &lsquo;<samp>-help</samp>&rsquo; option. They are separated into two categories:
 </p><dl compact="compact">
 <dt> &lsquo;<samp>generic</samp>&rsquo;</dt>
-<dd><p>These options can be set for any container, codec or device. Generic options are
-listed under AVFormatContext options for containers/devices and under
+<dd><p>These options can be set for any container, codec or device. Generic options
+are listed under AVFormatContext options for containers/devices and under
 AVCodecContext options for codecs.
 </p></dd>
 <dt> &lsquo;<samp>private</samp>&rsquo;</dt>
@@ -386,27 +405,18 @@ muxer:
 </p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i input.flac -id3v2_version 3 out.mp3
 </pre></td></tr></table>
 
-<p>You can precisely specify which stream(s) should the codec AVOption apply to by
-appending a stream specifier of the form
-&lsquo;<samp>[:<var>stream_type</var>][:<var>stream_index</var>]</samp>&rsquo; to the option name.
-<var>stream_type</var> is &rsquo;v&rsquo; for video, &rsquo;a&rsquo; for audio and &rsquo;s&rsquo; for subtitle streams.
-<var>stream_index</var> is a global stream index when <var>stream_type</var> isn&rsquo;t
-given, otherwise it counts streams of the given type only. As always, the index
-is zero-based. For example
-</p><table><tr><td>&nbsp;</td><td><pre class="example">-foo -- applies to all applicable streams
--foo:v -- applies to all video streams
--foo:a:2 -- applies to the third audio stream
--foo:0 -- applies to the first stream
-</pre></td></tr></table>
-
-<p>Note -nooption syntax cannot be used for boolean AVOptions, use -option
-0/-option 1.
+<p>All codec AVOptions are per-stream, and thus a stream specifier
+should be attached to them.
+</p>
+<p>Note: the &lsquo;<samp>-nooption</samp>&rsquo; syntax cannot be used for boolean
+AVOptions, use &lsquo;<samp>-option 0</samp>&rsquo;/&lsquo;<samp>-option 1</samp>&rsquo;.
 </p>
-<p>Note2 old undocumented way of specifying per-stream AVOptions by prepending
-v/a/s to the options name is now obsolete and will be removed soon.
+<p>Note: the old undocumented way of specifying per-stream AVOptions by
+prepending v/a/s to the options name is now obsolete and will be
+removed soon.
 </p>
 <a name="Main-options"></a>
-<h2 class="section"><a href="ffplay.html#toc-Main-options">3.3 Main options</a></h2>
+<h2 class="section"><a href="ffplay.html#toc-Main-options">3.4 Main options</a></h2>
 
 <dl compact="compact">
 <dt> &lsquo;<samp>-x <var>width</var></samp>&rsquo;</dt>
@@ -469,11 +479,23 @@ Available values for <var>mode</var> are:
 pressing the key &lt;w&gt;.
 </p>
 </dd>
-<dt> &lsquo;<samp>-vf <var>filter_graph</var></samp>&rsquo;</dt>
-<dd><p><var>filter_graph</var> is a description of the filter graph to apply to
-the input video.
+<dt> &lsquo;<samp>-vf <var>filtergraph</var></samp>&rsquo;</dt>
+<dd><p>Create the filtergraph specified by <var>filtergraph</var> and use it to
+filter the video stream.
+</p>
+<p><var>filtergraph</var> is a description of the filtergraph to apply to
+the stream, and must have a single video input and a single video
+output. In the filtergraph, the input is associated to the label
+<code>in</code>, and the output to the label <code>out</code>. See the
+ffmpeg-filters manual for more information about the filtergraph
+syntax.
+</p>
+</dd>
+<dt> &lsquo;<samp>-af <var>filtergraph</var></samp>&rsquo;</dt>
+<dd><p><var>filtergraph</var> is a description of the filtergraph to apply to
+the input audio.
 Use the option &quot;-filters&quot; to show all the available filters (including
-also sources and sinks).
+sources and sinks).
 </p>
 </dd>
 <dt> &lsquo;<samp>-i <var>input_file</var></samp>&rsquo;</dt>
@@ -482,16 +504,20 @@ also sources and sinks).
 </dl>
 
 <a name="Advanced-options"></a>
-<h2 class="section"><a href="ffplay.html#toc-Advanced-options">3.4 Advanced options</a></h2>
+<h2 class="section"><a href="ffplay.html#toc-Advanced-options">3.5 Advanced options</a></h2>
 <dl compact="compact">
 <dt> &lsquo;<samp>-pix_fmt <var>format</var></samp>&rsquo;</dt>
 <dd><p>Set pixel format.
 This option has been deprecated in favor of private options, try -pixel_format.
-</p></dd>
+</p>
+</dd>
 <dt> &lsquo;<samp>-stats</samp>&rsquo;</dt>
-<dd><p>Show the stream duration, the codec parameters, the current position in
-the stream and the audio/video synchronisation drift.
-</p></dd>
+<dd><p>Print several playback statistics, in particular show the stream
+duration, the codec parameters, the current position in the stream and
+the audio/video synchronisation drift. It is on by default, to
+explicitly disable it you need to specify <code>-nostats</code>.
+</p>
+</dd>
 <dt> &lsquo;<samp>-bug</samp>&rsquo;</dt>
 <dd><p>Work around bugs.
 </p></dd>
@@ -542,11 +568,29 @@ selected, if it is negative the subtitle rendering is disabled.
 </p></dd>
 <dt> &lsquo;<samp>-exitonmousedown</samp>&rsquo;</dt>
 <dd><p>Exit if any mouse button is pressed.
+</p>
+</dd>
+<dt> &lsquo;<samp>-codec:<var>media_specifier</var> <var>codec_name</var></samp>&rsquo;</dt>
+<dd><p>Force a specific decoder implementation for the stream identified by
+<var>media_specifier</var>, which can assume the values <code>a</code> (audio),
+<code>v</code> (video), and <code>s</code> subtitle.
+</p>
+</dd>
+<dt> &lsquo;<samp>-acodec <var>codec_name</var></samp>&rsquo;</dt>
+<dd><p>Force a specific audio decoder.
+</p>
+</dd>
+<dt> &lsquo;<samp>-vcodec <var>codec_name</var></samp>&rsquo;</dt>
+<dd><p>Force a specific video decoder.
+</p>
+</dd>
+<dt> &lsquo;<samp>-scodec <var>codec_name</var></samp>&rsquo;</dt>
+<dd><p>Force a specific subtitle decoder.
 </p></dd>
 </dl>
 
 <a name="While-playing"></a>
-<h2 class="section"><a href="ffplay.html#toc-While-playing">3.5 While playing</a></h2>
+<h2 class="section"><a href="ffplay.html#toc-While-playing">3.6 While playing</a></h2>
 
 <dl compact="compact">
 <dt> &lt;q, ESC&gt;</dt>
@@ -562,7 +606,7 @@ selected, if it is negative the subtitle rendering is disabled.
 </p>
 </dd>
 <dt> &lt;a&gt;</dt>
-<dd><p>Cycle audio channel.
+<dd><p>Cycle audio channel in the curret program.
 </p>
 </dd>
 <dt> &lt;v&gt;</dt>
@@ -570,13 +614,24 @@ selected, if it is negative the subtitle rendering is disabled.
 </p>
 </dd>
 <dt> &lt;t&gt;</dt>
-<dd><p>Cycle subtitle channel.
+<dd><p>Cycle subtitle channel in the current program.
+</p>
+</dd>
+<dt> &lt;c&gt;</dt>
+<dd><p>Cycle program.
 </p>
 </dd>
 <dt> &lt;w&gt;</dt>
 <dd><p>Show audio waves.
 </p>
 </dd>
+<dt> &lt;s&gt;</dt>
+<dd><p>Step to the next frame.
+</p>
+<p>Pause if the stream is not already paused, step to the next video
+frame, and pause.
+</p>
+</dd>
 <dt> &lt;left/right&gt;</dt>
 <dd><p>Seek backward/forward 10 seconds.
 </p>
@@ -585,4211 +640,49 @@ selected, if it is negative the subtitle rendering is disabled.
 <dd><p>Seek backward/forward 1 minute.
 </p>
 </dd>
-<dt> &lt;mouse click&gt;</dt>
-<dd><p>Seek to percentage in file corresponding to fraction of width.
-</p>
-</dd>
-</dl>
-
-
-<a name="Expression-Evaluation"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Expression-Evaluation">4. Expression Evaluation</a></h1>
-
-<p>When evaluating an arithemetic expression, FFmpeg uses an internal
-formula evaluator, implemented through the &lsquo;<tt>libavutil/eval.h</tt>&rsquo;
-interface.
-</p>
-<p>An expression may contain unary, binary operators, constants, and
-functions.
-</p>
-<p>Two expressions <var>expr1</var> and <var>expr2</var> can be combined to form
-another expression &quot;<var>expr1</var>;<var>expr2</var>&quot;.
-<var>expr1</var> and <var>expr2</var> are evaluated in turn, and the new
-expression evaluates to the value of <var>expr2</var>.
-</p>
-<p>The following binary operators are available: <code>+</code>, <code>-</code>,
-<code>*</code>, <code>/</code>, <code>^</code>.
-</p>
-<p>The following unary operators are available: <code>+</code>, <code>-</code>.
-</p>
-<p>The following functions are available:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>sinh(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>cosh(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>tanh(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>sin(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>cos(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>tan(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>atan(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>asin(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>acos(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>exp(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>log(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>abs(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>squish(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>gauss(x)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>isnan(x)</samp>&rsquo;</dt>
-<dd><p>Return 1.0 if <var>x</var> is NAN, 0.0 otherwise.
-</p>
-</dd>
-<dt> &lsquo;<samp>mod(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>max(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>min(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>eq(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>gte(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>gt(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>lte(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>lt(x, y)</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>st(var, expr)</samp>&rsquo;</dt>
-<dd><p>Allow to store the value of the expression <var>expr</var> in an internal
-variable. <var>var</var> specifies the number of the variable where to
-store the value, and it is a value ranging from 0 to 9. The function
-returns the value stored in the internal variable.
-</p>
-</dd>
-<dt> &lsquo;<samp>ld(var)</samp>&rsquo;</dt>
-<dd><p>Allow to load the value of the internal variable with number
-<var>var</var>, which was previosly stored with st(<var>var</var>, <var>expr</var>).
-The function returns the loaded value.
-</p>
-</dd>
-<dt> &lsquo;<samp>while(cond, expr)</samp>&rsquo;</dt>
-<dd><p>Evaluate expression <var>expr</var> while the expression <var>cond</var> is
-non-zero, and returns the value of the last <var>expr</var> evaluation, or
-NAN if <var>cond</var> was always false.
-</p>
-</dd>
-<dt> &lsquo;<samp>ceil(expr)</samp>&rsquo;</dt>
-<dd><p>Round the value of expression <var>expr</var> upwards to the nearest
-integer. For example, &quot;ceil(1.5)&quot; is &quot;2.0&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>floor(expr)</samp>&rsquo;</dt>
-<dd><p>Round the value of expression <var>expr</var> downwards to the nearest
-integer. For example, &quot;floor(-1.5)&quot; is &quot;-2.0&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>trunc(expr)</samp>&rsquo;</dt>
-<dd><p>Round the value of expression <var>expr</var> towards zero to the nearest
-integer. For example, &quot;trunc(-1.5)&quot; is &quot;-1.0&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>sqrt(expr)</samp>&rsquo;</dt>
-<dd><p>Compute the square root of <var>expr</var>. This is equivalent to
-&quot;(<var>expr</var>)^.5&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>not(expr)</samp>&rsquo;</dt>
-<dd><p>Return 1.0 if <var>expr</var> is zero, 0.0 otherwise.
+<dt> &lt;page down/page up&gt;</dt>
+<dd><p>Seek to the previous/next chapter.
+or if there are no chapters
+Seek backward/forward 10 minutes.
 </p>
 </dd>
-<dt> &lsquo;<samp>pow(x, y)</samp>&rsquo;</dt>
-<dd><p>Compute the power of <var>x</var> elevated <var>y</var>, it is equivalent to
-&quot;(<var>x</var>)^(<var>y</var>)&quot;.
-</p></dd>
-</dl>
-
-<p>Note that:
-</p>
-<p><code>*</code> works like AND
-</p>
-<p><code>+</code> works like OR
-</p>
-<p>thus
-</p><table><tr><td>&nbsp;</td><td><pre class="example">if A then B else C
-</pre></td></tr></table>
-<p>is equivalent to
-</p><table><tr><td>&nbsp;</td><td><pre class="example">A*B + not(A)*C
-</pre></td></tr></table>
-
-<p>In your C code, you can extend the list of unary and binary functions,
-and define recognized constants, so that they are available for your
-expressions.
-</p>
-<p>The evaluator also recognizes the International System number
-postfixes. If &rsquo;i&rsquo; is appended after the postfix, powers of 2 are used
-instead of powers of 10. The &rsquo;B&rsquo; postfix multiplies the value for 8,
-and can be appended after another postfix or used alone. This allows
-using for example &rsquo;KB&rsquo;, &rsquo;MiB&rsquo;, &rsquo;G&rsquo; and &rsquo;B&rsquo; as postfix.
-</p>
-<p>Follows the list of available International System postfixes, with
-indication of the corresponding powers of 10 and of 2.
-</p><dl compact="compact">
-<dt> &lsquo;<samp>y</samp>&rsquo;</dt>
-<dd><p>-24 / -80
-</p></dd>
-<dt> &lsquo;<samp>z</samp>&rsquo;</dt>
-<dd><p>-21 / -70
-</p></dd>
-<dt> &lsquo;<samp>a</samp>&rsquo;</dt>
-<dd><p>-18 / -60
-</p></dd>
-<dt> &lsquo;<samp>f</samp>&rsquo;</dt>
-<dd><p>-15 / -50
-</p></dd>
-<dt> &lsquo;<samp>p</samp>&rsquo;</dt>
-<dd><p>-12 / -40
-</p></dd>
-<dt> &lsquo;<samp>n</samp>&rsquo;</dt>
-<dd><p>-9 / -30
-</p></dd>
-<dt> &lsquo;<samp>u</samp>&rsquo;</dt>
-<dd><p>-6 / -20
-</p></dd>
-<dt> &lsquo;<samp>m</samp>&rsquo;</dt>
-<dd><p>-3 / -10
-</p></dd>
-<dt> &lsquo;<samp>c</samp>&rsquo;</dt>
-<dd><p>-2
-</p></dd>
-<dt> &lsquo;<samp>d</samp>&rsquo;</dt>
-<dd><p>-1
-</p></dd>
-<dt> &lsquo;<samp>h</samp>&rsquo;</dt>
-<dd><p>2
-</p></dd>
-<dt> &lsquo;<samp>k</samp>&rsquo;</dt>
-<dd><p>3 / 10
-</p></dd>
-<dt> &lsquo;<samp>K</samp>&rsquo;</dt>
-<dd><p>3 / 10
-</p></dd>
-<dt> &lsquo;<samp>M</samp>&rsquo;</dt>
-<dd><p>6 / 20
-</p></dd>
-<dt> &lsquo;<samp>G</samp>&rsquo;</dt>
-<dd><p>9 / 30
-</p></dd>
-<dt> &lsquo;<samp>T</samp>&rsquo;</dt>
-<dd><p>12 / 40
-</p></dd>
-<dt> &lsquo;<samp>P</samp>&rsquo;</dt>
-<dd><p>15 / 40
-</p></dd>
-<dt> &lsquo;<samp>E</samp>&rsquo;</dt>
-<dd><p>18 / 50
-</p></dd>
-<dt> &lsquo;<samp>Z</samp>&rsquo;</dt>
-<dd><p>21 / 60
-</p></dd>
-<dt> &lsquo;<samp>Y</samp>&rsquo;</dt>
-<dd><p>24 / 70
-</p></dd>
-</dl>
-
-<a name="Decoders"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Decoders">5. Decoders</a></h1>
-
-<p>Decoders are configured elements in FFmpeg which allow the decoding of
-multimedia streams.
-</p>
-<p>When you configure your FFmpeg build, all the supported native decoders
-are enabled by default. Decoders requiring an external library must be enabled
-manually via the corresponding <code>--enable-lib</code> option. You can list all
-available decoders using the configure option <code>--list-decoders</code>.
-</p>
-<p>You can disable all the decoders with the configure option
-<code>--disable-decoders</code> and selectively enable / disable single decoders
-with the options <code>--enable-decoder=<var>DECODER</var></code> /
-<code>--disable-decoder=<var>DECODER</var></code>.
-</p>
-<p>The option <code>-codecs</code> of the ff* tools will display the list of
-enabled decoders.
-</p>
-
-<a name="Video-Decoders"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Video-Decoders">6. Video Decoders</a></h1>
-
-<p>A description of some of the currently available video decoders
-follows.
-</p>
-<a name="rawvideo"></a>
-<h2 class="section"><a href="ffplay.html#toc-rawvideo">6.1 rawvideo</a></h2>
-
-<p>Rawvideo decoder.
-</p>
-<p>This decoder decodes rawvideo streams.
+<dt> &lt;mouse click&gt;</dt>
+<dd><p>Seek to percentage in file corresponding to fraction of width.
 </p>
-<a name="Options-3"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Options-3">6.1.1 Options</a></h3>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>top <var>top_field_first</var></samp>&rsquo;</dt>
-<dd><p>Specify the assumed field type of the input video.
-</p><dl compact="compact">
-<dt> &lsquo;<samp>-1</samp>&rsquo;</dt>
-<dd><p>the video is assumed to be progressive (default)
-</p></dd>
-<dt> &lsquo;<samp>0</samp>&rsquo;</dt>
-<dd><p>bottom-field-first is assumed
-</p></dd>
-<dt> &lsquo;<samp>1</samp>&rsquo;</dt>
-<dd><p>top-field-first is assumed
-</p></dd>
-</dl>
-
 </dd>
 </dl>
 
-<a name="Demuxers"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Demuxers">7. Demuxers</a></h1>
-
-<p>Demuxers are configured elements in FFmpeg which allow to read the
-multimedia streams from a particular type of file.
-</p>
-<p>When you configure your FFmpeg build, all the supported demuxers
-are enabled by default. You can list all available ones using the
-configure option &quot;&ndash;list-demuxers&quot;.
-</p>
-<p>You can disable all the demuxers using the configure option
-&quot;&ndash;disable-demuxers&quot;, and selectively enable a single demuxer with
-the option &quot;&ndash;enable-demuxer=<var>DEMUXER</var>&quot;, or disable it
-with the option &quot;&ndash;disable-demuxer=<var>DEMUXER</var>&quot;.
-</p>
-<p>The option &quot;-formats&quot; of the ff* tools will display the list of
-enabled demuxers.
-</p>
-<p>The description of some of the currently available demuxers follows.
-</p>
-<a name="image2-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-image2-1">7.1 image2</a></h2>
-
-<p>Image file demuxer.
-</p>
-<p>This demuxer reads from a list of image files specified by a pattern.
-</p>
-<p>The pattern may contain the string &quot;%d&quot; or &quot;%0<var>N</var>d&quot;, which
-specifies the position of the characters representing a sequential
-number in each filename matched by the pattern. If the form
-&quot;%d0<var>N</var>d&quot; is used, the string representing the number in each
-filename is 0-padded and <var>N</var> is the total number of 0-padded
-digits representing the number. The literal character &rsquo;%&rsquo; can be
-specified in the pattern with the string &quot;%%&quot;.
-</p>
-<p>If the pattern contains &quot;%d&quot; or &quot;%0<var>N</var>d&quot;, the first filename of
-the file list specified by the pattern must contain a number
-inclusively contained between 0 and 4, all the following numbers must
-be sequential. This limitation may be hopefully fixed.
-</p>
-<p>The pattern may contain a suffix which is used to automatically
-determine the format of the images contained in the files.
-</p>
-<p>For example the pattern &quot;img-%03d.bmp&quot; will match a sequence of
-filenames of the form &lsquo;<tt>img-001.bmp</tt>&rsquo;, &lsquo;<tt>img-002.bmp</tt>&rsquo;, ...,
-&lsquo;<tt>img-010.bmp</tt>&rsquo;, etc.; the pattern &quot;i%%m%%g-%d.jpg&quot; will match a
-sequence of filenames of the form &lsquo;<tt>i%m%g-1.jpg</tt>&rsquo;,
-&lsquo;<tt>i%m%g-2.jpg</tt>&rsquo;, ..., &lsquo;<tt>i%m%g-10.jpg</tt>&rsquo;, etc.
-</p>
-<p>The size, the pixel format, and the format of each image must be the
-same for all the files in the sequence.
-</p>
-<p>The following example shows how to use &lsquo;<tt>ffmpeg</tt>&rsquo; for creating a
-video from the images in the file sequence &lsquo;<tt>img-001.jpeg</tt>&rsquo;,
-&lsquo;<tt>img-002.jpeg</tt>&rsquo;, ..., assuming an input framerate of 10 frames per
-second:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -r 10 -f image2 -i 'img-%03d.jpeg' out.avi
-</pre></td></tr></table>
 
-<p>Note that the pattern must not necessarily contain &quot;%d&quot; or
-&quot;%0<var>N</var>d&quot;, for example to convert a single image file
-&lsquo;<tt>img.jpeg</tt>&rsquo; you can employ the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f image2 -i img.jpeg img.png
-</pre></td></tr></table>
 
-<a name="applehttp"></a>
-<h2 class="section"><a href="ffplay.html#toc-applehttp">7.2 applehttp</a></h2>
+<a name="See-Also"></a>
+<h1 class="chapter"><a href="ffplay.html#toc-See-Also">4. See Also</a></h1>
 
-<p>Apple HTTP Live Streaming demuxer.
-</p>
-<p>This demuxer presents all AVStreams from all variant streams.
-The id field is set to the bitrate variant index number. By setting
-the discard flags on AVStreams (by pressing &rsquo;a&rsquo; or &rsquo;v&rsquo; in ffplay),
-the caller can decide which variant streams to actually receive.
-The total bitrate of the variant that the stream belongs to is
-available in a metadata key named &quot;variant_bitrate&quot;.
+<p><a href="ffplay-all.html">ffmpeg-all</a>,
+<a href="ffmpeg.html">ffmpeg</a>, <a href="ffprobe.html">ffprobe</a>, <a href="ffserver.html">ffserver</a>,
+<a href="ffmpeg-utils.html">ffmpeg-utils</a>,
+<a href="ffmpeg-scaler.html">ffmpeg-scaler</a>,
+<a href="ffmpeg-resampler.html">ffmpeg-resampler</a>,
+<a href="ffmpeg-codecs.html">ffmpeg-codecs</a>,
+<a href="ffmpeg-bitstream-filters.html">ffmpeg-bitstream-filters</a>,
+<a href="ffmpeg-formats.html">ffmpeg-formats</a>,
+<a href="ffmpeg-devices.html">ffmpeg-devices</a>,
+<a href="ffmpeg-protocols.html">ffmpeg-protocols</a>,
+<a href="ffmpeg-filters.html">ffmpeg-filters</a>
 </p>
-<a name="Muxers"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Muxers">8. Muxers</a></h1>
 
-<p>Muxers are configured elements in FFmpeg which allow writing
-multimedia streams to a particular type of file.
-</p>
-<p>When you configure your FFmpeg build, all the supported muxers
-are enabled by default. You can list all available muxers using the
-configure option <code>--list-muxers</code>.
-</p>
-<p>You can disable all the muxers with the configure option
-<code>--disable-muxers</code> and selectively enable / disable single muxers
-with the options <code>--enable-muxer=<var>MUXER</var></code> /
-<code>--disable-muxer=<var>MUXER</var></code>.
-</p>
-<p>The option <code>-formats</code> of the ff* tools will display the list of
-enabled muxers.
-</p>
-<p>A description of some of the currently available muxers follows.
-</p>
-<p><a name="crc"></a>
-</p><a name="crc-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-crc-1">8.1 crc</a></h2>
+<a name="Authors"></a>
+<h1 class="chapter"><a href="ffplay.html#toc-Authors">5. Authors</a></h1>
 
-<p>CRC (Cyclic Redundancy Check) testing format.
+<p>The FFmpeg developers.
 </p>
-<p>This muxer computes and prints the Adler-32 CRC of all the input audio
-and video frames. By default audio frames are converted to signed
-16-bit raw audio and video frames to raw video before computing the
-CRC.
+<p>For details about the authorship, see the Git history of the project
+(git://source.ffmpeg.org/ffmpeg), e.g. by typing the command
+<code>git log</code> in the FFmpeg source directory, or browsing the
+online repository at <a href="http://source.ffmpeg.org">http://source.ffmpeg.org</a>.
 </p>
-<p>The output of the muxer consists of a single line of the form:
-CRC=0x<var>CRC</var>, where <var>CRC</var> is a hexadecimal number 0-padded to
-8 digits containing the CRC for all the decoded input frames.
+<p>Maintainers for the specific components are listed in the file
+&lsquo;<tt>MAINTAINERS</tt>&rsquo; in the source code tree.
 </p>
-<p>For example to compute the CRC of the input, and store it in the file
-&lsquo;<tt>out.crc</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -f crc out.crc
-</pre></td></tr></table>
 
-<p>You can print the CRC to stdout with the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -f crc -
-</pre></td></tr></table>
-
-<p>You can select the output format of each frame with &lsquo;<tt>ffmpeg</tt>&rsquo; by
-specifying the audio and video codec and format. For example to
-compute the CRC of the input audio converted to PCM unsigned 8-bit
-and the input video converted to MPEG-2 video, use the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -acodec pcm_u8 -vcodec mpeg2video -f crc -
-</pre></td></tr></table>
-
-<p>See also the <a href="#framecrc">framecrc</a> muxer.
-</p>
-<p><a name="framecrc"></a>
-</p><a name="framecrc-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-framecrc-1">8.2 framecrc</a></h2>
-
-<p>Per-frame CRC (Cyclic Redundancy Check) testing format.
-</p>
-<p>This muxer computes and prints the Adler-32 CRC for each decoded audio
-and video frame. By default audio frames are converted to signed
-16-bit raw audio and video frames to raw video before computing the
-CRC.
-</p>
-<p>The output of the muxer consists of a line for each audio and video
-frame of the form: <var>stream_index</var>, <var>frame_dts</var>,
-<var>frame_size</var>, 0x<var>CRC</var>, where <var>CRC</var> is a hexadecimal
-number 0-padded to 8 digits containing the CRC of the decoded frame.
-</p>
-<p>For example to compute the CRC of each decoded frame in the input, and
-store it in the file &lsquo;<tt>out.crc</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -f framecrc out.crc
-</pre></td></tr></table>
-
-<p>You can print the CRC of each decoded frame to stdout with the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -f framecrc -
-</pre></td></tr></table>
-
-<p>You can select the output format of each frame with &lsquo;<tt>ffmpeg</tt>&rsquo; by
-specifying the audio and video codec and format. For example, to
-compute the CRC of each decoded input audio frame converted to PCM
-unsigned 8-bit and of each decoded input video frame converted to
-MPEG-2 video, use the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -acodec pcm_u8 -vcodec mpeg2video -f framecrc -
-</pre></td></tr></table>
-
-<p>See also the <a href="#crc">crc</a> muxer.
-</p>
-<a name="image2"></a>
-<h2 class="section"><a href="ffplay.html#toc-image2">8.3 image2</a></h2>
-
-<p>Image file muxer.
-</p>
-<p>The image file muxer writes video frames to image files.
-</p>
-<p>The output filenames are specified by a pattern, which can be used to
-produce sequentially numbered series of files.
-The pattern may contain the string &quot;%d&quot; or &quot;%0<var>N</var>d&quot;, this string
-specifies the position of the characters representing a numbering in
-the filenames. If the form &quot;%0<var>N</var>d&quot; is used, the string
-representing the number in each filename is 0-padded to <var>N</var>
-digits. The literal character &rsquo;%&rsquo; can be specified in the pattern with
-the string &quot;%%&quot;.
-</p>
-<p>If the pattern contains &quot;%d&quot; or &quot;%0<var>N</var>d&quot;, the first filename of
-the file list specified will contain the number 1, all the following
-numbers will be sequential.
-</p>
-<p>The pattern may contain a suffix which is used to automatically
-determine the format of the image files to write.
-</p>
-<p>For example the pattern &quot;img-%03d.bmp&quot; will specify a sequence of
-filenames of the form &lsquo;<tt>img-001.bmp</tt>&rsquo;, &lsquo;<tt>img-002.bmp</tt>&rsquo;, ...,
-&lsquo;<tt>img-010.bmp</tt>&rsquo;, etc.
-The pattern &quot;img%%-%d.jpg&quot; will specify a sequence of filenames of the
-form &lsquo;<tt>img%-1.jpg</tt>&rsquo;, &lsquo;<tt>img%-2.jpg</tt>&rsquo;, ..., &lsquo;<tt>img%-10.jpg</tt>&rsquo;,
-etc.
-</p>
-<p>The following example shows how to use &lsquo;<tt>ffmpeg</tt>&rsquo; for creating a
-sequence of files &lsquo;<tt>img-001.jpeg</tt>&rsquo;, &lsquo;<tt>img-002.jpeg</tt>&rsquo;, ...,
-taking one image every second from the input video:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i in.avi -r 1 -f image2 'img-%03d.jpeg'
-</pre></td></tr></table>
-
-<p>Note that with &lsquo;<tt>ffmpeg</tt>&rsquo;, if the format is not specified with the
-<code>-f</code> option and the output filename specifies an image file
-format, the image2 muxer is automatically selected, so the previous
-command can be written as:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i in.avi -r 1 'img-%03d.jpeg'
-</pre></td></tr></table>
-
-<p>Note also that the pattern must not necessarily contain &quot;%d&quot; or
-&quot;%0<var>N</var>d&quot;, for example to create a single image file
-&lsquo;<tt>img.jpeg</tt>&rsquo; from the input video you can employ the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i in.avi -f image2 -vframes 1 img.jpeg
-</pre></td></tr></table>
-
-<p>The image muxer supports the .Y.U.V image file format. This format is
-special in that that each image frame consists of three files, for
-each of the YUV420P components. To read or write this image file format,
-specify the name of the &rsquo;.Y&rsquo; file. The muxer will automatically open the
-&rsquo;.U&rsquo; and &rsquo;.V&rsquo; files as required.
-</p>
-<a name="mpegts"></a>
-<h2 class="section"><a href="ffplay.html#toc-mpegts">8.4 mpegts</a></h2>
-
-<p>MPEG transport stream muxer.
-</p>
-<p>This muxer implements ISO 13818-1 and part of ETSI EN 300 468.
-</p>
-<p>The muxer options are:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>-mpegts_original_network_id <var>number</var></samp>&rsquo;</dt>
-<dd><p>Set the original_network_id (default 0x0001). This is unique identifier
-of a network in DVB. Its main use is in the unique identification of a
-service through the path Original_Network_ID, Transport_Stream_ID.
-</p></dd>
-<dt> &lsquo;<samp>-mpegts_transport_stream_id <var>number</var></samp>&rsquo;</dt>
-<dd><p>Set the transport_stream_id (default 0x0001). This identifies a
-transponder in DVB.
-</p></dd>
-<dt> &lsquo;<samp>-mpegts_service_id <var>number</var></samp>&rsquo;</dt>
-<dd><p>Set the service_id (default 0x0001) also known as program in DVB.
-</p></dd>
-<dt> &lsquo;<samp>-mpegts_pmt_start_pid <var>number</var></samp>&rsquo;</dt>
-<dd><p>Set the first PID for PMT (default 0x1000, max 0x1f00).
-</p></dd>
-<dt> &lsquo;<samp>-mpegts_start_pid <var>number</var></samp>&rsquo;</dt>
-<dd><p>Set the first PID for data packets (default 0x0100, max 0x0f00).
-</p></dd>
-</dl>
-
-<p>The recognized metadata settings in mpegts muxer are <code>service_provider</code>
-and <code>service_name</code>. If they are not set the default for
-<code>service_provider</code> is &quot;FFmpeg&quot; and the default for
-<code>service_name</code> is &quot;Service01&quot;.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i file.mpg -acodec copy -vcodec copy \
-     -mpegts_original_network_id 0x1122 \
-     -mpegts_transport_stream_id 0x3344 \
-     -mpegts_service_id 0x5566 \
-     -mpegts_pmt_start_pid 0x1500 \
-     -mpegts_start_pid 0x150 \
-     -metadata service_provider=&quot;Some provider&quot; \
-     -metadata service_name=&quot;Some Channel&quot; \
-     -y out.ts
-</pre></td></tr></table>
-
-<a name="null"></a>
-<h2 class="section"><a href="ffplay.html#toc-null">8.5 null</a></h2>
-
-<p>Null muxer.
-</p>
-<p>This muxer does not generate any output file, it is mainly useful for
-testing or benchmarking purposes.
-</p>
-<p>For example to benchmark decoding with &lsquo;<tt>ffmpeg</tt>&rsquo; you can use the
-command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -benchmark -i INPUT -f null out.null
-</pre></td></tr></table>
-
-<p>Note that the above command does not read or write the &lsquo;<tt>out.null</tt>&rsquo;
-file, but specifying the output file is required by the &lsquo;<tt>ffmpeg</tt>&rsquo;
-syntax.
-</p>
-<p>Alternatively you can write the command as:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -benchmark -i INPUT -f null -
-</pre></td></tr></table>
-
-<a name="matroska"></a>
-<h2 class="section"><a href="ffplay.html#toc-matroska">8.6 matroska</a></h2>
-
-<p>Matroska container muxer.
-</p>
-<p>This muxer implements the matroska and webm container specs.
-</p>
-<p>The recognized metadata settings in this muxer are:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>title=<var>title name</var></samp>&rsquo;</dt>
-<dd><p>Name provided to a single track
-</p></dd>
-</dl>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>language=<var>language name</var></samp>&rsquo;</dt>
-<dd><p>Specifies the language of the track in the Matroska languages form
-</p></dd>
-</dl>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>stereo_mode=<var>mode</var></samp>&rsquo;</dt>
-<dd><p>Stereo 3D video layout of two views in a single video track
-</p><dl compact="compact">
-<dt> &lsquo;<samp>mono</samp>&rsquo;</dt>
-<dd><p>video is not stereo
-</p></dd>
-<dt> &lsquo;<samp>left_right</samp>&rsquo;</dt>
-<dd><p>Both views are arranged side by side, Left-eye view is on the left
-</p></dd>
-<dt> &lsquo;<samp>bottom_top</samp>&rsquo;</dt>
-<dd><p>Both views are arranged in top-bottom orientation, Left-eye view is at bottom
-</p></dd>
-<dt> &lsquo;<samp>top_bottom</samp>&rsquo;</dt>
-<dd><p>Both views are arranged in top-bottom orientation, Left-eye view is on top
-</p></dd>
-<dt> &lsquo;<samp>checkerboard_rl</samp>&rsquo;</dt>
-<dd><p>Each view is arranged in a checkerboard interleaved pattern, Left-eye view being first
-</p></dd>
-<dt> &lsquo;<samp>checkerboard_lr</samp>&rsquo;</dt>
-<dd><p>Each view is arranged in a checkerboard interleaved pattern, Right-eye view being first
-</p></dd>
-<dt> &lsquo;<samp>row_interleaved_rl</samp>&rsquo;</dt>
-<dd><p>Each view is constituted by a row based interleaving, Right-eye view is first row
-</p></dd>
-<dt> &lsquo;<samp>row_interleaved_lr</samp>&rsquo;</dt>
-<dd><p>Each view is constituted by a row based interleaving, Left-eye view is first row
-</p></dd>
-<dt> &lsquo;<samp>col_interleaved_rl</samp>&rsquo;</dt>
-<dd><p>Both views are arranged in a column based interleaving manner, Right-eye view is first column
-</p></dd>
-<dt> &lsquo;<samp>col_interleaved_lr</samp>&rsquo;</dt>
-<dd><p>Both views are arranged in a column based interleaving manner, Left-eye view is first column
-</p></dd>
-<dt> &lsquo;<samp>anaglyph_cyan_red</samp>&rsquo;</dt>
-<dd><p>All frames are in anaglyph format viewable through red-cyan filters
-</p></dd>
-<dt> &lsquo;<samp>right_left</samp>&rsquo;</dt>
-<dd><p>Both views are arranged side by side, Right-eye view is on the left
-</p></dd>
-<dt> &lsquo;<samp>anaglyph_green_magenta</samp>&rsquo;</dt>
-<dd><p>All frames are in anaglyph format viewable through green-magenta filters
-</p></dd>
-<dt> &lsquo;<samp>block_lr</samp>&rsquo;</dt>
-<dd><p>Both eyes laced in one Block, Left-eye view is first
-</p></dd>
-<dt> &lsquo;<samp>block_rl</samp>&rsquo;</dt>
-<dd><p>Both eyes laced in one Block, Right-eye view is first
-</p></dd>
-</dl>
-</dd>
-</dl>
-
-<p>For example a 3D WebM clip can be created using the following command line:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i sample_left_right_clip.mpg -an -vcodec libvpx -metadata stereo_mode=left_right -y stereo_clip.webm
-</pre></td></tr></table>
-
-<a name="Input-Devices"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Input-Devices">9. Input Devices</a></h1>
-
-<p>Input devices are configured elements in FFmpeg which allow to access
-the data coming from a multimedia device attached to your system.
-</p>
-<p>When you configure your FFmpeg build, all the supported input devices
-are enabled by default. You can list all available ones using the
-configure option &quot;&ndash;list-indevs&quot;.
-</p>
-<p>You can disable all the input devices using the configure option
-&quot;&ndash;disable-indevs&quot;, and selectively enable an input device using the
-option &quot;&ndash;enable-indev=<var>INDEV</var>&quot;, or you can disable a particular
-input device using the option &quot;&ndash;disable-indev=<var>INDEV</var>&quot;.
-</p>
-<p>The option &quot;-formats&quot; of the ff* tools will display the list of
-supported input devices (amongst the demuxers).
-</p>
-<p>A description of the currently available input devices follows.
-</p>
-<a name="alsa-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-alsa-1">9.1 alsa</a></h2>
-
-<p>ALSA (Advanced Linux Sound Architecture) input device.
-</p>
-<p>To enable this input device during configuration you need libasound
-installed on your system.
-</p>
-<p>This device allows capturing from an ALSA device. The name of the
-device to capture has to be an ALSA card identifier.
-</p>
-<p>An ALSA identifier has the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">hw:<var>CARD</var>[,<var>DEV</var>[,<var>SUBDEV</var>]]
-</pre></td></tr></table>
-
-<p>where the <var>DEV</var> and <var>SUBDEV</var> components are optional.
-</p>
-<p>The three arguments (in order: <var>CARD</var>,<var>DEV</var>,<var>SUBDEV</var>)
-specify card number or identifier, device number and subdevice number
-(-1 means any).
-</p>
-<p>To see the list of cards currently recognized by your system check the
-files &lsquo;<tt>/proc/asound/cards</tt>&rsquo; and &lsquo;<tt>/proc/asound/devices</tt>&rsquo;.
-</p>
-<p>For example to capture with &lsquo;<tt>ffmpeg</tt>&rsquo; from an ALSA device with
-card id 0, you may run the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f alsa -i hw:0 alsaout.wav
-</pre></td></tr></table>
-
-<p>For more information see:
-<a href="http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html">http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html</a>
-</p>
-<a name="bktr"></a>
-<h2 class="section"><a href="ffplay.html#toc-bktr">9.2 bktr</a></h2>
-
-<p>BSD video input device.
-</p>
-<a name="dv1394"></a>
-<h2 class="section"><a href="ffplay.html#toc-dv1394">9.3 dv1394</a></h2>
-
-<p>Linux DV 1394 input device.
-</p>
-<a name="fbdev"></a>
-<h2 class="section"><a href="ffplay.html#toc-fbdev">9.4 fbdev</a></h2>
-
-<p>Linux framebuffer input device.
-</p>
-<p>The Linux framebuffer is a graphic hardware-independent abstraction
-layer to show graphics on a computer monitor, typically on the
-console. It is accessed through a file device node, usually
-&lsquo;<tt>/dev/fb0</tt>&rsquo;.
-</p>
-<p>For more detailed information read the file
-Documentation/fb/framebuffer.txt included in the Linux source tree.
-</p>
-<p>To record from the framebuffer device &lsquo;<tt>/dev/fb0</tt>&rsquo; with
-&lsquo;<tt>ffmpeg</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f fbdev -r 10 -i /dev/fb0 out.avi
-</pre></td></tr></table>
-
-<p>You can take a single screenshot image with the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f fbdev -vframes 1 -r 1 -i /dev/fb0 screenshot.jpeg
-</pre></td></tr></table>
-
-<p>See also <a href="http://linux-fbdev.sourceforge.net/">http://linux-fbdev.sourceforge.net/</a>, and fbset(1).
-</p>
-<a name="jack"></a>
-<h2 class="section"><a href="ffplay.html#toc-jack">9.5 jack</a></h2>
-
-<p>JACK input device.
-</p>
-<p>To enable this input device during configuration you need libjack
-installed on your system.
-</p>
-<p>A JACK input device creates one or more JACK writable clients, one for
-each audio channel, with name <var>client_name</var>:input_<var>N</var>, where
-<var>client_name</var> is the name provided by the application, and <var>N</var>
-is a number which identifies the channel.
-Each writable client will send the acquired data to the FFmpeg input
-device.
-</p>
-<p>Once you have created one or more JACK readable clients, you need to
-connect them to one or more JACK writable clients.
-</p>
-<p>To connect or disconnect JACK clients you can use the
-&lsquo;<tt>jack_connect</tt>&rsquo; and &lsquo;<tt>jack_disconnect</tt>&rsquo; programs, or do it
-through a graphical interface, for example with &lsquo;<tt>qjackctl</tt>&rsquo;.
-</p>
-<p>To list the JACK clients and their properties you can invoke the command
-&lsquo;<tt>jack_lsp</tt>&rsquo;.
-</p>
-<p>Follows an example which shows how to capture a JACK readable client
-with &lsquo;<tt>ffmpeg</tt>&rsquo;.
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># Create a JACK writable client with name &quot;ffmpeg&quot;.
-$ ffmpeg -f jack -i ffmpeg -y out.wav
-
-# Start the sample jack_metro readable client.
-$ jack_metro -b 120 -d 0.2 -f 4000
-
-# List the current JACK clients.
-$ jack_lsp -c
-system:capture_1
-system:capture_2
-system:playback_1
-system:playback_2
-ffmpeg:input_1
-metro:120_bpm
-
-# Connect metro to the ffmpeg writable client.
-$ jack_connect metro:120_bpm ffmpeg:input_1
-</pre></td></tr></table>
-
-<p>For more information read:
-<a href="http://jackaudio.org/">http://jackaudio.org/</a>
-</p>
-<a name="lavfi"></a>
-<h2 class="section"><a href="ffplay.html#toc-lavfi">9.6 lavfi</a></h2>
-
-<p>Libavfilter input virtual device.
-</p>
-<p>This input device reads data from the open output pads of a libavfilter
-filtergraph.
-</p>
-<p>For each filtergraph open output, the input device will create a
-corresponding stream which is mapped to the generated output. Currently
-only video data is supported. The filtergraph is specified through the
-option &lsquo;<samp>graph</samp>&rsquo;.
-</p>
-<p>To enable this input device, you need to configure your build with
-<code>--enable-libavfilter</code>.
-</p>
-<a name="Options"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Options">9.6.1 Options</a></h3>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>graph</samp>&rsquo;</dt>
-<dd><p>Specify the filtergraph to use as input. Each video open output must be
-labelled by a unique string of the form &quot;out<var>N</var>&quot;, where <var>N</var> is a
-number starting from 0 corresponding to the mapped input stream
-generated by the device.
-The first unlabelled output is automatically assigned to the &quot;out0&quot;
-label, but all the others need to be specified explicitely.
-</p>
-<p>If not specified defaults to the filename specified for the input
-device.
-</p></dd>
-</dl>
-
-<a name="Examples"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Examples">9.6.2 Examples</a></h3>
-
-<ul>
-<li>
-Create a color video stream and play it back with &lsquo;<tt>ffplay</tt>&rsquo;:
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay -f lavfi -graph &quot;color=pink [out0]&quot; dummy
-</pre></td></tr></table>
-
-</li><li>
-As the previous example, but use filename for specifying the graph
-description, and omit the &quot;out0&quot; label:
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay -f lavfi color=pink
-</pre></td></tr></table>
-
-</li><li>
-Create three different video test filtered sources and play them:
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay -f lavfi -graph &quot;testsrc [out0]; testsrc,hflip [out1]; testsrc,negate [out2]&quot; test3
-</pre></td></tr></table>
-</li></ul>
-
-<a name="libdc1394"></a>
-<h2 class="section"><a href="ffplay.html#toc-libdc1394">9.7 libdc1394</a></h2>
-
-<p>IIDC1394 input device, based on libdc1394 and libraw1394.
-</p>
-<a name="openal"></a>
-<h2 class="section"><a href="ffplay.html#toc-openal">9.8 openal</a></h2>
-
-<p>The OpenAL input device provides audio capture on all systems with a
-working OpenAL 1.1 implementation.
-</p>
-<p>To enable this input device during configuration, you need OpenAL
-headers and libraries installed on your system, and need to configure
-FFmpeg with <code>--enable-openal</code>.
-</p>
-<p>OpenAL headers and libraries should be provided as part of your OpenAL
-implementation, or as an additional download (an SDK). Depending on your
-installation you may need to specify additional flags via the
-<code>--extra-cflags</code> and <code>--extra-ldflags</code> for allowing the build
-system to locate the OpenAL headers and libraries.
-</p>
-<p>An incomplete list of OpenAL implementations follows:
-</p>
-<dl compact="compact">
-<dt> <strong>Creative</strong></dt>
-<dd><p>The official Windows implementation, providing hardware acceleration
-with supported devices and software fallback.
-See <a href="http://openal.org/">http://openal.org/</a>.
-</p></dd>
-<dt> <strong>OpenAL Soft</strong></dt>
-<dd><p>Portable, open source (LGPL) software implementation. Includes
-backends for the most common sound APIs on the Windows, Linux,
-Solaris, and BSD operating systems.
-See <a href="http://kcat.strangesoft.net/openal.html">http://kcat.strangesoft.net/openal.html</a>.
-</p></dd>
-<dt> <strong>Apple</strong></dt>
-<dd><p>OpenAL is part of Core Audio, the official Mac OS X Audio interface.
-See <a href="http://developer.apple.com/technologies/mac/audio-and-video.html">http://developer.apple.com/technologies/mac/audio-and-video.html</a>
-</p></dd>
-</dl>
-
-<p>This device allows to capture from an audio input device handled
-through OpenAL.
-</p>
-<p>You need to specify the name of the device to capture in the provided
-filename. If the empty string is provided, the device will
-automatically select the default device. You can get the list of the
-supported devices by using the option <var>list_devices</var>.
-</p>
-<a name="Options-1"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Options-1">9.8.1 Options</a></h3>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>channels</samp>&rsquo;</dt>
-<dd><p>Set the number of channels in the captured audio. Only the values
-&lsquo;<samp>1</samp>&rsquo; (monaural) and &lsquo;<samp>2</samp>&rsquo; (stereo) are currently supported.
-Defaults to &lsquo;<samp>2</samp>&rsquo;.
-</p>
-</dd>
-<dt> &lsquo;<samp>sample_size</samp>&rsquo;</dt>
-<dd><p>Set the sample size (in bits) of the captured audio. Only the values
-&lsquo;<samp>8</samp>&rsquo; and &lsquo;<samp>16</samp>&rsquo; are currently supported. Defaults to
-&lsquo;<samp>16</samp>&rsquo;.
-</p>
-</dd>
-<dt> &lsquo;<samp>sample_rate</samp>&rsquo;</dt>
-<dd><p>Set the sample rate (in Hz) of the captured audio.
-Defaults to &lsquo;<samp>44.1k</samp>&rsquo;.
-</p>
-</dd>
-<dt> &lsquo;<samp>list_devices</samp>&rsquo;</dt>
-<dd><p>If set to &lsquo;<samp>true</samp>&rsquo;, print a list of devices and exit.
-Defaults to &lsquo;<samp>false</samp>&rsquo;.
-</p>
-</dd>
-</dl>
-
-<a name="Examples-2"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Examples-2">9.8.2 Examples</a></h3>
-
-<p>Print the list of OpenAL supported devices and exit:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">$ ffmpeg -list_devices true -f openal -i dummy out.ogg
-</pre></td></tr></table>
-
-<p>Capture from the OpenAL device &lsquo;<tt>DR-BT101 via PulseAudio</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">$ ffmpeg -f openal -i 'DR-BT101 via PulseAudio' out.ogg
-</pre></td></tr></table>
-
-<p>Capture from the default device (note the empty string &rdquo; as filename):
-</p><table><tr><td>&nbsp;</td><td><pre class="example">$ ffmpeg -f openal -i '' out.ogg
-</pre></td></tr></table>
-
-<p>Capture from two devices simultaneously, writing to two different files,
-within the same &lsquo;<tt>ffmpeg</tt>&rsquo; command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">$ ffmpeg -f openal -i 'DR-BT101 via PulseAudio' out1.ogg -f openal -i 'ALSA Default' out2.ogg
-</pre></td></tr></table>
-<p>Note: not all OpenAL implementations support multiple simultaneous capture -
-try the latest OpenAL Soft if the above does not work.
-</p>
-<a name="oss"></a>
-<h2 class="section"><a href="ffplay.html#toc-oss">9.9 oss</a></h2>
-
-<p>Open Sound System input device.
-</p>
-<p>The filename to provide to the input device is the device node
-representing the OSS input device, and is usually set to
-&lsquo;<tt>/dev/dsp</tt>&rsquo;.
-</p>
-<p>For example to grab from &lsquo;<tt>/dev/dsp</tt>&rsquo; using &lsquo;<tt>ffmpeg</tt>&rsquo; use the
-command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f oss -i /dev/dsp /tmp/oss.wav
-</pre></td></tr></table>
-
-<p>For more information about OSS see:
-<a href="http://manuals.opensound.com/usersguide/dsp.html">http://manuals.opensound.com/usersguide/dsp.html</a>
-</p>
-<a name="sndio-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-sndio-1">9.10 sndio</a></h2>
-
-<p>sndio input device.
-</p>
-<p>To enable this input device during configuration you need libsndio
-installed on your system.
-</p>
-<p>The filename to provide to the input device is the device node
-representing the sndio input device, and is usually set to
-&lsquo;<tt>/dev/audio0</tt>&rsquo;.
-</p>
-<p>For example to grab from &lsquo;<tt>/dev/audio0</tt>&rsquo; using &lsquo;<tt>ffmpeg</tt>&rsquo; use the
-command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f sndio -i /dev/audio0 /tmp/oss.wav
-</pre></td></tr></table>
-
-<a name="video4linux-and-video4linux2"></a>
-<h2 class="section"><a href="ffplay.html#toc-video4linux-and-video4linux2">9.11 video4linux and video4linux2</a></h2>
-
-<p>Video4Linux and Video4Linux2 input video devices.
-</p>
-<p>The name of the device to grab is a file device node, usually Linux
-systems tend to automatically create such nodes when the device
-(e.g. an USB webcam) is plugged into the system, and has a name of the
-kind &lsquo;<tt>/dev/video<var>N</var></tt>&rsquo;, where <var>N</var> is a number associated to
-the device.
-</p>
-<p>Video4Linux and Video4Linux2 devices only support a limited set of
-<var>width</var>x<var>height</var> sizes and framerates. You can check which are
-supported for example with the command &lsquo;<tt>dov4l</tt>&rsquo; for Video4Linux
-devices and the command &lsquo;<tt>v4l-info</tt>&rsquo; for Video4Linux2 devices.
-</p>
-<p>If the size for the device is set to 0x0, the input device will
-try to autodetect the size to use.
-Only for the video4linux2 device, if the frame rate is set to 0/0 the
-input device will use the frame rate value already set in the driver.
-</p>
-<p>Video4Linux support is deprecated since Linux 2.6.30, and will be
-dropped in later versions.
-</p>
-<p>Follow some usage examples of the video4linux devices with the ff*
-tools.
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># Grab and show the input of a video4linux device, frame rate is set
-# to the default of 25/1.
-ffplay -s 320x240 -f video4linux /dev/video0
-
-# Grab and show the input of a video4linux2 device, autoadjust size.
-ffplay -f video4linux2 /dev/video0
-
-# Grab and record the input of a video4linux2 device, autoadjust size,
-# frame rate value defaults to 0/0 so it is read from the video4linux2
-# driver.
-ffmpeg -f video4linux2 -i /dev/video0 out.mpeg
-</pre></td></tr></table>
-
-<a name="vfwcap"></a>
-<h2 class="section"><a href="ffplay.html#toc-vfwcap">9.12 vfwcap</a></h2>
-
-<p>VfW (Video for Windows) capture input device.
-</p>
-<p>The filename passed as input is the capture driver number, ranging from
-0 to 9. You may use &quot;list&quot; as filename to print a list of drivers. Any
-other filename will be interpreted as device number 0.
-</p>
-<a name="x11grab"></a>
-<h2 class="section"><a href="ffplay.html#toc-x11grab">9.13 x11grab</a></h2>
-
-<p>X11 video input device.
-</p>
-<p>This device allows to capture a region of an X11 display.
-</p>
-<p>The filename passed as input has the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">[<var>hostname</var>]:<var>display_number</var>.<var>screen_number</var>[+<var>x_offset</var>,<var>y_offset</var>]
-</pre></td></tr></table>
-
-<p><var>hostname</var>:<var>display_number</var>.<var>screen_number</var> specifies the
-X11 display name of the screen to grab from. <var>hostname</var> can be
-ommitted, and defaults to &quot;localhost&quot;. The environment variable
-<code>DISPLAY</code> contains the default display name.
-</p>
-<p><var>x_offset</var> and <var>y_offset</var> specify the offsets of the grabbed
-area with respect to the top-left border of the X11 screen. They
-default to 0.
-</p>
-<p>Check the X11 documentation (e.g. man X) for more detailed information.
-</p>
-<p>Use the &lsquo;<tt>dpyinfo</tt>&rsquo; program for getting basic information about the
-properties of your X11 display (e.g. grep for &quot;name&quot; or &quot;dimensions&quot;).
-</p>
-<p>For example to grab from &lsquo;<tt>:0.0</tt>&rsquo; using &lsquo;<tt>ffmpeg</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f x11grab -r 25 -s cif -i :0.0 out.mpg
-
-# Grab at position 10,20.
-ffmpeg -f x11grab -r 25 -s cif -i :0.0+10,20 out.mpg
-</pre></td></tr></table>
-
-<a name="follow_005fmouse-AVOption"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-follow_005fmouse-AVOption">9.13.1 <var>follow_mouse</var> AVOption</a></h3>
-
-<p>The syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">-follow_mouse centered|<var>PIXELS</var>
-</pre></td></tr></table>
-
-<p>When it is specified with &quot;centered&quot;, the grabbing region follows the mouse
-pointer and keeps the pointer at the center of region; otherwise, the region
-follows only when the mouse pointer reaches within <var>PIXELS</var> (greater than
-zero) to the edge of region.
-</p>
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f x11grab -follow_mouse centered -r 25 -s cif -i :0.0 out.mpg
-
-# Follows only when the mouse pointer reaches within 100 pixels to edge
-ffmpeg -f x11grab -follow_mouse 100 -r 25 -s cif -i :0.0 out.mpg
-</pre></td></tr></table>
-
-<a name="show_005fregion-AVOption"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-show_005fregion-AVOption">9.13.2 <var>show_region</var> AVOption</a></h3>
-
-<p>The syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">-show_region 1
-</pre></td></tr></table>
-
-<p>If <var>show_region</var> AVOption is specified with <var>1</var>, then the grabbing
-region will be indicated on screen. With this option, it&rsquo;s easy to know what is
-being grabbed if only a portion of the screen is grabbed.
-</p>
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -f x11grab -show_region 1 -r 25 -s cif -i :0.0+10,20 out.mpg
-
-# With follow_mouse
-ffmpeg -f x11grab -follow_mouse centered -show_region 1  -r 25 -s cif -i :0.0 out.mpg
-</pre></td></tr></table>
-
-<a name="Output-Devices"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Output-Devices">10. Output Devices</a></h1>
-
-<p>Output devices are configured elements in FFmpeg which allow to write
-multimedia data to an output device attached to your system.
-</p>
-<p>When you configure your FFmpeg build, all the supported output devices
-are enabled by default. You can list all available ones using the
-configure option &quot;&ndash;list-outdevs&quot;.
-</p>
-<p>You can disable all the output devices using the configure option
-&quot;&ndash;disable-outdevs&quot;, and selectively enable an output device using the
-option &quot;&ndash;enable-outdev=<var>OUTDEV</var>&quot;, or you can disable a particular
-input device using the option &quot;&ndash;disable-outdev=<var>OUTDEV</var>&quot;.
-</p>
-<p>The option &quot;-formats&quot; of the ff* tools will display the list of
-enabled output devices (amongst the muxers).
-</p>
-<p>A description of the currently available output devices follows.
-</p>
-<a name="alsa"></a>
-<h2 class="section"><a href="ffplay.html#toc-alsa">10.1 alsa</a></h2>
-
-<p>ALSA (Advanced Linux Sound Architecture) output device.
-</p>
-<a name="oss-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-oss-1">10.2 oss</a></h2>
-
-<p>OSS (Open Sound System) output device.
-</p>
-<a name="sdl"></a>
-<h2 class="section"><a href="ffplay.html#toc-sdl">10.3 sdl</a></h2>
-
-<p>SDL (Simple Directmedia Layer) output device.
-</p>
-<p>This output devices allows to show a video stream in an SDL
-window. Only one SDL window is allowed per application, so you can
-have only one instance of this output device in an application.
-</p>
-<p>To enable this output device you need libsdl installed on your system
-when configuring your build.
-</p>
-<p>For more information about SDL, check:
-<a href="http://www.libsdl.org/">http://www.libsdl.org/</a>
-</p>
-<a name="Options-2"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Options-2">10.3.1 Options</a></h3>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>window_title</samp>&rsquo;</dt>
-<dd><p>Set the SDL window title, if not specified default to the filename
-specified for the output device.
-</p>
-</dd>
-<dt> &lsquo;<samp>icon_title</samp>&rsquo;</dt>
-<dd><p>Set the name of the iconified SDL window, if not specified it is set
-to the same value of <var>window_title</var>.
-</p>
-</dd>
-<dt> &lsquo;<samp>window_size</samp>&rsquo;</dt>
-<dd><p>Set the SDL window size, can be a string of the form
-<var>width</var>x<var>height</var> or a video size abbreviation.
-If not specified it defaults to the size of the input video.
-</p></dd>
-</dl>
-
-<a name="Examples-1"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Examples-1">10.3.2 Examples</a></h3>
-
-<p>The following command shows the &lsquo;<tt>ffmpeg</tt>&rsquo; output is an
-SDL window, forcing its size to the qcif format:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i INPUT -vcodec rawvideo -pix_fmt yuv420p -window_size qcif -f sdl &quot;SDL output&quot;
-</pre></td></tr></table>
-
-<a name="sndio"></a>
-<h2 class="section"><a href="ffplay.html#toc-sndio">10.4 sndio</a></h2>
-
-<p>sndio audio output device.
-</p>
-<a name="Protocols"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Protocols">11. Protocols</a></h1>
-
-<p>Protocols are configured elements in FFmpeg which allow to access
-resources which require the use of a particular protocol.
-</p>
-<p>When you configure your FFmpeg build, all the supported protocols are
-enabled by default. You can list all available ones using the
-configure option &quot;&ndash;list-protocols&quot;.
-</p>
-<p>You can disable all the protocols using the configure option
-&quot;&ndash;disable-protocols&quot;, and selectively enable a protocol using the
-option &quot;&ndash;enable-protocol=<var>PROTOCOL</var>&quot;, or you can disable a
-particular protocol using the option
-&quot;&ndash;disable-protocol=<var>PROTOCOL</var>&quot;.
-</p>
-<p>The option &quot;-protocols&quot; of the ff* tools will display the list of
-supported protocols.
-</p>
-<p>A description of the currently available protocols follows.
-</p>
-<a name="applehttp-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-applehttp-1">11.1 applehttp</a></h2>
-
-<p>Read Apple HTTP Live Streaming compliant segmented stream as
-a uniform one. The M3U8 playlists describing the segments can be
-remote HTTP resources or local files, accessed using the standard
-file protocol.
-HTTP is default, specific protocol can be declared by specifying
-&quot;+<var>proto</var>&quot; after the applehttp URI scheme name, where <var>proto</var>
-is either &quot;file&quot; or &quot;http&quot;.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">applehttp://host/path/to/remote/resource.m3u8
-applehttp+http://host/path/to/remote/resource.m3u8
-applehttp+file://path/to/local/resource.m3u8
-</pre></td></tr></table>
-
-<a name="concat"></a>
-<h2 class="section"><a href="ffplay.html#toc-concat">11.2 concat</a></h2>
-
-<p>Physical concatenation protocol.
-</p>
-<p>Allow to read and seek from many resource in sequence as if they were
-a unique resource.
-</p>
-<p>A URL accepted by this protocol has the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">concat:<var>URL1</var>|<var>URL2</var>|...|<var>URLN</var>
-</pre></td></tr></table>
-
-<p>where <var>URL1</var>, <var>URL2</var>, ..., <var>URLN</var> are the urls of the
-resource to be concatenated, each one possibly specifying a distinct
-protocol.
-</p>
-<p>For example to read a sequence of files &lsquo;<tt>split1.mpeg</tt>&rsquo;,
-&lsquo;<tt>split2.mpeg</tt>&rsquo;, &lsquo;<tt>split3.mpeg</tt>&rsquo; with &lsquo;<tt>ffplay</tt>&rsquo; use the
-command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffplay concat:split1.mpeg\|split2.mpeg\|split3.mpeg
-</pre></td></tr></table>
-
-<p>Note that you may need to escape the character &quot;|&quot; which is special for
-many shells.
-</p>
-<a name="file"></a>
-<h2 class="section"><a href="ffplay.html#toc-file">11.3 file</a></h2>
-
-<p>File access protocol.
-</p>
-<p>Allow to read from or read to a file.
-</p>
-<p>For example to read from a file &lsquo;<tt>input.mpeg</tt>&rsquo; with &lsquo;<tt>ffmpeg</tt>&rsquo;
-use the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i file:input.mpeg output.mpeg
-</pre></td></tr></table>
-
-<p>The ff* tools default to the file protocol, that is a resource
-specified with the name &quot;FILE.mpeg&quot; is interpreted as the URL
-&quot;file:FILE.mpeg&quot;.
-</p>
-<a name="gopher"></a>
-<h2 class="section"><a href="ffplay.html#toc-gopher">11.4 gopher</a></h2>
-
-<p>Gopher protocol.
-</p>
-<a name="http"></a>
-<h2 class="section"><a href="ffplay.html#toc-http">11.5 http</a></h2>
-
-<p>HTTP (Hyper Text Transfer Protocol).
-</p>
-<a name="mmst"></a>
-<h2 class="section"><a href="ffplay.html#toc-mmst">11.6 mmst</a></h2>
-
-<p>MMS (Microsoft Media Server) protocol over TCP.
-</p>
-<a name="mmsh"></a>
-<h2 class="section"><a href="ffplay.html#toc-mmsh">11.7 mmsh</a></h2>
-
-<p>MMS (Microsoft Media Server) protocol over HTTP.
-</p>
-<p>The required syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">mmsh://<var>server</var>[:<var>port</var>][/<var>app</var>][/<var>playpath</var>]
-</pre></td></tr></table>
-
-<a name="md5"></a>
-<h2 class="section"><a href="ffplay.html#toc-md5">11.8 md5</a></h2>
-
-<p>MD5 output protocol.
-</p>
-<p>Computes the MD5 hash of the data to be written, and on close writes
-this to the designated output or stdout if none is specified. It can
-be used to test muxers without writing an actual file.
-</p>
-<p>Some examples follow.
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># Write the MD5 hash of the encoded AVI file to the file output.avi.md5.
-ffmpeg -i input.flv -f avi -y md5:output.avi.md5
-
-# Write the MD5 hash of the encoded AVI file to stdout.
-ffmpeg -i input.flv -f avi -y md5:
-</pre></td></tr></table>
-
-<p>Note that some formats (typically MOV) require the output protocol to
-be seekable, so they will fail with the MD5 output protocol.
-</p>
-<a name="pipe"></a>
-<h2 class="section"><a href="ffplay.html#toc-pipe">11.9 pipe</a></h2>
-
-<p>UNIX pipe access protocol.
-</p>
-<p>Allow to read and write from UNIX pipes.
-</p>
-<p>The accepted syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">pipe:[<var>number</var>]
-</pre></td></tr></table>
-
-<p><var>number</var> is the number corresponding to the file descriptor of the
-pipe (e.g. 0 for stdin, 1 for stdout, 2 for stderr).  If <var>number</var>
-is not specified, by default the stdout file descriptor will be used
-for writing, stdin for reading.
-</p>
-<p>For example to read from stdin with &lsquo;<tt>ffmpeg</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">cat test.wav | ffmpeg -i pipe:0
-# ...this is the same as...
-cat test.wav | ffmpeg -i pipe:
-</pre></td></tr></table>
-
-<p>For writing to stdout with &lsquo;<tt>ffmpeg</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i test.wav -f avi pipe:1 | cat &gt; test.avi
-# ...this is the same as...
-ffmpeg -i test.wav -f avi pipe: | cat &gt; test.avi
-</pre></td></tr></table>
-
-<p>Note that some formats (typically MOV), require the output protocol to
-be seekable, so they will fail with the pipe output protocol.
-</p>
-<a name="rtmp"></a>
-<h2 class="section"><a href="ffplay.html#toc-rtmp">11.10 rtmp</a></h2>
-
-<p>Real-Time Messaging Protocol.
-</p>
-<p>The Real-Time Messaging Protocol (RTMP) is used for streaming multime‐
-dia content across a TCP/IP network.
-</p>
-<p>The required syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">rtmp://<var>server</var>[:<var>port</var>][/<var>app</var>][/<var>playpath</var>]
-</pre></td></tr></table>
-
-<p>The accepted parameters are:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>server</samp>&rsquo;</dt>
-<dd><p>The address of the RTMP server.
-</p>
-</dd>
-<dt> &lsquo;<samp>port</samp>&rsquo;</dt>
-<dd><p>The number of the TCP port to use (by default is 1935).
-</p>
-</dd>
-<dt> &lsquo;<samp>app</samp>&rsquo;</dt>
-<dd><p>It is the name of the application to access. It usually corresponds to
-the path where the application is installed on the RTMP server
-(e.g. &lsquo;<tt>/ondemand/</tt>&rsquo;, &lsquo;<tt>/flash/live/</tt>&rsquo;, etc.).
-</p>
-</dd>
-<dt> &lsquo;<samp>playpath</samp>&rsquo;</dt>
-<dd><p>It is the path or name of the resource to play with reference to the
-application specified in <var>app</var>, may be prefixed by &quot;mp4:&quot;.
-</p>
-</dd>
-</dl>
-
-<p>For example to read with &lsquo;<tt>ffplay</tt>&rsquo; a multimedia resource named
-&quot;sample&quot; from the application &quot;vod&quot; from an RTMP server &quot;myserver&quot;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffplay rtmp://myserver/vod/sample
-</pre></td></tr></table>
-
-<a name="rtmp_002c-rtmpe_002c-rtmps_002c-rtmpt_002c-rtmpte"></a>
-<h2 class="section"><a href="ffplay.html#toc-rtmp_002c-rtmpe_002c-rtmps_002c-rtmpt_002c-rtmpte">11.11 rtmp, rtmpe, rtmps, rtmpt, rtmpte</a></h2>
-
-<p>Real-Time Messaging Protocol and its variants supported through
-librtmp.
-</p>
-<p>Requires the presence of the librtmp headers and library during
-configuration. You need to explicitely configure the build with
-&quot;&ndash;enable-librtmp&quot;. If enabled this will replace the native RTMP
-protocol.
-</p>
-<p>This protocol provides most client functions and a few server
-functions needed to support RTMP, RTMP tunneled in HTTP (RTMPT),
-encrypted RTMP (RTMPE), RTMP over SSL/TLS (RTMPS) and tunneled
-variants of these encrypted types (RTMPTE, RTMPTS).
-</p>
-<p>The required syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"><var>rtmp_proto</var>://<var>server</var>[:<var>port</var>][/<var>app</var>][/<var>playpath</var>] <var>options</var>
-</pre></td></tr></table>
-
-<p>where <var>rtmp_proto</var> is one of the strings &quot;rtmp&quot;, &quot;rtmpt&quot;, &quot;rtmpe&quot;,
-&quot;rtmps&quot;, &quot;rtmpte&quot;, &quot;rtmpts&quot; corresponding to each RTMP variant, and
-<var>server</var>, <var>port</var>, <var>app</var> and <var>playpath</var> have the same
-meaning as specified for the RTMP native protocol.
-<var>options</var> contains a list of space-separated options of the form
-<var>key</var>=<var>val</var>.
-</p>
-<p>See the librtmp manual page (man 3 librtmp) for more information.
-</p>
-<p>For example, to stream a file in real-time to an RTMP server using
-&lsquo;<tt>ffmpeg</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -re -i myfile -f flv rtmp://myserver/live/mystream
-</pre></td></tr></table>
-
-<p>To play the same stream using &lsquo;<tt>ffplay</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffplay &quot;rtmp://myserver/live/mystream live=1&quot;
-</pre></td></tr></table>
-
-<a name="rtp"></a>
-<h2 class="section"><a href="ffplay.html#toc-rtp">11.12 rtp</a></h2>
-
-<p>Real-Time Protocol.
-</p>
-<a name="rtsp"></a>
-<h2 class="section"><a href="ffplay.html#toc-rtsp">11.13 rtsp</a></h2>
-
-<p>RTSP is not technically a protocol handler in libavformat, it is a demuxer
-and muxer. The demuxer supports both normal RTSP (with data transferred
-over RTP; this is used by e.g. Apple and Microsoft) and Real-RTSP (with
-data transferred over RDT).
-</p>
-<p>The muxer can be used to send a stream using RTSP ANNOUNCE to a server
-supporting it (currently Darwin Streaming Server and Mischa Spiegelmock&rsquo;s
-<a href="http://github.com/revmischa/rtsp-server">RTSP server</a>).
-</p>
-<p>The required syntax for a RTSP url is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">rtsp://<var>hostname</var>[:<var>port</var>]/<var>path</var>[?<var>options</var>]
-</pre></td></tr></table>
-
-<p><var>options</var> is a <code>&amp;</code>-separated list. The following options
-are supported:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>udp</samp>&rsquo;</dt>
-<dd><p>Use UDP as lower transport protocol.
-</p>
-</dd>
-<dt> &lsquo;<samp>tcp</samp>&rsquo;</dt>
-<dd><p>Use TCP (interleaving within the RTSP control channel) as lower
-transport protocol.
-</p>
-</dd>
-<dt> &lsquo;<samp>multicast</samp>&rsquo;</dt>
-<dd><p>Use UDP multicast as lower transport protocol.
-</p>
-</dd>
-<dt> &lsquo;<samp>http</samp>&rsquo;</dt>
-<dd><p>Use HTTP tunneling as lower transport protocol, which is useful for
-passing proxies.
-</p>
-</dd>
-<dt> &lsquo;<samp>filter_src</samp>&rsquo;</dt>
-<dd><p>Accept packets only from negotiated peer address and port.
-</p></dd>
-</dl>
-
-<p>Multiple lower transport protocols may be specified, in that case they are
-tried one at a time (if the setup of one fails, the next one is tried).
-For the muxer, only the <code>tcp</code> and <code>udp</code> options are supported.
-</p>
-<p>When receiving data over UDP, the demuxer tries to reorder received packets
-(since they may arrive out of order, or packets may get lost totally). In
-order for this to be enabled, a maximum delay must be specified in the
-<code>max_delay</code> field of AVFormatContext.
-</p>
-<p>When watching multi-bitrate Real-RTSP streams with &lsquo;<tt>ffplay</tt>&rsquo;, the
-streams to display can be chosen with <code>-vst</code> <var>n</var> and
-<code>-ast</code> <var>n</var> for video and audio respectively, and can be switched
-on the fly by pressing <code>v</code> and <code>a</code>.
-</p>
-<p>Example command lines:
-</p>
-<p>To watch a stream over UDP, with a max reordering delay of 0.5 seconds:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay -max_delay 500000 rtsp://server/video.mp4?udp
-</pre></td></tr></table>
-
-<p>To watch a stream tunneled over HTTP:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay rtsp://server/video.mp4?http
-</pre></td></tr></table>
-
-<p>To send a stream in realtime to a RTSP server, for others to watch:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -re -i <var>input</var> -f rtsp -muxdelay 0.1 rtsp://server/live.sdp
-</pre></td></tr></table>
-
-<a name="sap"></a>
-<h2 class="section"><a href="ffplay.html#toc-sap">11.14 sap</a></h2>
-
-<p>Session Announcement Protocol (RFC 2974). This is not technically a
-protocol handler in libavformat, it is a muxer and demuxer.
-It is used for signalling of RTP streams, by announcing the SDP for the
-streams regularly on a separate port.
-</p>
-<a name="Muxer"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Muxer">11.14.1 Muxer</a></h3>
-
-<p>The syntax for a SAP url given to the muxer is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">sap://<var>destination</var>[:<var>port</var>][?<var>options</var>]
-</pre></td></tr></table>
-
-<p>The RTP packets are sent to <var>destination</var> on port <var>port</var>,
-or to port 5004 if no port is specified.
-<var>options</var> is a <code>&amp;</code>-separated list. The following options
-are supported:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>announce_addr=<var>address</var></samp>&rsquo;</dt>
-<dd><p>Specify the destination IP address for sending the announcements to.
-If omitted, the announcements are sent to the commonly used SAP
-announcement multicast address 224.2.127.254 (sap.mcast.net), or
-ff0e::2:7ffe if <var>destination</var> is an IPv6 address.
-</p>
-</dd>
-<dt> &lsquo;<samp>announce_port=<var>port</var></samp>&rsquo;</dt>
-<dd><p>Specify the port to send the announcements on, defaults to
-9875 if not specified.
-</p>
-</dd>
-<dt> &lsquo;<samp>ttl=<var>ttl</var></samp>&rsquo;</dt>
-<dd><p>Specify the time to live value for the announcements and RTP packets,
-defaults to 255.
-</p>
-</dd>
-<dt> &lsquo;<samp>same_port=<var>0|1</var></samp>&rsquo;</dt>
-<dd><p>If set to 1, send all RTP streams on the same port pair. If zero (the
-default), all streams are sent on unique ports, with each stream on a
-port 2 numbers higher than the previous.
-VLC/Live555 requires this to be set to 1, to be able to receive the stream.
-The RTP stack in libavformat for receiving requires all streams to be sent
-on unique ports.
-</p></dd>
-</dl>
-
-<p>Example command lines follow.
-</p>
-<p>To broadcast a stream on the local subnet, for watching in VLC:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -re -i <var>input</var> -f sap sap://224.0.0.255?same_port=1
-</pre></td></tr></table>
-
-<p>Similarly, for watching in ffplay:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -re -i <var>input</var> -f sap sap://224.0.0.255
-</pre></td></tr></table>
-
-<p>And for watching in ffplay, over IPv6:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -re -i <var>input</var> -f sap sap://[ff0e::1:2:3:4]
-</pre></td></tr></table>
-
-<a name="Demuxer"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-Demuxer">11.14.2 Demuxer</a></h3>
-
-<p>The syntax for a SAP url given to the demuxer is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">sap://[<var>address</var>][:<var>port</var>]
-</pre></td></tr></table>
-
-<p><var>address</var> is the multicast address to listen for announcements on,
-if omitted, the default 224.2.127.254 (sap.mcast.net) is used. <var>port</var>
-is the port that is listened on, 9875 if omitted.
-</p>
-<p>The demuxers listens for announcements on the given address and port.
-Once an announcement is received, it tries to receive that particular stream.
-</p>
-<p>Example command lines follow.
-</p>
-<p>To play back the first stream announced on the normal SAP multicast address:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay sap://
-</pre></td></tr></table>
-
-<p>To play back the first stream announced on one the default IPv6 SAP multicast address:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffplay sap://[ff0e::2:7ffe]
-</pre></td></tr></table>
-
-<a name="tcp"></a>
-<h2 class="section"><a href="ffplay.html#toc-tcp">11.15 tcp</a></h2>
-
-<p>Trasmission Control Protocol.
-</p>
-<p>The required syntax for a TCP url is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">tcp://<var>hostname</var>:<var>port</var>[?<var>options</var>]
-</pre></td></tr></table>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>listen</samp>&rsquo;</dt>
-<dd><p>Listen for an incoming connection
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i <var>input</var> -f <var>format</var> tcp://<var>hostname</var>:<var>port</var>?listen
-ffplay tcp://<var>hostname</var>:<var>port</var>
-</pre></td></tr></table>
-
-</dd>
-</dl>
-
-<a name="udp"></a>
-<h2 class="section"><a href="ffplay.html#toc-udp">11.16 udp</a></h2>
-
-<p>User Datagram Protocol.
-</p>
-<p>The required syntax for a UDP url is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">udp://<var>hostname</var>:<var>port</var>[?<var>options</var>]
-</pre></td></tr></table>
-
-<p><var>options</var> contains a list of &amp;-seperated options of the form <var>key</var>=<var>val</var>.
-Follow the list of supported options.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>buffer_size=<var>size</var></samp>&rsquo;</dt>
-<dd><p>set the UDP buffer size in bytes
-</p>
-</dd>
-<dt> &lsquo;<samp>localport=<var>port</var></samp>&rsquo;</dt>
-<dd><p>override the local UDP port to bind with
-</p>
-</dd>
-<dt> &lsquo;<samp>pkt_size=<var>size</var></samp>&rsquo;</dt>
-<dd><p>set the size in bytes of UDP packets
-</p>
-</dd>
-<dt> &lsquo;<samp>reuse=<var>1|0</var></samp>&rsquo;</dt>
-<dd><p>explicitly allow or disallow reusing UDP sockets
-</p>
-</dd>
-<dt> &lsquo;<samp>ttl=<var>ttl</var></samp>&rsquo;</dt>
-<dd><p>set the time to live value (for multicast only)
-</p>
-</dd>
-<dt> &lsquo;<samp>connect=<var>1|0</var></samp>&rsquo;</dt>
-<dd><p>Initialize the UDP socket with <code>connect()</code>. In this case, the
-destination address can&rsquo;t be changed with ff_udp_set_remote_url later.
-If the destination address isn&rsquo;t known at the start, this option can
-be specified in ff_udp_set_remote_url, too.
-This allows finding out the source address for the packets with getsockname,
-and makes writes return with AVERROR(ECONNREFUSED) if &quot;destination
-unreachable&quot; is received.
-For receiving, this gives the benefit of only receiving packets from
-the specified peer address/port.
-</p></dd>
-</dl>
-
-<p>Some usage examples of the udp protocol with &lsquo;<tt>ffmpeg</tt>&rsquo; follow.
-</p>
-<p>To stream over UDP to a remote endpoint:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i <var>input</var> -f <var>format</var> udp://<var>hostname</var>:<var>port</var>
-</pre></td></tr></table>
-
-<p>To stream in mpegts format over UDP using 188 sized UDP packets, using a large input buffer:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i <var>input</var> -f mpegts udp://<var>hostname</var>:<var>port</var>?pkt_size=188&amp;buffer_size=65535
-</pre></td></tr></table>
-
-<p>To receive over UDP from a remote endpoint:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i udp://[<var>multicast-address</var>]:<var>port</var>
-</pre></td></tr></table>
-
-<a name="Filtergraph-description"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Filtergraph-description">12. Filtergraph description</a></h1>
-
-<p>A filtergraph is a directed graph of connected filters. It can contain
-cycles, and there can be multiple links between a pair of
-filters. Each link has one input pad on one side connecting it to one
-filter from which it takes its input, and one output pad on the other
-side connecting it to the one filter accepting its output.
-</p>
-<p>Each filter in a filtergraph is an instance of a filter class
-registered in the application, which defines the features and the
-number of input and output pads of the filter.
-</p>
-<p>A filter with no input pads is called a &quot;source&quot;, a filter with no
-output pads is called a &quot;sink&quot;.
-</p>
-<a name="Filtergraph-syntax"></a>
-<h2 class="section"><a href="ffplay.html#toc-Filtergraph-syntax">12.1 Filtergraph syntax</a></h2>
-
-<p>A filtergraph can be represented using a textual representation, which
-is recognized by the <code>-vf</code> and <code>-af</code> options of the ff*
-tools, and by the <code>avfilter_graph_parse()</code> function defined in
-&lsquo;<tt>libavfilter/avfiltergraph.h</tt>&rsquo;.
-</p>
-<p>A filterchain consists of a sequence of connected filters, each one
-connected to the previous one in the sequence. A filterchain is
-represented by a list of &quot;,&quot;-separated filter descriptions.
-</p>
-<p>A filtergraph consists of a sequence of filterchains. A sequence of
-filterchains is represented by a list of &quot;;&quot;-separated filterchain
-descriptions.
-</p>
-<p>A filter is represented by a string of the form:
-[<var>in_link_1</var>]...[<var>in_link_N</var>]<var>filter_name</var>=<var>arguments</var>[<var>out_link_1</var>]...[<var>out_link_M</var>]
-</p>
-<p><var>filter_name</var> is the name of the filter class of which the
-described filter is an instance of, and has to be the name of one of
-the filter classes registered in the program.
-The name of the filter class is optionally followed by a string
-&quot;=<var>arguments</var>&quot;.
-</p>
-<p><var>arguments</var> is a string which contains the parameters used to
-initialize the filter instance, and are described in the filter
-descriptions below.
-</p>
-<p>The list of arguments can be quoted using the character &quot;&rsquo;&quot; as initial
-and ending mark, and the character &rsquo;\&rsquo; for escaping the characters
-within the quoted text; otherwise the argument string is considered
-terminated when the next special character (belonging to the set
-&quot;[]=;,&quot;) is encountered.
-</p>
-<p>The name and arguments of the filter are optionally preceded and
-followed by a list of link labels.
-A link label allows to name a link and associate it to a filter output
-or input pad. The preceding labels <var>in_link_1</var>
-... <var>in_link_N</var>, are associated to the filter input pads,
-the following labels <var>out_link_1</var> ... <var>out_link_M</var>, are
-associated to the output pads.
-</p>
-<p>When two link labels with the same name are found in the
-filtergraph, a link between the corresponding input and output pad is
-created.
-</p>
-<p>If an output pad is not labelled, it is linked by default to the first
-unlabelled input pad of the next filter in the filterchain.
-For example in the filterchain:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">nullsrc, split[L1], [L2]overlay, nullsink
-</pre></td></tr></table>
-<p>the split filter instance has two output pads, and the overlay filter
-instance two input pads. The first output pad of split is labelled
-&quot;L1&quot;, the first input pad of overlay is labelled &quot;L2&quot;, and the second
-output pad of split is linked to the second input pad of overlay,
-which are both unlabelled.
-</p>
-<p>In a complete filterchain all the unlabelled filter input and output
-pads must be connected. A filtergraph is considered valid if all the
-filter input and output pads of all the filterchains are connected.
-</p>
-<p>Follows a BNF description for the filtergraph syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"><var>NAME</var>             ::= sequence of alphanumeric characters and '_'
-<var>LINKLABEL</var>        ::= &quot;[&quot; <var>NAME</var> &quot;]&quot;
-<var>LINKLABELS</var>       ::= <var>LINKLABEL</var> [<var>LINKLABELS</var>]
-<var>FILTER_ARGUMENTS</var> ::= sequence of chars (eventually quoted)
-<var>FILTER</var>           ::= [<var>LINKNAMES</var>] <var>NAME</var> [&quot;=&quot; <var>ARGUMENTS</var>] [<var>LINKNAMES</var>]
-<var>FILTERCHAIN</var>      ::= <var>FILTER</var> [,<var>FILTERCHAIN</var>]
-<var>FILTERGRAPH</var>      ::= <var>FILTERCHAIN</var> [;<var>FILTERGRAPH</var>]
-</pre></td></tr></table>
-
-
-<a name="Audio-Filters"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Audio-Filters">13. Audio Filters</a></h1>
-
-<p>When you configure your FFmpeg build, you can disable any of the
-existing filters using &ndash;disable-filters.
-The configure output will show the audio filters included in your
-build.
-</p>
-<p>Below is a description of the currently available audio filters.
-</p>
-<a name="aformat"></a>
-<h2 class="section"><a href="ffplay.html#toc-aformat">13.1 aformat</a></h2>
-
-<p>Convert the input audio to one of the specified formats. The framework will
-negotiate the most appropriate format to minimize conversions.
-</p>
-<p>The filter accepts three lists of formats, separated by &quot;:&quot;, in the form:
-&quot;<var>sample_formats</var>:<var>channel_layouts</var>:<var>packing_formats</var>&quot;.
-</p>
-<p>Elements in each list are separated by &quot;,&quot; which has to be escaped in the
-filtergraph specification.
-</p>
-<p>The special parameter &quot;all&quot;, in place of a list of elements, signifies all
-supported formats.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">aformat=u8\\,s16:mono:packed
-
-aformat=s16:mono\\,stereo:all
-</pre></td></tr></table>
-
-<a name="anull"></a>
-<h2 class="section"><a href="ffplay.html#toc-anull">13.2 anull</a></h2>
-
-<p>Pass the audio source unchanged to the output.
-</p>
-<a name="aresample"></a>
-<h2 class="section"><a href="ffplay.html#toc-aresample">13.3 aresample</a></h2>
-
-<p>Resample the input audio to the specified sample rate.
-</p>
-<p>The filter accepts exactly one parameter, the output sample rate. If not
-specified then the filter will automatically convert between its input
-and output sample rates.
-</p>
-<p>For example, to resample the input audio to 44100Hz:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">aresample=44100
-</pre></td></tr></table>
-
-<a name="ashowinfo"></a>
-<h2 class="section"><a href="ffplay.html#toc-ashowinfo">13.4 ashowinfo</a></h2>
-
-<p>Show a line containing various information for each input audio frame.
-The input audio is not modified.
-</p>
-<p>The shown line contains a sequence of key/value pairs of the form
-<var>key</var>:<var>value</var>.
-</p>
-<p>A description of each shown parameter follows:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>n</samp>&rsquo;</dt>
-<dd><p>sequential number of the input frame, starting from 0
-</p>
-</dd>
-<dt> &lsquo;<samp>pts</samp>&rsquo;</dt>
-<dd><p>presentation TimeStamp of the input frame, expressed as a number of
-time base units. The time base unit depends on the filter input pad, and
-is usually 1/<var>sample_rate</var>.
-</p>
-</dd>
-<dt> &lsquo;<samp>pts_time</samp>&rsquo;</dt>
-<dd><p>presentation TimeStamp of the input frame, expressed as a number of
-seconds
-</p>
-</dd>
-<dt> &lsquo;<samp>pos</samp>&rsquo;</dt>
-<dd><p>position of the frame in the input stream, -1 if this information in
-unavailable and/or meanigless (for example in case of synthetic audio)
-</p>
-</dd>
-<dt> &lsquo;<samp>fmt</samp>&rsquo;</dt>
-<dd><p>sample format name
-</p>
-</dd>
-<dt> &lsquo;<samp>chlayout</samp>&rsquo;</dt>
-<dd><p>channel layout description
-</p>
-</dd>
-<dt> &lsquo;<samp>nb_samples</samp>&rsquo;</dt>
-<dd><p>number of samples (per each channel) contained in the filtered frame
-</p>
-</dd>
-<dt> &lsquo;<samp>rate</samp>&rsquo;</dt>
-<dd><p>sample rate for the audio frame
-</p>
-</dd>
-<dt> &lsquo;<samp>planar</samp>&rsquo;</dt>
-<dd><p>if the packing format is planar, 0 if packed
-</p>
-</dd>
-<dt> &lsquo;<samp>checksum</samp>&rsquo;</dt>
-<dd><p>Adler-32 checksum of all the planes of the input frame
-</p>
-</dd>
-<dt> &lsquo;<samp>plane_checksum</samp>&rsquo;</dt>
-<dd><p>Adler-32 checksum for each input frame plane, expressed in the form
-&quot;[<var>c0</var> <var>c1</var> <var>c2</var> <var>c3</var> <var>c4</var> <var>c5</var> <var>c6</var> <var>c7</var>]&quot;
-</p></dd>
-</dl>
-
-
-<a name="Audio-Sources"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Audio-Sources">14. Audio Sources</a></h1>
-
-<p>Below is a description of the currently available audio sources.
-</p>
-<a name="abuffer"></a>
-<h2 class="section"><a href="ffplay.html#toc-abuffer">14.1 abuffer</a></h2>
-
-<p>Buffer audio frames, and make them available to the filter chain.
-</p>
-<p>This source is mainly intended for a programmatic use, in particular
-through the interface defined in &lsquo;<tt>libavfilter/asrc_abuffer.h</tt>&rsquo;.
-</p>
-<p>It accepts the following mandatory parameters:
-<var>sample_rate</var>:<var>sample_fmt</var>:<var>channel_layout</var>:<var>packing</var>
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>sample_rate</samp>&rsquo;</dt>
-<dd><p>The sample rate of the incoming audio buffers.
-</p>
-</dd>
-<dt> &lsquo;<samp>sample_fmt</samp>&rsquo;</dt>
-<dd><p>The sample format of the incoming audio buffers.
-Either a sample format name or its corresponging integer representation from
-the enum AVSampleFormat in &lsquo;<tt>libavutil/samplefmt.h</tt>&rsquo;
-</p>
-</dd>
-<dt> &lsquo;<samp>channel_layout</samp>&rsquo;</dt>
-<dd><p>The channel layout of the incoming audio buffers.
-Either a channel layout name from channel_layout_map in
-&lsquo;<tt>libavutil/audioconvert.c</tt>&rsquo; or its corresponding integer representation
-from the AV_CH_LAYOUT_* macros in &lsquo;<tt>libavutil/audioconvert.h</tt>&rsquo;
-</p>
-</dd>
-<dt> &lsquo;<samp>packing</samp>&rsquo;</dt>
-<dd><p>Either &quot;packed&quot; or &quot;planar&quot;, or their integer representation: 0 or 1
-respectively.
-</p>
-</dd>
-</dl>
-
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">abuffer=44100:s16:stereo:planar
-</pre></td></tr></table>
-
-<p>will instruct the source to accept planar 16bit signed stereo at 44100Hz.
-Since the sample format with name &quot;s16&quot; corresponds to the number
-1 and the &quot;stereo&quot; channel layout corresponds to the value 3, this is
-equivalent to:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">abuffer=44100:1:3:1
-</pre></td></tr></table>
-
-<a name="amovie"></a>
-<h2 class="section"><a href="ffplay.html#toc-amovie">14.2 amovie</a></h2>
-
-<p>Read an audio stream from a movie container.
-</p>
-<p>It accepts the syntax: <var>movie_name</var>[:<var>options</var>] where
-<var>movie_name</var> is the name of the resource to read (not necessarily
-a file but also a device or a stream accessed through some protocol),
-and <var>options</var> is an optional sequence of <var>key</var>=<var>value</var>
-pairs, separated by &quot;:&quot;.
-</p>
-<p>The description of the accepted options follows.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>format_name, f</samp>&rsquo;</dt>
-<dd><p>Specify the format assumed for the movie to read, and can be either
-the name of a container or an input device. If not specified the
-format is guessed from <var>movie_name</var> or by probing.
-</p>
-</dd>
-<dt> &lsquo;<samp>seek_point, sp</samp>&rsquo;</dt>
-<dd><p>Specify the seek point in seconds, the frames will be output
-starting from this seek point, the parameter is evaluated with
-<code>av_strtod</code> so the numerical value may be suffixed by an IS
-postfix. Default value is &quot;0&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>stream_index, si</samp>&rsquo;</dt>
-<dd><p>Specify the index of the audio stream to read. If the value is -1,
-the best suited audio stream will be automatically selected. Default
-value is &quot;-1&quot;.
-</p>
-</dd>
-</dl>
-
-<a name="anullsrc"></a>
-<h2 class="section"><a href="ffplay.html#toc-anullsrc">14.3 anullsrc</a></h2>
-
-<p>Null audio source, never return audio frames. It is mainly useful as a
-template and to be employed in analysis / debugging tools.
-</p>
-<p>It accepts as optional parameter a string of the form
-<var>sample_rate</var>:<var>channel_layout</var>.
-</p>
-<p><var>sample_rate</var> specify the sample rate, and defaults to 44100.
-</p>
-<p><var>channel_layout</var> specify the channel layout, and can be either an
-integer or a string representing a channel layout. The default value
-of <var>channel_layout</var> is 3, which corresponds to CH_LAYOUT_STEREO.
-</p>
-<p>Check the channel_layout_map definition in
-&lsquo;<tt>libavcodec/audioconvert.c</tt>&rsquo; for the mapping between strings and
-channel layout values.
-</p>
-<p>Follow some examples:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">#  set the sample rate to 48000 Hz and the channel layout to CH_LAYOUT_MONO.
-anullsrc=48000:4
-
-# same as
-anullsrc=48000:mono
-</pre></td></tr></table>
-
-
-<a name="Audio-Sinks"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Audio-Sinks">15. Audio Sinks</a></h1>
-
-<p>Below is a description of the currently available audio sinks.
-</p>
-<a name="abuffersink"></a>
-<h2 class="section"><a href="ffplay.html#toc-abuffersink">15.1 abuffersink</a></h2>
-
-<p>Buffer audio frames, and make them available to the end of filter chain.
-</p>
-<p>This sink is mainly intended for programmatic use, in particular
-through the interface defined in &lsquo;<tt>libavfilter/asink_abuffer.h</tt>&rsquo;.
-</p>
-<p>It requires a pointer to a ABufferSinkContext structure, which defines the
-incoming buffers&rsquo; format, to be passed as the opaque parameter to
-<code>avfilter_init_filter</code> for initialization.
-</p>
-<a name="anullsink"></a>
-<h2 class="section"><a href="ffplay.html#toc-anullsink">15.2 anullsink</a></h2>
-
-<p>Null audio sink, do absolutely nothing with the input audio. It is
-mainly useful as a template and to be employed in analysis / debugging
-tools.
-</p>
-
-<a name="Video-Filters"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Video-Filters">16. Video Filters</a></h1>
-
-<p>When you configure your FFmpeg build, you can disable any of the
-existing filters using &ndash;disable-filters.
-The configure output will show the video filters included in your
-build.
-</p>
-<p>Below is a description of the currently available video filters.
-</p>
-<a name="blackframe"></a>
-<h2 class="section"><a href="ffplay.html#toc-blackframe">16.1 blackframe</a></h2>
-
-<p>Detect frames that are (almost) completely black. Can be useful to
-detect chapter transitions or commercials. Output lines consist of
-the frame number of the detected frame, the percentage of blackness,
-the position in the file if known or -1 and the timestamp in seconds.
-</p>
-<p>In order to display the output lines, you need to set the loglevel at
-least to the AV_LOG_INFO value.
-</p>
-<p>The filter accepts the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">blackframe[=<var>amount</var>:[<var>threshold</var>]]
-</pre></td></tr></table>
-
-<p><var>amount</var> is the percentage of the pixels that have to be below the
-threshold, and defaults to 98.
-</p>
-<p><var>threshold</var> is the threshold below which a pixel value is
-considered black, and defaults to 32.
-</p>
-<a name="boxblur"></a>
-<h2 class="section"><a href="ffplay.html#toc-boxblur">16.2 boxblur</a></h2>
-
-<p>Apply boxblur algorithm to the input video.
-</p>
-<p>This filter accepts the parameters:
-<var>luma_power</var>:<var>luma_radius</var>:<var>chroma_radius</var>:<var>chroma_power</var>:<var>alpha_radius</var>:<var>alpha_power</var>
-</p>
-<p>Chroma and alpha parameters are optional, if not specified they default
-to the corresponding values set for <var>luma_radius</var> and
-<var>luma_power</var>.
-</p>
-<p><var>luma_radius</var>, <var>chroma_radius</var>, and <var>alpha_radius</var> represent
-the radius in pixels of the box used for blurring the corresponding
-input plane. They are expressions, and can contain the following
-constants:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>w, h</samp>&rsquo;</dt>
-<dd><p>the input width and heigth in pixels
-</p>
-</dd>
-<dt> &lsquo;<samp>cw, ch</samp>&rsquo;</dt>
-<dd><p>the input chroma image width and height in pixels
-</p>
-</dd>
-<dt> &lsquo;<samp>hsub, vsub</samp>&rsquo;</dt>
-<dd><p>horizontal and vertical chroma subsample values. For example for the
-pixel format &quot;yuv422p&quot; <var>hsub</var> is 2 and <var>vsub</var> is 1.
-</p></dd>
-</dl>
-
-<p>The radius must be a non-negative number, and must be not greater than
-the value of the expression <code>min(w,h)/2</code> for the luma and alpha planes,
-and of <code>min(cw,ch)/2</code> for the chroma planes.
-</p>
-<p><var>luma_power</var>, <var>chroma_power</var>, and <var>alpha_power</var> represent
-how many times the boxblur filter is applied to the corresponding
-plane.
-</p>
-<p>Some examples follow:
-</p>
-<ul>
-<li>
-Apply a boxblur filter with luma, chroma, and alpha radius
-set to 2:
-<table><tr><td>&nbsp;</td><td><pre class="example">boxblur=2:1
-</pre></td></tr></table>
-
-</li><li>
-Set luma radius to 2, alpha and chroma radius to 0
-<table><tr><td>&nbsp;</td><td><pre class="example">boxblur=2:1:0:0:0:0
-</pre></td></tr></table>
-
-</li><li>
-Set luma and chroma radius to a fraction of the video dimension
-<table><tr><td>&nbsp;</td><td><pre class="example">boxblur=min(h\,w)/10:1:min(cw\,ch)/10:1
-</pre></td></tr></table>
-
-</li></ul>
-
-<a name="copy"></a>
-<h2 class="section"><a href="ffplay.html#toc-copy">16.3 copy</a></h2>
-
-<p>Copy the input source unchanged to the output. Mainly useful for
-testing purposes.
-</p>
-<a name="crop"></a>
-<h2 class="section"><a href="ffplay.html#toc-crop">16.4 crop</a></h2>
-
-<p>Crop the input video to <var>out_w</var>:<var>out_h</var>:<var>x</var>:<var>y</var>.
-</p>
-<p>The parameters are expressions containing the following constants:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>E, PI, PHI</samp>&rsquo;</dt>
-<dd><p>the corresponding mathematical approximated values for e
-(euler number), pi (greek PI), PHI (golden ratio)
-</p>
-</dd>
-<dt> &lsquo;<samp>x, y</samp>&rsquo;</dt>
-<dd><p>the computed values for <var>x</var> and <var>y</var>. They are evaluated for
-each new frame.
-</p>
-</dd>
-<dt> &lsquo;<samp>in_w, in_h</samp>&rsquo;</dt>
-<dd><p>the input width and heigth
-</p>
-</dd>
-<dt> &lsquo;<samp>iw, ih</samp>&rsquo;</dt>
-<dd><p>same as <var>in_w</var> and <var>in_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>out_w, out_h</samp>&rsquo;</dt>
-<dd><p>the output (cropped) width and heigth
-</p>
-</dd>
-<dt> &lsquo;<samp>ow, oh</samp>&rsquo;</dt>
-<dd><p>same as <var>out_w</var> and <var>out_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>a</samp>&rsquo;</dt>
-<dd><p>same as <var>iw</var> / <var>ih</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>sar</samp>&rsquo;</dt>
-<dd><p>input sample aspect ratio
-</p>
-</dd>
-<dt> &lsquo;<samp>dar</samp>&rsquo;</dt>
-<dd><p>input display aspect ratio, it is the same as (<var>iw</var> / <var>ih</var>) * <var>sar</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>hsub, vsub</samp>&rsquo;</dt>
-<dd><p>horizontal and vertical chroma subsample values. For example for the
-pixel format &quot;yuv422p&quot; <var>hsub</var> is 2 and <var>vsub</var> is 1.
-</p>
-</dd>
-<dt> &lsquo;<samp>n</samp>&rsquo;</dt>
-<dd><p>the number of input frame, starting from 0
-</p>
-</dd>
-<dt> &lsquo;<samp>pos</samp>&rsquo;</dt>
-<dd><p>the position in the file of the input frame, NAN if unknown
-</p>
-</dd>
-<dt> &lsquo;<samp>t</samp>&rsquo;</dt>
-<dd><p>timestamp expressed in seconds, NAN if the input timestamp is unknown
-</p>
-</dd>
-</dl>
-
-<p>The <var>out_w</var> and <var>out_h</var> parameters specify the expressions for
-the width and height of the output (cropped) video. They are
-evaluated just at the configuration of the filter.
-</p>
-<p>The default value of <var>out_w</var> is &quot;in_w&quot;, and the default value of
-<var>out_h</var> is &quot;in_h&quot;.
-</p>
-<p>The expression for <var>out_w</var> may depend on the value of <var>out_h</var>,
-and the expression for <var>out_h</var> may depend on <var>out_w</var>, but they
-cannot depend on <var>x</var> and <var>y</var>, as <var>x</var> and <var>y</var> are
-evaluated after <var>out_w</var> and <var>out_h</var>.
-</p>
-<p>The <var>x</var> and <var>y</var> parameters specify the expressions for the
-position of the top-left corner of the output (non-cropped) area. They
-are evaluated for each frame. If the evaluated value is not valid, it
-is approximated to the nearest valid value.
-</p>
-<p>The default value of <var>x</var> is &quot;(in_w-out_w)/2&quot;, and the default
-value for <var>y</var> is &quot;(in_h-out_h)/2&quot;, which set the cropped area at
-the center of the input image.
-</p>
-<p>The expression for <var>x</var> may depend on <var>y</var>, and the expression
-for <var>y</var> may depend on <var>x</var>.
-</p>
-<p>Follow some examples:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># crop the central input area with size 100x100
-crop=100:100
-
-# crop the central input area with size 2/3 of the input video
-&quot;crop=2/3*in_w:2/3*in_h&quot;
-
-# crop the input video central square
-crop=in_h
-
-# delimit the rectangle with the top-left corner placed at position
-# 100:100 and the right-bottom corner corresponding to the right-bottom
-# corner of the input image.
-crop=in_w-100:in_h-100:100:100
-
-# crop 10 pixels from the left and right borders, and 20 pixels from
-# the top and bottom borders
-&quot;crop=in_w-2*10:in_h-2*20&quot;
-
-# keep only the bottom right quarter of the input image
-&quot;crop=in_w/2:in_h/2:in_w/2:in_h/2&quot;
-
-# crop height for getting Greek harmony
-&quot;crop=in_w:1/PHI*in_w&quot;
-
-# trembling effect
-&quot;crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(n/10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(n/7)&quot;
-
-# erratic camera effect depending on timestamp
-&quot;crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(t*10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(t*13)&quot;
-
-# set x depending on the value of y
-&quot;crop=in_w/2:in_h/2:y:10+10*sin(n/10)&quot;
-</pre></td></tr></table>
-
-<a name="cropdetect"></a>
-<h2 class="section"><a href="ffplay.html#toc-cropdetect">16.5 cropdetect</a></h2>
-
-<p>Auto-detect crop size.
-</p>
-<p>Calculate necessary cropping parameters and prints the recommended
-parameters through the logging system. The detected dimensions
-correspond to the non-black area of the input video.
-</p>
-<p>It accepts the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">cropdetect[=<var>limit</var>[:<var>round</var>[:<var>reset</var>]]]
-</pre></td></tr></table>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>limit</samp>&rsquo;</dt>
-<dd><p>Threshold, which can be optionally specified from nothing (0) to
-everything (255), defaults to 24.
-</p>
-</dd>
-<dt> &lsquo;<samp>round</samp>&rsquo;</dt>
-<dd><p>Value which the width/height should be divisible by, defaults to
-16. The offset is automatically adjusted to center the video. Use 2 to
-get only even dimensions (needed for 4:2:2 video). 16 is best when
-encoding to most video codecs.
-</p>
-</dd>
-<dt> &lsquo;<samp>reset</samp>&rsquo;</dt>
-<dd><p>Counter that determines after how many frames cropdetect will reset
-the previously detected largest video area and start over to detect
-the current optimal crop area. Defaults to 0.
-</p>
-<p>This can be useful when channel logos distort the video area. 0
-indicates never reset and return the largest area encountered during
-playback.
-</p></dd>
-</dl>
-
-<a name="delogo"></a>
-<h2 class="section"><a href="ffplay.html#toc-delogo">16.6 delogo</a></h2>
-
-<p>Suppress a TV station logo by a simple interpolation of the surrounding
-pixels. Just set a rectangle covering the logo and watch it disappear
-(and sometimes something even uglier appear - your mileage may vary).
-</p>
-<p>The filter accepts parameters as a string of the form
-&quot;<var>x</var>:<var>y</var>:<var>w</var>:<var>h</var>:<var>band</var>&quot;, or as a list of
-<var>key</var>=<var>value</var> pairs, separated by &quot;:&quot;.
-</p>
-<p>The description of the accepted parameters follows.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>x, y</samp>&rsquo;</dt>
-<dd><p>Specify the top left corner coordinates of the logo. They must be
-specified.
-</p>
-</dd>
-<dt> &lsquo;<samp>w, h</samp>&rsquo;</dt>
-<dd><p>Specify the width and height of the logo to clear. They must be
-specified.
-</p>
-</dd>
-<dt> &lsquo;<samp>band, t</samp>&rsquo;</dt>
-<dd><p>Specify the thickness of the fuzzy edge of the rectangle (added to
-<var>w</var> and <var>h</var>). The default value is 4.
-</p>
-</dd>
-<dt> &lsquo;<samp>show</samp>&rsquo;</dt>
-<dd><p>When set to 1, a green rectangle is drawn on the screen to simplify
-finding the right <var>x</var>, <var>y</var>, <var>w</var>, <var>h</var> parameters, and
-<var>band</var> is set to 4. The default value is 0.
-</p>
-</dd>
-</dl>
-
-<p>Some examples follow.
-</p>
-<ul>
-<li>
-Set a rectangle covering the area with top left corner coordinates 0,0
-and size 100x77, setting a band of size 10:
-<table><tr><td>&nbsp;</td><td><pre class="example">delogo=0:0:100:77:10
-</pre></td></tr></table>
-
-</li><li>
-As the previous example, but use named options:
-<table><tr><td>&nbsp;</td><td><pre class="example">delogo=x=0:y=0:w=100:h=77:band=10
-</pre></td></tr></table>
-
-</li></ul>
-
-<a name="drawbox"></a>
-<h2 class="section"><a href="ffplay.html#toc-drawbox">16.7 drawbox</a></h2>
-
-<p>Draw a colored box on the input image.
-</p>
-<p>It accepts the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">drawbox=<var>x</var>:<var>y</var>:<var>width</var>:<var>height</var>:<var>color</var>
-</pre></td></tr></table>
-
-<dl compact="compact">
-<dt> &lsquo;<samp>x, y</samp>&rsquo;</dt>
-<dd><p>Specify the top left corner coordinates of the box. Default to 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>width, height</samp>&rsquo;</dt>
-<dd><p>Specify the width and height of the box, if 0 they are interpreted as
-the input width and height. Default to 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>color</samp>&rsquo;</dt>
-<dd><p>Specify the color of the box to write, it can be the name of a color
-(case insensitive match) or a 0xRRGGBB[AA] sequence.
-</p></dd>
-</dl>
-
-<p>Follow some examples:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># draw a black box around the edge of the input image
-drawbox
-
-# draw a box with color red and an opacity of 50%
-drawbox=10:20:200:60:red@0.5&quot;
-</pre></td></tr></table>
-
-<a name="drawtext"></a>
-<h2 class="section"><a href="ffplay.html#toc-drawtext">16.8 drawtext</a></h2>
-
-<p>Draw text string or text from specified file on top of video using the
-libfreetype library.
-</p>
-<p>To enable compilation of this filter you need to configure FFmpeg with
-<code>--enable-libfreetype</code>.
-</p>
-<p>The filter also recognizes strftime() sequences in the provided text
-and expands them accordingly. Check the documentation of strftime().
-</p>
-<p>The filter accepts parameters as a list of <var>key</var>=<var>value</var> pairs,
-separated by &quot;:&quot;.
-</p>
-<p>The description of the accepted parameters follows.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>fontfile</samp>&rsquo;</dt>
-<dd><p>The font file to be used for drawing text. Path must be included.
-This parameter is mandatory.
-</p>
-</dd>
-<dt> &lsquo;<samp>text</samp>&rsquo;</dt>
-<dd><p>The text string to be drawn. The text must be a sequence of UTF-8
-encoded characters.
-This parameter is mandatory if no file is specified with the parameter
-<var>textfile</var>.
-</p>
-</dd>
-<dt> &lsquo;<samp>textfile</samp>&rsquo;</dt>
-<dd><p>A text file containing text to be drawn. The text must be a sequence
-of UTF-8 encoded characters.
-</p>
-<p>This parameter is mandatory if no text string is specified with the
-parameter <var>text</var>.
-</p>
-<p>If both text and textfile are specified, an error is thrown.
-</p>
-</dd>
-<dt> &lsquo;<samp>x, y</samp>&rsquo;</dt>
-<dd><p>The offsets where text will be drawn within the video frame.
-Relative to the top/left border of the output image.
-</p>
-<p>The default value of <var>x</var> and <var>y</var> is 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>fontsize</samp>&rsquo;</dt>
-<dd><p>The font size to be used for drawing text.
-The default value of <var>fontsize</var> is 16.
-</p>
-</dd>
-<dt> &lsquo;<samp>fontcolor</samp>&rsquo;</dt>
-<dd><p>The color to be used for drawing fonts.
-Either a string (e.g. &quot;red&quot;) or in 0xRRGGBB[AA] format
-(e.g. &quot;0xff000033&quot;), possibly followed by an alpha specifier.
-The default value of <var>fontcolor</var> is &quot;black&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>boxcolor</samp>&rsquo;</dt>
-<dd><p>The color to be used for drawing box around text.
-Either a string (e.g. &quot;yellow&quot;) or in 0xRRGGBB[AA] format
-(e.g. &quot;0xff00ff&quot;), possibly followed by an alpha specifier.
-The default value of <var>boxcolor</var> is &quot;white&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>box</samp>&rsquo;</dt>
-<dd><p>Used to draw a box around text using background color.
-Value should be either 1 (enable) or 0 (disable).
-The default value of <var>box</var> is 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>shadowx, shadowy</samp>&rsquo;</dt>
-<dd><p>The x and y offsets for the text shadow position with respect to the
-position of the text. They can be either positive or negative
-values. Default value for both is &quot;0&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>shadowcolor</samp>&rsquo;</dt>
-<dd><p>The color to be used for drawing a shadow behind the drawn text.  It
-can be a color name (e.g. &quot;yellow&quot;) or a string in the 0xRRGGBB[AA]
-form (e.g. &quot;0xff00ff&quot;), possibly followed by an alpha specifier.
-The default value of <var>shadowcolor</var> is &quot;black&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>ft_load_flags</samp>&rsquo;</dt>
-<dd><p>Flags to be used for loading the fonts.
-</p>
-<p>The flags map the corresponding flags supported by libfreetype, and are
-a combination of the following values:
-</p><dl compact="compact">
-<dt> <var>default</var></dt>
-<dt> <var>no_scale</var></dt>
-<dt> <var>no_hinting</var></dt>
-<dt> <var>render</var></dt>
-<dt> <var>no_bitmap</var></dt>
-<dt> <var>vertical_layout</var></dt>
-<dt> <var>force_autohint</var></dt>
-<dt> <var>crop_bitmap</var></dt>
-<dt> <var>pedantic</var></dt>
-<dt> <var>ignore_global_advance_width</var></dt>
-<dt> <var>no_recurse</var></dt>
-<dt> <var>ignore_transform</var></dt>
-<dt> <var>monochrome</var></dt>
-<dt> <var>linear_design</var></dt>
-<dt> <var>no_autohint</var></dt>
-<dt> <var>end table</var></dt>
-</dl>
-
-<p>Default value is &quot;render&quot;.
-</p>
-<p>For more information consult the documentation for the FT_LOAD_*
-libfreetype flags.
-</p>
-</dd>
-<dt> &lsquo;<samp>tabsize</samp>&rsquo;</dt>
-<dd><p>The size in number of spaces to use for rendering the tab.
-Default value is 4.
-</p></dd>
-</dl>
-
-<p>For example the command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">drawtext=&quot;fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Test Text'&quot;
-</pre></td></tr></table>
-
-<p>will draw &quot;Test Text&quot; with font FreeSerif, using the default values
-for the optional parameters.
-</p>
-<p>The command:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">drawtext=&quot;fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Test Text':\
-          x=100: y=50: fontsize=24: fontcolor=yellow@0.2: box=1: boxcolor=red@0.2&quot;
-</pre></td></tr></table>
-
-<p>will draw &rsquo;Test Text&rsquo; with font FreeSerif of size 24 at position x=100
-and y=50 (counting from the top-left corner of the screen), text is
-yellow with a red box around it. Both the text and the box have an
-opacity of 20%.
-</p>
-<p>Note that the double quotes are not necessary if spaces are not used
-within the parameter list.
-</p>
-<p>For more information about libfreetype, check:
-<a href="http://www.freetype.org/">http://www.freetype.org/</a>.
-</p>
-<a name="fade"></a>
-<h2 class="section"><a href="ffplay.html#toc-fade">16.9 fade</a></h2>
-
-<p>Apply fade-in/out effect to input video.
-</p>
-<p>It accepts the parameters:
-<var>type</var>:<var>start_frame</var>:<var>nb_frames</var>
-</p>
-<p><var>type</var> specifies if the effect type, can be either &quot;in&quot; for
-fade-in, or &quot;out&quot; for a fade-out effect.
-</p>
-<p><var>start_frame</var> specifies the number of the start frame for starting
-to apply the fade effect.
-</p>
-<p><var>nb_frames</var> specifies the number of frames for which the fade
-effect has to last. At the end of the fade-in effect the output video
-will have the same intensity as the input video, at the end of the
-fade-out transition the output video will be completely black.
-</p>
-<p>A few usage examples follow, usable too as test scenarios.
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># fade in first 30 frames of video
-fade=in:0:30
-
-# fade out last 45 frames of a 200-frame video
-fade=out:155:45
-
-# fade in first 25 frames and fade out last 25 frames of a 1000-frame video
-fade=in:0:25, fade=out:975:25
-
-# make first 5 frames black, then fade in from frame 5-24
-fade=in:5:20
-</pre></td></tr></table>
-
-<a name="fieldorder"></a>
-<h2 class="section"><a href="ffplay.html#toc-fieldorder">16.10 fieldorder</a></h2>
-
-<p>Transform the field order of the input video.
-</p>
-<p>It accepts one parameter which specifies the required field order that
-the input interlaced video will be transformed to. The parameter can
-assume one of the following values:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>0 or bff</samp>&rsquo;</dt>
-<dd><p>output bottom field first
-</p></dd>
-<dt> &lsquo;<samp>1 or tff</samp>&rsquo;</dt>
-<dd><p>output top field first
-</p></dd>
-</dl>
-
-<p>Default value is &quot;tff&quot;.
-</p>
-<p>Transformation is achieved by shifting the picture content up or down
-by one line, and filling the remaining line with appropriate picture content.
-This method is consistent with most broadcast field order converters.
-</p>
-<p>If the input video is not flagged as being interlaced, or it is already
-flagged as being of the required output field order then this filter does
-not alter the incoming video.
-</p>
-<p>This filter is very useful when converting to or from PAL DV material,
-which is bottom field first.
-</p>
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">./ffmpeg -i in.vob -vf &quot;fieldorder=bff&quot; out.dv
-</pre></td></tr></table>
-
-<a name="fifo"></a>
-<h2 class="section"><a href="ffplay.html#toc-fifo">16.11 fifo</a></h2>
-
-<p>Buffer input images and send them when they are requested.
-</p>
-<p>This filter is mainly useful when auto-inserted by the libavfilter
-framework.
-</p>
-<p>The filter does not take parameters.
-</p>
-<a name="format"></a>
-<h2 class="section"><a href="ffplay.html#toc-format">16.12 format</a></h2>
-
-<p>Convert the input video to one of the specified pixel formats.
-Libavfilter will try to pick one that is supported for the input to
-the next filter.
-</p>
-<p>The filter accepts a list of pixel format names, separated by &quot;:&quot;,
-for example &quot;yuv420p:monow:rgb24&quot;.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># convert the input video to the format &quot;yuv420p&quot;
-format=yuv420p
-
-# convert the input video to any of the formats in the list
-format=yuv420p:yuv444p:yuv410p
-</pre></td></tr></table>
-
-<p><a name="frei0r"></a>
-</p><a name="frei0r-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-frei0r-1">16.13 frei0r</a></h2>
-
-<p>Apply a frei0r effect to the input video.
-</p>
-<p>To enable compilation of this filter you need to install the frei0r
-header and configure FFmpeg with &ndash;enable-frei0r.
-</p>
-<p>The filter supports the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"><var>filter_name</var>[{:|=}<var>param1</var>:<var>param2</var>:...:<var>paramN</var>]
-</pre></td></tr></table>
-
-<p><var>filter_name</var> is the name to the frei0r effect to load. If the
-environment variable <code>FREI0R_PATH</code> is defined, the frei0r effect
-is searched in each one of the directories specified by the colon
-separated list in <code>FREIOR_PATH</code>, otherwise in the standard frei0r
-paths, which are in this order: &lsquo;<tt>HOME/.frei0r-1/lib/</tt>&rsquo;,
-&lsquo;<tt>/usr/local/lib/frei0r-1/</tt>&rsquo;, &lsquo;<tt>/usr/lib/frei0r-1/</tt>&rsquo;.
-</p>
-<p><var>param1</var>, <var>param2</var>, ... , <var>paramN</var> specify the parameters
-for the frei0r effect.
-</p>
-<p>A frei0r effect parameter can be a boolean (whose values are specified
-with &quot;y&quot; and &quot;n&quot;), a double, a color (specified by the syntax
-<var>R</var>/<var>G</var>/<var>B</var>, <var>R</var>, <var>G</var>, and <var>B</var> being float
-numbers from 0.0 to 1.0) or by an <code>av_parse_color()</code> color
-description), a position (specified by the syntax <var>X</var>/<var>Y</var>,
-<var>X</var> and <var>Y</var> being float numbers) and a string.
-</p>
-<p>The number and kind of parameters depend on the loaded effect. If an
-effect parameter is not specified the default value is set.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># apply the distort0r effect, set the first two double parameters
-frei0r=distort0r:0.5:0.01
-
-# apply the colordistance effect, takes a color as first parameter
-frei0r=colordistance:0.2/0.3/0.4
-frei0r=colordistance:violet
-frei0r=colordistance:0x112233
-
-# apply the perspective effect, specify the top left and top right
-# image positions
-frei0r=perspective:0.2/0.2:0.8/0.2
-</pre></td></tr></table>
-
-<p>For more information see:
-<a href="http://piksel.org/frei0r">http://piksel.org/frei0r</a>
-</p>
-<a name="gradfun"></a>
-<h2 class="section"><a href="ffplay.html#toc-gradfun">16.14 gradfun</a></h2>
-
-<p>Fix the banding artifacts that are sometimes introduced into nearly flat
-regions by truncation to 8bit colordepth.
-Interpolate the gradients that should go where the bands are, and
-dither them.
-</p>
-<p>This filter is designed for playback only.  Do not use it prior to
-lossy compression, because compression tends to lose the dither and
-bring back the bands.
-</p>
-<p>The filter takes two optional parameters, separated by &rsquo;:&rsquo;:
-<var>strength</var>:<var>radius</var>
-</p>
-<p><var>strength</var> is the maximum amount by which the filter will change
-any one pixel. Also the threshold for detecting nearly flat
-regions. Acceptable values range from .51 to 255, default value is
-1.2, out-of-range values will be clipped to the valid range.
-</p>
-<p><var>radius</var> is the neighborhood to fit the gradient to. A larger
-radius makes for smoother gradients, but also prevents the filter from
-modifying the pixels near detailed regions. Acceptable values are
-8-32, default value is 16, out-of-range values will be clipped to the
-valid range.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example"># default parameters
-gradfun=1.2:16
-
-# omitting radius
-gradfun=1.2
-</pre></td></tr></table>
-
-<a name="hflip"></a>
-<h2 class="section"><a href="ffplay.html#toc-hflip">16.15 hflip</a></h2>
-
-<p>Flip the input video horizontally.
-</p>
-<p>For example to horizontally flip the video in input with
-&lsquo;<tt>ffmpeg</tt>&rsquo;:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">ffmpeg -i in.avi -vf &quot;hflip&quot; out.avi
-</pre></td></tr></table>
-
-<a name="hqdn3d"></a>
-<h2 class="section"><a href="ffplay.html#toc-hqdn3d">16.16 hqdn3d</a></h2>
-
-<p>High precision/quality 3d denoise filter. This filter aims to reduce
-image noise producing smooth images and making still images really
-still. It should enhance compressibility.
-</p>
-<p>It accepts the following optional parameters:
-<var>luma_spatial</var>:<var>chroma_spatial</var>:<var>luma_tmp</var>:<var>chroma_tmp</var>
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>luma_spatial</samp>&rsquo;</dt>
-<dd><p>a non-negative float number which specifies spatial luma strength,
-defaults to 4.0
-</p>
-</dd>
-<dt> &lsquo;<samp>chroma_spatial</samp>&rsquo;</dt>
-<dd><p>a non-negative float number which specifies spatial chroma strength,
-defaults to 3.0*<var>luma_spatial</var>/4.0
-</p>
-</dd>
-<dt> &lsquo;<samp>luma_tmp</samp>&rsquo;</dt>
-<dd><p>a float number which specifies luma temporal strength, defaults to
-6.0*<var>luma_spatial</var>/4.0
-</p>
-</dd>
-<dt> &lsquo;<samp>chroma_tmp</samp>&rsquo;</dt>
-<dd><p>a float number which specifies chroma temporal strength, defaults to
-<var>luma_tmp</var>*<var>chroma_spatial</var>/<var>luma_spatial</var>
-</p></dd>
-</dl>
-
-<a name="lut_002c-lutrgb_002c-lutyuv"></a>
-<h2 class="section"><a href="ffplay.html#toc-lut_002c-lutrgb_002c-lutyuv">16.17 lut, lutrgb, lutyuv</a></h2>
-
-<p>Compute a look-up table for binding each pixel component input value
-to an output value, and apply it to input video.
-</p>
-<p><var>lutyuv</var> applies a lookup table to a YUV input video, <var>lutrgb</var>
-to an RGB input video.
-</p>
-<p>These filters accept in input a &quot;:&quot;-separated list of options, which
-specify the expressions used for computing the lookup table for the
-corresponding pixel component values.
-</p>
-<p>The <var>lut</var> filter requires either YUV or RGB pixel formats in
-input, and accepts the options:
-</p><dl compact="compact">
-<dd><p><var>c0</var> (first  pixel component)
-<var>c1</var> (second pixel component)
-<var>c2</var> (third  pixel component)
-<var>c3</var> (fourth pixel component, corresponds to the alpha component)
-</p></dd>
-</dl>
-
-<p>The exact component associated to each option depends on the format in
-input.
-</p>
-<p>The <var>lutrgb</var> filter requires RGB pixel formats in input, and
-accepts the options:
-</p><dl compact="compact">
-<dd><p><var>r</var> (red component)
-<var>g</var> (green component)
-<var>b</var> (blue component)
-<var>a</var> (alpha component)
-</p></dd>
-</dl>
-
-<p>The <var>lutyuv</var> filter requires YUV pixel formats in input, and
-accepts the options:
-</p><dl compact="compact">
-<dd><p><var>y</var> (Y/luminance component)
-<var>u</var> (U/Cb component)
-<var>v</var> (V/Cr component)
-<var>a</var> (alpha component)
-</p></dd>
-</dl>
-
-<p>The expressions can contain the following constants and functions:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>E, PI, PHI</samp>&rsquo;</dt>
-<dd><p>the corresponding mathematical approximated values for e
-(euler number), pi (greek PI), PHI (golden ratio)
-</p>
-</dd>
-<dt> &lsquo;<samp>w, h</samp>&rsquo;</dt>
-<dd><p>the input width and heigth
-</p>
-</dd>
-<dt> &lsquo;<samp>val</samp>&rsquo;</dt>
-<dd><p>input value for the pixel component
-</p>
-</dd>
-<dt> &lsquo;<samp>clipval</samp>&rsquo;</dt>
-<dd><p>the input value clipped in the <var>minval</var>-<var>maxval</var> range
-</p>
-</dd>
-<dt> &lsquo;<samp>maxval</samp>&rsquo;</dt>
-<dd><p>maximum value for the pixel component
-</p>
-</dd>
-<dt> &lsquo;<samp>minval</samp>&rsquo;</dt>
-<dd><p>minimum value for the pixel component
-</p>
-</dd>
-<dt> &lsquo;<samp>negval</samp>&rsquo;</dt>
-<dd><p>the negated value for the pixel component value clipped in the
-<var>minval</var>-<var>maxval</var> range , it corresponds to the expression
-&quot;maxval-clipval+minval&quot;
-</p>
-</dd>
-<dt> &lsquo;<samp>clip(val)</samp>&rsquo;</dt>
-<dd><p>the computed value in <var>val</var> clipped in the
-<var>minval</var>-<var>maxval</var> range
-</p>
-</dd>
-<dt> &lsquo;<samp>gammaval(gamma)</samp>&rsquo;</dt>
-<dd><p>the computed gamma correction value of the pixel component value
-clipped in the <var>minval</var>-<var>maxval</var> range, corresponds to the
-expression
-&quot;pow((clipval-minval)/(maxval-minval)\,<var>gamma</var>)*(maxval-minval)+minval&quot;
-</p>
-</dd>
-</dl>
-
-<p>All expressions default to &quot;val&quot;.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># negate input video
-lutrgb=&quot;r=maxval+minval-val:g=maxval+minval-val:b=maxval+minval-val&quot;
-lutyuv=&quot;y=maxval+minval-val:u=maxval+minval-val:v=maxval+minval-val&quot;
-
-# the above is the same as
-lutrgb=&quot;r=negval:g=negval:b=negval&quot;
-lutyuv=&quot;y=negval:u=negval:v=negval&quot;
-
-# negate luminance
-lutyuv=negval
-
-# remove chroma components, turns the video into a graytone image
-lutyuv=&quot;u=128:v=128&quot;
-
-# apply a luma burning effect
-lutyuv=&quot;y=2*val&quot;
-
-# remove green and blue components
-lutrgb=&quot;g=0:b=0&quot;
-
-# set a constant alpha channel value on input
-format=rgba,lutrgb=a=&quot;maxval-minval/2&quot;
-
-# correct luminance gamma by a 0.5 factor
-lutyuv=y=gammaval(0.5)
-</pre></td></tr></table>
-
-<a name="mp"></a>
-<h2 class="section"><a href="ffplay.html#toc-mp">16.18 mp</a></h2>
-
-<p>Apply an MPlayer filter to the input video.
-</p>
-<p>This filter provides a wrapper around most of the filters of
-MPlayer/MEncoder.
-</p>
-<p>This wrapper is considered experimental. Some of the wrapped filters
-may not work properly and we may drop support for them, as they will
-be implemented natively into FFmpeg. Thus you should avoid
-depending on them when writing portable scripts.
-</p>
-<p>The filters accepts the parameters:
-<var>filter_name</var>[:=]<var>filter_params</var>
-</p>
-<p><var>filter_name</var> is the name of a supported MPlayer filter,
-<var>filter_params</var> is a string containing the parameters accepted by
-the named filter.
-</p>
-<p>The list of the currently supported filters follows:
-</p><dl compact="compact">
-<dt> <var>2xsai</var></dt>
-<dt> <var>decimate</var></dt>
-<dt> <var>denoise3d</var></dt>
-<dt> <var>detc</var></dt>
-<dt> <var>dint</var></dt>
-<dt> <var>divtc</var></dt>
-<dt> <var>down3dright</var></dt>
-<dt> <var>dsize</var></dt>
-<dt> <var>eq2</var></dt>
-<dt> <var>eq</var></dt>
-<dt> <var>field</var></dt>
-<dt> <var>fil</var></dt>
-<dt> <var>fixpts</var></dt>
-<dt> <var>framestep</var></dt>
-<dt> <var>fspp</var></dt>
-<dt> <var>geq</var></dt>
-<dt> <var>harddup</var></dt>
-<dt> <var>hqdn3d</var></dt>
-<dt> <var>hue</var></dt>
-<dt> <var>il</var></dt>
-<dt> <var>ilpack</var></dt>
-<dt> <var>ivtc</var></dt>
-<dt> <var>kerndeint</var></dt>
-<dt> <var>mcdeint</var></dt>
-<dt> <var>mirror</var></dt>
-<dt> <var>noise</var></dt>
-<dt> <var>ow</var></dt>
-<dt> <var>palette</var></dt>
-<dt> <var>perspective</var></dt>
-<dt> <var>phase</var></dt>
-<dt> <var>pp7</var></dt>
-<dt> <var>pullup</var></dt>
-<dt> <var>qp</var></dt>
-<dt> <var>rectangle</var></dt>
-<dt> <var>remove-logo</var></dt>
-<dt> <var>rotate</var></dt>
-<dt> <var>sab</var></dt>
-<dt> <var>screenshot</var></dt>
-<dt> <var>smartblur</var></dt>
-<dt> <var>softpulldown</var></dt>
-<dt> <var>softskip</var></dt>
-<dt> <var>spp</var></dt>
-<dt> <var>swapuv</var></dt>
-<dt> <var>telecine</var></dt>
-<dt> <var>tile</var></dt>
-<dt> <var>tinterlace</var></dt>
-<dt> <var>unsharp</var></dt>
-<dt> <var>uspp</var></dt>
-<dt> <var>yuvcsp</var></dt>
-<dt> <var>yvu9</var></dt>
-</dl>
-
-<p>The parameter syntax and behavior for the listed filters are the same
-of the corresponding MPlayer filters. For detailed instructions check
-the &quot;VIDEO FILTERS&quot; section in the MPlayer manual.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># remove a logo by interpolating the surrounding pixels
-mp=delogo=200:200:80:20:1
-
-# adjust gamma, brightness, contrast
-mp=eq2=1.0:2:0.5
-
-# tweak hue and saturation
-mp=hue=100:-10
-</pre></td></tr></table>
-
-<p>See also mplayer(1), <a href="http://www.mplayerhq.hu/">http://www.mplayerhq.hu/</a>.
-</p>
-<a name="negate"></a>
-<h2 class="section"><a href="ffplay.html#toc-negate">16.19 negate</a></h2>
-
-<p>Negate input video.
-</p>
-<p>This filter accepts an integer in input, if non-zero it negates the
-alpha component (if available). The default value in input is 0.
-</p>
-<a name="noformat"></a>
-<h2 class="section"><a href="ffplay.html#toc-noformat">16.20 noformat</a></h2>
-
-<p>Force libavfilter not to use any of the specified pixel formats for the
-input to the next filter.
-</p>
-<p>The filter accepts a list of pixel format names, separated by &quot;:&quot;,
-for example &quot;yuv420p:monow:rgb24&quot;.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># force libavfilter to use a format different from &quot;yuv420p&quot; for the
-# input to the vflip filter
-noformat=yuv420p,vflip
-
-# convert the input video to any of the formats not contained in the list
-noformat=yuv420p:yuv444p:yuv410p
-</pre></td></tr></table>
-
-<a name="null-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-null-1">16.21 null</a></h2>
-
-<p>Pass the video source unchanged to the output.
-</p>
-<a name="ocv"></a>
-<h2 class="section"><a href="ffplay.html#toc-ocv">16.22 ocv</a></h2>
-
-<p>Apply video transform using libopencv.
-</p>
-<p>To enable this filter install libopencv library and headers and
-configure FFmpeg with &ndash;enable-libopencv.
-</p>
-<p>The filter takes the parameters: <var>filter_name</var>{:=}<var>filter_params</var>.
-</p>
-<p><var>filter_name</var> is the name of the libopencv filter to apply.
-</p>
-<p><var>filter_params</var> specifies the parameters to pass to the libopencv
-filter. If not specified the default values are assumed.
-</p>
-<p>Refer to the official libopencv documentation for more precise
-informations:
-<a href="http://opencv.willowgarage.com/documentation/c/image_filtering.html">http://opencv.willowgarage.com/documentation/c/image_filtering.html</a>
-</p>
-<p>Follows the list of supported libopencv filters.
-</p>
-<p><a name="dilate"></a>
-</p><a name="dilate-1"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-dilate-1">16.22.1 dilate</a></h3>
-
-<p>Dilate an image by using a specific structuring element.
-This filter corresponds to the libopencv function <code>cvDilate</code>.
-</p>
-<p>It accepts the parameters: <var>struct_el</var>:<var>nb_iterations</var>.
-</p>
-<p><var>struct_el</var> represents a structuring element, and has the syntax:
-<var>cols</var>x<var>rows</var>+<var>anchor_x</var>x<var>anchor_y</var>/<var>shape</var>
-</p>
-<p><var>cols</var> and <var>rows</var> represent the number of colums and rows of
-the structuring element, <var>anchor_x</var> and <var>anchor_y</var> the anchor
-point, and <var>shape</var> the shape for the structuring element, and
-can be one of the values &quot;rect&quot;, &quot;cross&quot;, &quot;ellipse&quot;, &quot;custom&quot;.
-</p>
-<p>If the value for <var>shape</var> is &quot;custom&quot;, it must be followed by a
-string of the form &quot;=<var>filename</var>&quot;. The file with name
-<var>filename</var> is assumed to represent a binary image, with each
-printable character corresponding to a bright pixel. When a custom
-<var>shape</var> is used, <var>cols</var> and <var>rows</var> are ignored, the number
-or columns and rows of the read file are assumed instead.
-</p>
-<p>The default value for <var>struct_el</var> is &quot;3x3+0x0/rect&quot;.
-</p>
-<p><var>nb_iterations</var> specifies the number of times the transform is
-applied to the image, and defaults to 1.
-</p>
-<p>Follow some example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># use the default values
-ocv=dilate
-
-# dilate using a structuring element with a 5x5 cross, iterate two times
-ocv=dilate=5x5+2x2/cross:2
-
-# read the shape from the file diamond.shape, iterate two times
-# the file diamond.shape may contain a pattern of characters like this:
-#   *
-#  ***
-# *****
-#  ***
-#   *
-# the specified cols and rows are ignored (but not the anchor point coordinates)
-ocv=0x0+2x2/custom=diamond.shape:2
-</pre></td></tr></table>
-
-<a name="erode"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-erode">16.22.2 erode</a></h3>
-
-<p>Erode an image by using a specific structuring element.
-This filter corresponds to the libopencv function <code>cvErode</code>.
-</p>
-<p>The filter accepts the parameters: <var>struct_el</var>:<var>nb_iterations</var>,
-with the same syntax and semantics as the <a href="#dilate">dilate</a> filter.
-</p>
-<a name="smooth"></a>
-<h3 class="subsection"><a href="ffplay.html#toc-smooth">16.22.3 smooth</a></h3>
-
-<p>Smooth the input video.
-</p>
-<p>The filter takes the following parameters:
-<var>type</var>:<var>param1</var>:<var>param2</var>:<var>param3</var>:<var>param4</var>.
-</p>
-<p><var>type</var> is the type of smooth filter to apply, and can be one of
-the following values: &quot;blur&quot;, &quot;blur_no_scale&quot;, &quot;median&quot;, &quot;gaussian&quot;,
-&quot;bilateral&quot;. The default value is &quot;gaussian&quot;.
-</p>
-<p><var>param1</var>, <var>param2</var>, <var>param3</var>, and <var>param4</var> are
-parameters whose meanings depend on smooth type. <var>param1</var> and
-<var>param2</var> accept integer positive values or 0, <var>param3</var> and
-<var>param4</var> accept float values.
-</p>
-<p>The default value for <var>param1</var> is 3, the default value for the
-other parameters is 0.
-</p>
-<p>These parameters correspond to the parameters assigned to the
-libopencv function <code>cvSmooth</code>.
-</p>
-<a name="overlay"></a>
-<h2 class="section"><a href="ffplay.html#toc-overlay">16.23 overlay</a></h2>
-
-<p>Overlay one video on top of another.
-</p>
-<p>It takes two inputs and one output, the first input is the &quot;main&quot;
-video on which the second input is overlayed.
-</p>
-<p>It accepts the parameters: <var>x</var>:<var>y</var>.
-</p>
-<p><var>x</var> is the x coordinate of the overlayed video on the main video,
-<var>y</var> is the y coordinate. The parameters are expressions containing
-the following parameters:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>main_w, main_h</samp>&rsquo;</dt>
-<dd><p>main input width and height
-</p>
-</dd>
-<dt> &lsquo;<samp>W, H</samp>&rsquo;</dt>
-<dd><p>same as <var>main_w</var> and <var>main_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>overlay_w, overlay_h</samp>&rsquo;</dt>
-<dd><p>overlay input width and height
-</p>
-</dd>
-<dt> &lsquo;<samp>w, h</samp>&rsquo;</dt>
-<dd><p>same as <var>overlay_w</var> and <var>overlay_h</var>
-</p></dd>
-</dl>
-
-<p>Be aware that frames are taken from each input video in timestamp
-order, hence, if their initial timestamps differ, it is a a good idea
-to pass the two inputs through a <var>setpts=PTS-STARTPTS</var> filter to
-have them begin in the same zero timestamp, as it does the example for
-the <var>movie</var> filter.
-</p>
-<p>Follow some examples:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># draw the overlay at 10 pixels from the bottom right
-# corner of the main video.
-overlay=main_w-overlay_w-10:main_h-overlay_h-10
-
-# insert a transparent PNG logo in the bottom left corner of the input
-movie=logo.png [logo];
-[in][logo] overlay=10:main_h-overlay_h-10 [out]
-
-# insert 2 different transparent PNG logos (second logo on bottom
-# right corner):
-movie=logo1.png [logo1];
-movie=logo2.png [logo2];
-[in][logo1]       overlay=10:H-h-10 [in+logo1];
-[in+logo1][logo2] overlay=W-w-10:H-h-10 [out]
-
-# add a transparent color layer on top of the main video,
-# WxH specifies the size of the main input to the overlay filter
-color=red.3:WxH [over]; [in][over] overlay [out]
-</pre></td></tr></table>
-
-<p>You can chain togheter more overlays but the efficiency of such
-approach is yet to be tested.
-</p>
-<a name="pad"></a>
-<h2 class="section"><a href="ffplay.html#toc-pad">16.24 pad</a></h2>
-
-<p>Add paddings to the input image, and places the original input at the
-given coordinates <var>x</var>, <var>y</var>.
-</p>
-<p>It accepts the following parameters:
-<var>width</var>:<var>height</var>:<var>x</var>:<var>y</var>:<var>color</var>.
-</p>
-<p>The parameters <var>width</var>, <var>height</var>, <var>x</var>, and <var>y</var> are
-expressions containing the following constants:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>E, PI, PHI</samp>&rsquo;</dt>
-<dd><p>the corresponding mathematical approximated values for e
-(euler number), pi (greek PI), phi (golden ratio)
-</p>
-</dd>
-<dt> &lsquo;<samp>in_w, in_h</samp>&rsquo;</dt>
-<dd><p>the input video width and heigth
-</p>
-</dd>
-<dt> &lsquo;<samp>iw, ih</samp>&rsquo;</dt>
-<dd><p>same as <var>in_w</var> and <var>in_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>out_w, out_h</samp>&rsquo;</dt>
-<dd><p>the output width and heigth, that is the size of the padded area as
-specified by the <var>width</var> and <var>height</var> expressions
-</p>
-</dd>
-<dt> &lsquo;<samp>ow, oh</samp>&rsquo;</dt>
-<dd><p>same as <var>out_w</var> and <var>out_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>x, y</samp>&rsquo;</dt>
-<dd><p>x and y offsets as specified by the <var>x</var> and <var>y</var>
-expressions, or NAN if not yet specified
-</p>
-</dd>
-<dt> &lsquo;<samp>a</samp>&rsquo;</dt>
-<dd><p>same as <var>iw</var> / <var>ih</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>sar</samp>&rsquo;</dt>
-<dd><p>input sample aspect ratio
-</p>
-</dd>
-<dt> &lsquo;<samp>dar</samp>&rsquo;</dt>
-<dd><p>input display aspect ratio, it is the same as (<var>iw</var> / <var>ih</var>) * <var>sar</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>hsub, vsub</samp>&rsquo;</dt>
-<dd><p>horizontal and vertical chroma subsample values. For example for the
-pixel format &quot;yuv422p&quot; <var>hsub</var> is 2 and <var>vsub</var> is 1.
-</p></dd>
-</dl>
-
-<p>Follows the description of the accepted parameters.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>width, height</samp>&rsquo;</dt>
-<dd>
-<p>Specify the size of the output image with the paddings added. If the
-value for <var>width</var> or <var>height</var> is 0, the corresponding input size
-is used for the output.
-</p>
-<p>The <var>width</var> expression can reference the value set by the
-<var>height</var> expression, and viceversa.
-</p>
-<p>The default value of <var>width</var> and <var>height</var> is 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>x, y</samp>&rsquo;</dt>
-<dd>
-<p>Specify the offsets where to place the input image in the padded area
-with respect to the top/left border of the output image.
-</p>
-<p>The <var>x</var> expression can reference the value set by the <var>y</var>
-expression, and viceversa.
-</p>
-<p>The default value of <var>x</var> and <var>y</var> is 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>color</samp>&rsquo;</dt>
-<dd>
-<p>Specify the color of the padded area, it can be the name of a color
-(case insensitive match) or a 0xRRGGBB[AA] sequence.
-</p>
-<p>The default value of <var>color</var> is &quot;black&quot;.
-</p>
-</dd>
-</dl>
-
-<p>Some examples follow:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example"># Add paddings with color &quot;violet&quot; to the input video. Output video
-# size is 640x480, the top-left corner of the input video is placed at
-# column 0, row 40.
-pad=640:480:0:40:violet
-
-# pad the input to get an output with dimensions increased bt 3/2,
-# and put the input video at the center of the padded area
-pad=&quot;3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2&quot;
-
-# pad the input to get a squared output with size equal to the maximum
-# value between the input width and height, and put the input video at
-# the center of the padded area
-pad=&quot;max(iw\,ih):ow:(ow-iw)/2:(oh-ih)/2&quot;
-
-# pad the input to get a final w/h ratio of 16:9
-pad=&quot;ih*16/9:ih:(ow-iw)/2:(oh-ih)/2&quot;
-
-# for anamorphic video, in order to set the output display aspect ratio,
-# it is necessary to use sar in the expression, according to the relation:
-# (ih * X / ih) * sar = output_dar
-# X = output_dar / sar
-pad=&quot;ih*16/9/sar:ih:(ow-iw)/2:(oh-ih)/2&quot;
-
-# double output size and put the input video in the bottom-right
-# corner of the output padded area
-pad=&quot;2*iw:2*ih:ow-iw:oh-ih&quot;
-</pre></td></tr></table>
-
-<a name="pixdesctest"></a>
-<h2 class="section"><a href="ffplay.html#toc-pixdesctest">16.25 pixdesctest</a></h2>
-
-<p>Pixel format descriptor test filter, mainly useful for internal
-testing. The output video should be equal to the input video.
-</p>
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">format=monow, pixdesctest
-</pre></td></tr></table>
-
-<p>can be used to test the monowhite pixel format descriptor definition.
-</p>
-<a name="scale"></a>
-<h2 class="section"><a href="ffplay.html#toc-scale">16.26 scale</a></h2>
-
-<p>Scale the input video to <var>width</var>:<var>height</var> and/or convert the image format.
-</p>
-<p>The parameters <var>width</var> and <var>height</var> are expressions containing
-the following constants:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>E, PI, PHI</samp>&rsquo;</dt>
-<dd><p>the corresponding mathematical approximated values for e
-(euler number), pi (greek PI), phi (golden ratio)
-</p>
-</dd>
-<dt> &lsquo;<samp>in_w, in_h</samp>&rsquo;</dt>
-<dd><p>the input width and heigth
-</p>
-</dd>
-<dt> &lsquo;<samp>iw, ih</samp>&rsquo;</dt>
-<dd><p>same as <var>in_w</var> and <var>in_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>out_w, out_h</samp>&rsquo;</dt>
-<dd><p>the output (cropped) width and heigth
-</p>
-</dd>
-<dt> &lsquo;<samp>ow, oh</samp>&rsquo;</dt>
-<dd><p>same as <var>out_w</var> and <var>out_h</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>a</samp>&rsquo;</dt>
-<dd><p>same as <var>iw</var> / <var>ih</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>sar</samp>&rsquo;</dt>
-<dd><p>input sample aspect ratio
-</p>
-</dd>
-<dt> &lsquo;<samp>dar</samp>&rsquo;</dt>
-<dd><p>input display aspect ratio, it is the same as (<var>iw</var> / <var>ih</var>) * <var>sar</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>hsub, vsub</samp>&rsquo;</dt>
-<dd><p>horizontal and vertical chroma subsample values. For example for the
-pixel format &quot;yuv422p&quot; <var>hsub</var> is 2 and <var>vsub</var> is 1.
-</p></dd>
-</dl>
-
-<p>If the input image format is different from the format requested by
-the next filter, the scale filter will convert the input to the
-requested format.
-</p>
-<p>If the value for <var>width</var> or <var>height</var> is 0, the respective input
-size is used for the output.
-</p>
-<p>If the value for <var>width</var> or <var>height</var> is -1, the scale filter will
-use, for the respective output size, a value that maintains the aspect
-ratio of the input image.
-</p>
-<p>The default value of <var>width</var> and <var>height</var> is 0.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># scale the input video to a size of 200x100.
-scale=200:100
-
-# scale the input to 2x
-scale=2*iw:2*ih
-# the above is the same as
-scale=2*in_w:2*in_h
-
-# scale the input to half size
-scale=iw/2:ih/2
-
-# increase the width, and set the height to the same size
-scale=3/2*iw:ow
-
-# seek for Greek harmony
-scale=iw:1/PHI*iw
-scale=ih*PHI:ih
-
-# increase the height, and set the width to 3/2 of the height
-scale=3/2*oh:3/5*ih
-
-# increase the size, but make the size a multiple of the chroma
-scale=&quot;trunc(3/2*iw/hsub)*hsub:trunc(3/2*ih/vsub)*vsub&quot;
-
-# increase the width to a maximum of 500 pixels, keep the same input aspect ratio
-scale='min(500\, iw*3/2):-1'
-</pre></td></tr></table>
-
-<a name="select"></a>
-<h2 class="section"><a href="ffplay.html#toc-select">16.27 select</a></h2>
-<p>Select frames to pass in output.
-</p>
-<p>It accepts in input an expression, which is evaluated for each input
-frame. If the expression is evaluated to a non-zero value, the frame
-is selected and passed to the output, otherwise it is discarded.
-</p>
-<p>The expression can contain the following constants:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>PI</samp>&rsquo;</dt>
-<dd><p>Greek PI
-</p>
-</dd>
-<dt> &lsquo;<samp>PHI</samp>&rsquo;</dt>
-<dd><p>golden ratio
-</p>
-</dd>
-<dt> &lsquo;<samp>E</samp>&rsquo;</dt>
-<dd><p>Euler number
-</p>
-</dd>
-<dt> &lsquo;<samp>n</samp>&rsquo;</dt>
-<dd><p>the sequential number of the filtered frame, starting from 0
-</p>
-</dd>
-<dt> &lsquo;<samp>selected_n</samp>&rsquo;</dt>
-<dd><p>the sequential number of the selected frame, starting from 0
-</p>
-</dd>
-<dt> &lsquo;<samp>prev_selected_n</samp>&rsquo;</dt>
-<dd><p>the sequential number of the last selected frame, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>TB</samp>&rsquo;</dt>
-<dd><p>timebase of the input timestamps
-</p>
-</dd>
-<dt> &lsquo;<samp>pts</samp>&rsquo;</dt>
-<dd><p>the PTS (Presentation TimeStamp) of the filtered video frame,
-expressed in <var>TB</var> units, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>t</samp>&rsquo;</dt>
-<dd><p>the PTS (Presentation TimeStamp) of the filtered video frame,
-expressed in seconds, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>prev_pts</samp>&rsquo;</dt>
-<dd><p>the PTS of the previously filtered video frame, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>prev_selected_pts</samp>&rsquo;</dt>
-<dd><p>the PTS of the last previously filtered video frame, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>prev_selected_t</samp>&rsquo;</dt>
-<dd><p>the PTS of the last previously selected video frame, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>start_pts</samp>&rsquo;</dt>
-<dd><p>the PTS of the first video frame in the video, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>start_t</samp>&rsquo;</dt>
-<dd><p>the time of the first video frame in the video, NAN if undefined
-</p>
-</dd>
-<dt> &lsquo;<samp>pict_type</samp>&rsquo;</dt>
-<dd><p>the picture type of the filtered frame, can assume one of the following
-values:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>PICT_TYPE_I</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>PICT_TYPE_P</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>PICT_TYPE_B</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>PICT_TYPE_S</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>PICT_TYPE_SI</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>PICT_TYPE_SP</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>PICT_TYPE_BI</samp>&rsquo;</dt>
-</dl>
-
-</dd>
-<dt> &lsquo;<samp>interlace_type</samp>&rsquo;</dt>
-<dd><p>the frame interlace type, can assume one of the following values:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>INTERLACE_TYPE_P</samp>&rsquo;</dt>
-<dd><p>the frame is progressive (not interlaced)
-</p></dd>
-<dt> &lsquo;<samp>INTERLACE_TYPE_T</samp>&rsquo;</dt>
-<dd><p>the frame is top-field-first
-</p></dd>
-<dt> &lsquo;<samp>INTERLACE_TYPE_B</samp>&rsquo;</dt>
-<dd><p>the frame is bottom-field-first
-</p></dd>
-</dl>
-
-</dd>
-<dt> &lsquo;<samp>key</samp>&rsquo;</dt>
-<dd><p>1 if the filtered frame is a key-frame, 0 otherwise
-</p>
-</dd>
-<dt> &lsquo;<samp>pos</samp>&rsquo;</dt>
-<dd><p>the position in the file of the filtered frame, -1 if the information
-is not available (e.g. for synthetic video)
-</p></dd>
-</dl>
-
-<p>The default value of the select expression is &quot;1&quot;.
-</p>
-<p>Some examples follow:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example"># select all frames in input
-select
-
-# the above is the same as:
-select=1
-
-# skip all frames:
-select=0
-
-# select only I-frames
-select='eq(pict_type\,PICT_TYPE_I)'
-
-# select one frame every 100
-select='not(mod(n\,100))'
-
-# select only frames contained in the 10-20 time interval
-select='gte(t\,10)*lte(t\,20)'
-
-# select only I frames contained in the 10-20 time interval
-select='gte(t\,10)*lte(t\,20)*eq(pict_type\,PICT_TYPE_I)'
-
-# select frames with a minimum distance of 10 seconds
-select='isnan(prev_selected_t)+gte(t-prev_selected_t\,10)'
-</pre></td></tr></table>
-
-<p><a name="setdar"></a>
-</p><a name="setdar-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-setdar-1">16.28 setdar</a></h2>
-
-<p>Set the Display Aspect Ratio for the filter output video.
-</p>
-<p>This is done by changing the specified Sample (aka Pixel) Aspect
-Ratio, according to the following equation:
-<em>DAR = HORIZONTAL_RESOLUTION / VERTICAL_RESOLUTION * SAR</em>
-</p>
-<p>Keep in mind that this filter does not modify the pixel dimensions of
-the video frame. Also the display aspect ratio set by this filter may
-be changed by later filters in the filterchain, e.g. in case of
-scaling or if another &quot;setdar&quot; or a &quot;setsar&quot; filter is applied.
-</p>
-<p>The filter accepts a parameter string which represents the wanted
-display aspect ratio.
-The parameter can be a floating point number string, or an expression
-of the form <var>num</var>:<var>den</var>, where <var>num</var> and <var>den</var> are the
-numerator and denominator of the aspect ratio.
-If the parameter is not specified, it is assumed the value &quot;0:1&quot;.
-</p>
-<p>For example to change the display aspect ratio to 16:9, specify:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">setdar=16:9
-# the above is equivalent to
-setdar=1.77777
-</pre></td></tr></table>
-
-<p>See also the <a href="#setsar">setsar</a> filter documentation.
-</p>
-<a name="setpts"></a>
-<h2 class="section"><a href="ffplay.html#toc-setpts">16.29 setpts</a></h2>
-
-<p>Change the PTS (presentation timestamp) of the input video frames.
-</p>
-<p>Accept in input an expression evaluated through the eval API, which
-can contain the following constants:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>PTS</samp>&rsquo;</dt>
-<dd><p>the presentation timestamp in input
-</p>
-</dd>
-<dt> &lsquo;<samp>PI</samp>&rsquo;</dt>
-<dd><p>Greek PI
-</p>
-</dd>
-<dt> &lsquo;<samp>PHI</samp>&rsquo;</dt>
-<dd><p>golden ratio
-</p>
-</dd>
-<dt> &lsquo;<samp>E</samp>&rsquo;</dt>
-<dd><p>Euler number
-</p>
-</dd>
-<dt> &lsquo;<samp>N</samp>&rsquo;</dt>
-<dd><p>the count of the input frame, starting from 0.
-</p>
-</dd>
-<dt> &lsquo;<samp>STARTPTS</samp>&rsquo;</dt>
-<dd><p>the PTS of the first video frame
-</p>
-</dd>
-<dt> &lsquo;<samp>INTERLACED</samp>&rsquo;</dt>
-<dd><p>tell if the current frame is interlaced
-</p>
-</dd>
-<dt> &lsquo;<samp>POS</samp>&rsquo;</dt>
-<dd><p>original position in the file of the frame, or undefined if undefined
-for the current frame
-</p>
-</dd>
-<dt> &lsquo;<samp>PREV_INPTS</samp>&rsquo;</dt>
-<dd><p>previous input PTS
-</p>
-</dd>
-<dt> &lsquo;<samp>PREV_OUTPTS</samp>&rsquo;</dt>
-<dd><p>previous output PTS
-</p>
-</dd>
-</dl>
-
-<p>Some examples follow:
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example"># start counting PTS from zero
-setpts=PTS-STARTPTS
-
-# fast motion
-setpts=0.5*PTS
-
-# slow motion
-setpts=2.0*PTS
-
-# fixed rate 25 fps
-setpts=N/(25*TB)
-
-# fixed rate 25 fps with some jitter
-setpts='1/(25*TB) * (N + 0.05 * sin(N*2*PI/25))'
-</pre></td></tr></table>
-
-<p><a name="setsar"></a>
-</p><a name="setsar-1"></a>
-<h2 class="section"><a href="ffplay.html#toc-setsar-1">16.30 setsar</a></h2>
-
-<p>Set the Sample (aka Pixel) Aspect Ratio for the filter output video.
-</p>
-<p>Note that as a consequence of the application of this filter, the
-output display aspect ratio will change according to the following
-equation:
-<em>DAR = HORIZONTAL_RESOLUTION / VERTICAL_RESOLUTION * SAR</em>
-</p>
-<p>Keep in mind that the sample aspect ratio set by this filter may be
-changed by later filters in the filterchain, e.g. if another &quot;setsar&quot;
-or a &quot;setdar&quot; filter is applied.
-</p>
-<p>The filter accepts a parameter string which represents the wanted
-sample aspect ratio.
-The parameter can be a floating point number string, or an expression
-of the form <var>num</var>:<var>den</var>, where <var>num</var> and <var>den</var> are the
-numerator and denominator of the aspect ratio.
-If the parameter is not specified, it is assumed the value &quot;0:1&quot;.
-</p>
-<p>For example to change the sample aspect ratio to 10:11, specify:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">setsar=10:11
-</pre></td></tr></table>
-
-<a name="settb"></a>
-<h2 class="section"><a href="ffplay.html#toc-settb">16.31 settb</a></h2>
-
-<p>Set the timebase to use for the output frames timestamps.
-It is mainly useful for testing timebase configuration.
-</p>
-<p>It accepts in input an arithmetic expression representing a rational.
-The expression can contain the constants &quot;PI&quot;, &quot;E&quot;, &quot;PHI&quot;, &quot;AVTB&quot; (the
-default timebase), and &quot;intb&quot; (the input timebase).
-</p>
-<p>The default value for the input is &quot;intb&quot;.
-</p>
-<p>Follow some examples.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example"># set the timebase to 1/25
-settb=1/25
-
-# set the timebase to 1/10
-settb=0.1
-
-#set the timebase to 1001/1000
-settb=1+0.001
-
-#set the timebase to 2*intb
-settb=2*intb
-
-#set the default timebase value
-settb=AVTB
-</pre></td></tr></table>
-
-<a name="showinfo"></a>
-<h2 class="section"><a href="ffplay.html#toc-showinfo">16.32 showinfo</a></h2>
-
-<p>Show a line containing various information for each input video frame.
-The input video is not modified.
-</p>
-<p>The shown line contains a sequence of key/value pairs of the form
-<var>key</var>:<var>value</var>.
-</p>
-<p>A description of each shown parameter follows:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>n</samp>&rsquo;</dt>
-<dd><p>sequential number of the input frame, starting from 0
-</p>
-</dd>
-<dt> &lsquo;<samp>pts</samp>&rsquo;</dt>
-<dd><p>Presentation TimeStamp of the input frame, expressed as a number of
-time base units. The time base unit depends on the filter input pad.
-</p>
-</dd>
-<dt> &lsquo;<samp>pts_time</samp>&rsquo;</dt>
-<dd><p>Presentation TimeStamp of the input frame, expressed as a number of
-seconds
-</p>
-</dd>
-<dt> &lsquo;<samp>pos</samp>&rsquo;</dt>
-<dd><p>position of the frame in the input stream, -1 if this information in
-unavailable and/or meanigless (for example in case of synthetic video)
-</p>
-</dd>
-<dt> &lsquo;<samp>fmt</samp>&rsquo;</dt>
-<dd><p>pixel format name
-</p>
-</dd>
-<dt> &lsquo;<samp>sar</samp>&rsquo;</dt>
-<dd><p>sample aspect ratio of the input frame, expressed in the form
-<var>num</var>/<var>den</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>s</samp>&rsquo;</dt>
-<dd><p>size of the input frame, expressed in the form
-<var>width</var>x<var>height</var>
-</p>
-</dd>
-<dt> &lsquo;<samp>i</samp>&rsquo;</dt>
-<dd><p>interlaced mode (&quot;P&quot; for &quot;progressive&quot;, &quot;T&quot; for top field first, &quot;B&quot;
-for bottom field first)
-</p>
-</dd>
-<dt> &lsquo;<samp>iskey</samp>&rsquo;</dt>
-<dd><p>1 if the frame is a key frame, 0 otherwise
-</p>
-</dd>
-<dt> &lsquo;<samp>type</samp>&rsquo;</dt>
-<dd><p>picture type of the input frame (&quot;I&quot; for an I-frame, &quot;P&quot; for a
-P-frame, &quot;B&quot; for a B-frame, &quot;?&quot; for unknown type).
-Check also the documentation of the <code>AVPictureType</code> enum and of
-the <code>av_get_picture_type_char</code> function defined in
-&lsquo;<tt>libavutil/avutil.h</tt>&rsquo;.
-</p>
-</dd>
-<dt> &lsquo;<samp>checksum</samp>&rsquo;</dt>
-<dd><p>Adler-32 checksum of all the planes of the input frame
-</p>
-</dd>
-<dt> &lsquo;<samp>plane_checksum</samp>&rsquo;</dt>
-<dd><p>Adler-32 checksum of each plane of the input frame, expressed in the form
-&quot;[<var>c0</var> <var>c1</var> <var>c2</var> <var>c3</var>]&quot;
-</p></dd>
-</dl>
-
-<a name="slicify"></a>
-<h2 class="section"><a href="ffplay.html#toc-slicify">16.33 slicify</a></h2>
-
-<p>Pass the images of input video on to next video filter as multiple
-slices.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">./ffmpeg -i in.avi -vf &quot;slicify=32&quot; out.avi
-</pre></td></tr></table>
-
-<p>The filter accepts the slice height as parameter. If the parameter is
-not specified it will use the default value of 16.
-</p>
-<p>Adding this in the beginning of filter chains should make filtering
-faster due to better use of the memory cache.
-</p>
-<a name="split"></a>
-<h2 class="section"><a href="ffplay.html#toc-split">16.34 split</a></h2>
-
-<p>Pass on the input video to two outputs. Both outputs are identical to
-the input video.
-</p>
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">[in] split [splitout1][splitout2];
-[splitout1] crop=100:100:0:0    [cropout];
-[splitout2] pad=200:200:100:100 [padout];
-</pre></td></tr></table>
-
-<p>will create two separate outputs from the same input, one cropped and
-one padded.
-</p>
-<a name="transpose"></a>
-<h2 class="section"><a href="ffplay.html#toc-transpose">16.35 transpose</a></h2>
-
-<p>Transpose rows with columns in the input video and optionally flip it.
-</p>
-<p>It accepts a parameter representing an integer, which can assume the
-values:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>0</samp>&rsquo;</dt>
-<dd><p>Rotate by 90 degrees counterclockwise and vertically flip (default), that is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">L.R     L.l
-. . -&gt;  . .
-l.r     R.r
-</pre></td></tr></table>
-
-</dd>
-<dt> &lsquo;<samp>1</samp>&rsquo;</dt>
-<dd><p>Rotate by 90 degrees clockwise, that is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">L.R     l.L
-. . -&gt;  . .
-l.r     r.R
-</pre></td></tr></table>
-
-</dd>
-<dt> &lsquo;<samp>2</samp>&rsquo;</dt>
-<dd><p>Rotate by 90 degrees counterclockwise, that is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">L.R     R.r
-. . -&gt;  . .
-l.r     L.l
-</pre></td></tr></table>
-
-</dd>
-<dt> &lsquo;<samp>3</samp>&rsquo;</dt>
-<dd><p>Rotate by 90 degrees clockwise and vertically flip, that is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">L.R     r.R
-. . -&gt;  . .
-l.r     l.L
-</pre></td></tr></table>
-</dd>
-</dl>
-
-<a name="unsharp"></a>
-<h2 class="section"><a href="ffplay.html#toc-unsharp">16.36 unsharp</a></h2>
-
-<p>Sharpen or blur the input video.
-</p>
-<p>It accepts the following parameters:
-<var>luma_msize_x</var>:<var>luma_msize_y</var>:<var>luma_amount</var>:<var>chroma_msize_x</var>:<var>chroma_msize_y</var>:<var>chroma_amount</var>
-</p>
-<p>Negative values for the amount will blur the input video, while positive
-values will sharpen. All parameters are optional and default to the
-equivalent of the string &rsquo;5:5:1.0:5:5:0.0&rsquo;.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>luma_msize_x</samp>&rsquo;</dt>
-<dd><p>Set the luma matrix horizontal size. It can be an integer between 3
-and 13, default value is 5.
-</p>
-</dd>
-<dt> &lsquo;<samp>luma_msize_y</samp>&rsquo;</dt>
-<dd><p>Set the luma matrix vertical size. It can be an integer between 3
-and 13, default value is 5.
-</p>
-</dd>
-<dt> &lsquo;<samp>luma_amount</samp>&rsquo;</dt>
-<dd><p>Set the luma effect strength. It can be a float number between -2.0
-and 5.0, default value is 1.0.
-</p>
-</dd>
-<dt> &lsquo;<samp>chroma_msize_x</samp>&rsquo;</dt>
-<dd><p>Set the chroma matrix horizontal size. It can be an integer between 3
-and 13, default value is 5.
-</p>
-</dd>
-<dt> &lsquo;<samp>chroma_msize_y</samp>&rsquo;</dt>
-<dd><p>Set the chroma matrix vertical size. It can be an integer between 3
-and 13, default value is 5.
-</p>
-</dd>
-<dt> &lsquo;<samp>chroma_amount</samp>&rsquo;</dt>
-<dd><p>Set the chroma effect strength. It can be a float number between -2.0
-and 5.0, default value is 0.0.
-</p>
-</dd>
-</dl>
-
-<table><tr><td>&nbsp;</td><td><pre class="example"># Strong luma sharpen effect parameters
-unsharp=7:7:2.5
-
-# Strong blur of both luma and chroma parameters
-unsharp=7:7:-2:7:7:-2
-
-# Use the default values with <code>ffmpeg</code>
-./ffmpeg -i in.avi -vf &quot;unsharp&quot; out.mp4
-</pre></td></tr></table>
-
-<a name="vflip"></a>
-<h2 class="section"><a href="ffplay.html#toc-vflip">16.37 vflip</a></h2>
-
-<p>Flip the input video vertically.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">./ffmpeg -i in.avi -vf &quot;vflip&quot; out.avi
-</pre></td></tr></table>
-
-<a name="yadif"></a>
-<h2 class="section"><a href="ffplay.html#toc-yadif">16.38 yadif</a></h2>
-
-<p>Deinterlace the input video (&quot;yadif&quot; means &quot;yet another deinterlacing
-filter&quot;).
-</p>
-<p>It accepts the optional parameters: <var>mode</var>:<var>parity</var>:<var>auto</var>.
-</p>
-<p><var>mode</var> specifies the interlacing mode to adopt, accepts one of the
-following values:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>0</samp>&rsquo;</dt>
-<dd><p>output 1 frame for each frame
-</p></dd>
-<dt> &lsquo;<samp>1</samp>&rsquo;</dt>
-<dd><p>output 1 frame for each field
-</p></dd>
-<dt> &lsquo;<samp>2</samp>&rsquo;</dt>
-<dd><p>like 0 but skips spatial interlacing check
-</p></dd>
-<dt> &lsquo;<samp>3</samp>&rsquo;</dt>
-<dd><p>like 1 but skips spatial interlacing check
-</p></dd>
-</dl>
-
-<p>Default value is 0.
-</p>
-<p><var>parity</var> specifies the picture field parity assumed for the input
-interlaced video, accepts one of the following values:
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>0</samp>&rsquo;</dt>
-<dd><p>assume top field first
-</p></dd>
-<dt> &lsquo;<samp>1</samp>&rsquo;</dt>
-<dd><p>assume bottom field first
-</p></dd>
-<dt> &lsquo;<samp>-1</samp>&rsquo;</dt>
-<dd><p>enable automatic detection
-</p></dd>
-</dl>
-
-<p>Default value is -1.
-If interlacing is unknown or decoder does not export this information,
-top field first will be assumed.
-</p>
-<p><var>auto</var> specifies if deinterlacer should trust the interlaced flag
-and only deinterlace frames marked as interlaced
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>0</samp>&rsquo;</dt>
-<dd><p>deinterlace all frames
-</p></dd>
-<dt> &lsquo;<samp>1</samp>&rsquo;</dt>
-<dd><p>only deinterlace frames marked as interlaced
-</p></dd>
-</dl>
-
-<p>Default value is 0.
-</p>
-
-<a name="Video-Sources"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Video-Sources">17. Video Sources</a></h1>
-
-<p>Below is a description of the currently available video sources.
-</p>
-<a name="buffer"></a>
-<h2 class="section"><a href="ffplay.html#toc-buffer">17.1 buffer</a></h2>
-
-<p>Buffer video frames, and make them available to the filter chain.
-</p>
-<p>This source is mainly intended for a programmatic use, in particular
-through the interface defined in &lsquo;<tt>libavfilter/vsrc_buffer.h</tt>&rsquo;.
-</p>
-<p>It accepts the following parameters:
-<var>width</var>:<var>height</var>:<var>pix_fmt_string</var>:<var>timebase_num</var>:<var>timebase_den</var>:<var>sample_aspect_ratio_num</var>:<var>sample_aspect_ratio.den</var>:<var>scale_params</var>
-</p>
-<p>All the parameters but <var>scale_params</var> need to be explicitely
-defined.
-</p>
-<p>Follows the list of the accepted parameters.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>width, height</samp>&rsquo;</dt>
-<dd><p>Specify the width and height of the buffered video frames.
-</p>
-</dd>
-<dt> &lsquo;<samp>pix_fmt_string</samp>&rsquo;</dt>
-<dd><p>A string representing the pixel format of the buffered video frames.
-It may be a number corresponding to a pixel format, or a pixel format
-name.
-</p>
-</dd>
-<dt> &lsquo;<samp>timebase_num, timebase_den</samp>&rsquo;</dt>
-<dd><p>Specify numerator and denomitor of the timebase assumed by the
-timestamps of the buffered frames.
-</p>
-</dd>
-<dt> &lsquo;<samp>sample_aspect_ratio.num, sample_aspect_ratio.den</samp>&rsquo;</dt>
-<dd><p>Specify numerator and denominator of the sample aspect ratio assumed
-by the video frames.
-</p>
-</dd>
-<dt> &lsquo;<samp>scale_params</samp>&rsquo;</dt>
-<dd><p>Specify the optional parameters to be used for the scale filter which
-is automatically inserted when an input change is detected in the
-input size or format.
-</p></dd>
-</dl>
-
-<p>For example:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">buffer=320:240:yuv410p:1:24:1:1
-</pre></td></tr></table>
-
-<p>will instruct the source to accept video frames with size 320x240 and
-with format &quot;yuv410p&quot;, assuming 1/24 as the timestamps timebase and
-square pixels (1:1 sample aspect ratio).
-Since the pixel format with name &quot;yuv410p&quot; corresponds to the number 6
-(check the enum PixelFormat definition in &lsquo;<tt>libavutil/pixfmt.h</tt>&rsquo;),
-this example corresponds to:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">buffer=320:240:6:1:24:1:1
-</pre></td></tr></table>
-
-<a name="color"></a>
-<h2 class="section"><a href="ffplay.html#toc-color">17.2 color</a></h2>
-
-<p>Provide an uniformly colored input.
-</p>
-<p>It accepts the following parameters:
-<var>color</var>:<var>frame_size</var>:<var>frame_rate</var>
-</p>
-<p>Follows the description of the accepted parameters.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>color</samp>&rsquo;</dt>
-<dd><p>Specify the color of the source. It can be the name of a color (case
-insensitive match) or a 0xRRGGBB[AA] sequence, possibly followed by an
-alpha specifier. The default value is &quot;black&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>frame_size</samp>&rsquo;</dt>
-<dd><p>Specify the size of the sourced video, it may be a string of the form
-<var>width</var>x<var>heigth</var>, or the name of a size abbreviation. The
-default value is &quot;320x240&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>frame_rate</samp>&rsquo;</dt>
-<dd><p>Specify the frame rate of the sourced video, as the number of frames
-generated per second. It has to be a string in the format
-<var>frame_rate_num</var>/<var>frame_rate_den</var>, an integer number, a float
-number or a valid video frame rate abbreviation. The default value is
-&quot;25&quot;.
-</p>
-</dd>
-</dl>
-
-<p>For example the following graph description will generate a red source
-with an opacity of 0.2, with size &quot;qcif&quot; and a frame rate of 10
-frames per second, which will be overlayed over the source connected
-to the pad with identifier &quot;in&quot;.
-</p>
-<table><tr><td>&nbsp;</td><td><pre class="example">&quot;color=red@0.2:qcif:10 [color]; [in][color] overlay [out]&quot;
-</pre></td></tr></table>
-
-<a name="movie"></a>
-<h2 class="section"><a href="ffplay.html#toc-movie">17.3 movie</a></h2>
-
-<p>Read a video stream from a movie container.
-</p>
-<p>It accepts the syntax: <var>movie_name</var>[:<var>options</var>] where
-<var>movie_name</var> is the name of the resource to read (not necessarily
-a file but also a device or a stream accessed through some protocol),
-and <var>options</var> is an optional sequence of <var>key</var>=<var>value</var>
-pairs, separated by &quot;:&quot;.
-</p>
-<p>The description of the accepted options follows.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>format_name, f</samp>&rsquo;</dt>
-<dd><p>Specifies the format assumed for the movie to read, and can be either
-the name of a container or an input device. If not specified the
-format is guessed from <var>movie_name</var> or by probing.
-</p>
-</dd>
-<dt> &lsquo;<samp>seek_point, sp</samp>&rsquo;</dt>
-<dd><p>Specifies the seek point in seconds, the frames will be output
-starting from this seek point, the parameter is evaluated with
-<code>av_strtod</code> so the numerical value may be suffixed by an IS
-postfix. Default value is &quot;0&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>stream_index, si</samp>&rsquo;</dt>
-<dd><p>Specifies the index of the video stream to read. If the value is -1,
-the best suited video stream will be automatically selected. Default
-value is &quot;-1&quot;.
-</p>
-</dd>
-</dl>
-
-<p>This filter allows to overlay a second video on top of main input of
-a filtergraph as shown in this graph:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">input -----------&gt; deltapts0 --&gt; overlay --&gt; output
-                                    ^
-                                    |
-movie --&gt; scale--&gt; deltapts1 -------+
-</pre></td></tr></table>
-
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># skip 3.2 seconds from the start of the avi file in.avi, and overlay it
-# on top of the input labelled as &quot;in&quot;.
-movie=in.avi:seek_point=3.2, scale=180:-1, setpts=PTS-STARTPTS [movie];
-[in] setpts=PTS-STARTPTS, [movie] overlay=16:16 [out]
-
-# read from a video4linux2 device, and overlay it on top of the input
-# labelled as &quot;in&quot;
-movie=/dev/video0:f=video4linux2, scale=180:-1, setpts=PTS-STARTPTS [movie];
-[in] setpts=PTS-STARTPTS, [movie] overlay=16:16 [out]
-
-</pre></td></tr></table>
-
-<a name="mptestsrc"></a>
-<h2 class="section"><a href="ffplay.html#toc-mptestsrc">17.4 mptestsrc</a></h2>
-
-<p>Generate various test patterns, as generated by the MPlayer test filter.
-</p>
-<p>The size of the generated video is fixed, and is 256x256.
-This source is useful in particular for testing encoding features.
-</p>
-<p>This source accepts an optional sequence of <var>key</var>=<var>value</var> pairs,
-separated by &quot;:&quot;. The description of the accepted options follows.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>rate, r</samp>&rsquo;</dt>
-<dd><p>Specify the frame rate of the sourced video, as the number of frames
-generated per second. It has to be a string in the format
-<var>frame_rate_num</var>/<var>frame_rate_den</var>, an integer number, a float
-number or a valid video frame rate abbreviation. The default value is
-&quot;25&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>duration, d</samp>&rsquo;</dt>
-<dd><p>Set the video duration of the sourced video. The accepted syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">[-]HH[:MM[:SS[.m...]]]
-[-]S+[.m...]
-</pre></td></tr></table>
-<p>See also the function <code>av_parse_time()</code>.
-</p>
-<p>If not specified, or the expressed duration is negative, the video is
-supposed to be generated forever.
-</p>
-</dd>
-<dt> &lsquo;<samp>test, t</samp>&rsquo;</dt>
-<dd>
-<p>Set the number or the name of the test to perform. Supported tests are:
-</p><dl compact="compact">
-<dt> &lsquo;<samp>dc_luma</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>dc_chroma</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>freq_luma</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>freq_chroma</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>amp_luma</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>amp_chroma</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>cbp</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>mv</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>ring1</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>ring2</samp>&rsquo;</dt>
-<dt> &lsquo;<samp>all</samp>&rsquo;</dt>
-</dl>
-
-<p>Default value is &quot;all&quot;, which will cycle through the list of all tests.
-</p></dd>
-</dl>
-
-<p>For example the following:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">testsrc=t=dc_luma
-</pre></td></tr></table>
-
-<p>will generate a &quot;dc_luma&quot; test pattern.
-</p>
-<a name="nullsrc"></a>
-<h2 class="section"><a href="ffplay.html#toc-nullsrc">17.5 nullsrc</a></h2>
-
-<p>Null video source, never return images. It is mainly useful as a
-template and to be employed in analysis / debugging tools.
-</p>
-<p>It accepts as optional parameter a string of the form
-<var>width</var>:<var>height</var>:<var>timebase</var>.
-</p>
-<p><var>width</var> and <var>height</var> specify the size of the configured
-source. The default values of <var>width</var> and <var>height</var> are
-respectively 352 and 288 (corresponding to the CIF size format).
-</p>
-<p><var>timebase</var> specifies an arithmetic expression representing a
-timebase. The expression can contain the constants &quot;PI&quot;, &quot;E&quot;, &quot;PHI&quot;,
-&quot;AVTB&quot; (the default timebase), and defaults to the value &quot;AVTB&quot;.
-</p>
-<a name="frei0r_005fsrc"></a>
-<h2 class="section"><a href="ffplay.html#toc-frei0r_005fsrc">17.6 frei0r_src</a></h2>
-
-<p>Provide a frei0r source.
-</p>
-<p>To enable compilation of this filter you need to install the frei0r
-header and configure FFmpeg with &ndash;enable-frei0r.
-</p>
-<p>The source supports the syntax:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"><var>size</var>:<var>rate</var>:<var>src_name</var>[{=|:}<var>param1</var>:<var>param2</var>:...:<var>paramN</var>]
-</pre></td></tr></table>
-
-<p><var>size</var> is the size of the video to generate, may be a string of the
-form <var>width</var>x<var>height</var> or a frame size abbreviation.
-<var>rate</var> is the rate of the video to generate, may be a string of
-the form <var>num</var>/<var>den</var> or a frame rate abbreviation.
-<var>src_name</var> is the name to the frei0r source to load. For more
-information regarding frei0r and how to set the parameters read the
-section <a href="#frei0r">frei0r</a> in the description of the video filters.
-</p>
-<p>Some examples follow:
-</p><table><tr><td>&nbsp;</td><td><pre class="example"># generate a frei0r partik0l source with size 200x200 and framerate 10
-# which is overlayed on the overlay filter main input
-frei0r_src=200x200:10:partik0l=1234 [overlay]; [in][overlay] overlay
-</pre></td></tr></table>
-
-<a name="rgbtestsrc_002c-testsrc"></a>
-<h2 class="section"><a href="ffplay.html#toc-rgbtestsrc_002c-testsrc">17.7 rgbtestsrc, testsrc</a></h2>
-
-<p>The <code>rgbtestsrc</code> source generates an RGB test pattern useful for
-detecting RGB vs BGR issues. You should see a red, green and blue
-stripe from top to bottom.
-</p>
-<p>The <code>testsrc</code> source generates a test video pattern, showing a
-color pattern, a scrolling gradient and a timestamp. This is mainly
-intended for testing purposes.
-</p>
-<p>Both sources accept an optional sequence of <var>key</var>=<var>value</var> pairs,
-separated by &quot;:&quot;. The description of the accepted options follows.
-</p>
-<dl compact="compact">
-<dt> &lsquo;<samp>size, s</samp>&rsquo;</dt>
-<dd><p>Specify the size of the sourced video, it may be a string of the form
-<var>width</var>x<var>heigth</var>, or the name of a size abbreviation. The
-default value is &quot;320x240&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>rate, r</samp>&rsquo;</dt>
-<dd><p>Specify the frame rate of the sourced video, as the number of frames
-generated per second. It has to be a string in the format
-<var>frame_rate_num</var>/<var>frame_rate_den</var>, an integer number, a float
-number or a valid video frame rate abbreviation. The default value is
-&quot;25&quot;.
-</p>
-</dd>
-<dt> &lsquo;<samp>sar</samp>&rsquo;</dt>
-<dd><p>Set the sample aspect ratio of the sourced video.
-</p>
-</dd>
-<dt> &lsquo;<samp>duration</samp>&rsquo;</dt>
-<dd><p>Set the video duration of the sourced video. The accepted syntax is:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">[-]HH[:MM[:SS[.m...]]]
-[-]S+[.m...]
-</pre></td></tr></table>
-<p>See also the function <code>av_parse_time()</code>.
-</p>
-<p>If not specified, or the expressed duration is negative, the video is
-supposed to be generated forever.
-</p></dd>
-</dl>
-
-<p>For example the following:
-</p><table><tr><td>&nbsp;</td><td><pre class="example">testsrc=duration=5.3:size=qcif:rate=10
-</pre></td></tr></table>
-
-<p>will generate a video with a duration of 5.3 seconds, with size
-176x144 and a framerate of 10 frames per second.
-</p>
-
-<a name="Video-Sinks"></a>
-<h1 class="chapter"><a href="ffplay.html#toc-Video-Sinks">18. Video Sinks</a></h1>
-
-<p>Below is a description of the currently available video sinks.
-</p>
-<a name="buffersink"></a>
-<h2 class="section"><a href="ffplay.html#toc-buffersink">18.1 buffersink</a></h2>
-
-<p>Buffer video frames, and make them available to the end of the filter
-graph.
-</p>
-<p>This sink is mainly intended for a programmatic use, in particular
-through the interface defined in &lsquo;<tt>libavfilter/vsink_buffer.h</tt>&rsquo;.
-</p>
-<p>It does not require a string parameter in input, but you need to
-specify a pointer to a list of supported pixel formats terminated by
--1 in the opaque parameter provided to <code>avfilter_init_filter</code>
-when initializing this sink.
-</p>
-<a name="nullsink"></a>
-<h2 class="section"><a href="ffplay.html#toc-nullsink">18.2 nullsink</a></h2>
-
-<p>Null video sink, do absolutely nothing with the input video. It is
-mainly useful as a template and to be employed in analysis / debugging
-tools.
-</p>
-
-
-
-<hr size="1">
-<p>
- <font size="-1">
-  This document was generated by <em>Kyle Schwarz</em> on <em>September 2, 2011</em> using <a href="http://www.nongnu.org/texi2html/"><em>texi2html 1.82</em></a>.
- </font>
- <br>
-
-</p>
-</body>
-</html>
+<footer class="footer pagination-right">
+<span class="label label-info">This document was generated by <em>Kyle Schwarz</em> on <em>June 19, 2014</em> using <a href="http://www.nongnu.org/texi2html/"><em>texi2html 1.82</em></a>.</span></footer></div></div></body>