~medibuntu-maintainers/mplayer/medibuntu.precise

« back to all changes in this revision

Viewing changes to ffmpeg/doc/filters.texi

  • Committer: Gauvain Pocentek
  • Date: 2012-03-06 11:59:12 UTC
  • mfrom: (66.1.15 precise)
  • Revision ID: gauvain@pocentek.net-20120306115912-h9d6kt9j0l532oo5
* Merge from Ubuntu:
  - put back faac support
  - recommends apport-hooks-medibuntu
  - change Maintainer, Uploaders & Vcs-* fields.
* New upstream snapshot
* upload to unstable
* Build against external libmpeg2
* drop 51_FTBFS_arm.patch again
* no longer build depend on libcdparanoia-dev on the Hurd
* Fix FTBFS on the hurd.
  Thanks to Samuel Thibault <sthibault@debian.org> (Closes: #654974)
* Fix FTBFS on arm
* New upstream snapshot, Closes: #650339, #643621, #481807
* Imported Upstream version 1.0~rc4+svn34492
* Bump standards version
* Bump dependency on libav >= 4:0.8~, Closes: #653887
* Fix build-indep
* Build mplayer-gui again, Closes: #568514
* Drop debian/all-lang-config-mak.sh, no longer needed
* include .dfsg1 in version number
* remove get-orig-source target
* no longer prune compiler flags from the environment
* No longer advertise nor build 3fdx, mga and dxr3 backends,
  Closes: #496106, #442181, #533546
* beautify mplayer version identification string
* Brown paperbag upload.
* Next try to fix build failure on sparce after recent binutils change.
* Brown paperbag upload.
* Really fix build failure on sparc after recent binutils change.
* Properly set Replaces/Conflicts on mplayer2{,-dbg} to avoid
  file overwrite errors.
* Adjust versioning of mplayer listed in the mplayer-dbg's Depends field.
* Fix build failure on sparc after recent binutils change.
* Urgency medium bumped because of RC-level bugfix
  and speeding up x264 transition.
* Update to my @debian.org email.
* Upload to unstable
* Enable joystick support on Linux only, Closes: #638408
* Rebuild fixes toolchain issue on arm, Closes: #637077
* New upstream snapshot
* following the discussion started by Diego Biurrun <diego@biurrun.de>
  in debian-devel, I have prepared a new packaging of 'mplayer'
  (with code that comes from CVS)
* the upstream tar.bz cannot be distributed by Debian, since it contains
   CSS code; so I am repackaging it 
* I have tried my best to address all known issues:
  - the package contains the detailed Copyright made by Diego Biurrun 
  - the package does not contain CSS code, or  AFAIK other code on which 
     there is active patent enforcement
  - there is a script  debian/cvs-changelog.sh  that shows all changes
     done to files included in this source.
    This should comply with GPLv2 sec 2.a  (in spirit if not in letter)
    For this reason, the source code contains CVS directories.
* needs   make (>= 3.80) for 'html-chunked-$(1)' in DOCS/xml/Makefile

* some corrections, as suggested Diego Biurrun
  - binary codecs should go into /usr/lib/codecs (upstream default)
  - better template 'mplayer/install_codecs'
  - an empty 'font=' in mplayer.conf breaks mplayer: postinst corrected
* correction in 'mplayer/cfgnote'
* better mplayer.postinst and mplayer.config

* New upstream release
* better debian/copyright file
* do not ship a skin
* New upstream release
* changed DEB_BUILD_OPTIONS to DEB_BUILD_CONFIGURE ,
  DEB_BUILD_OPTIONS is used as in debian policy
* use gcc-3.4
* changed xlibs-dev to a long list of dependencies, for Debian/etch
* try to adhere to  http://www.mplayerhq.hu/DOCS/tech/binary-packaging.txt
  (see README.Debian for details)
* removed dependency on xlibmesa-dev, disabled opengl
* New upstream release
* Simon McVittie <hacks@pseudorandom.co.uk> wonderful work:
- Work around Debian bug #267442 (glibc's sys/uio.h and gcc's altivec.h have
  conflicting uses for __vector) by re-ordering #includes
- Fix potential symlink attack in ./configure
- Disable support for binary codecs on platforms for which those codecs
  aren't available; also disable the corresponding Debconf note when it's
  inappropriate
- Changed Build-Depends: so it works in pbuilder
- Explicitly build-depend on libjpeg62-dev, libfontconfig1-dev,
  libungif4-dev 
