I am not an expert in codecs and hardware.
I lead with that because when I rip media and transcode it down for smaller storage, I am not doing so with a ton of experience with a thousand GPUs and a lot of understanding of how to optimize everything. If you’re looking for a technical deep-dive about what codec to use, this is not that blog post.
I’ve been using Handbrake for about 15 years now, and tried a lot of different presets. Not that I understand all of it- this is truly trial and error on my part. I often start by transcoding a single chapter of a movie/show, and I compare it with the original file- if I like what I see, I use that setting. That’s it. I’m not an expert.
I’m putting out a video shortly about my media habits and I trust that the comments will guide me toward more info (please be kind), but in the meantime, here’s what I currently use.
I start with the Matroska AV1 preset.
After ripping the files using MakeMKV, I basically start with the AV1 preset found in the Matroska section of the “presets” dropdown.
I know that some devices have a hard time with AV1, but none of mine do. I mostly watch video on a HTPC which has no trouble at all with AV1 encoded video. We occasionally watch on an iPad, and it doesn’t seem to struggle with it either. Maybe Jellyfin is transcoding it, but still, it’s no trouble for me.
What I like about AV1 is that the files are so much smaller than with H264 or H265. I used H265 for a number of years before Jellyfin got AV1 presets, and they also looked great, but the files were a smidge bigger.
I think if I had an Intel chip or GPU I could use hardware accelerated AV1? I don’t know- I don’t have one of those!
I then modify the AV1 preset a bit.
I make a few adjustments to the preset when I’m setting up Handbrake for the first time.
Video tab: encoder preset 3
First thing I do is go to the Video tab and set the encoder preset from 5 to 3. This makes encoding significantly slower, but the files are smaller and I feel like the quality looks a tad better.
It ends up looking like this:

Note that when I say “significantly slower”, I mean it. I’m on a Ryzen 9 7900X and it takes about as long as the media itself takes to play, maybe even a bit longer.
If I was doing this on a slower PC, I’d opt for a higher encoder preset simply because of speed. As I understand it, the encoder preset basically tells Handbrake to take more time optimizing the images, and a lower number equals more time. (If you ask me, it’s not intuitive.) Handbrake says to “set this option to the slowest you can bear” and that’s what I did.
I generally keep AV1’s “quality” setting on 30 for most content. For some sci-fi videos (which are heavier on dark scenes) I’ve dropped this down as low as 24, but it adds a significant amount of time to the encoding. Any lower than that and I just can’t notice a difference (and the file sizes aren’t small enough for me to care- at that point I would just keep the files as I ripped them).
Audio tab: select all English audio
Next, I modify the audio selection behavior to select all English audio tracks.
This can be hard to find, you have to hit “Selection Behavior” above where the audio tracks show up:

Then, I set the “Track Selection Behavior” to “All Matching Selected Languages”. This is because I enjoy listening to commentary tracks.
I also typically pass through FLAC and AAC, not that they come up all that much. I also checked Opus for passthrough audio as well… it’s never once come up, but I still would just pass it through!
I use the Opus encoder, but change the bitrate/quality to 192 and set the mixdown as 7.1. The mixdown settings use stereo as a default, but I have a surround system in the living room. Note that since Handbrake won’t “upmix” stereo to a higher file size, this basically sets the “maximum number of channels” at 7.1- if you have a stereo source, you still get stereo on the output.
So in the end, it looks like this:

If you’d already loaded your content, don’t forget to hit “Reload” when you’re done making changes, that way you don’t accidentally work with the wrong audio. I typically load content after making changes to the preset just to avoid that issue.
Subtitle selection
Next I go to the Subtitles tab, and once more, hit the “Selection Behavior” option (it’s in the same place as it was for the Audio tab).
I recently started modifying this after ripping the film “Stargate” from Blu-Ray, and discovering that I’d lost all of the alien language subtitles. Sometimes, these subtitles are embedded in the video, but not always!
I set the track selection behavior to “All Matching Selected Languages” and then select “English” from the list of available languages. This is because I want all of the English subtitles- occasionally I’ve found the subtitles for commentary tracks helpful.
Then I make sure “Add Foreign Audio Scan Pass” is checked, and I pass through the track names as well.
Lastly, I set the burn-in behavior to only burn in the “Foreign Audio Subtitle Track” as I don’t want subtitles burned in to all of the video, and critically, I disable both “Burn-In for deficient players” options, as I noticed they burned in subtitles across the board in Jellyfin.
So in the end, the selection behavior looks like this:

Save and start transcoding!
Typically, after I make changes, I save a new preset, which Handbrake provides a handy-dandy button for right next to the presets (assuming you’ve modified one, you won’t see the button before you start).
I like to name my presets very boring names like “AV1 SVT RF30 Preset 3” so that I remember what I changed. When I’m experimenting, I literally write down what I used and name my output files accordingly so it’s easy to know what looks good.
It’s a lot of fiddly trial and error, but I have found that these settings work for the majority of my videos. Sometimes I raise the quality by dropping the quality setting (so intuitive) from 30 to 27, but often then I’ll raise the preset to 4 or 5 to improve the speed of the encoding. It’s really fiddly!
I hope this helps. I know at least for me, it’ll be helpful to look back on this blog post when I make changes thanks to new features with Handbrake, or if I ever try ffmpeg again. Who knows what the future holds?
Thanks for reading!
The written version of Veronica Explains is made possible by my Patrons and Ko-Fi members. This website has no ad revenue, and is powered by everyday readers like you. Sustaining membership starts at USD $2/month, and includes perks like a weekly member-only newsletter. Thank you for your support!