\input texinfo @c -*- texinfo -*-

@settitle FFplay Documentation
@titlepage
@sp 7
@center @titlefont{FFplay Documentation}
@sp 3
@end titlepage


@chapter Introduction

@c man begin DESCRIPTION
FFplay is a very simple and portable media player using the FFmpeg
libraries and the SDL library. It is mostly used as a testbed for the
various FFmpeg APIs.
@c man end

@chapter Invocation

@section Syntax
@example
@c man begin SYNOPSIS
ffplay [options] @file{input_file}
@c man end
@end example

@c man begin OPTIONS
@section Main options

@table @option
@item -h
Show help.
@item -version
Show version.
@item -L
Show license.
@item -formats
Show available formats, codecs, protocols, ...
@item -x @var{width}
Force displayed width.
@item -y @var{height}
Force displayed height.
@item -s @var{size}
Set frame size (WxH or abbreviation), needed for videos which don't
contain a header with the frame size like raw YUV.
@item -an
Disable audio.
@item -vn
Disable video.
@item -ss @var{pos}
Seek to a given position in seconds.
@item -bytes
Seek by bytes.
@item -nodisp
Disable graphical display.
@item -f @var{fmt}
Force format.
@item -loglevel @var{loglevel}
Set the logging level used by the library.
@var{loglevel} is a number or a string containing one of the following values:
@table @samp
@item quiet
@item panic
@item fatal
@item error
@item warning
@item info
@item verbose
@item debug
@end table
@end table

@section Advanced options
@table @option
@item -pix_fmt @var{format}
Set pixel format.
@item -stats
Show the stream duration, the codec parameters, the current position in
the stream and the audio/video synchronisation drift.
@item -debug
Print specific debug info.
@item -bug
Work around bugs.
@item -vismv
Visualize motion vectors.
@item -fast
Non-spec-compliant optimizations.
@item -genpts
Generate pts.
@item -rtp_tcp
Force RTP/TCP protocol usage instead of RTP/UDP. It is only meaningful
if you are streaming with the RTSP protocol.
@item -sync @var{type}
Set the master clock to audio (@code{type=audio}), video
(@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.
@item -threads @var{count}
Set the thread count.
@item -ast @var{audio_stream_number}
Select the desired audio stream number, counting from 0. The number
refers to the list of all the input audio streams. If it is greater
than the number of audio streams minus one, then the last one is
selected, if it is negative the audio playback is disabled.
@item -vst @var{video_stream_number}
Select the desired video stream number, counting from 0. The number
refers to the list of all the input video streams. If it is greater
than the number of video streams minus one, then the last one is
selected, if it is negative the video playback is disabled.
@item -sst @var{subtitle_stream_number}
Select the desired subtitle stream number, counting from 0. The number
refers to the list of all the input subtitle streams. If it is greater
than the number of subtitle streams minus one, then the last one is
selected, if it is negative the subtitle rendering is disabled.
@end table

@section While playing

@table @key
@item q, ESC
Quit.

@item f
Toggle full screen.

@item p, SPC
Pause.

@item a
Cycle audio channel.

@item v
Cycle video channel.

@item t
Cycle subtitle channel.

@item w
Show audio waves.

@item left/right
Seek backward/forward 10 seconds.

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

@item mouse click
Seek to percentage in file corresponding to fraction of width.

@end table

@c man end

@ignore

@setfilename ffplay
@settitle FFplay media player

@c man begin SEEALSO
ffmpeg(1), ffserver(1) and the HTML documentation of @file{ffmpeg}.
@c man end

@c man begin AUTHOR
Fabrice Bellard
@c man end

@end ignore

@bye
