I'm currently using Handbrake on a windows 11 installation of a desktop computer. I am planning on turning this desktop computer into a NAS and media server to replace my current raspberry pi 4 system. Handbrake works great on this computer, but I was wondering how I could use Handbrake on this system after I convert it into a media server.
Given that I wouldn't normally have a GUI to work with for Ubuntu Server, would it make more sense to install Handbrake in a ProxMox VE container, or should I use the docker version of Handbrake? Would there be a performance impact if I were to use the docker container?
The docker container has a web UI, while if I were to use ProxMox, I could have a full fledged OS to work with.
I wouldn't wish using ffmeg on my worst enemy. The cli requires a sophisticated understanding of encodings and codecs which makes writing a general "I want to rescale things" script weirdly complicated.
The cli options seem to change as well since I rarely am able to run a ffmpeg line found in the wild with any success. Some systems even ship "avconv" instead which makes this even more exciting.
I had the pleasure recently to create an ffmpeg command to transcode a video into HEVC 10bit with quicksync.
I had tha previously running completely fine on my Nvidia GPU. You would think that it would just be replacing the parameter which device or hardware acceleration to use.
Yeah, turns out that there are like 4 ways to set the quality value of the transcoded output, CRF didn't work for some reason with quick sync so you need to use global quality or something. I spend days on this trying to figure this out, DAYS.
It is a very powerful tool but every time I have to use it, it is too complicated and I have to spend hours or days to get it working.
I think you're probably better off using something that's build for media servers. One really nice feature is adding more processing nodes to make things go faster, like a gaming PC while not playing anything. I don't think Handbrake can do that by itself.
I just finished setting up transcoding for my media library, and the options I found were Tdarr, FileFlows and Unmanic. They all use ffmpeg and/or Handbrake under the hood, so it kinda comes down to preference. I went with FileFlows because it seemed the most intuitive to me, and it can also process other media like photos, music, audiobooks and ebooks.
Container should have negligible overhead, the main problem you're going to see is where the in/out files are located and shared. Another plus there for docker, can map that volume to anywhere.
If you need a GUI, then handbrake with a web version sounds great, when I did it years ago they didn't have it.
Since then, I've learned ffmpeg and use that regularly and can schedule jobs well now. Definitely more advanced, but more built for server applications.