1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Merge pull request #5184 from nyanmisaka/strict-dovi-hevc

Add stricter checks for DolbyVision in HEVC
This commit is contained in:
Bill Thornton 2024-02-07 08:48:37 -05:00 committed by GitHub
commit 33d9cfdd17
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -209,6 +209,14 @@ function supportsDolbyVision(options) {
); );
} }
function canPlayDolbyVisionHevc(videoTestElement) {
// Profiles 5/7/8 4k@60fps
return !!videoTestElement.canPlayType
&& (videoTestElement.canPlayType('video/mp4; codecs="dvh1.05.09"').replace(/no/, '')
&& videoTestElement.canPlayType('video/mp4; codecs="dvh1.07.09"').replace(/no/, '')
&& videoTestElement.canPlayType('video/mp4; codecs="dvh1.08.09"').replace(/no/, ''));
}
function getDirectPlayProfileForVideoContainer(container, videoAudioCodecs, videoTestElement, options) { function getDirectPlayProfileForVideoContainer(container, videoAudioCodecs, videoTestElement, options) {
let supported = false; let supported = false;
let profileContainer = container; let profileContainer = container;
@ -930,7 +938,7 @@ export default function (options) {
av1VideoRangeTypes += '|HLG'; av1VideoRangeTypes += '|HLG';
} }
if (supportsDolbyVision(options)) { if (supportsDolbyVision(options) && canPlayDolbyVisionHevc(videoTestElement)) {
hevcVideoRangeTypes += '|DOVI'; hevcVideoRangeTypes += '|DOVI';
} }