I have a collection of about ~110 4K Blu-Ray movies that I’ve ripped and I want to take the time to compress and store them for use on a future Jellyfin server.
I know some very basics about ffmpeg
and general codec information, but I have a very specific set of goals in mind I’m hoping someone could point me in the right direction with:
- Smaller file size (obviously)
- Image quality good enough that I cannot spot the difference, even on a high-end TV or projector
- Preserved audio
- Preserved HDR metadata
In a perfect world, I would love to be able to convert the proprietary HDR into an open standard, and the Dolby Atmos audio into an open standard, but a good compromise is this.
Assuming that I have the hardware necessary to do the initial encoding, and my server will be powerful enough for transcoding in that format, any tips or pointers?
Skipping the audio encode from a blu-ray will lose op out on a surprisingly large amount of space, especially with 110 source disks. I checked one of my two hour blu-ray backups. Audio will net you about nine audio tracks (english, french, etc). A single 5.1 448kbs audio track will take about 380MB of space per movie. Multiply that by nine (the number of different tracks in my sample choice) and you’ll get 3420MB per disk. That means about 376GB of space is used on audio alone for ops collection. A third of a terabyte. You can save a lot of space by cutting out the languages you don’t need, and also by compressing that source audio to ogg or similar.
By running the following ffmpeg command;
ffmpeg -i out-audio.ac3 -codec:a libvorbis -qscale:a 3 small-audio.ogv
I got my 382MB source audio track down to 200MB. Combine that with only keeping the language you need, and you end up dropping from 376GB down to 22GB total.You can likely save even more space by skimping on subtitles. They’re stored as images, so they take up a chunk of space too.
Please use Opus instead of Vorbis. Vorbis is old and had been superseded by Opus.