- Tweak debian/rules to avoid certain errors being ignored
- Use --language=all
* provide a target  'debian/rules get-orig-source' 
  that recreates the orig.tar.gz ; then use the above orig.tar.gz
* rewrote some parts of debian/rules
* don't clean and recompile docs if upstream ships them
* mplayer-doc was shipping too much stuff
* translated man pages where not installed properly
* compile with libdv4-dev
* correct README.Debian
* Forgot build-dep on libtheora
* Must not depend on libxvidcore
* New upstream release
* new release.
* rc1 to become 0.90
* new pre-release
* new pre-release
* gtk bug fixed.
* new release.
* version bumped
* 0.60 pre2 release
* 0.60 pre-release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
@section Filtergraph syntax
18
18
 
19
19
A filtergraph can be represented using a textual representation, which
20
 
is recognized by the @code{-vf} and @code{-af} options of the ff*
21
 
tools, and by the @code{av_parse_graph()} function defined in
 
20
is recognized by the @code{-vf} and @code{-af} options in @command{avconv}
 
21
and @command{avplay}, and by the @code{av_parse_graph()} function defined in
22
22
@file{libavfilter/avfiltergraph}.
23
23
 
24
24
A filterchain consists of a sequence of connected filters, each one
183
183
@var{threshold} is the threshold below which a pixel value is
184
184
considered black, and defaults to 32.
185
185
 
 
186
@section boxblur
 
187
 
 
188
Apply boxblur algorithm to the input video.
 
189
 
 
190
This filter accepts the parameters:
 
191
@var{luma_power}:@var{luma_radius}:@var{chroma_radius}:@var{chroma_power}:@var{alpha_radius}:@var{alpha_power}
 
192
 
 
193
Chroma and alpha parameters are optional, if not specified they default
 
194
to the corresponding values set for @var{luma_radius} and
 
195
@var{luma_power}.
 
196
 
 
197
@var{luma_radius}, @var{chroma_radius}, and @var{alpha_radius} represent
 
198
the radius in pixels of the box used for blurring the corresponding
 
199
input plane. They are expressions, and can contain the following
 
200
constants:
 
201
@table @option
 
202
@item w, h
 
203
the input width and height in pixels
 
204
 
 
205
@item cw, ch
 
206
the input chroma image width and height in pixels
 
207
 
 
208
@item hsub, vsub
 
209
horizontal and vertical chroma subsample values. For example for the
 
210
pixel format "yuv422p" @var{hsub} is 2 and @var{vsub} is 1.
 
211
@end table
 
212
 
 
213
The radius must be a non-negative number, and must not be greater than
 
214
the value of the expression @code{min(w,h)/2} for the luma and alpha planes,
 
215
and of @code{min(cw,ch)/2} for the chroma planes.
 
216
 
 
217
@var{luma_power}, @var{chroma_power}, and @var{alpha_power} represent
 
218
how many times the boxblur filter is applied to the corresponding
 
219
plane.
 
220
 
 
221
Some examples follow:
 
222
 
 
223
@itemize
 
224
 
 
225
@item
 
226
Apply a boxblur filter with luma, chroma, and alpha radius
 
227
set to 2:
 
228
@example
 
229
boxblur=2:1
 
230
@end example
 
231
 
 
232
@item
 
233
Set luma radius to 2, alpha and chroma radius to 0
 
234
@example
 
235
boxblur=2:1:0:0:0:0
 
236
@end example
 
237
 
 
238
@item
 
239
Set luma and chroma radius to a fraction of the video dimension
 
240
@example
 
241
boxblur=min(h\,w)/10:1:min(cw\,ch)/10:1
 
242
@end example
 
243
 
 
244
@end itemize
 
245
 
186
246
@section copy
187
247
 
188
248
Copy the input source unchanged to the output. Mainly useful for
204
264
each new frame.
205
265
 
206
266
@item in_w, in_h
207
 
the input width and heigth
 
267
the input width and height
208
268
 
209
269
@item iw, ih
210
270
same as @var{in_w} and @var{in_h}
211
271
 
212
272
@item out_w, out_h
213
 
the output (cropped) width and heigth
 
273
the output (cropped) width and height
214
274
 
215
275
@item ow, oh
216
276
same as @var{out_w} and @var{out_h}
321
381
playback.
322
382
@end table
323
383
 
 
384
@section delogo
 
385
 
 
386
Suppress a TV station logo by a simple interpolation of the surrounding
 
387
pixels. Just set a rectangle covering the logo and watch it disappear
 
