LinuxCommandLibrary

ffmpeg-utils

Utility programs used internally by FFmpeg

SYNOPSIS

The following synopsis applies to the primary utility, ffmpeg:

ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...

PARAMETERS

-i <input_url>
    Specifies the input multimedia file or stream.

-f <fmt>
    Forces the input or output format (e.g., mp4, webm).

-map <stream_specifier>
    Selects specific streams (video, audio, subtitles) from input to output.

-c[:stream_specifier] <encoder_name>
    Sets the codec for a stream (e.g., h264, aac, libx265).

-b[:stream_specifier] <bitrate>
    Sets the target bitrate for a stream (e.g., 2M for 2 Mbps).

-ss <position>
    Seeks to a specific position (timestamp, e.g., 00:01:30) in the input or output.

-t <duration>
    Sets the duration for recording or encoding (e.g., 60 for 60 seconds).

-s <Wxh>
    Sets the frame size (width x height, e.g., 1280x720) for video output.

-vf <filter_graph>
    Applies video filters (e.g., `scale=640:-1`, `crop=in_w/2:in_h/2`).

-af <filter_graph>
    Applies audio filters (e.g., `volume=2`, `atempo=1.2`).

-y
    Overwrites output files without asking for confirmation.

-n
    Prevents overwriting output files; exits if a specified output file already exists.

-an
    Disables audio processing/recording for the output.

-vn
    Disables video processing/recording for the output.

-sn
    Disables subtitle processing/recording for the output.

-map_metadata <outfile:infile>
    Copies metadata from input to output or manipulates it.

DESCRIPTION

The term ffmpeg-utils refers to the essential collection of command-line tools distributed with the FFmpeg project, which is the leading open-source multimedia framework. While there isn't a single executable named ffmpeg-utils, this suite primarily comprises three powerful utilities: ffmpeg, ffprobe, and ffplay.

ffmpeg is the flagship tool, a highly versatile program for converting, encoding, decoding, muxing, demuxing, streaming, filtering, and playing virtually any audio or video format. It supports an extensive range of codecs and formats, making it indispensable for video editing, audio manipulation, and media production workflows.

ffprobe is designed for analyzing multimedia streams, providing detailed information about codecs, containers, and stream properties. ffplay is a simple, portable media player built using FFmpeg and SDL, primarily used for testing and quick playback of media files. Together, these utilities provide a comprehensive solution for almost all multimedia tasks on Linux and other platforms.

CAVEATS

The term ffmpeg-utils refers to a suite of commands, not a single executable.

The ffmpeg command itself has an extremely complex and extensive set of options, often requiring a deep understanding of multimedia concepts like codecs, containers, and filtering. The learning curve can be steep.

Command syntax is highly flexible and order-dependent for some options. Certain advanced features or codecs might require specific FFmpeg builds or external libraries due to licensing restrictions.

UNDERSTANDING THE FFMPEG UTILITIES

The ffmpeg-utils collection typically includes three primary tools:

ffmpeg: The core command for multimedia conversion, encoding, and streaming. It handles most tasks involving media file manipulation.

ffprobe: A powerful tool for analyzing multimedia streams and extracting detailed information about their contents, codecs, and metadata. Essential for troubleshooting and understanding media properties.

ffplay: A simple, standalone media player built with FFmpeg libraries and SDL. It's often used for quick playback testing of media files, especially during development or debugging.

HISTORY

The FFmpeg project was founded by Fabrice Bellard in 2000 and has since grown into a vital open-source multimedia framework. It became the backbone for numerous multimedia applications, operating systems, and online services, including YouTube, VLC, and HandBrake. The development is community-driven, with continuous updates and expansions to support new formats, codecs, and processing capabilities. Its widespread adoption underscores its robustness and versatility in multimedia manipulation.

SEE ALSO

ffprobe(1), ffplay(1), mediainfo(1), mplayer(1), vlc(1)

Copied to clipboard