HW Transcoding not working on either ubuntu or Win Server, multiple hardware configs

Server Version#: Version 1.40.1.8227
Player Version#: Multiple

I need help since I’m obviously doing something wrong. We are talking testing on 15-20 different installations.

Put in about 60-80 hours trial and error and I’m soon giving up.

Trying to get HW transcoding working with no luck.
Trying to get 4k films transcoded to about 4-5 units in my home that only do 1080p.
(Xbox One, PS4, Apple TV etc.)

Tried both Win 2022 and Ubuntu 23.04 on all hardware setups:

I5-1135G7 with Tigerlake GPU

Kabylake CPU + Quadro P620

Kabylake CPU + GTX 1650

Core i5 9500T with HD 620 GPU

The network is 1000mbit wired

I installed drivers successfully on all machines, verified them in both Ubuntu or Win.

Plex Recognized them in options. Log files does not look different if I choose “Automatic” or pinpoint the GPU that I want in Plex.

I can see in logfile that Plex chooses to transcode and says the name of the GPU.

Still CPU goes skyhigh and the media is basically unviewable

I provide logfile here for a fresh Win 2022 with Quadro P620. Almost no custom settings but installations, add one library, check that the GPU is recognized and try to play.

Plex Media Server.log (521.7 KB)

After help from another forum, forcing the encode/decode package into Ubuntu, now I can see in Plex that it says (hw) in the adminpanel where the film is playing. Also in CLI ubntu it looks like this:

But still CPU goes skyhigh and movie is unwatchable… How is this possible?

Can you post a screenshot of the dashboard when playing back the content? Specifically the transcode and bitrate sections of the media playing.

are you installing this native in ubuntu. if so, you should not need to install anything else as the package will install everything it needs. I think they are having some issues with some new kernels that are not working. chuckpa maintains the package so if you are installing native and it isn’t working you should reach out to him.

I am running a pure bare metal server. No containers, not ESXi, no Hypervisor, no docker, nothing.

CPU,Motherboard,GPU,PSU,SSD - Ubuntu 22.04.

I am realy loosing my mind on this.

Last week after jag trying everything I got it to work on Ubuntu 22.04 with P620.
I threw in 1 miljon installs of diffrent nvidia packs and stuff. Basicly took adivce from 10 differnt guids, some from 2015… AND BANG, IT WORKED!
No CPU load, realy smooth playback. everything was great. But that linux install was realy trail and error so I decided to do a clean install and “repeat” everything i learned to make it work.
After clean install. Ofc I dident get it to work. REALY frustrating.

On Ubuntu 22.04 i got the encode and decode package installed and as you see on the picture.
I get about 500mb VRAM usued by Plex transcode. Still no effect of the transcoding.
Plex info said HW used also…

Hi Nate.

Now I tried a Debian 12,5 on a Core i5 TigerLake. Followed a a guide from Debian how to get VA-API working

" For Gen 8+ Intel hardware, the free driver can be installed with the intel-media-va-driver package."

Here is a picture of intel top command, the CPU meter in Plex and Playback info in plex.
Fresh install. With nothing else running but plex.

I see that it uses HW according to plex, it shows usage on the TigerLake GPU and still 60% CPU usage with realy bad freeze and shutter.
Next picture is my options on transcoding. I can see the GPU there.

See how next to subtitle it says ‘burn in’? That’s requiring the CPU to do that because it can’t be done with hardware. If you turn off any subtitles do you get a different result?

Hello.

No I havent tryed with or without burn in. Does this make a difference for the experience?

I havent reflected of if I need text or not. Dident think of it as an impact on performance.
Does the burn in text occupy 60% of an Core i5 gen11 ? Seems alot?

When I got the Kaby lake cpu + Quadro P620 to work smoothly by pure accient the text option was identical.

Where do I turn this off to offload the CPU?

It can take a lot of CPU.

If your end device supports a subtitle format they don’t have to get burned in because it can just stream them to play back on the device.

VOBSUB’s aren’t supported by a lot of client devices. Maybe in your other tests you were using a different subtitle format?

You would want to turn off the subtitles at the client to stop this from happening, if the client can’t read them then the server will have to burn them in if you want to see them.

There’s a setting to burn in all subtitles but the default is ‘automatic’ which only burns them in when the client can’t handle them.

they are currently working on making subtitles be able to use HW but we have no eta. latest i have seen is here.

But if I havent touched the automatic then my PS4 Pro, Xbox One S and Winn11 PC in firefox or desktop app cannot handle text.
Can I enforce text off on server side?

Not that I am aware of, other then deleting the subtitle stream from the file, but then if you ever do have a good way of playing them back, they won’t be an option.

What’s interesting is I just went to reproduce the burn in with a VOBSUB file I used to always have issues with when one of my Plex servers was using a Pentium Gold CPU (step above Celeron) which had an iGPU and could transcode anything until I had to burn in subtitles.

I tried my Nvidia Shield, an Amazon FireTV 4k, and the Windows app and whether direct playing or transcoding, the subtitle track was direct playing or direct streaming no matter what.

The only way I could get the burn in to occur was in the web browser player on Chrome:

image

That’s the same file being streamed to the Win desktop app and the web browser.

The CPU side of the transcoding really isn’t doing much to the CPU either. These are 8 vCPU’s from a 10850k passed through to a VM:

I wonder if the audio transcode from TrueHD 7.1 to AAC could be contributing to this?

1 Like

