Jellyfin Forum
Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: Ubuntu Server 22.04 ESXi Virtual with GPU passthrough (/t-ubuntu-server-22-04-esxi-virtual-with-gpu-passthrough)



Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - digitaltrance - 2023-10-21

Hello all,

New here, I am coming from Plex looking to abandon that ship.

I got Jellyfin running on ESXi Virtual Machine - Ubuntu Server 22.04
I have a Nvidia Quadro P2000 that I want to use as the hardware accelerator. Got all the nvidia/cuda drivers/toolkits installed but still not seeing Jellyfin utilize the GPU.

When I do nvidia-smi while playback, I don't see any Jellyfin processes in use (see attached).

This works fine on Plex, so I would think this shouldn't be a problem.

Am I missing anything on the settings for Jellyfin within the GUI?

Thanks in advance!

   


RE: Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - Deleted User - 2023-10-21

check the jellyfin web panel dashboard, under logs and see if there is an ffmpeg log - this will typically only appear during transcoding

if it exists, it should show what methods were used - direct copy, hardware accel, etc.

the rest of the settings are in the web panel dashboard under Playback


RE: Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - TheDreadPirate - 2023-10-21

Jellyfin will only use the GPU when transcoding video. If you're seeing CPU transcoding, make sure that you setup hardware acceleration in the playback dashboard.


RE: Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - digitaltrance - 2023-10-21

Ah, yes there it goes. I was needing to select the NVIDIA hardware within the playback settings. I see it being used now.

Is there a reason some file types it would use direct copy instead of hardware even through the format is selected to use hardware?

EDIT: sorry that last question, I think I answered myself. that is for DEcoding, not transcoding.


RE: Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - Deleted User - 2023-10-21

(2023-10-21, 07:17 PM)digitaltrance Wrote: Ah, yes there it goes. I was needing to select the NVIDIA hardware within the playback settings.

Is there a reason some file types it would use direct copy instead of hardware even through the format is selected to use hardware?

EDIT: sorry that last question, I think I answered myself. that is for DEcoding, not transcoding.

to answer the initial question, whether or not self-answered

what it decides to transcode vs direct stream depends on the client settings (user settings)

if the source video is 4K and the user max resolution is 4K and the bitrate is less than the max bitrate - it will serve it up directly, nothing the server needs to do

same for codec, if hevc is accepted then direct, if not transcode to avc

audio too, client determines it cannot play DTS so DTS gets transcoded to something compatible


note not all of the user settings are implemented into all of the clients so you may observe in the web player it transcodes because the web player has the setting
- but in the android app there is no setting to tell the server to transcode all DTS to DD+ so the client receives DTS anyway


RE: Ubuntu Server 22.04 ESXi Virtual with GPU passthrough - digitaltrance - 2023-10-21

(2023-10-21, 07:26 PM)000 Wrote:
(2023-10-21, 07:17 PM)digitaltrance Wrote: Ah, yes there it goes. I was needing to select the NVIDIA hardware within the playback settings.

Is there a reason some file types it would use direct copy instead of hardware even through the format is selected to use hardware?

EDIT: sorry that last question, I think I answered myself. that is for DEcoding, not transcoding.

to answer the initial question, whether or not self-answered

what it decides to transcode vs direct stream depends on the client settings (user settings)

if the source video is 4K and the user max resolution is 4K and the bitrate is less than the max bitrate - it will serve it up directly, nothing the server needs to do

same for codec, if hevc is accepted then direct, if not transcode to avc

audio too, client determines it cannot play DTS so DTS gets transcoded to something compatible


note not all of the user settings are implemented into all of the clients so you may observe in the web player it transcodes because the web player has the setting
- but in the android app there is no setting to tell the server to transcode all DTS to DD+ so the client receives DTS anyway


Perfect, yes, that makes 100% sense!

Thanks to both for your help!