Things I Learned From `ffmpeg`
Recently a friend had issues playing particular video files with his Plex media center. I told him to send me the files and I’ll have a look at them. I also have some experience with the command line utility and would like to share some things I learned along the way.
- I wrote previously about
ffmpeg
's “-acodec copy -vcodec copy
" option. Apparently there is a shorter version "codec copy
”, which copies both streams without reencoding. - Copying the stream, either via
-acodec copy -vcodec copy
orcodec copy
does the job for nearly 90% of my video encodings. I recently updated all my videos to a format iTunes Mavericks in 64-bit mode (AVFoundation) would understand. Copying the streams worked in most cases. Also all downloads from YouTube or Vimeo convert wonderfully. - You can actually shorten the command to
ffmpeg -i movie.avi movie.mp4
to convert straight from AVI to MPEG4. - youtube-dl and jDownloader are two really useful tools.
- That said, tools like MediaInfo and Invisor make your life as video pro a lot easier. Both base on MediaInfo, and there is a CLI available for MediaInfo.
ffmpeg
had a-sameq
option, which some users made believe it means “same quality, but it’s not. It means "same quantizers", which is something totally different.- To actually convert something using 1:1 quality use the
-qscale 0
option (which the CLI recommends when you accidentally invokesameq
). - The current default to try is:
ffmpeg -y -i movie.avi -codec copy movie.mp4
. Then I’d suggest using something else. - If CLI is to hard to use for you, use VLC directly or use an alternative app, that is much easier to use, like HandBrake.