this post was submitted on 13 Feb 2024
42 points (90.4% liked)

Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ

54029 readers
480 users here now

⚓ Dedicated to the discussion of digital piracy, including ethical problems and legal advancements.

Rules • Full Version

1. Posts must be related to the discussion of digital piracy

2. Don't request invites, trade, sell, or self-promote

3. Don't request or link to specific pirated titles, including DMs

4. Don't submit low-quality posts, be entitled, or harass others



Loot, Pillage, & Plunder


💰 Please help cover server costs.

Ko-FiLiberapay


founded 1 year ago
MODERATORS
 

Hi fellow sailors,

i have lots of downloaded... ISOs... that i need to converto to save space. I would like to make them all of the same size, let's say 720p, and same format, let's say h265.

I am on linux and the... ISOs... are sorted into a neatly named hierarchy of sub-folderds, which i want to preserve too. What is the best tool (CLI) for the scope? I can use ffmpeg with a bash script, but is there anything better suited?

you are viewing a single comment's thread
view the rest of the comments
[–] AnEilifintChorcra@sopuli.xyz 16 points 7 months ago* (last edited 7 months ago) (1 children)

I've been using a for loop with ffmpeg to convert to AV1

I start in the series root folder and it iterates through each seasons subfolder

for f in ./**/*.mkv; do
      ffmpeg -i "$f" -c:v libsvtav1 -crf 0 "{f%.*}.av1.mkv"; done

Since I'm happy with the quality of everything so far, I've added this to the start to make it easier to delete the old files

for f in ./**/*.mkv; do
      mv "$f" "${f%.*}.xyz.mkv"; done

And at the end I've added this to delete the old files

for f in ./**/*.xyz.mkv; do
      rm " $f"; done
[–] Lemmchen@feddit.de 3 points 7 months ago (1 children)
[–] AnEilifintChorcra@sopuli.xyz 5 points 7 months ago

The valid CRF value range is 0-63, with the default being 30. Lower values correspond to higher quality and greater file size.

https://trac.ffmpeg.org/wiki/Encode/AV1

I compared a bunch of crf values, taking video quality, encode time and file size into account on a few episodes from some of my favorite shows and ended up settling on this.

For the most part, I don't notice a quality difference compared to my source, but it might just be because of my bad eyes or my monitor lol. But I did notice quality differences around 35 + so they were out.

At crf 0 I'm encoding a 40 min epsisode in about 5 mins which I'm happy with, I probably could have saved time going for a higher value but most of the time I run the script when I'm sleeping so time wasn't a big issue as long as it wasn't taking 20+ mins to encode 1 file

Going for 0 meant I'd have as close to the same quality as my source, using the default preset, and I didn't notice huge file size differences between 0 and 30.

I've encoded pretty much all of my TV shows now and I've dropped the size of my TV directory to about 1/4 of the original size so going for a higher crf value didn't seem worth it to me, if I had noticed that my file size at crf 5 was half what it is at crf 0 then I would probably have went with crf 5

I think its pretty subjective some people are happy with 720p and others won't settle for less than 4k so I don't think this would be a great solution for everyone to do but I think people should play around with different parameters to see what works best for them.