Jump to content

Using Intel Transcoding


dcol

Recommended Posts

dcol

Hi,

I looked at many topics on transcoding and couldn't come up with any solutions.

I have an Nvidia RX4000 and Intel UHD 750 (CPU i9-9900k) in the Emby server. Right now I primarily use the RX4000 as my primary transcoder with 3 people max transcoding at the same time. Works well.

My issue is I need to pull the RX4000 because I need the PCI slot for a second raid card but do not want to sacrifice any transcoding abilities. Question is, will I be ok just using the Intel GPU or will performance suffer? Some of the viewed content is 4K 10 bit. Most is 1080p. Any help or suggestions is appreciated.

Thanks

Link to comment
Share on other sites

Happy2Play

Shouldn't be an issue but all you can really do is test.  This should probably be in Hardware section, moving to that category.

Link to comment
Share on other sites

dcol

Guess the best thing to do is just turn off Nvidia transcoding and see if anyone has an issue. I would like some feedback on others using Intel UHD transcoding. How many streams can it handle and what thread count should I use sort of thing. This is a dedicated Media server only streaming with Emby and Channels.

Edited by dcol
Link to comment
Share on other sites

lorac

I personally find Intel works better for transcoding than NVIDIA. I have a UHD 630 which works well. 

 

 

 

Link to comment
Share on other sites

dcol

That was very helpful, Thanks. What about the thread count setting? With 16 threads, I figure 8 for transcoding. Is that reasonable? Or should it be set to the max users +1.

Link to comment
Share on other sites

rbjtech
19 hours ago, dcol said:

That was very helpful, Thanks. What about the thread count setting? With 16 threads, I figure 8 for transcoding. Is that reasonable? Or should it be set to the max users +1.

I just left mine at Max (20 in my case) - as ffmpeg always runs at low CPU priority anyway, so transcoding even when using all threads, should never bottleneck other operations.

The UHD630 is a very capable GPU for transcoding and assuming you have a decent amount of memory to share - it can use up to 64Gb of it - ie it will never be memory limited.

It should manage the 3 x 4K transcodes with ease, even with tone mapping, for 1080p transcodes then it should easily do 10+ depending on the workload of course. 

Link to comment
Share on other sites

dcol

Thanks, I do have UHD630, but will upgrade soon to UHD770. System has 128GB memory. 64GB is available for Emby. As long as I am not losing any performance, I will eliminate the RX4000

Link to comment
Share on other sites

rbjtech

Even better - on the UHD770 testing I did, I had 10 x 4K Remux > 1080p transcodes going with tonemapping - so I think you'll have no issues at all with the proposed workloads.

Edited by rbjtech
  • Like 3
Link to comment
Share on other sites

rbjtech

So I thought I'd do a quick experiment - to try and mirror the site below for 4K > 1080p Transcode for Emby & Intel UHD 770

https://www.elpamsoft.com/?p=Plex-Hardware-Transcoding

- Video 68Mbit/sec HEVC 4K Remux (The Godfather - Just happens to be 68Mbit/sec) > 10Mbit/sec h264 1080p 

- Clients - Various but all forced to 10Mbit/sec

- Emby - 4.6.7.0 - Stable Release

- Source was local SATA Disk (JBOD)

- Audio - AC3 (so direct play/no transcoding required)

- No tonemapping (turned off)

- No THROTTLE - ie simultaneous continuous transcodes

- SINGLE transcode performance = 180 fps.

 

Results - I got to 7 streams before I ran out of clients - but transcoding fps was getting very close to 25 - so probably very close to the limit anyway.

 

gpu.PNG.009abfebc97a3e4d35cf4e5c6ca86ab5.PNG

GPU - it hit 100% '3D' on the first stream, so not 100% sure what that graph shows - the key thing is memory.   Each 4K stream takes about 1.1 GB - so for the 7 streams, I'm up to 7.5GB of memory, but have plenty to play with.  I have 64GB,  but max here is 32GB.

cpu.PNG.d0f32dcc1d28dcbf2c614cebced70781.PNG

 

CPU load is low @ 13% overall.

dash2.thumb.PNG.5d08bbc7a91d64cea65a64c538641b28.PNG

With Throttle turned ON (ie transcoding as required to fill the buffer), then it's possible that another 1 or maybe 2 streams can be utilised but of course if the fps drops below 24 then the buffer is no longer being maintained.   This is 7 x 68Mbit/sec streams - so nearly 500 Mbit/sec worth of transcoding !

Certainly not bad for an integrated GPU :)

To note - tone mapping knocks down the single stream performance to 140 fps - so ~ 6 streams with tone mapping.

@softworkz - FYI

 

 

Edited by rbjtech
  • Like 3
Link to comment
Share on other sites

rbjtech

Below is a comparison of all the Encoding and Decoding Intel Integrated Graphics capabilities (codecs etc) -

https://www.intel.com/content/www/us/en/develop/documentation/media-capabilities-of-intel-hardware/top.html#media-capabilities-supported-by-intel-hardware_encode-overview-11-12

It's nice to see the 11th/12th Gen (UHD 7xx) also support AV1 Decode. :)

 

Link to comment
Share on other sites

dcol

Wow thanks! Much more info than I hoped for. Only difference is I will be running i9-12900k, so even better.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...