388
(and sometimes something even uglier appear - your mileage may vary).
 
389
 
 
390
The filter accepts parameters as a string of the form
 
391
"@var{x}:@var{y}:@var{w}:@var{h}:@var{band}", or as a list of
 
392
@var{key}=@var{value} pairs, separated by ":".
 
393
 
 
394
The description of the accepted parameters follows.
 
395
 
 
396
@table @option
 
397
 
 
398
@item x, y
 
399
Specify the top left corner coordinates of the logo. They must be
 
400
specified.
 
401
 
 
402
@item w, h
 
403
Specify the width and height of the logo to clear. They must be
 
404
specified.
 
405
 
 
406
@item band, t
 
407
Specify the thickness of the fuzzy edge of the rectangle (added to
 
408
@var{w} and @var{h}). The default value is 4.
 
409
 
 
410
@item show
 
411
When set to 1, a green rectangle is drawn on the screen to simplify
 
412
finding the right @var{x}, @var{y}, @var{w}, @var{h} parameters, and
 
413
@var{band} is set to 4. The default value is 0.
 
414
 
 
415
@end table
 
416
 
 
417
Some examples follow.
 
418
 
 
419
@itemize
 
420
 
 
421
@item
 
422
Set a rectangle covering the area with top left corner coordinates 0,0
 
423
and size 100x77, setting a band of size 10:
 
424
@example
 
425
delogo=0:0:100:77:10
 
426
@end example
 
427
 
 
428
@item
 
429
As the previous example, but use named options:
 
430
@example
 
431
delogo=x=0:y=0:w=100:h=77:band=10
 
432
@end example
 
433
 
 
434
@end itemize
 
435
 
324
436
@section drawbox
325
437
 
326
438
Draw a colored box on the input image.
358
470
Draw text string or text from specified file on top of video using the
359
471
libfreetype library.
360
472
 
361
 
To enable compilation of this filter you need to configure FFmpeg with
 
473
To enable compilation of this filter you need to configure Libav with
362
474
@code{--enable-libfreetype}.
363
475
 
364
476
The filter also recognizes strftime() sequences in the provided text
393
505
@item x, y
394
506
The offsets where text will be drawn within the video frame.
395
507
Relative to the top/left border of the output image.
 
508
They accept expressions similar to the @ref{overlay} filter:
 
509
@table @option
 
510
 
 
511
@item x, y
 
512
the computed values for @var{x} and @var{y}. They are evaluated for
 
513
each new frame.
 
514
 
 
515
@item main_w, main_h
 
516
main input width and height
 
517
 
 
518
@item W, H
 
519
same as @var{main_w} and @var{main_h}
 
520
 
 
521
@item text_w, text_h
 
522
rendered text width and height
 
523
 
 
524
@item w, h
 
525
same as @var{text_w} and @var{text_h}
 
526
 
 
527
@item n
 
528
the number of frames processed, starting from 0
 
529
 
 
530
@item t
 
531
timestamp expressed in seconds, NAN if the input timestamp is unknown
 
532
 
 
533
@end table
396
534
 
397
535
The default value of @var{x} and @var{y} is 0.
398
536
 
550
688
 
551
689
For example:
552
690
@example
553
 
./ffmpeg -i in.vob -vf "fieldorder=bff" out.dv
 
691
./avconv -i in.vob -vf "fieldorder=bff" out.dv
554
692
@end example
555
693
 
556
694
@section fifo
668
806
 
669
807
Flip the input video horizontally.
670
808
 
671
 
For example to horizontally flip the video in input with
672
 
@file{ffmpeg}:
 
809
For example to horizontally flip the input video with @command{avconv}:
673
810
@example
674
 
ffmpeg -i in.avi -vf "hflip" out.avi
 
811
avconv -i in.avi -vf "hflip" out.avi
675
812
@end example
676
813
 
677
814
@section hqdn3d
701
838
@var{luma_tmp}*@var{chroma_spatial}/@var{luma_spatial}
702
839
@end table
703
840
 
704
 
@section noformat
 
841
@section lut, lutrgb, lutyuv
 
842
 
 
843
Compute a look-up table for binding each pixel component input value
 
844
to an output value, and apply it to input video.
 
845
 
 
846
@var{lutyuv} applies a lookup table to a YUV input video, @var{lutrgb}
 
847
to an RGB input video.
 
848
 
 
849
These filters accept in input a ":"-separated list of options, which
 
850
specify the expressions used for computing the lookup table for the
 
