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