Dolby Vision
This page documents how Dolby Vision is detected in DIVA Web and how Dolby Vision indicators are rendered in the UI.
What you learn​
You are instantiating DIVA Player in your web front-end and want Dolby Vision streams to be evaluated and rendered correctly at runtime.
The goal of this article is to provide a working baseline where:
- HDR preference is enabled through
hdrMode. - Device HDR capability is provided through
deviceCapabilities.hasHDRSupport. - Internal runtime stream detection drives Dolby Vision UI.
Before starting​
- Ensure your DIVA Back Office instance is up and running.
- Ask your video engineering team for
<videoId>and<settings URL>. - Ensure your test stream has Dolby Vision variants in manifest metadata.
Instantiation​
Write the Basic instantiation code, then add dynamic-range related configuration.
Working sample code (.tsx)​
Write App() as follows to provide startup HDR preference and device capability in a BO integration:
import { BoAdapterWebComponentProps, DivaWebBoAdapter } from "@deltatre-vxp/diva-sdk/diva-web-bo-adapter";
import "@deltatre-vxp/diva-sdk/diva-web-sdk/index.min.css";
const videoId = "<videoId>";
const libs = {
mux: "https://cdnjs.cloudflare.com/ajax/libs/mux.js/6.2.0/mux.min.js",
shaka: "https://ajax.googleapis.com/ajax/libs/shaka-player/4.16.15/shaka-player.compiled.js",
hlsJs: "https://cdn.jsdelivr.net/npm/hls.js@1.5.7",
googleIMA: false,
googleDAI: false,
googleCast: false,
threeJs: false,
};
const config = {
videoId,
hdrMode: true, // Enable HDR/Dolby Vision startup preference (Optional)
libs,
};
function App() {
const props: BoAdapterWebComponentProps = {
settingsUrl: "<settings URL>",
languageCode: "en-US",
languageDictionary: "en-US",
onDivaBoAdapterError: console.error,
config,
};
return <DivaWebBoAdapter {...props} />;
}
export default App;
End-to-end flow​
- The active media player (HLS or DASH) computes dynamic range flags.
- The player updates internal Dolby Vision/HDR state.
- Engine player manager forwards this state through internal item/player pipelines.
- UI renders the Dolby Vision icon when runtime conditions are met.
Platform support​
Current Dolby Vision support follows the same runtime pipeline used for HDR.
- RW: supported on all browsers where stream metadata and player detection rules are available.
- TV platforms supported:
- Tizen
- webOS
- Hisense
- Not supported:
- PS4
- PS5
- Xbox
How to use Dolby Vision​
1. Enable startup dynamic-range preference​
Set hdrMode: true in player config so your integration requests HDR-capable playback paths when available.
const config = {
videoId,
hdrMode: true, // Keep enabled to request HDR-capable playback
libs,
};