When comparing HandBrake vs ffmpeg, the Slant community recommends ffmpeg for most people. In the question“What are the best combined audio & video transcoders?” ffmpeg is ranked 1st while HandBrake is ranked 2nd. The most important reason people chose ffmpeg is:
Among the more common formats ffmpeg can handle are h.264, HEVC(h.265), mp3, AAC, mpeg-4, wmv3, ProRes, QuickTime, SWF, Speex, FLAC, VP9 and [many more](http://ffmpeg.org/general.html#Supported-File-Formats_002c-Codecs-or-Features). To get a full list in terminal type: ffmpeg-formats
Ranked in these QuestionsQuestion Ranking
Pro Great, easy to use presets
There are presets for everything, so you don't have to delve deep in to advanced features if you don't want or need to. And in most cases you won't have to because the presets are great.
Pro Advanced features
Although HandBrake is pretty straightforward to use, you can adjust pretty much any aspect of your conversion if necessary. For example, when transcoding video you have the option of adjusting between constant and variable framerate, adjusting average bitrate and constant quality, having 2-pass encoding or not, as well as tinkering with encoder specific options, and many, many, many more options.
Since version 0.9.9. HandBrake has been very fast.
Pro Wide range of formats and multiple media types supported
HandBrake can handle DVDs, Blu-Rays, .mp4, .mkv, H.264(x264), MPEG-4, MPEG-2, AAC, MP3, FLAC, AC3, Vorbis, AC-3, DTS and DTS-HD among others.
Pro Often works when dumping archiving disc to hard drive methods do not
Pro Free and open source
HandBrake is licensed under GPL.
HandBrake works on Windows, Linux and OS X.
It is designed to convert, no added bloat.
Pro Good metadata support
HandBrake can pull, use and edit metadata.
Pro Command Line Interface option
There's HandBrakeCLI if you wish to use HandBrake frome a terminal.
Pro Encoding options are comprehensive but easy to use up front
The GUI makes it easy to encode by providing profiles and a simple GUI, but offers extensive encoding options for people willing to learn and spend time experimenting.
Pro Extensive list of formats supported
Among the more common formats ffmpeg can handle are h.264, HEVC(h.265), mp3, AAC, mpeg-4, wmv3, ProRes, QuickTime, SWF, Speex, FLAC, VP9 and many more. To get a full list in terminal type: ffmpeg-formats
Works on Linux, OS X and Windows.
In addition to having great flexibility over demuxer, decoder, processer, encoder, muxer choice and settings, ffmpeg can crop, stream, merge audio and video from different sources and perform many other tasks.
Pro Free and open source
Licensed under LGPL.
Pro Screen capture
You can use ffmpeg to record your desktop along with audio.
Pro Excellent streaming support
Because ffmpeg allows transcoding on the fly and supports multiple streaming protocols such as rtmp, rtsp, http, ftp, hls, you can use it to stream to services such as twitch.tv or set up your own streaming solution.
You can use both local realtime recordings or another stream as a source, transcode it if necessary, and output it to a different stream.
ffmpeg -i rtmp://server/live/originalStream -c:a copy -c:v libx264 -vpre slow -f flv rtmp://server/live/h264Stream
Con Supports only two containers
You can output only .mp4 and .mkv.
Con There is no way to preserve menus and special features
Menus and special features will typically not be included in the output from a handbrake encode. Third party software would need to be used.
Con no linux support for hw acceleration
I know that it is not as high quality, but transcoding terabytes of 1080p videos to h265 without hw support isn't realistic and wont be for a long time
Con Not for 1:1 archiving or true backup use
Most uses of Handbrake are lossy, lossless is possible but it usually entails crazy huge file sizes.
Con Steep learning curve
Unless you use a front-end (that has reduced functionality), ffmpeg might be intimidating at first.