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