851
corresponding pixel component values.
 
852
 
 
853
The @var{lut} filter requires either YUV or RGB pixel formats in
 
854
input, and accepts the options:
 
855
@table @option
 
856
@var{c0} (first  pixel component)
 
857
@var{c1} (second pixel component)
 
858
@var{c2} (third  pixel component)
 
859
@var{c3} (fourth pixel component, corresponds to the alpha component)
 
860
@end table
 
861
 
 
862
The exact component associated to each option depends on the format in
 
863
input.
 
864
 
 
865
The @var{lutrgb} filter requires RGB pixel formats in input, and
 
866
accepts the options:
 
867
@table @option
 
868
@var{r} (red component)
 
869
@var{g} (green component)
 
870
@var{b} (blue component)
 
871
@var{a} (alpha component)
 
872
@end table
 
873
 
 
874
The @var{lutyuv} filter requires YUV pixel formats in input, and
 
875
accepts the options:
 
876
@table @option
 
877
@var{y} (Y/luminance component)
 
878
@var{u} (U/Cb component)
 
879
@var{v} (V/Cr component)
 
880
@var{a} (alpha component)
 
881
@end table
 
882
 
 
883
The expressions can contain the following constants and functions:
 
884
 
 
885
@table @option
 
886
@item E, PI, PHI
 
887
the corresponding mathematical approximated values for e
 
888
(euler number), pi (greek PI), PHI (golden ratio)
 
889
 
 
890
@item w, h
 
891
the input width and height
 
892
 
 
893
@item val
 
894
input value for the pixel component
 
895
 
 
896
@item clipval
 
897
the input value clipped in the @var{minval}-@var{maxval} range
 
898
 
 
899
@item maxval
 
900
maximum value for the pixel component
 
901
 
 
902
@item minval
 
903
minimum value for the pixel component
 
904
 
 
905
@item negval
 
906
the negated value for the pixel component value clipped in the
 
907
@var{minval}-@var{maxval} range , it corresponds to the expression
 
908
"maxval-clipval+minval"
 
909
 
 
910
@item clip(val)
 
911
the computed value in @var{val} clipped in the
 
912
@var{minval}-@var{maxval} range
 
913
 
 
914
@item gammaval(gamma)
 
915
the computed gamma correction value of the pixel component value
 
916
clipped in the @var{minval}-@var{maxval} range, corresponds to the
 
917
expression
 
918
"pow((clipval-minval)/(maxval-minval)\,@var{gamma})*(maxval-minval)+minval"
 
919
 
 
920
@end table
 
921
 
 
922
All expressions default to "val".
 
923
 
 
924
Some examples follow:
 
925
@example
 
926
# negate input video
 
927
lutrgb="r=maxval+minval-val:g=maxval+minval-val:b=maxval+minval-val"
 
928
lutyuv="y=maxval+minval-val:u=maxval+minval-val:v=maxval+minval-val"
 
929
 
 
930
# the above is the same as
 
931
lutrgb="r=negval:g=negval:b=negval"
 
932
lutyuv="y=negval:u=negval:v=negval"
 
933
 
 
934
# negate luminance
 
935
lutyuv=negval
 
936
 
 
937
# remove chroma components, turns the video into a graytone image
 
938
lutyuv="u=128:v=128"
 
939
 
 
940
# apply a luma burning effect
 
941
lutyuv="y=2*val"
 
942
 
 
943
# remove green and blue components
 
944
lutrgb="g=0:b=0"
 
945
 
 
946
# set a constant alpha channel value on input
 
947
format=rgba,lutrgb=a="maxval-minval/2"
 
948
 
 
949
# correct luminance gamma by a 0.5 factor
 
950
lutyuv=y=gammaval(0.5)
 
951
@end example
 
952
 
 
953
@section negate
 
954
 
 
955
Negate input video.
 
956
 
 
957
This filter accepts an integer in input, if non-zero it negates the
 
958
alpha component (if available). The default value in input is 0.
705
959
 
706
960
Force libavfilter not to use any of the specified pixel formats for the
707
961
input to the next filter.
738
992
filter. If not specified the default values are assumed.
739
993
 
740
994
Refer to the official libopencv documentation for more precise
741
 
informations:
 
