ffplay.texi 8.69 KB
Newer Older
1
\input texinfo @c -*- texinfo -*-
2
@documentencoding UTF-8
3

4
@settitle ffplay Documentation
5
@titlepage
6
@center @titlefont{ffplay Documentation}
7 8
@end titlepage

9 10 11 12
@top

@contents

13 14
@chapter Synopsis

15
ffplay [@var{options}] [@file{input_url}]
16

17
@chapter Description
18
@c man begin DESCRIPTION
19

20
FFplay is a very simple and portable media player using the FFmpeg
Diego Biurrun's avatar
Diego Biurrun committed
21
libraries and the SDL library. It is mostly used as a testbed for the
22
various FFmpeg APIs.
23 24
@c man end

25
@chapter Options
26
@c man begin OPTIONS
27

28
@include fftools-common-opts.texi
29

30 31 32
@section Main options

@table @option
33
@item -x @var{width}
34
Force displayed width.
35
@item -y @var{height}
36
Force displayed height.
37
@item -s @var{size}
38 39 40
Set frame size (WxH or abbreviation), needed for videos which do
not contain a header with the frame size like raw YUV.  This option
has been deprecated in favor of private options, try -video_size.
41 42
@item -fs
Start in fullscreen mode.
43
@item -an
44
Disable audio.
45
@item -vn
46
Disable video.
47 48
@item -sn
Disable subtitles.
49
@item -ss @var{pos}
50 51 52 53 54 55
Seek to @var{pos}. Note that in most formats it is not possible to seek
exactly, so @command{ffplay} will seek to the nearest seek point to
@var{pos}.

@var{pos} must be a time duration specification,
see @ref{time duration syntax,,the Time duration section in the ffmpeg-utils(1) manual,ffmpeg-utils}.
56
@item -t @var{duration}
57 58 59 60
Play @var{duration} seconds of audio/video.

@var{duration} must be a time duration specification,
see @ref{time duration syntax,,the Time duration section in the ffmpeg-utils(1) manual,ffmpeg-utils}.
61
@item -bytes
62
Seek by bytes.
63
@item -nodisp
64
Disable graphical display.
65 66 67 68
@item -volume
Set the startup volume. 0 means silence, 100 means no volume reduction or
amplification. Negative values are treated as 0, values above 100 are treated
as 100.
69
@item -f @var{fmt}
70
Force format.
71 72
@item -window_title @var{title}
Set window title (default is the input filename).
73 74
@item -loop @var{number}
Loops movie playback <number> times. 0 means forever.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
@item -showmode @var{mode}
Set the show mode to use.
Available values for @var{mode} are:
@table @samp
@item 0, video
show video
@item 1, waves
show audio waves
@item 2, rdft
show audio frequency band using RDFT ((Inverse) Real Discrete Fourier Transform)
@end table

Default value is "video", if video is not present or cannot be played
"rdft" is automatically selected.

You can interactively cycle through the available show modes by
pressing the key @key{w}.

93 94
@item -vf @var{filtergraph}
Create the filtergraph specified by @var{filtergraph} and use it to
95 96
filter the video stream.

97
@var{filtergraph} is a description of the filtergraph to apply to
98
the stream, and must have a single video input and a single video
99
output. In the filtergraph, the input is associated to the label
100 101 102
@code{in}, and the output to the label @code{out}. See the
ffmpeg-filters manual for more information about the filtergraph
syntax.
103

104 105 106
You can specify this parameter multiple times and cycle through the specified
filtergraphs along with the show modes by pressing the key @key{w}.

107 108
@item -af @var{filtergraph}
@var{filtergraph} is a description of the filtergraph to apply to
Marton Balint's avatar
Marton Balint committed
109 110 111 112
the input audio.
Use the option "-filters" to show all the available filters (including
sources and sinks).

113 114
@item -i @var{input_url}
Read @var{input_url}.
115
@end table
116 117 118

@section Advanced options
@table @option
119
@item -pix_fmt @var{format}
120 121
Set pixel format.
This option has been deprecated in favor of private options, try -pixel_format.
122

123
@item -stats
124 125 126 127 128
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}.

129
@item -fast
130
Non-spec-compliant optimizations.
131
@item -genpts
132
Generate pts.
133
@item -sync @var{type}
Diego Biurrun's avatar
Diego Biurrun committed
134
Set the master clock to audio (@code{type=audio}), video
135 136 137 138 139
(@code{type=video}) or external (@code{type=ext}). Default is audio. The
master clock is used to control audio-video synchronization. Most media
players use audio as master clock, but in some cases (streaming or high
quality broadcast) it is necessary to change that. This option is mainly
used for debugging purposes.
140 141 142 143 144 145 146 147 148 149 150 151 152 153
@item -ast @var{audio_stream_specifier}
Select the desired audio stream using the given stream specifier. The stream
specifiers are described in the @ref{Stream specifiers} chapter. If this option
is not specified, the "best" audio stream is selected in the program of the
already selected video stream.
@item -vst @var{video_stream_specifier}
Select the desired video stream using the given stream specifier. The stream
specifiers are described in the @ref{Stream specifiers} chapter. If this option
is not specified, the "best" video stream is selected.
@item -sst @var{subtitle_stream_specifier}
Select the desired subtitle stream using the given stream specifier. The stream
specifiers are described in the @ref{Stream specifiers} chapter. If this option
is not specified, the "best" subtitle stream is selected in the program of the
already selected video or audio stream.
154 155
@item -autoexit
Exit when video is done playing.
156 157 158 159
@item -exitonkeydown
Exit if any key is pressed.
@item -exitonmousedown
Exit if any mouse button is pressed.
160 161 162 163 164 165 166 167 168 169 170 171 172 173

