FFmpeg logo

FFmpeg

Collection of libraries and command-line tools (ffmpeg, ffplay, ffprobe) for converting, streaming, playing and inspecting audio, video and subtitles.

FFmpeg is a collection of libraries and command-line tools for processing multimedia content: audio, video, subtitles and related metadata. The main ffmpeg tool is a command line toolbox to manipulate, convert and stream multimedia content. It is accompanied by ffplay, a minimalistic multimedia player, and ffprobe, an analysis tool for inspecting multimedia files. Small extra tools such as aviocat, ismindex and qt-faststart are also included.

The tools are built on a set of reusable C libraries. libavcodec implements a wide range of codecs, libavformat handles streaming protocols, container formats and basic I/O, and libavfilter alters decoded audio and video through a directed graph of connected filters. libavdevice abstracts capture and playback devices, libswresample provides audio mixing and resampling, libswscale provides color conversion and scaling, and libavutil supplies hashers, decompressors and utility functions.

It is used by developers, media engineers and anyone who needs to transcode, filter, probe or stream media files, either from the command line or by linking the libraries into their own applications. Offline documentation is in the doc/ directory, and coding examples are in doc/examples. The codebase is mainly LGPL-licensed, with optional components under GPL. Patches are submitted to the ffmpeg-devel mailing list rather than through GitHub pull requests.

Alternatives & related tools

add a badge to your README

Maintain FFmpeg? Show that it's featured on trmn. The badge links back to this page.

Featured on trmn
Markdown
[![Featured on trmn](https://www.trmn.sh/badge/ffmpeg.svg)](https://www.trmn.sh/tools/ffmpeg?utm_source=badge)
HTML
<a href="https://www.trmn.sh/tools/ffmpeg?utm_source=badge"><img src="https://www.trmn.sh/badge/ffmpeg.svg" alt="Featured on trmn" height="20"></a>