1

Converting ~30 files at once with ffmpeg to mp4, and it took around ~19 hours to finish. My CPU was at 100% the whole time.

Is there any drawback in doing this many encodes at once, if time is not a big concern?

Like can ffmpeg lose frames or something because the CPU is busy and thus corrupt a file, make lower quality files or something.

3
  • No concern. This is what computers are designed for. Obviously, industrial computers are designed for years of work without turning off, but even a home computer should perform normally with proper cooling. Modern computers throttle themselves down if cooling is not adequate, so you should not experience a meltdown. If you notice that your computer behaves less stable under load, freezes or reboots, then it is a sign to replace the computer (or at least RAM modules and/or HDD).
    – Rusty Core
    Commented Jul 5, 2019 at 21:29
  • @RustyCore I was thinking more if doing this could impact the quality of my encoded files because I'm overloading the CPU. It's a server in a datacenter
    – Freedo
    Commented Jul 5, 2019 at 21:32
  • No, it will not impact the quality — it is all digital and is driven by algorithm.
    – Rusty Core
    Commented Jul 5, 2019 at 21:33

1 Answer 1

1

This is a very broad questions so let me try to answer it in a general sense.

Yes, it is more likely for corrupted files to appear when encoding more files. It is only more likely by a very thin margin though, so using a batch-render-queue is not something to "not do" - in fact, many big budget productions use render-queues to render many many sequences one after another, and I personally wouldn't demotivate you from doing it. However, encoding to mp4 (I assume h.264) always comes with compression, meaning that the file will be lossy and not as good as the original. The CPU being at 100% shouldn't cause any problems though if you didn't overclock your cpu or tinkered with the flags from within ffmpeg (which I assume you didn't do).

4
  • So the only drawback of launching multiple ffmpeg encodes is that each one will take longer? Creating a queue would be too much complex for me. Easier to just launch many and wait
    – Freedo
    Commented Jul 5, 2019 at 18:56
  • If you are running so many processes at once that your computer runs out of memory, then the speed will be MANY times slower than it would normally be, because the computer will start swapping memory out to hard disk, which is thousands of times slower than RAM. It will also shorten the life of your HDD. It's worth your time learning a little bit of scripting to avoid this. A description of how to do it is on my blog here (scroll down to part II): blob.pureandapplied.com.au/proxynator
    – stib
    Commented Jul 7, 2019 at 11:36
  • @stib I'm on linux sadly :/ but memory is not a issue
    – Freedo
    Commented Jul 23, 2019 at 8:06
  • You can certainly use that technique on posix systems, It's been a while so I'm not the person to ask about bash or zsh, but it's not hard to find. This kinda thing is why shell scripting exists, on all platforms
    – stib
    Commented Jul 23, 2019 at 12:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.