FFmpeg is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.
libavcodecprovides implementation of a wider range of codecs.libavformatimplements streaming protocols, container formats and basic I/O access.libavutilincludes hashers, decompressors and miscellaneous utility functions.libavfilterprovides means to alter decoded audio and video through a directed graph of connected filters.libavdeviceprovides an abstraction to access capture and playback devices.libswresampleimplements audio mixing and resampling routines.libswscaleimplements color conversion and scaling routines.
- ffmpeg is a command line toolbox to manipulate, convert and stream multimedia content.
- ffplay is a minimalistic multimedia player.
- ffprobe is a simple analysis tool to inspect multimedia content.
- Additional small tools such as
aviocat,ismindexandqt-faststart.
The offline documentation is available in the doc/ directory.
The online documentation is available in the main website and in the wiki.
Coding examples are available in the doc/examples directory.
This build includes the ffmpeg-over-ip file I/O layer for Jellyfin FFmpeg.
It wraps FFmpeg's file protocol operations in libavformat, including
open, read, write, seek, close, stat, delete, rename, and directory creation.
By default, when FFOIP_PORT is not set, the wrapper passes all file I/O
through to the normal local system calls. When FFOIP_PORT is set, FFmpeg
connects to 127.0.0.1:$FFOIP_PORT and tunnels those file operations over
TCP to the ffmpeg-over-ip companion process. This allows FFmpeg to run on a
different machine or architecture while still accessing media and generated
outputs through the companion process.
FFmpeg codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.
Patches should be submitted to the ffmpeg-devel mailing list using
git format-patch or git send-email. Github pull requests should be
avoided because they are not part of our review process and will be ignored.