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