jellyfin / jellyfin-ffmpeg

FFmpeg for Jellyfin
https://jellyfin.org
Other
478 stars 127 forks source link

Transcoding HEVC 10 Bit videos fails with HW accelaration turned on. #341

Closed realFPS closed 7 months ago

realFPS commented 7 months ago

Describe The Bug When I try to play HEVC 10bit videos, the web client gives me a pop-up saying "This client isn't compatible with the media and the server isn't sending a compatible media format". My GPU is 1650 mobile, and it supports HEVC 10bit video decoding and encoding according to the matrix on official site.

Steps To Reproduce

  1. Enable HW acceleration for HEVC 10bit
  2. Play the file on any client which can not direct play it.

Expected Behavior The server should transcode and the playback should start.

System (please complete the following information):

MediaInfo

Video
Title: WEBrip by sam - 1080p - HEVC - SDR
Codec: HEVC
Profile: Main 10
Level: 120
Resolution: 1920x1080
Aspect ratio: 16:9
Interlaced: No
Framerate: 23.976025
Bitrate: 18075 kbps
Bit depth: 10 bit
Video range: SDR
Video range type: SDR
Color space: bt709
Color transfer: bt709
Color primaries: bt709
Pixel format: yuv420p10le
Ref frames: 1

FFmpeg Logs I don't know which part of the log consists of errors, so I have uploaded the entire log: https://files.catbox.moe/zepc15.txt

Additional Context Also, I am not really sure if this is a ffmpeg issue or my side issue because this used to work before and last week I remember updating my drivers using GeForce experience to version 551.61, could that have caused this? I don't have any idea how do I troubleshoot this.

nyanmisaka commented 7 months ago

There was an issue in upstream FFmpeg 5.1.4. Please download and unzip the latest jellyfin-ffmpeg5 and put it into the Jellyfin installation folder.

https://github.com/jellyfin/jellyfin-ffmpeg/releases/tag/v5.1.4-3

realFPS commented 7 months ago

It did not work. I downloaded jellyfin-ffmpeg_5.1.4-3-portable_win64, closed the server, put everything from the zip in C:\Program Files\Jellyfin\Server replacing the old stuff and then restarted the server.

New logs: https://pastebin.com/wn2w6J8r

nyanmisaka commented 7 months ago

Weird. What if you try jellyfin-ffmpeg6? https://github.com/jellyfin/jellyfin-ffmpeg/releases/tag/v6.0.1-3

If the problem persists, please consider restarting or downgrading the driver.

nyanmisaka commented 7 months ago

Same issue here. https://forums.unraid.net/topic/155509-upgraded-from-6126-to-6128-problem-with-hardware-transcoding-or-ffmpeg/

I think it is a driver regression made by nVidia in 551.

realFPS commented 7 months ago

Weird. What if you try jellyfin-ffmpeg6? https://github.com/jellyfin/jellyfin-ffmpeg/releases/tag/v6.0.1-3

If the problem persists, please consider restarting or downgrading the driver.

Release 6.0.1-3 also did not work. Same pop-up.

Same issue here. https://forums.unraid.net/topic/155509-upgraded-from-6126-to-6128-problem-with-hardware-transcoding-or-ffmpeg/

I think it is a driver regression made by nVidia in 551.

I see, then I will just wait for nvidia to deliver the fix.

Also, now that I have fiddled with internals of app is it safe to keep it as it is now or change it back to version it was at the beginning?

nyanmisaka commented 7 months ago

Jellyfin is compatible with both ffmpeg versions, so you can keep it as is.

realFPS commented 7 months ago

The latest GRD update 551.76 has fixed this problem.