0

I have a lot of video files (over 1000) that I need to convert to H.265/HVEC. The videos range in length from a few minutes to a couple of hours. Most are 1080p. My plan is to do them in batches at night on my laptop using ffmpeg. It's a pretty high-end Dell XPS 15 with the following specs:

  • 64GB DDR4-2666MHz, 2x32G
  • NVIDIA GeForce GTX 1650 4GB GDDR5
  • 2TB PCIe Solid State Drive
  • 9th Generation Intel Core i9-9980HK (16 MB Cache, 8 Core)
  • Xubuntu 20.04

My concern is whether this much video conversion will put up too much wear and tear on my computer, and I'll end up with one or more burnt-out pieces of hardware before I'm done. Ultimately, I have two questions:

  1. Is it safe to do this much video conversion on my laptop?
  2. If so, are there any steps I should take to minimize the wear and tear on my machine (ffmpeg flags, closing other applications, turning a fan on my laptop while it runs, etc.)?

I appreciate any help the community can provide me. Thanks!

3
  • “My concern is whether this much video conversion will put up too much wear and tear on my computer…” This should not be an issue with modern PCs. If you are concerned, do something like 10 a day to give the machine a break. Mar 12, 2022 at 5:07
  • Well, as I said, I would only run this overnight, so my computer would get a break during the day. Mar 12, 2022 at 5:13
  • 2
    A processor does not wear out.....If your processor is running within it's specifications it will not "wear out", it might fail, but that would happen regardless of how you used it. An IC will either fail or not fail. How it's used, unless you overclocked it beyond it's specifications, and it overheats it likely won't fail.
    – Ramhound
    Mar 12, 2022 at 5:28

1 Answer 1

2

minimizing heat

Note that electronic devices can fail in unpredictable ways. There is a rule of thumb that every increase in operating temperature of 10°C will half the lifespan of an electronic component.

Notebooks often have problems with overheating, that said, an extra fan is never a bad idea.

You could always check your systems temperature while encoding with sensors.

If you are really worried about premature failure, you could use a combination of nice, cpulimit and ffmpegs -threads option to limit the CPU load:

nice -10 cpulimit -l 60 -- ffmpeg -i in.mkv -c:v libx265 -threads 2 out-h265.mkv

You should also use GPU acceleration with ffmpeg, which will significantly increase the encoding speed and should relive the CPU from some load.

batch conversion:

While that is not in the scope of your question, I will add it anyways as it might helps. What I am currently using for batch converting is the following:

find . -type f \( -name "*.avi" -o -name "*.mp4" -o -name "*.mkv" \) -not -name "*265*" -size +2400M -size -2700M -execdir bash -c 'if [ ! -f fail ]; then conv_h265 {} || touch fail; fi' \;

This snippet will find any video which is not yet converted to h265 and not failed (by my naming convention) and pass the filename to my conversion script.

It will add a file called fail to the folder in case ffmpeg exited with an error to make it easier to find files where I need to modify some parameters. Note that sometimes an error slips through anyways, that is why I always check manually if the output files are complete before deleting the originals.

This is my conversion script, which will also copy all audio and subtitle streams and rename according to my convention:

name="${1%.*}"
ext="${1##*.}"

ffmpeg -i $1 -c:v libx265 -vtag hvc1 -map 0 -c:a copy -c:s copy -n $name-h265.mkv

Note that I run the encoding on decommissioned enterprise servers where heat is not a problem.

Not the answer you're looking for? Browse other questions tagged .