lisamelton / other_video_transcoding

Other tools to transcode videos.
MIT License
555 stars 26 forks source link

Best DVD compression settings on an Intel MacBook Pro? #150

Open muesic opened 2 years ago

muesic commented 2 years ago

Pretty much all of my library is thousands of ripped DVDs (I maybe have 6 Blu-rays). DVDs are mostly 480p - nothing much to write home about resolution wise. Some of the stuff is 4x3 from the old days, but most is studio movies or widescreen TV series. If I was staring down the barrel of using ffmpeg, I'd just die with all the infinite options. other-transcode is much more manageable and produces the best results I've seen for the final size - it really is wonderful. Given that I intend to write a script to plow through thousands of movies and episodes, I was hoping to get a sanity check on a fixed other-transcode command line I wanted to use. I think I've already decided on hevc, so how's this:

other-transcode --dry-run --hevc --crop auto --target 480p=1500 --add-subtitle eng

Any thoughts? Is it harmful to always include --deinterlace? Do I want --10-bit? Note that I'll be viewing my stuff on a 75" TV, so I'll likely notice more annoyances than if the screen size was a lot smaller.

skj-dev commented 2 years ago

FWIW, I don't even compress DVD content. I just put the rips into Plex, and leave it at that. Even thousands of titles of 480p content will easily fit on today's multi terabyte drives, so storage savings isn't really a factor. 480p content will always direct play without something like Plex trying to transcode. The reason I bring it up is I'm curious what you're trying to accomplish by compressing DVD content.

muesic commented 2 years ago

So a few responses to that.

  1. I have over 20TB of uncompressed content, and that's all backed up so over 40TB altogether. I've been upgrading hard drives multiple times over the years and I'm soooo done with that.

  2. I've deliberately not compressed anything while I wait for a worthy compression technology to mature - I think I've found that with hevc. Don's tools don't really yield any distortion I can notice so I'm going for it!

  3. I've tried to view my media remotely e.g. while on vacation. The raw file sizes (e.g. 6-7GB per movie) typically max out the available data rate in most of the places I've been, and especially in hotels. Less size = less data rate = more reliable viewing remotely.

skj-dev commented 2 years ago

Okay, but ...

You'll still be keeping the uncompressed content, right? Don's tools are not archiving tools. So you're going to have a net gain in storage usage, since you'll have the originals and the compressed versions now.

As far as viewing things remotely, a 720p resolution title is gonna be ~5Mbps. If you put something like Plex in front of the media, then if the client rate was less than ~5Mbps Plex could dynamically transcode the media down.

It just seems like an odd use case to me, but it's quite likely that I'm the odd one. :)

muesic commented 2 years ago

I'll probably compress everything on my main 20TB NAS box and leave my other 20TB back up NAS box alone to start with. I'm still accumulating content, and by the time I kick the bucket I'll likely have the main 20TB NAS box full of only compressed media and will have been forced into compressing the backup NAS box (and I'll probably be too senile to watch it all by then anyway).

I also thought of another reason for my earlier reply:

  1. The cost of buying more drives and bigger NAS boxes to hold them all. The last "upgrade" cost me about $1k.

Anyway, enough of this sidetrack - I don't want to distract Don from responding to my original post ;-).

lisamelton commented 2 years ago

@muesic Honestly, I agree with @ttyS0. I don't bother transcoding DVD content either. I just let Plex handle it dynamically.

But if you really want to know the best options for DVD video and audio then I would just use the defaults. That's why they're the defaults. Of course, I do recommend --hevc --10-bit if your transcoding machine can do that in hardware.

muesic commented 2 years ago

I just have a 2019 16" MacBook Pro and am generally unaware of what that means for video encoding hardware :-/. I presume if I omit the --10-bit option that I'll then be getting 8-bit.

Sigh. Given all the hassles I'm having here (subtitles, vob source material) I'm half wondering if maybe I should jump across to HandBrake. Those guys have just confirmed their video encoder can't defer to ffmpeg if I give it a bunch of ffmpeg arguments that came via other-transcode, so maybe I should try a set of HB video encoder settings that come from transcode-video (which is based on HandBrakeCLI) - I can then pick up all the existing HandBrake capabilities (like forced subtitles) for free. I know you've deprecated that software, but provided the video quality for the file size is pretty much the same then that might be a viable path forward for me. I know other-transcode focuses on hardware encoding, but would you say the two tools yield about the same video quality for a given file size?

lisamelton commented 2 years ago

@muesic That MacBook should be able to generate 10-bit HEVC provided you're running a recent version of macOS.

The ratecontrol systems and tunings used in transcode-video are very different from other-transcode. They do not yield the same video quality or file size.

muesic commented 2 years ago

Rats. One final thing to ponder before I hit the sack. Are the ffmpeg arguments from the other-transcode --dry-run output available in a variable to use inside a script?

skj-dev commented 2 years ago

You mean like this?

FFMPEG_COMMAND=$(other-transcode —-dry-run foo.mkv 2>&1 | grep ^ffmpeg)

muesic commented 2 years ago

Yes - just like that :-).