ffplay.texi 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328
  1. \input texinfo @c -*- texinfo -*-
  2. @documentencoding UTF-8
  3. @settitle ffplay Documentation
  4. @titlepage
  5. @center @titlefont{ffplay Documentation}
  6. @end titlepage
  7. @top
  8. @contents
  9. @chapter Synopsis
  10. ffplay [@var{options}] [@file{input_url}]
  11. @chapter Description
  12. @c man begin DESCRIPTION
  13. FFplay is a very simple and portable media player using the FFmpeg
  14. libraries and the SDL library. It is mostly used as a testbed for the
  15. various FFmpeg APIs.
  16. @c man end
  17. @chapter Options
  18. @c man begin OPTIONS
  19. @include fftools-common-opts.texi
  20. @section Main options
  21. @table @option
  22. @item -x @var{width}
  23. Force displayed width.
  24. @item -y @var{height}
  25. Force displayed height.
  26. @item -s @var{size}
  27. Set frame size (WxH or abbreviation), needed for videos which do
  28. not contain a header with the frame size like raw YUV. This option
  29. has been deprecated in favor of private options, try -video_size.
  30. @item -fs
  31. Start in fullscreen mode.
  32. @item -an
  33. Disable audio.
  34. @item -vn
  35. Disable video.
  36. @item -sn
  37. Disable subtitles.
  38. @item -ss @var{pos}
  39. Seek to @var{pos}. Note that in most formats it is not possible to seek
  40. exactly, so @command{ffplay} will seek to the nearest seek point to
  41. @var{pos}.
  42. @var{pos} must be a time duration specification,
  43. see @ref{time duration syntax,,the Time duration section in the ffmpeg-utils(1) manual,ffmpeg-utils}.
  44. @item -t @var{duration}
  45. Play @var{duration} seconds of audio/video.
  46. @var{duration} must be a time duration specification,
  47. see @ref{time duration syntax,,the Time duration section in the ffmpeg-utils(1) manual,ffmpeg-utils}.
  48. @item -bytes
  49. Seek by bytes.
  50. @item -nodisp
  51. Disable graphical display.
  52. @item -noborder
  53. Borderless window.
  54. @item -volume
  55. Set the startup volume. 0 means silence, 100 means no volume reduction or
  56. amplification. Negative values are treated as 0, values above 100 are treated
  57. as 100.
  58. @item -f @var{fmt}
  59. Force format.
  60. @item -window_title @var{title}
  61. Set window title (default is the input filename).
  62. @item -loop @var{number}
  63. Loops movie playback <number> times. 0 means forever.
  64. @item -showmode @var{mode}
  65. Set the show mode to use.
  66. Available values for @var{mode} are:
  67. @table @samp
  68. @item 0, video
  69. show video
  70. @item 1, waves
  71. show audio waves
  72. @item 2, rdft
  73. show audio frequency band using RDFT ((Inverse) Real Discrete Fourier Transform)
  74. @end table
  75. Default value is "video", if video is not present or cannot be played
  76. "rdft" is automatically selected.
  77. You can interactively cycle through the available show modes by
  78. pressing the key @key{w}.
  79. @item -vf @var{filtergraph}
  80. Create the filtergraph specified by @var{filtergraph} and use it to
  81. filter the video stream.
  82. @var{filtergraph} is a description of the filtergraph to apply to
  83. the stream, and must have a single video input and a single video
  84. output. In the filtergraph, the input is associated to the label
  85. @code{in}, and the output to the label @code{out}. See the
  86. ffmpeg-filters manual for more information about the filtergraph
  87. syntax.
  88. You can specify this parameter multiple times and cycle through the specified
  89. filtergraphs along with the show modes by pressing the key @key{w}.
  90. @item -af @var{filtergraph}
  91. @var{filtergraph} is a description of the filtergraph to apply to
  92. the input audio.
  93. Use the option "-filters" to show all the available filters (including
  94. sources and sinks).
  95. @item -i @var{input_url}
  96. Read @var{input_url}.
  97. @end table
  98. @section Advanced options
  99. @table @option
  100. @item -pix_fmt @var{format}
  101. Set pixel format.
  102. This option has been deprecated in favor of private options, try -pixel_format.
  103. @item -stats
  104. Print several playback statistics, in particular show the stream
  105. duration, the codec parameters, the current position in the stream and
  106. the audio/video synchronisation drift. It is on by default, to
  107. explicitly disable it you need to specify @code{-nostats}.
  108. @item -fast
  109. Non-spec-compliant optimizations.
  110. @item -genpts
  111. Generate pts.
  112. @item -sync @var{type}
  113. Set the master clock to audio (@code{type=audio}), video
  114. (@code{type=video}) or external (@code{type=ext}). Default is audio. The
  115. master clock is used to control audio-video synchronization. Most media
  116. players use audio as master clock, but in some cases (streaming or high
  117. quality broadcast) it is necessary to change that. This option is mainly
  118. used for debugging purposes.
  119. @item -ast @var{audio_stream_specifier}
  120. Select the desired audio stream using the given stream specifier. The stream
  121. specifiers are described in the @ref{Stream specifiers} chapter. If this option
  122. is not specified, the "best" audio stream is selected in the program of the
  123. already selected video stream.
  124. @item -vst @var{video_stream_specifier}
  125. Select the desired video stream using the given stream specifier. The stream
  126. specifiers are described in the @ref{Stream specifiers} chapter. If this option
  127. is not specified, the "best" video stream is selected.
  128. @item -sst @var{subtitle_stream_specifier}
  129. Select the desired subtitle stream using the given stream specifier. The stream
  130. specifiers are described in the @ref{Stream specifiers} chapter. If this option
  131. is not specified, the "best" subtitle stream is selected in the program of the
  132. already selected video or audio stream.
  133. @item -autoexit
  134. Exit when video is done playing.
  135. @item -exitonkeydown
  136. Exit if any key is pressed.
  137. @item -exitonmousedown
  138. Exit if any mouse button is pressed.
  139. @item -codec:@var{media_specifier} @var{codec_name}
  140. Force a specific decoder implementation for the stream identified by
  141. @var{media_specifier}, which can assume the values @code{a} (audio),
  142. @code{v} (video), and @code{s} subtitle.
  143. @item -acodec @var{codec_name}
  144. Force a specific audio decoder.
  145. @item -vcodec @var{codec_name}
  146. Force a specific video decoder.
  147. @item -scodec @var{codec_name}
  148. Force a specific subtitle decoder.
  149. @item -autorotate
  150. Automatically rotate the video according to file metadata. Enabled by
  151. default, use @option{-noautorotate} to disable it.
  152. @item -framedrop
  153. Drop video frames if video is out of sync. Enabled by default if the master
  154. clock is not set to video. Use this option to enable frame dropping for all
  155. master clock sources, use @option{-noframedrop} to disable it.
  156. @item -infbuf
  157. Do not limit the input buffer size, read as much data as possible from the
  158. input as soon as possible. Enabled by default for realtime streams, where data
  159. may be dropped if not read in time. Use this option to enable infinite buffers
  160. for all inputs, use @option{-noinfbuf} to disable it.
  161. @end table
  162. @section While playing
  163. @table @key
  164. @item q, ESC
  165. Quit.
  166. @item f
  167. Toggle full screen.
  168. @item p, SPC
  169. Pause.
  170. @item m
  171. Toggle mute.
  172. @item 9, 0
  173. Decrease and increase volume respectively.
  174. @item /, *
  175. Decrease and increase volume respectively.
  176. @item a
  177. Cycle audio channel in the current program.
  178. @item v
  179. Cycle video channel.
  180. @item t
  181. Cycle subtitle channel in the current program.
  182. @item c
  183. Cycle program.
  184. @item w
  185. Cycle video filters or show modes.
  186. @item s
  187. Step to the next frame.
  188. Pause if the stream is not already paused, step to the next video
  189. frame, and pause.
  190. @item left/right
  191. Seek backward/forward 10 seconds.
  192. @item down/up
  193. Seek backward/forward 1 minute.
  194. @item page down/page up
  195. Seek to the previous/next chapter.
  196. or if there are no chapters
  197. Seek backward/forward 10 minutes.
  198. @item right mouse click
  199. Seek to percentage in file corresponding to fraction of width.
  200. @item left mouse double-click
  201. Toggle full screen.
  202. @end table
  203. @c man end
  204. @include config.texi
  205. @ifset config-all
  206. @set config-readonly
  207. @ifset config-avutil
  208. @include utils.texi
  209. @end ifset
  210. @ifset config-avcodec
  211. @include codecs.texi
  212. @include bitstream_filters.texi
  213. @end ifset
  214. @ifset config-avformat
  215. @include formats.texi
  216. @include protocols.texi
  217. @end ifset
  218. @ifset config-avdevice
  219. @include devices.texi
  220. @end ifset
  221. @ifset config-swresample
  222. @include resampler.texi
  223. @end ifset
  224. @ifset config-swscale
  225. @include scaler.texi
  226. @end ifset
  227. @ifset config-avfilter
  228. @include filters.texi
  229. @end ifset
  230. @end ifset
  231. @chapter See Also
  232. @ifhtml
  233. @ifset config-all
  234. @url{ffplay.html,ffplay},
  235. @end ifset
  236. @ifset config-not-all
  237. @url{ffplay-all.html,ffmpeg-all},
  238. @end ifset
  239. @url{ffmpeg.html,ffmpeg}, @url{ffprobe.html,ffprobe},
  240. @url{ffmpeg-utils.html,ffmpeg-utils},
  241. @url{ffmpeg-scaler.html,ffmpeg-scaler},
  242. @url{ffmpeg-resampler.html,ffmpeg-resampler},
  243. @url{ffmpeg-codecs.html,ffmpeg-codecs},
  244. @url{ffmpeg-bitstream-filters.html,ffmpeg-bitstream-filters},
  245. @url{ffmpeg-formats.html,ffmpeg-formats},
  246. @url{ffmpeg-devices.html,ffmpeg-devices},
  247. @url{ffmpeg-protocols.html,ffmpeg-protocols},
  248. @url{ffmpeg-filters.html,ffmpeg-filters}
  249. @end ifhtml
  250. @ifnothtml
  251. @ifset config-all
  252. ffplay(1),
  253. @end ifset
  254. @ifset config-not-all
  255. ffplay-all(1),
  256. @end ifset
  257. ffmpeg(1), ffprobe(1),
  258. ffmpeg-utils(1), ffmpeg-scaler(1), ffmpeg-resampler(1),
  259. ffmpeg-codecs(1), ffmpeg-bitstream-filters(1), ffmpeg-formats(1),
  260. ffmpeg-devices(1), ffmpeg-protocols(1), ffmpeg-filters(1)
  261. @end ifnothtml
  262. @include authors.texi
  263. @ignore
  264. @setfilename ffplay
  265. @settitle FFplay media player
  266. @end ignore
  267. @bye