Ok. Todays findings.

  1. Choosing Automatic, Always or Image Only gives same result. No matter what unit, I get “burned in”. Tryed both PGS format text stuff and VOBSUB. So i left it in option “Image Only”

All units I tried, made the decision to have subs burned in:

Xbox One S
PS4 Pro
Apple TV 4k
Win 11 in Firefox
Win 11 in App

  1. Putting texting to “Manual” under Language and not activating text on Win 11 in App or Firefox gives smooth playback.

  2. You where talking about Pentium Gold CPU, a kastrated i3 with no HT, taking a hit with burned in subs. I am running a I5 1135G7 just for Plex with nothing else to bother it, and it can’t handle the subs. Doesent that seams a bit harsh? Taking in the fact that the GPU is doing all the HW decoding otherwise? I personaly dont need subs, but the whole Plex project in my house is basicly for the kids to having the possibility to see movies on older consoles (PS4 and Xbox one) on their rooms.
    @ my film spot where I have the family surround I could of gone with Kodi straight from the NAS.

Tomorrow I will try the subs off on PS4 and Xbox One. If that is the case that it works, then no subs it is… But first I must find out why FSTAB gives perssion denied randomly in Debian after reboot, but never fails on Ubuntu for me…

Was just stating that I ran into this problem when using a pentium gold and it’s when I upgraded my CPU in that box. The model did have hyperthreading but from what I’ve read hyperthreading doesn’t do much for transcoding.

So when I ran into it I had a 2 core 54 watt desktop processor with HT that runs at 4ghz all the time and you are running 4 core 15 watt laptop processor with HT that has a base clock of 2.4 but boosts to 4.2, for how long though is an unknown.

Burn in subtitles on mine basically stopped playing after 2 seconds and would start again 10-15 seconds later, play for a second or 2, then repeat. So with you having at max about 2 times the performance, it doesn’t surprise me that your content is still unplayable too.

People that were doing all CPU software transcoding were using 24 core Xeon and AMD cpus.

While your GPU is decoding the video and re-encoding it to the client, the CPU is doing a duplicate encode to overlay the subs, so the GPU doing the work is an entirely separate part of the picture.

Wasn’t at a PC until now, easier to type. I forgot about this FAQ from Plex, should shed some light:

https://support.plex.tv/articles/201774043-what-kind-of-cpu-do-i-need-for-my-server/

The Guideline

Very roughly speaking, for a single full-transcode of a video, the following PassMark score requirements are a good guideline for the following average source file:

  • 4K HDR (50Mbps, 10-bit HEVC) file: 17000 PassMark score (being transcoded to 10Mbps 1080p)
  • 4K SDR (40Mbps, 8-bit HEVC) file: 12000 PassMark score (being transcoded to 10Mbps 1080p)
  • 1080p (10Mbps, H.264) file: 2000 PassMark score
  • 720p (4Mbps, H.264) file: 1500 PassMark score

You are working with a passmark score of 9830 on that CPU. My 9700k gets a 14479 and can do HDR transcodes when software is forced due to tonemapping breaking or something, but just barely. That doesn’t have hyperthreading though, so its raw core power. The article also mentions the thing about single thread performance.

Yes i realize that HT is not that importantat in transcoding scenarios.

I read that guide ofc with passmark of 17.000 for 4k stream transcode. But dident realize that subtitels was issue also. I was all in to get GPU power so CPU wouldent matter.
Also an aspect the power consumtion if we compare the 24-Core Xeon scenario, vs a laptop-tiger-lake-gpu… 2-3watts ish?

So what we are saying basicly. If im going with the burn in subs, I should still get a CPU that is so powerfull i dont need the GPU transcode? I was looking in to buying a brand new i5 14400.
This would do the substuff and transocde no matter the GPU. But since i had the 1135G7 already it was up to the job.

And my kabylake G4560 laying around with P620 doest help me either.

I just got the FSTAB to work so tomorrow I will try on PS4 and Xbox. If it works without subs
I will be in the choice… keep it as it is with no subs, or 400Euro on 14400 + MB.

I think the way subtitles are handled is that the video is decoded, the subtitles are burned at full res, and then the image is resized and encoded to the final target. A 480i file isn’t going to register on the CPU for that. However, a 4K source file is an entirely different story.

@Snongis Before you spend money on a new CPU, I run a 12700H, which should have pretty similar performance levels as that 14400, and I consistently have problems when burning subs on a 4K source file. I only see about 500% CPU usage as well, so I don’t think it is fully able to utilize large numbers of CPU cores.

Yes, the core issues in program is a struggle all the time. Deal with that question all day @ work.
I understand the passmark score is a sum of all core powers. A i3 14100 gets 15.000 i passmark while a i5 14400 gets 27.000 in passmark. I guess a fight utilizing 2 power cores only on both CPU’s would give similar performance, maby coolingwise lets the i3 even clock higher and perform better. So ofc the score is not 100% accurate in this scenario.

I could aquiere som Xeon 2680/2690v4 from old machines @ work. But power and cooling wise its not viable, since staying sub 40-50 watts gives me the options of total silence of. The i5 1135G7 does not spin upp during GPU decoding and the Kabylake/P620 setup is with Noctua fans straight trough…

I’ll guess I will stay @ no burn in subs for the moment and wait for it to be included in next server version maby… or maby an AMD 9000 / Intel 15XXX cpu will get next gen instructions putting this issue in new light…

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.