LinuxCommandLibrary

ffplay

Play multimedia files

TLDR

Play a media file

$ ffplay [path/to/file]
copy

Play audio from a media file without a GUI
$ ffplay -nodisp [path/to/file]
copy

Play media passed by ffmpeg through stdin
$ ffmpeg -i [path/to/file] -c [copy] -f [media_format] - | ffplay -
copy

Play a video and show motion vectors in real time
$ ffplay -flags2 +export_mvs -vf codecview=mv=pf+bf+bb [path/to/file]
copy

Show only video keyframes
$ ffplay -vf select="[eq(pict_type\,PICT_TYPE_I)]" [path/to/file]
copy

SYNOPSIS

ffplay [options] input_file

PARAMETERS

-x width
    Force display width. The height is computed so that the aspect ratio is preserved.

-y height
    Force display height. The width is computed so that the aspect ratio is preserved.

-fs
    Fullscreen mode.

-an
    Disable audio.

-vn
    Disable video.

-ss position
    Seek to the given position in seconds.

-t duration
    Play only for duration seconds.

-f format
    Force format.

-loop number
    Loops playback number times. 0 means forever.

-volume value
    Set the audio volume (default: 256).

-nodisp
    Disable graphical display.

input_file
    The input media file to play.

DESCRIPTION

ffplay is a simple, portable media player based on the FFmpeg libraries. It is primarily a testing tool for FFmpeg development, but can also be used as a basic media player for various audio and video formats. It provides a minimal user interface and is controlled mainly through command-line arguments.

Unlike other media players with a full GUI, ffplay is lightweight and emphasizes playback functionality. It supports a wide range of codecs and containers supported by FFmpeg. Users can specify input files, control playback speed, adjust audio volume, and perform basic seeking operations directly from the command line. The simple approach makes ffplay a very handy tool to perform a quick check on media file issues or test decoding performance. ffplay is useful for scripting and automation where complex GUI controls are unnecessary.

CAVEATS

ffplay is primarily a development tool and lacks many features found in dedicated media players. Error messages are often verbose and technical, which may be intimidating for non-developers.

KEYBOARD SHORTCUTS

While playing a file, the following keys can be used to control ffplay:
'q', ESC: Quit.
'f': Toggle fullscreen.
'p', SPACE: Pause/Play.
Left/Right arrows: Seek backward/forward 10 seconds.
Up/Down arrows: Seek backward/forward 60 seconds.
'9'/'0': Decrease/Increase volume.
'm': Toggle mute.
'+/-': Adjust playback speed.

HISTORY

ffplay was developed as part of the FFmpeg project to provide a simple way to test and debug multimedia decoding and playback. Its initial purpose was to verify the correctness and performance of FFmpeg's codecs and demuxers. Over time, it has become a useful tool for quick media file previews and basic playback tasks. It continues to be maintained and updated alongside FFmpeg.

SEE ALSO

ffmpeg(1), ffprobe(1)

Copied to clipboard