mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-07-16 05:43:54 +03:00
[PR #13665] [CLOSED] DoVi Prof5 is only one that should use dvh1 tag #13657
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/jellyfin/jellyfin/pull/13665
Author: @timitt
Created: 3/5/2025
Status: ❌ Closed
Base:
master← Head:fix_dovi_tag📝 Commits (1)
23b4816Only DoVi Profile 5 should have dvh1 tag as for example Profile 8 can fallback to HDR10 and therefore does not need to understand dvh1 tag.📊 Changes
1 file changed (+17 additions, -3 deletions)
View changed files
📝
Jellyfin.Api/Controllers/DynamicHlsController.cs(+17 -3)📄 Description
Only DoVi Profile 5 should have dvh1 tag as for example Profile 8 can fallback to HDR10 and therefore does not need to understand dvh1 tag.
Idea is that others have fallbacks to non-DoVi mode and for example Profile 8 fallbacks to HDR10 video correctly if DoVi is not supported. However it might not do that if it can't recognize tag.
As an example hls.js fails to play Profile 8 video as HDR if tag is dvh1, but plays it as HDR if tah is hvc1.
Also the change does not seem to break native hls on WebOS. It might be the case that most implementations do not read the tag at all but find hvcC, dvcC or dvvC configuration boxes and choose by them.
I can't confirm if this breaks playback on some hardware (as I could only test WebOS native hls and hls.js on WebOS), but this should be the correct way to use tag.
Without other fixes this only helps WebOS with hls.js play videos that has DoVi Profile 8 and aac audio. I will make more pull requests later to jellyfin-web. I believe this pull request is valid alone too.
Changes
Check if DoVi video is Profile 5 and then only change that video tag to dvh1 and let other types have hvc1.
We still need -strict -2 for both of them. I also changed code a bit to not repeat that -strict -2 line part three times.
Issues
Relates, but does not directly fix: https://github.com/jellyfin/jellyfin-webos/issues/275
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.