@item -codec:@var{media_specifier} @var{codec_name}
Force a specific decoder implementation for the stream identified by
@var{media_specifier}, which can assume the values @code{a} (audio),
@code{v} (video), and @code{s} subtitle.

@item -acodec @var{codec_name}
Force a specific audio decoder.

@item -vcodec @var{codec_name}
Force a specific video decoder.

@item -scodec @var{codec_name}
Force a specific subtitle decoder.
174 175

@item -autorotate
176
Automatically rotate the video according to file metadata. Enabled by
177 178 179 180 181 182 183 184 185 186 187 188 189
default, use @option{-noautorotate} to disable it.

@item -framedrop
Drop video frames if video is out of sync. Enabled by default if the master
clock is not set to video. Use this option to enable frame dropping for all
master clock sources, use @option{-noframedrop} to disable it.

@item -infbuf
Do not limit the input buffer size, read as much data as possible from the
input as soon as possible. Enabled by default for realtime streams, where data
may be dropped if not read in time. Use this option to enable infinite buffers
for all inputs, use @option{-noinfbuf} to disable it.

190 191 192 193 194 195
@end table

@section While playing

@table @key
@item q, ESC
196
Quit.
197 198

@item f
199
Toggle full screen.
200 201

@item p, SPC
202
Pause.
203

204 205 206 207 208 209 210 211 212
@item m
Toggle mute.

@item 9, 0
Decrease and increase volume respectively.

@item /, *
Decrease and increase volume respectively.

213
@item a
Marton Balint's avatar
Marton Balint committed
214
Cycle audio channel in the current program.
215 216

@item v
217
Cycle video channel.
218

219
@item t
220 221 222 223
Cycle subtitle channel in the current program.

@item c
Cycle program.
224

225
@item w
226
Cycle video filters or show modes.
227

228 229 230 231 232 233
@item s
Step to the next frame.

Pause if the stream is not already paused, step to the next video
frame, and pause.

234
@item left/right
235
Seek backward/forward 10 seconds.
236 237

@item down/up
238
Seek backward/forward 1 minute.
239

240
@item page down/page up
241 242
Seek to the previous/next chapter.
or if there are no chapters
243 244
Seek backward/forward 10 minutes.

245
@item right mouse click
246
Seek to percentage in file corresponding to fraction of width.
247

248 249 250
@item left mouse double-click
Toggle full screen.

251 252 253 254
@end table

@c man end

255
@include config.texi
256
@ifset config-all
257
@set config-readonly
258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280
@ifset config-avutil
@include utils.texi
@end ifset
@ifset config-avcodec
@include codecs.texi
@include bitstream_filters.texi
@end ifset
@ifset config-avformat
@include formats.texi
@include protocols.texi
@end ifset
@ifset config-avdevice
@include devices.texi
@end ifset
@ifset config-swresample
@include resampler.texi
@end ifset
@ifset config-swscale
@include scaler.texi
@end ifset
@ifset config-avfilter
@include filters.texi
@end ifset
281 282
@end ifset

283 284 285
@chapter See Also

@ifhtml
286 287 288 289 290 291
@ifset config-all
@url{ffplay.html,ffplay},
@end ifset
@ifset config-not-all
@url{ffplay-all.html,ffmpeg-all},
@end ifset
292 293 294 295 296
@url{ffmpeg.html,ffmpeg}, @url{ffprobe.html,ffprobe}, @url{ffserver.html,ffserver},
@url{ffmpeg-utils.html,ffmpeg-utils},
@url{ffmpeg-scaler.html,ffmpeg-scaler},
@url{ffmpeg-resampler.html,ffmpeg-resampler},
@url{ffmpeg-codecs.html,ffmpeg-codecs},
297
@url{ffmpeg-bitstream-filters.html,ffmpeg-bitstream-filters},
298 299 300 301 302 303 304
@url{ffmpeg-formats.html,ffmpeg-formats},
@url{ffmpeg-devices.html,ffmpeg-devices},
@url{ffmpeg-protocols.html,ffmpeg-protocols},
@url{ffmpeg-filters.html,ffmpeg-filters}
@end ifhtml

@ifnothtml
305 306 307 308 309 310
@ifset config-all
ffplay(1),
@end ifset
@ifset config-not-all
ffplay-all(1),
@end ifset
311 312 313 314 315 316
ffmpeg(1), ffprobe(1), ffserver(1),
ffmpeg-utils(1), ffmpeg-scaler(1), ffmpeg-resampler(1),
ffmpeg-codecs(1), ffmpeg-bitstream-filters(1), ffmpeg-formats(1),
ffmpeg-devices(1), ffmpeg-protocols(1), ffmpeg-filters(1)
@end ifnothtml

317 318
@include authors.texi

319 320 321 322 323 324 325 326
@ignore

@setfilename ffplay
@settitle FFplay media player

@end ignore

@bye