Welcome to the FFmpeg Bug Tracker and Wiki
This Wiki is intended for all kinds of FFmpeg and multimedia related information. Everyone is welcome to add to, edit and improve it!
Bug Reports
Please read the Bug Tracker Manual and Submitting a Bug Report before filing a new report. You must register before you can file a report or edit this wiki. For uploading samples > 2.5MB use the VideoLAN File Uploader.
FFmpeg Official Documentation
- Documentation – FFmpeg's main documentation page
- Submit an FFmpeg Logo – Instructions on how to submit a themed logo or banner to FFmpeg
Developer Documentation
- Development Policies and Guides
- Guide for Using Git
- Notes on Maintaining FFmpeg Source Code and Being a Maintainer
- FATE – Our Continuous Integration Platform / regression testing system
- Cleanup – A list of components that may be considered candidates for removal
- Debugging
- How to apply patches from Patchwork
FFmpeg-related Sponsoring Programs
- Google Summer of Code
FFmpeg Developer Meetings
- FFmeeting/2020-12
- FFmeeting/2020-02
- FFmeeting/2019-12
- FFmeeting/2016-05
- FFmeeting/2015-09
- FFmeeting/2014-10
- FFmeeting/2014-01
FFmpeg at Conferences
Community Contributed Documentation
The guides below have been written by users and for users to supplement the official FFmpeg Documentation. If you're confused about something refer to the official documentation and if you're still having problems we can help.
Books and other External Resources
Books and other off-site resources of note are listed at BooksAndOtherExternalResources
Compiling FFmpeg
- Generic Compilation Guide
- FFmpeg Compilation Guides – Windows, macOS, Linux, and other platforms
- Compile Benchmarks
Encoding
- Video Codecs:
- Legacy Codecs:
- Audio Codecs:
- General encoding guides:
- Guidelines for high quality audio encoding
- VFX Pipeline Encoding Guide
- How to encode videos for YouTube and other video sharing sites
Hardware acceleration
Grabbing / Capturing
- Capturing audio with FFmpeg and ALSA
- How to grab the desktop (screen) with FFmpeg
- How to capture a lightning (thunderbolt) with FFmpeg
- How to capture a webcam input
- How to capture with acquisition card on Linux
- DirectShow
Streaming
- Encoding for Streaming Sites such as twitch.tv, ustream.tv, YouTube Live, and other RTMP(E) streaming providers.
- Streaming Guide
- Streaming media with ffserver
Filtering
- Filtering Guide, including syntax for filter options
- Fancy Filtering Examples
- Scaling (re-sizing) video
- Xfade – Crossfades, wipes, and other transitions
- Blend – Examples for blend filter
- Postprocessing – Postprocessing low-quality video with FFmpeg
- Stereoscopic – 3D movies with ffmpeg
- Null – Filter for testing decoding speed
- Null filter and anullsrc source - How to use them to fix TV playback issues
- WaveformMonitor – Waveform Monitor in FFmpeg
- Vectorscope – Vectorscope in FFmpeg
- Histogram – Histogram in FFmpeg
- Afade audio filter curves illustrated
- Remap – Copies pixels from source frame to target frame based on mapping files/streams
- Audio Channel Manipulation – Upmix, downmix, split, and manipulate audio channels
- Audio Volume Manipulation – Change audio volume and perform normalization (peak, RMS, EBU R128)
- How to remove advertising - Use drawbox and delogo filters combined with segment muxer
- Cropping a video stream - An alternative to cropdetect filter
- Denoise Examples - Denoise filter examples for end-users
Images / Frames
- Create a video slideshow from images
- Create a thumbnail image every X seconds of the video
- How to take multiple screenshots to an image (tile, mosaic)
- Create a mosaic out of several input videos
- Create a mosaic out of several input videos using xstack
- Create a sliding and bouncing overlay
- Create a Waveform Image from an Audio Stream
Subtitles
- How to burn subtitles into the video
- How to convert other FFmpeg-supported subtitles to ASS format
- How to convert YouTube SBV to SRT
- How to extract subtitles that are included within video files.
- How to extract and remove closed captions
- Managing other languages than English
Developing Programs Using the FFmpeg Libraries
- How to setup Eclipse IDE for FFmpeg development
- Using libav* – Instructions for how to integrate FFmpeg's main libraries into your own custom programs
- Including FFmpeg headers in a C++ application
- List of FFmpeg API changes/compatibility test results
- Lei Xiaohua's Simplest FFmpeg Demos
- Migration notes for major bump on 2021-04-27
Miscellaneous
- General command line usage:
- Solutions to some errors and messages
- Creating multiple outputs from the same input
- How to concatenate, join, or merge media files
- How to use -map option to select exactly which streams to process
- Seeking to split a file or select a segment
- framemd5 Intro and HowTo for using per-frame checksums
- FFprobe Tips for getting frame rate, frame size, duration, etc.
- How to check if Fast Start is enabled for playback using the -v trace option
- Understanding -itsoffset option
- Effects:
- How to speed up / slow down a video time lapse, etc.
- Video:
- Audio:
- Audio Types – List of the different types of raw audio
- FFmpeg and the SoX Resampler – High quality audio resampling
- Working with other tools:
- Other:
- How to ask good questions on ffmpeg-user mailing list
- Articles for Creation – A simple idea/reminder list for new community contributed wiki articles
- Downstreams – A list of downstream software products that distribute FFmpeg, including versions and end-of-life dates
- Projects – A list of free projects and programs known to incorporate work from FFmpeg.
About this Wiki
License
The materials within the Community Contributed Documentation section of the FFmpeg Wiki are released under the Creative Commons Attribution-ShareAlike 3.0 License. This allows anyone to share, adapt, and build upon this work, even for commercial purposes, as long as the same or compatible license is used and that credit is properly attributed to the author(s). Credit should be attributed to "Contributors to the FFmpeg Community Documentation Wiki".
Wiki Page Index
For a complete list of all local wiki pages, see TitleIndex.
Trac Documentation
Trac is what FFmpeg uses for tracking bugs (and also hosts this wiki).
- TracGuide -- Built-in Documentation
- The Trac project -- Trac Open Source Project
- Trac FAQ -- Frequently Asked Questions
- TracSupport -- Trac Support