( transfer: HdrTransfer, mastering: HdrMasteringMetadata = DEFAULT_HDR10_MASTERING, )
| 92 | * stream is rejected as SDR by most HDR-aware players and CDNs. |
| 93 | */ |
| 94 | export function getHdrEncoderColorParams( |
| 95 | transfer: HdrTransfer, |
| 96 | mastering: HdrMasteringMetadata = DEFAULT_HDR10_MASTERING, |
| 97 | ): HdrEncoderColorParams { |
| 98 | const colorTrc = transfer === "pq" ? "smpte2084" : "arib-std-b67"; |
| 99 | const tagging = `colorprim=bt2020:transfer=${colorTrc}:colormatrix=bt2020nc`; |
| 100 | const metadata = `master-display=${mastering.masterDisplay}:max-cll=${mastering.maxCll}`; |
| 101 | return { |
| 102 | colorPrimaries: "bt2020", |
| 103 | colorTrc, |
| 104 | colorspace: "bt2020nc", |
| 105 | pixelFormat: "yuv420p10le", |
| 106 | x265ColorParams: `${tagging}:${metadata}`, |
| 107 | mastering, |
| 108 | }; |
| 109 | } |
| 110 | |
| 111 | export interface CompositionHdrInfo { |
| 112 | hasHdr: boolean; |
no outgoing calls
no test coverage detected