Serverus Posted December 17, 2022 Share Posted December 17, 2022 So surprise surprise, but Handbrake is available as an Unraid Docker! This blows my mind, and I couldn't be happier it exists and works, but my current Unraid box (Serverus) runs without a dedicated GPU. See below for the current configuration. I'm reasonably sure that Handbrake supports GPU acceleration, and so I'm wondering if anyone knows of a good GPU that I could add to Serverus to help assist Handbrake's encode process. Ideally I'm looking for something that has the smallest electrical/heat footprint when not being used, since I really wouldn't even want/need it to assist in Plex transcoding, but one that would significantly cut down the time/CPU usage when running a Handbrake encode (I'm currently averaging about 8.44 FPS at 1080p super settings, for anyone interested). Any thoughts or suggestions? Thanks very much in advance! Serverus Specs: Motherboard: MSI Z590-A PRO CPU: Intel® Core™ i5-10400 RAM: 16GB DDR4 Storage: 6x 12TB Seagate Exos = 60 TB usable storage Cache: 1TB nvme SSD Case: Fractal Design Meshify 2 Quote Link to comment
Serverus Posted December 17, 2022 Author Share Posted December 17, 2022 The attached screenshots explain a little more about what makes me worry/wonder if adding a GPU would help. My temps are still doing pretty okay all things considered (although I don't think I have any means to track the CPU temps atm). Presently, I'm not feeling any enormous slowdown on Serverus while this is running. Music on Plex is just fine, and I only noted one or two random buffers when streaming a 1080 movie at 5469 kbps, so I suppose the machine is doing alright. But all the same I'd love to know if there's a way I can supplement what Serverus is doing via Handbrake encoding to make things more efficient and faster. Quote Link to comment
MAM59 Posted December 17, 2022 Share Posted December 17, 2022 (edited) All gpu encoding i have ever tried (intel internal, external AMD Gaming Card, internal AMD) gave fast performance, but low quality and huge files. So I stayed away from this stuff. Handbrakes Software encoder is excellent, can be fine tuned and produces high quality and small sized output. But your Hardware is not really (or better: at all) suitable for this program, get 12 or 16 more cores, double clockspeed and much more ram. And running Handbrake in a Docker is also not the brightest idea too I think. But, if you like to spend a month to process a single movie, carry on. Edited December 17, 2022 by MAM59 Quote Link to comment
ajira99 Posted January 13 Share Posted January 13 On 12/17/2022 at 12:16 AM, Serverus said: So surprise surprise, but Handbrake is available as an Unraid Docker! This blows my mind, and I couldn't be happier it exists and works, but my current Unraid box (Serverus) runs without a dedicated GPU. See below for the current configuration. I'm reasonably sure that Handbrake supports GPU acceleration, and so I'm wondering if anyone knows of a good GPU that I could add to Serverus to help assist Handbrake's encode process. Ideally I'm looking for something that has the smallest electrical/heat footprint when not being used, since I really wouldn't even want/need it to assist in Plex transcoding, but one that would significantly cut down the time/CPU usage when running a Handbrake encode (I'm currently averaging about 8.44 FPS at 1080p super settings, for anyone interested). Any thoughts or suggestions? Thanks very much in advance! Serverus Specs: Motherboard: MSI Z590-A PRO CPU: Intel® Core™ i5-10400 RAM: 16GB DDR4 Storage: 6x 12TB Seagate Exos = 60 TB usable storage Cache: 1TB nvme SSD Case: Fractal Design Meshify 2 You'll typically see smaller file sizes and some (minimal) quality improvements when encoding with Handbrake's software-based encoder, but it can be a resource hog. Depending on your use case, even a GTX970 can do a good job transcoding files. I'm using my old desktop machine with an i5-4690K and a GeForce GTX1070 as a transcoding setup until I finish my server rebuild -- 3 x 24GB 1080p h.264 mkvs can be transcoded to between 2-5GB h.265 files in about 15 mins. (depending on the film content). A 4K file is about 6GB and takes about 30 mins. on my system. I don't have a dedicated home theater, so a 1080p file at >2900Kbps looks perfectly fine on my 55" OLED (even from less than 7 ft. away). Any files that are blurry or pixelated can be re-ripped at a later date. I have thousands of DVDs, hundreds of Blu-Rays, and I've spent more than I care to remember on hard drives -- I'm to the "it looks good enough, so just play the movie" phase of my life where convenience means more than 100% fidelity. As a suggestion, I would look into using Tdarr instead of Handbrake. It can handle bulk transcodes, or just setup a watch folder that will be automatically monitored. Plus, you can setup networked nodes to process files between multiple computers. Video decoding will still use your CPU, but the encoding will take place on the GPU(s) you specify. You'll want at least a GTX970 for h.265 encoding, but a GTX1650 Super seems like the sweet spot. Check the NVENC GPU support matrix here: https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new. SpaceInvader One has a good series of tutorials on Tdarr starting here: If you're a perfectionist, you may just want to transcode only 4K files to save drive space, but I process high bitrate files from 720p and higher. Hope this helps. Quote Link to comment
abws Posted February 2 Share Posted February 2 Your server is a Comet Lake gen 10 CPU with integrated GPU UHD 630. It is supported by Handbrake Intel QSV https://handbrake.fr/docs/en/latest/technical/video-qsv.html . All you have to do is add the device file to the docker definition. I use portainer and add: devices: - /dev/dri/renderD128:/dev/dri/renderD128 - /dev/dri/card0:/dev/dri/card0 - /dev/video0:/dev/video0 - /dev/video1:/dev/video1 - /dev/video2:/dev/video2 - /dev/video4:/dev/video4 but this depends the computer hardware. I woulmd check what is under /dev and starts with /dev/video<x> and /dev/dri/card<x>. Though it seems unraid has its own way of adding device to containers. See this link: Here they add a directory with --device="/dev/dri/". /dev/video<X> are for decoding and encoding. Note Tdarr looks great. Under the hood it runs Handbrake or directly FFmpeg. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.