995
information:
742
996
@url{http://opencv.willowgarage.com/documentation/c/image_filtering.html}
743
997
 
744
998
Follows the list of supported libopencv filters.
754
1008
@var{struct_el} represents a structuring element, and has the syntax:
755
1009
@var{cols}x@var{rows}+@var{anchor_x}x@var{anchor_y}/@var{shape}
756
1010
 
757
 
@var{cols} and @var{rows} represent the number of colums and rows of
 
1011
@var{cols} and @var{rows} represent the number of columns and rows of
758
1012
the structuring element, @var{anchor_x} and @var{anchor_y} the anchor
759
1013
point, and @var{shape} the shape for the structuring element, and
760
1014
can be one of the values "rect", "cross", "ellipse", "custom".
796
1050
This filter corresponds to the libopencv function @code{cvErode}.
797
1051
 
798
1052
The filter accepts the parameters: @var{struct_el}:@var{nb_iterations},
799
 
with the same meaning and use of those of the dilate filter
800
 
(@pxref{dilate}).
 
1053
with the same syntax and semantics as the @ref{dilate} filter.
801
1054
 
802
1055
@subsection smooth
803
1056
 
821
1074
These parameters correspond to the parameters assigned to the
822
1075
libopencv function @code{cvSmooth}.
823
1076
 
 
1077
@anchor{overlay}
824
1078
@section overlay
825
1079
 
826
1080
Overlay one video on top of another.
876
1130
color=red@.3:WxH [over]; [in][over] overlay [out]
877
1131
@end example
878
1132
 
879
 
You can chain togheter more overlays but the efficiency of such
 
1133
You can chain together more overlays but the efficiency of such
880
1134
approach is yet to be tested.
881
1135
 
882
1136
@section pad
896
1150
(euler number), pi (greek PI), phi (golden ratio)
897
1151
 
898
1152
@item in_w, in_h
899
 
the input video width and heigth
 
1153
the input video width and height
900
1154
 
901
1155
@item iw, ih
902
1156
same as @var{in_w} and @var{in_h}
903
1157
 
904
1158
@item out_w, out_h
905
 
the output width and heigth, that is the size of the padded area as
 
1159
the output width and height, that is the size of the padded area as
906
1160
specified by the @var{width} and @var{height} expressions
907
1161
 
908
1162
@item ow, oh
930
1184
is used for the output.
931
1185
 
932
1186
The @var{width} expression can reference the value set by the
933
 
@var{height} expression, and viceversa.
 
1187
@var{height} expression, and vice versa.
934
1188
 
935
1189
The default value of @var{width} and @var{height} is 0.
936
1190
 
940
1194
with respect to the top/left border of the output image.
941
1195
 
942
1196
The @var{x} expression can reference the value set by the @var{y}
943
 
expression, and viceversa.
 
1197
expression, and vice versa.
944
1198
 
945
1199
The default value of @var{x} and @var{y} is 0.
946
1200
 
1003
1257
(euler number), pi (greek PI), phi (golden ratio)
1004
1258
 
1005
1259
@item in_w, in_h
1006
 
the input width and heigth
 
1260
the input width and height
1007
1261
 
1008
1262
@item iw, ih
1009
1263
same as @var{in_w} and @var{in_h}
1010
1264
 
1011
1265
@item out_w, out_h
1012
 
the output (cropped) width and heigth
 
1266
the output (cropped) width and height
1013
1267
 
1014
1268
@item ow, oh
1015
1269
same as @var{out_w} and @var{out_h}
1016
1270
 
1017
 
@item a
 
1271
@item dar, a
1018
1272
input display aspect ratio, same as @var{iw} / @var{ih}
1019
1273
 
 
1274
@item sar
 
1275
input sample aspect ratio
 
1276
 
1020
1277
@item hsub, vsub
1021
1278
horizontal and vertical chroma subsample values. For example for the
1022
1279
pixel format "yuv422p" @var{hsub} is 2 and @var{vsub} is 1.
1065
1322
scale='min(500\, iw*3/2):-1'
1066
1323
@end example
1067
1324
 
 
1325
@section select
 
1326
Select frames to pass in output.
 
1327
 
 
1328
It accepts in input an expression, which is evaluated for each input
 
1329
frame. If the expression is evaluated to a non-zero value, the frame
 
1330
is selected and passed to the output, otherwise it is discarded.
 
1331
 
 
1332
The expression can contain the following constants:
 
1333
 
 
1334
@table @option
 
1335
@item PI
 
1336
Greek PI
 
1337
 
 
1338
@item PHI
 
1339
golden ratio
 
1340
 
 
1341
@item E
 
1342
Euler number
 
1343
 
 
1344
@item n
 
1345
the sequential number of the filtered frame, starting from 0
 
1346
 
 
1347
@item selected_n
 
1348
the sequential number of the selected frame, starting from 0
 
1349
 
 
1350
@item prev_selected_n
 
1351
the sequential number of the last selected frame, NAN if undefined
 
1352
 
 
1353
@item TB
 
1354
timebase of the input timestamps
 
1355
 
 
1356
@item pts
 
1357
the PTS (Presentation TimeStamp) of the filtered video frame,
 
1358
expressed in @var{TB} units, NAN if undefined
 
1359
 
 
1360
@item t
 
1361
the PTS (Presentation TimeStamp) of the filtered video frame,
 
1362
expressed in seconds, NAN if undefined
 
1363
 
 
1364
@item prev_pts
 
1365
the PTS of the previously filtered video frame, NAN if undefined
 
1366
 
 
1367
@item prev_selected_pts
 
1368
the PTS of the last previously filtered video frame, NAN if undefined
 
1369
 
 
1370
@item prev_selected_t
 
1371
the PTS of the last previously selected video frame, NAN if undefined
 
1372
 
 
1373
@item start_pts
 
1374
the PTS of the first video frame in the video, NAN if undefined
 
1375
 
 
1376
@item start_t
 
1377
the time of the first video frame in the video, NAN if undefined
 
1378
 
 
1379
@item pict_type
 
1380
the type of the filtered frame, can assume one of the following
 
1381
values:
 
1382
@table @option
 
1383
@item I
 
1384
@item P
 
1385
@item B
 
1386
@item S
 
1387
@item SI
 
1388
@item SP
 
1389
@item BI
 
1390
@end table
 
1391
 
 
1392
@item interlace_type
 
1393
the frame interlace type, can assume one of the following values:
 
1394
@table @option
 
1395
@item PROGRESSIVE
 
1396
the frame is progressive (not interlaced)
 
1397
@item TOPFIRST
 
1398
the frame is top-field-first
 
1399
@item BOTTOMFIRST
 
1400
the frame is bottom-field-first
 
1401
@end table
 
1402
 
 
1403
@item key
 
1404
1 if the filtered frame is a key-frame, 0 otherwise
 
1405
 
 
1406
@item pos
 
1407
the position in the file of the filtered frame, -1 if the information
 
1408
is not available (e.g. for synthetic video)
 
1409
@end table
 
1410
 
 
1411
The default value of the select expression is "1".
 
1412
 
 
1413
Some examples follow:
 
1414
 
 
1415
@example
 
1416
# select all frames in input
 
1417
select
 
1418
 
 
1419
# the above is the same as:
 
1420
select=1
 
1421
 
 
1422
# skip all frames:
 
1423
select=0
 
1424
 
 
1425
# select only I-frames
 
1426
select='eq(pict_type\,I)'
 
1427
 
 
1428
# select one frame every 100
 
1429
select='not(mod(n\,100))'
 
1430
 
 
1431
# select only frames contained in the 10-20 time interval
 
1432
select='gte(t\,10)*lte(t\,20)'
 
1433
 
 
1434
# select only I frames contained in the 10-20 time interval
 
1435
select='gte(t\,10)*lte(t\,20)*eq(pict_type\,I)'
 
1436
 
 
1437
# select frames with a minimum distance of 10 seconds
 
1438
select='isnan(prev_selected_t)+gte(t-prev_selected_t\,10)'
 
1439
@end example
 
1440
 
1068
1441
@anchor{setdar}
1069
1442
@section setdar
1070
1443
 
1093
1466
setdar=1.77777
1094
1467
@end example
1095
1468
 
1096
 
See also the "setsar" filter documentation (@pxref{setsar}).
 
1469
See also the @ref{setsar} filter documentation.
1097
1470
 
1098
1471
@section setpts
1099
1472
 
1211
1584
settb=AVTB
1212
1585
@end example
1213
1586
 
 
1587
@section showinfo
 
1588
 
 
1589
Show a line containing various information for each input video frame.
 
1590
The input video is not modified.
 
1591
 
 
1592
The shown line contains a sequence of key/value pairs of the form
 
1593
@var{key}:@var{value}.
 
1594
 
 
1595
A description of each shown parameter follows:
 
1596
 
 
1597
@table @option
 
1598
@item n
 
1599
sequential number of the input frame, starting from 0
 
1600
 
 
1601
@item pts
 
1602
Presentation TimeStamp of the input frame, expressed as a number of
 
1603
time base units. The time base unit depends on the filter input pad.
 
1604
 
 
1605
@item pts_time
 
1606
Presentation TimeStamp of the input frame, expressed as a number of
 
1607
seconds
 
1608
 
 
1609
@item pos
 
1610
position of the frame in the input stream, -1 if this information in
 
1611
unavailable and/or meaningless (for example in case of synthetic video)
 
1612
 
 
1613
@item fmt
 
1614
pixel format name
 
1615
 
 
1616
@item sar
 
1617
sample aspect ratio of the input frame, expressed in the form
 
1618
@var{num}/@var{den}
 
1619
 
 
1620
@item s
 
1621
size of the input frame, expressed in the form
 
1622
@var{width}x@var{height}
 
1623
 
 
1624
@item i
 
1625
interlaced mode ("P" for "progressive", "T" for top field first, "B"
 
1626
for bottom field first)
 
1627
 
 
1628
@item iskey
 
1629
1 if the frame is a key frame, 0 otherwise
 
1630
 
 
1631
@item type
 
1632
picture type of the input frame ("I" for an I-frame, "P" for a
 
1633
P-frame, "B" for a B-frame, "?" for unknown type).
 
1634
Check also the documentation of the @code{AVPictureType} enum and of
 
1635
the @code{av_get_picture_type_char} function defined in
 
1636
@file{libavutil/avutil.h}.
 
1637
 
 
1638
@item checksum
 
1639
Adler-32 checksum of all the planes of the input frame
 
1640
 
 
1641
@item plane_checksum
 
1642
Adler-32 checksum of each plane of the input frame, expressed in the form
 
1643
"[@var{c0} @var{c1} @var{c2} @var{c3}]"
 
1644
@end table
 
1645
 
1214
1646
@section slicify
1215
1647
 
1216
1648
Pass the images of input video on to next video filter as multiple
1217
1649
slices.
1218
1650
 
1219
1651
@example
1220
 
./ffmpeg -i in.avi -vf "slicify=32" out.avi
 
1652
./avconv -i in.avi -vf "slicify=32" out.avi
1221
1653
@end example
1222
1654
 
1223
1655
The filter accepts the slice height as parameter. If the parameter is
1276
1708
 
1277
1709
Negative values for the amount will blur the input video, while positive
1278
1710
values will sharpen. All parameters are optional and default to the
1279
 
equivalent of the string '5:5:1.0:0:0:0.0'.
 
1711
equivalent of the string '5:5:1.0:5:5:0.0'.
1280
1712
 
1281
1713
@table @option
1282
1714
 
1294
1726
 
1295
1727
@item chroma_msize_x
1296
1728
Set the chroma matrix horizontal size. It can be an integer between 3
1297
 
and 13, default value is 0.
 
1729
and 13, default value is 5.
1298
1730
 
1299
1731
@item chroma_msize_y
1300
1732
Set the chroma matrix vertical size. It can be an integer between 3
1301
 
and 13, default value is 0.
 
1733
and 13, default value is 5.
1302
1734
 
1303
1735
@item luma_amount
1304
1736
Set the chroma effect strength. It can be a float number between -2.0
1313
1745
# Strong blur of both luma and chroma parameters
1314
1746
unsharp=7:7:-2:7:7:-2
1315
1747
 
1316
 
# Use the default values with @command{ffmpeg}
1317
 
./ffmpeg -i in.avi -vf "unsharp" out.mp4
 
1748
# Use the default values with @command{avconv}
 
1749
./avconv -i in.avi -vf "unsharp" out.mp4
1318
1750
@end example
1319
1751
 
1320
1752
@section vflip
1322
1754
Flip the input video vertically.
1323
1755
 
1324
1756
@example
1325
 
./ffmpeg -i in.avi -vf "vflip" out.avi
 
1757
./avconv -i in.avi -vf "vflip" out.avi
1326
1758
@end example
1327
1759
 
1328
1760
@section yadif
1330
1762
Deinterlace the input video ("yadif" means "yet another deinterlacing
1331
1763
filter").
1332
1764
 
1333
 
It accepts the optional parameters: @var{mode}:@var{parity}.
 
1765
It accepts the optional parameters: @var{mode}:@var{parity}:@var{auto}.
1334
1766
 
1335
1767
@var{mode} specifies the interlacing mode to adopt, accepts one of the
1336
1768
following values:
1353
1785
 
1354
1786
@table @option
1355
1787
@item 0
 
1788
assume top field first
 
1789
@item 1
1356
1790
assume bottom field first
1357
 
@item 1
1358
 
assume top field first
1359
1791
@item -1
1360
1792
enable automatic detection
1361
1793
@end table
1364
1796
If interlacing is unknown or decoder does not export this information,
1365
1797
top field first will be assumed.
1366
1798
 
 
1799
@var{auto} specifies if deinterlacer should trust the interlaced flag
 
1800
and only deinterlace frames marked as interlaced
 
1801
 
 
1802
@table @option
 
1803
@item 0
 
1804
deinterlace all frames
 
1805
@item 1
 
1806
only deinterlace frames marked as interlaced
 
1807
@end table
 
1808
 
 
1809
Default value is 0.
 
1810
 
1367
1811
@c man end VIDEO FILTERS
1368
1812
 
1369
1813
@chapter Video Sources
1381
1825
It accepts the following parameters:
1382
1826
@var{width}:@var{height}:@var{pix_fmt_string}:@var{timebase_num}:@var{timebase_den}:@var{sample_aspect_ratio_num}:@var{sample_aspect_ratio.den}
1383
1827
 
1384
 
All the parameters need to be explicitely defined.
 
1828
All the parameters need to be explicitly defined.
1385
1829
 
1386
1830
Follows the list of the accepted parameters.
1387
1831
 
1437
1881
 
1438
1882
@item frame_size
1439
1883
Specify the size of the sourced video, it may be a string of the form
1440
 
@var{width}x@var{heigth}, or the name of a size abbreviation. The
 
1884
@var{width}x@var{height}, or the name of a size abbreviation. The
1441
1885
default value is "320x240".
1442
1886
 
1443
1887
@item frame_rate
1547
1991
the form @var{num}/@var{den} or a frame rate abbreviation.
1548
1992
@var{src_name} is the name to the frei0r source to load. For more
1549
1993
information regarding frei0r and how to set the parameters read the
1550
 
section "frei0r" (@pxref{frei0r}) in the description of the video
1551
 
filters.
 
1994
section @ref{frei0r} in the description of the video filters.
1552
1995
 
1553
1996
Some examples follow:
1554
1997
@example
1557
2000
frei0r_src=200x200:10:partik0l=1234 [overlay]; [in][overlay] overlay
1558
2001
@end example
1559
2002
 
 
2003
@section rgbtestsrc, testsrc
 
2004
 
 
2005
The @code{rgbtestsrc} source generates an RGB test pattern useful for
 
2006
detecting RGB vs BGR issues. You should see a red, green and blue
 
2007
stripe from top to bottom.
 
2008
 
 
2009
The @code{testsrc} source generates a test video pattern, showing a
 
2010
color pattern, a scrolling gradient and a timestamp. This is mainly
 
2011
intended for testing purposes.
 
2012
 
 
2013
Both sources accept an optional sequence of @var{key}=@var{value} pairs,
 
2014
separated by ":". The description of the accepted options follows.
 
2015
 
 
2016
@table @option
 
2017
 
 
2018
@item size, s
 
2019
Specify the size of the sourced video, it may be a string of the form
 
2020
@var{width}x@var{height}, or the name of a size abbreviation. The
 
2021
default value is "320x240".
 
2022
 
 
2023
@item rate, r
 
2024
Specify the frame rate of the sourced video, as the number of frames
 
2025
generated per second. It has to be a string in the format
 
2026
@var{frame_rate_num}/@var{frame_rate_den}, an integer number, a float
 
2027
number or a valid video frame rate abbreviation. The default value is
 
2028
"25".
 
2029
 
 
2030
@item sar
 
2031
Set the sample aspect ratio of the sourced video.
 
2032
 
 
2033
@item duration
 
2034
Set the video duration of the sourced video. The accepted syntax is:
 
2035
@example
 
2036
[-]HH[:MM[:SS[.m...]]]
 
2037
[-]S+[.m...]
 
2038
@end example
 
2039
See also the function @code{av_parse_time()}.
 
2040
 
 
2041
If not specified, or the expressed duration is negative, the video is
 
2042
supposed to be generated forever.
 
2043
@end table
 
2044
 
 
2045
For example the following:
 
2046
@example
 
2047
testsrc=duration=5.3:size=qcif:rate=10
 
2048
@end example
 
2049
 
 
2050
will generate a video with a duration of 5.3 seconds, with size
 
2051
176x144 and a framerate of 10 frames per second.
 
2052
 
1560
2053
@c man end VIDEO SOURCES
1561
2054
 
1562
2055
@chapter Video Sinks