I’ve read all over the forums and on Reddit, and can’t find a simple and straightforward answer to this question:
What hardware should I be looking at to do hardware transcoding to h.264/265 quickly and efficiently?
I’ve read that certain GPU’s will handle the encoding part of a transcode (I already have the decode done in hardware) BUT many people say the quality of GPU encoding sucks - is this still the case? Even with a high end GPU?
AND if the answer is get a high end CPU to handle transcodes, what one? I’ve got an older core i7(2600) now, and it seems to work pretty well but my server is becoming more and more popular with my family and I don’t want to run out of streaming ability.
Budget isn’t the main concern here, but I would like to get the best bang for my buck.
I’m using Plex to DVR shows, and real time transcoding to h.264 using the experimental plex option (woks perfect for me so far) as well as streaming a LARGE library of blu ray movies and tv shows.
If you want to do hardware transcoding, you do not need a high-end CPU. Though it can be a bonus. Your best bet is to get a current-generation Intel CPU (which is the Coffee Lake 8-series), but beyond that, you could consider saving money with a low-end processor.
I have a Plex server set up with the Kaby Lake Celeron (not even the Pentium!) that cost 40 freakin’ dollars. But Quick Sync is enabled, so it can hardware decode AVC and HEVC (up to 10-bit!) and transcode to AVC. It works like a charm. So you do not need to break the bank to do hardware transcoding.
The current generation is Coffee Lake, which is nearly the same as Kaby Lake in terms of graphics, but double the number of cores. That can be handy. You could probably order a Core i3 8-series (which is now 4 cores) and be in heaven. Why does CPU power still matter when you’re doing hardware acceleration? Well…
Hardware acceleration has limitations. It only supports AVC and HEVC in decode, and only AVC in encodes. It does not support acceleration or deinterlacing for MPEG2. And if it’s on Plex’s roadmap, it has not been publicly stated. So if you’re transcoding Live TV or DVR recordings from an antenna, it will require more CPU to decode/deinterlace it. My Kaby Lake Celeron can handle one 1080i MPEG2 transcode fine (software decode/deinterlace, hardware encode to AVC). I wouldn’t want to have it handle multiple users too often in that scenario, though.
If I was putting together a Plex Server right now, I’d likely build around the Core i3-8100. Full Quick Sync support and 4 speedy cores. And just $120.
I’m looking to upgrade my current PMS to increase the number of concurrent streams that can be transcoded simultaneously.
At the moment I’ve got a Phenom II 1090T + Geforce GTX 960, so relatively old hardware.
I’ve got quite a bit of HEVC stuff in my library too.
Have been thinking of either going down the Ryzen 2200G/2400G or i3-8100 route.
I can’t make my mind up. I’m finding it difficult to see if the GPUs built into those 2 chips are fast enough to transcode more than the current 2x 1080p that is imposed by nVidia on their consumer cards. i.e. if it makes sense to do what I’m thinking :).
@“Cafe Diem” said:
Hardware acceleration has limitations. It only supports AVC and HEVC in decode, and only AVC in encodes. It does not support acceleration or deinterlacing for MPEG2. And if it’s on Plex’s roadmap, it has not been publicly stated. So if you’re transcoding Live TV or DVR recordings from an antenna, it will require more CPU to decode/deinterlace it. My Kaby Lake Celeron can handle one 1080i MPEG2 transcode fine (software decode/deinterlace, hardware encode to AVC). I wouldn’t want to have it handle multiple users too often in that scenario, though.
Actually QuickSync can handle more codecs that just AVC or HEVC. You can surely deinterlace via QuickSync as well using filters in ffmpeg using “deinterlace_qsv” for example. QuickSync is perfectly happy working with recorded MPEG2 interlaced media.
@“Cafe Diem” said:
Hardware acceleration has limitations. It only supports AVC and HEVC in decode, and only AVC in encodes. It does not support acceleration or deinterlacing for MPEG2. And if it’s on Plex’s roadmap, it has not been publicly stated. So if you’re transcoding Live TV or DVR recordings from an antenna, it will require more CPU to decode/deinterlace it. My Kaby Lake Celeron can handle one 1080i MPEG2 transcode fine (software decode/deinterlace, hardware encode to AVC). I wouldn’t want to have it handle multiple users too often in that scenario, though.
Actually QuickSync can handle more codecs that just AVC or HEVC. You can surely deinterlace via QuickSync as well using filters in ffmpeg using “deinterlace_qsv” for example. QuickSync is perfectly happy working with recorded MPEG2 interlaced media.
Yeah that’s my bad. I specifically meant hardware transcoding in Plex, but didn’t specify that. Quick Sync can handle nearly everything under the sun in a program that supports them.
@“Cafe Diem” said:
If you want to do hardware transcoding, you do not need a high-end CPU. Though it can be a bonus. Your best bet is to get a current-generation Intel CPU (which is the Coffee Lake 8-series), but beyond that, you could consider saving money with a low-end processor.
I have a Plex server set up with the Kaby Lake Celeron (not even the Pentium!) that cost 40 freakin’ dollars. But Quick Sync is enabled, so it can hardware decode AVC and HEVC (up to 10-bit!) and transcode to AVC. It works like a charm. So you do not need to break the bank to do hardware transcoding.
Just out of curiosity, approximately how many 1080p transcoding streams can your on-chip HD 610 GPU handle via QuickSync? I’m interested in both the x265 and x264 numbers for this but they’re difficult to come by.
I’m considering the i3-8100 so imagine the HD630 on that should be a bit better again.
@binman_uk said:
Just out of curiosity, approximately how many 1080p transcoding streams can your on-chip HD 610 GPU handle via QuickSync? I’m interested in both the x265 and x264 numbers for this but they’re difficult to come by.
I’m considering the i3-8100 so imagine the HD630 on that should be a bit better again.
Good question! I’m afraid I can’t help. I only use it for a couple of streams at a time, max, so I’ve never really tried to reach its limitations. Sorry!
@cayars said:
You’ll probably get 5 to 7 streams easily with H.264.
5-7 is enough to be honest. Any idea about HEVC though? I figure that’d be more computationally intensive so would be less than that?
As long as I can get a few more than my current max (GTX 960 2 stream limit) then it’d be perfect for what I need. Otherwise I might have to start looking into alternative options. I wonder if the Ryzen 2200G would be better at the task.
@“Cafe Diem” said:
If you want to do hardware transcoding, you do not need a high-end CPU. Though it can be a bonus. Your best bet is to get a current-generation Intel CPU (which is the Coffee Lake 8-series), but beyond that, you could consider saving money with a low-end processor.
I have a Plex server set up with the Kaby Lake Celeron (not even the Pentium!) that cost 40 freakin’ dollars. But Quick Sync is enabled, so it can hardware decode AVC and HEVC (up to 10-bit!) and transcode to AVC. It works like a charm. So you do not need to break the bank to do hardware transcoding.
The current generation is Coffee Lake, which is nearly the same as Kaby Lake in terms of graphics, but double the number of cores. That can be handy. You could probably order a Core i3 8-series (which is now 4 cores) and be in heaven. Why does CPU power still matter when you’re doing hardware acceleration? Well…
Hardware acceleration has limitations. It only supports AVC and HEVC in decode, and only AVC in encodes. It does not support acceleration or deinterlacing for MPEG2. And if it’s on Plex’s roadmap, it has not been publicly stated. So if you’re transcoding Live TV or DVR recordings from an antenna, it will require more CPU to decode/deinterlace it. My Kaby Lake Celeron can handle one 1080i MPEG2 transcode fine (software decode/deinterlace, hardware encode to AVC). I wouldn’t want to have it handle multiple users too often in that scenario, though.
If I was putting together a Plex Server right now, I’d likely build around the Core i3-8100. Full Quick Sync support and 4 speedy cores. And just $120.
@“Cafe Diem” said:
If you want to do hardware transcoding, you do not need a high-end CPU. Though it can be a bonus. Your best bet is to get a current-generation Intel CPU (which is the Coffee Lake 8-series), but beyond that, you could consider saving money with a low-end processor.
I have a Plex server set up with the Kaby Lake Celeron (not even the Pentium!) that cost 40 freakin’ dollars. But Quick Sync is enabled, so it can hardware decode AVC and HEVC (up to 10-bit!) and transcode to AVC. It works like a charm. So you do not need to break the bank to do hardware transcoding.
Just out of curiosity, approximately how many 1080p transcoding streams can your on-chip HD 610 GPU handle via QuickSync? I’m interested in both the x265 and x264 numbers for this but they’re difficult to come by.
I’m considering the i3-8100 so imagine the HD630 on that should be a bit better again.
Thanks in advance!
One of my other plex machines, i5-6400, did 5 simultaneous x264 transcodes and CPU with overhead to spare. I’d have to go back and find logs for that. I don’t know what ceiling it hits.
@“Cafe Diem” said:
If I was putting together a Plex Server right now, I’d likely build around the Core i3-8100. Full Quick Sync support and 4 speedy cores. And just $120.
Was $90 last week for the i3 at Frys. =) Plex upgrade and to 18.04 for me this weekend, with a $65 Corsair nvme card to free up extra sata ports.
Beautiful. You saw the Plex crew is beta testing the next-generation Transcoder in the preview channel? I haven’t tested it yet, but it is supposed to include hardware decoding of MPEG2.