ffplay.texi 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343
  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 -seek_interval
  51. Set custom interval, in seconds, for seeking using left/right keys. Default is 10 seconds.
  52. @item -nodisp
  53. Disable graphical display.
  54. @item -noborder
  55. Borderless window.
  56. @item -alwaysontop
  57. Window always on top. Available on: X11 with SDL >= 2.0.5, Windows SDL >= 2.0.6.
  58. @item -volume
  59. Set the startup volume. 0 means silence, 100 means no volume reduction or
  60. amplification. Negative values are treated as 0, values above 100 are treated
  61. as 100.
  62. @item -f @var{fmt}
  63. Force format.
  64. @item -window_title @var{title}
  65. Set window title (default is the input filename).
  66. @item -left @var{title}
  67. Set the x position for the left of the window (default is a centered window).
  68. @item -top @var{title}
  69. Set the y position for the top of the window (default is a centered window).
  70. @item -loop @var{number}
  71. Loops movie playback <number> times. 0 means forever.
  72. @item -showmode @var{mode}
  73. Set the show mode to use.
  74. Available values for @var{mode} are:
  75. @table @samp
  76. @item 0, video
  77. show video
  78. @item 1, waves
  79. show audio waves
  80. @item 2, rdft
  81. show audio frequency band using RDFT ((Inverse) Real Discrete Fourier Transform)
  82. @end table
  83. Default value is "video", if video is not present or cannot be played
  84. "rdft" is automatically selected.
  85. You can interactively cycle through the available show modes by
  86. pressing the key @key{w}.
  87. @item -vf @var{filtergraph}
  88. Create the filtergraph specified by @var{filtergraph} and use it to
  89. filter the video stream.
  90. @var{filtergraph} is a description of the filtergraph to apply to
  91. the stream, and must have a single video input and a single video
  92. output. In the filtergraph, the input is associated to the label
  93. @code{in}, and the output to the label @code{out}. See the
  94. ffmpeg-filters manual for more information about the filtergraph
  95. syntax.
  96. You can specify this parameter multiple times and cycle through the specified
  97. filtergraphs along with the show modes by pressing the key @key{w}.
  98. @item -af @var{filtergraph}
  99. @var{filtergraph} is a description of the filtergraph to apply to
  100. the input audio.
  101. Use the option "-filters" to show all the available filters (including
  102. sources and sinks).
  103. @item -i @var{input_url}
  104. Read @var{input_url}.
  105. @end table
  106. @section Advanced options
  107. @table @option
  108. @item -pix_fmt @var{format}
  109. Set pixel format.
  110. This option has been deprecated in favor of private options, try -pixel_format.
  111. @item -stats
  112. Print several playback statistics, in particular show the stream
  113. duration, the codec parameters, the current position in the stream and
  114. the audio/video synchronisation drift. It is shown by default, unless the
  115. log level is lower than @code{info}. Its display can be forced by manually
  116. specifying this option. To disable it, you need to specify @code{-nostats}.
  117. @item -fast
  118. Non-spec-compliant optimizations.
  119. @item -genpts
  120. Generate pts.
  121. @item -sync @var{type}
  122. Set the master clock to audio (@code{type=audio}), video
  123. (@code{type=video}) or external (@code{type=ext}). Default is audio. The
  124. master clock is used to control audio-video synchronization. Most media
  125. players use audio as master clock, but in some cases (streaming or high
  126. quality broadcast) it is necessary to change that. This option is mainly
  127. used for debugging purposes.
  128. @item -ast @var{audio_stream_specifier}
  129. Select the desired audio 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" audio stream is selected in the program of the
  132. already selected video stream.
  133. @item -vst @var{video_stream_specifier}
  134. Select the desired video stream using the given stream specifier. The stream
  135. specifiers are described in the @ref{Stream specifiers} chapter. If this option
  136. is not specified, the "best" video stream is selected.
  137. @item -sst @var{subtitle_stream_specifier}
  138. Select the desired subtitle stream using the given stream specifier. The stream
  139. specifiers are described in the @ref{Stream specifiers} chapter. If this option
  140. is not specified, the "best" subtitle stream is selected in the program of the
  141. already selected video or audio stream.
  142. @item -autoexit
  143. Exit when video is done playing.
  144. @item -exitonkeydown
  145. Exit if any key is pressed.
  146. @item -exitonmousedown
  147. Exit if any mouse button is pressed.
  148. @item -codec:@var{media_specifier} @var{codec_name}
  149. Force a specific decoder implementation for the stream identified by
  150. @var{media_specifier}, which can assume the values @code{a} (audio),
  151. @code{v} (video), and @code{s} subtitle.
  152. @item -acodec @var{codec_name}
  153. Force a specific audio decoder.
  154. @item -vcodec @var{codec_name}
  155. Force a specific video decoder.
  156. @item -scodec @var{codec_name}
  157. Force a specific subtitle decoder.
  158. @item -autorotate
  159. Automatically rotate the video according to file metadata. Enabled by
  160. default, use @option{-noautorotate} to disable it.
  161. @item -framedrop
  162. Drop video frames if video is out of sync. Enabled by default if the master
  163. clock is not set to video. Use this option to enable frame dropping for all
  164. master clock sources, use @option{-noframedrop} to disable it.
  165. @item -infbuf
  166. Do not limit the input buffer size, read as much data as possible from the
  167. input as soon as possible. Enabled by default for realtime streams, where data
  168. may be dropped if not read in time. Use this option to enable infinite buffers
  169. for all inputs, use @option{-noinfbuf} to disable it.
  170. @item -filter_threads @var{nb_threads}
  171. Defines how many threads are used to process a filter pipeline. Each pipeline
  172. will produce a thread pool with this many threads available for parallel
  173. processing. The default is 0 which means that the thread count will be
  174. determined by the number of available CPUs.
  175. @end table
  176. @section While playing
  177. @table @key
  178. @item q, ESC
  179. Quit.
  180. @item f
  181. Toggle full screen.
  182. @item p, SPC
  183. Pause.
  184. @item m
  185. Toggle mute.
  186. @item 9, 0
  187. Decrease and increase volume respectively.
  188. @item /, *
  189. Decrease and increase volume respectively.
  190. @item a
  191. Cycle audio channel in the current program.
  192. @item v
  193. Cycle video channel.
  194. @item t
  195. Cycle subtitle channel in the current program.
  196. @item c
  197. Cycle program.
  198. @item w
  199. Cycle video filters or show modes.
  200. @item s
  201. Step to the next frame.
  202. Pause if the stream is not already paused, step to the next video
  203. frame, and pause.
  204. @item left/right
  205. Seek backward/forward 10 seconds.
  206. @item down/up
  207. Seek backward/forward 1 minute.
  208. @item page down/page up
  209. Seek to the previous/next chapter.
  210. or if there are no chapters
  211. Seek backward/forward 10 minutes.
  212. @item right mouse click
  213. Seek to percentage in file corresponding to fraction of width.
  214. @item left mouse double-click
  215. Toggle full screen.
  216. @end table
  217. @c man end
  218. @include config.texi
  219. @ifset config-all
  220. @set config-readonly
  221. @ifset config-avutil
  222. @include utils.texi
  223. @end ifset
  224. @ifset config-avcodec
  225. @include codecs.texi
  226. @include bitstream_filters.texi
  227. @end ifset
  228. @ifset config-avformat
  229. @include formats.texi
  230. @include protocols.texi
  231. @end ifset
  232. @ifset config-avdevice
  233. @include devices.texi
  234. @end ifset
  235. @ifset config-swresample
  236. @include resampler.texi
  237. @end ifset
  238. @ifset config-swscale
  239. @include scaler.texi
  240. @end ifset
  241. @ifset config-avfilter
  242. @include filters.texi
  243. @end ifset
  244. @end ifset
  245. @chapter See Also
  246. @ifhtml
  247. @ifset config-all
  248. @url{ffplay.html,ffplay},
  249. @end ifset
  250. @ifset config-not-all
  251. @url{ffplay-all.html,ffmpeg-all},
  252. @end ifset
  253. @url{ffmpeg.html,ffmpeg}, @url{ffprobe.html,ffprobe},
  254. @url{ffmpeg-utils.html,ffmpeg-utils},
  255. @url{ffmpeg-scaler.html,ffmpeg-scaler},
  256. @url{ffmpeg-resampler.html,ffmpeg-resampler},
  257. @url{ffmpeg-codecs.html,ffmpeg-codecs},
  258. @url{ffmpeg-bitstream-filters.html,ffmpeg-bitstream-filters},
  259. @url{ffmpeg-formats.html,ffmpeg-formats},
  260. @url{ffmpeg-devices.html,ffmpeg-devices},
  261. @url{ffmpeg-protocols.html,ffmpeg-protocols},
  262. @url{ffmpeg-filters.html,ffmpeg-filters}
  263. @end ifhtml
  264. @ifnothtml
  265. @ifset config-all
  266. ffplay(1),
  267. @end ifset
  268. @ifset config-not-all
  269. ffplay-all(1),
  270. @end ifset
  271. ffmpeg(1), ffprobe(1),
  272. ffmpeg-utils(1), ffmpeg-scaler(1), ffmpeg-resampler(1),
  273. ffmpeg-codecs(1), ffmpeg-bitstream-filters(1), ffmpeg-formats(1),
  274. ffmpeg-devices(1), ffmpeg-protocols(1), ffmpeg-filters(1)
  275. @end ifnothtml
  276. @include authors.texi
  277. @ignore
  278. @setfilename ffplay
  279. @settitle FFplay media player
  280. @end ignore
  281. @bye