FFMPEG is an [[LGPLv2.1]] licensed media transcoder and manipulation tool written in [[3. Reference/Software/Programming Languages/C|C]]. - [Website](https://ffmpeg.org/) - [Source](https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/README.md) - [Documentation](https://ffmpeg.org/documentation.html) - [AlternativeTo](https://alternativeto.net/software/ffmpeg/about/) > FFmpeg is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata. # Notability # Philosophy ## avconv Split A group of `ffmpeg` developers split off in 2012 and formed `avconv` which shipped its own versions of `ffmpeg` with error messages and libraries that confused a lot of people. The `aconv` fork was discontinued in 2019 and is now defunct. # Platform Support # Features # Tips ## OCR & TTS - https://dev.to/video/exploring-ocr-and-text-to-speech-in-ffmpeg-2o61 ## Losslessly Change Container ```sh ffmpeg -i video.mkv -c:v copy -c:a copy -map 0 -sn output.mp4 ``` ## Remove Audio ```sh ffmpeg -i video.mkv -c:v copy -an output.mp4 ``` ## Extract Audio to File AKA remove video. ```sh ffmpeg -i video.mkv -vn -acodec copy -map a output.aac ``` The `-map a` is needed to tell `ffmpeg` not to worry about subtitles or any other video streams that won't fit into the target container. ## Extract DTS Audio to File [[Solus]]'s build of `ffmpeg` doesn't include the DTS/ADTS muxer. To build it in: ```sh git clone https://git.ffmpeg.org/ffmpeg.git cd ffmpeg ./configure --enable-muxer=adts make ``` # Resources ## GUIs - https://sites.google.com/site/dmsimpleapps # References - https://askubuntu.com/questions/50433/how-to-convert-mkv-file-into-mp4-file-losslessly - https://github.com/jspw/Little-Fun-Stuffs/tree/main/mkv%20to%20mp4%20converter - https://superuser.com/questions/472420/handbrake-settings-to-convert-mkv-to-mp4-while-retaining-the-original-quality - https://superuser.com/questions/268985/remove-audio-from-video-file-with-ffmpeg - https://stackoverflow.com/questions/42542906/ffmpeg-what-muxer-do-i-need-to-save-an-aac-audio-stream ## LibAV - https://stackoverflow.com/questions/9477115/what-are-the-differences-and-similarities-between-ffmpeg-libav-and-avconv - http://blog.pkh.me/p/13-the-ffmpeg-libav-situation.html