Dynamic Range and Mastering InfoFrame - 1.2 English

HDMI 2.1 Transmitter Subsystem v1.2 Product Guide (PG350)

Document ID
PG350
Release Date
2023-10-18
Version
1.2 English

Use the following code example for Dynamic Range and Mastering (HDR) InfoFrames:

typedef struct XHdmiC_DRM_InfoFrame {
	XHdmiC_DRM_EOTF EOTF;
	XHdmiC_DRM_Static_Metadata_Descp_Id Static_Metadata_Descriptor_ID;
	struct {
		u16 x,y;
	} disp_primaries[3];
	struct {
		u16 x,y;
	} white_point;
	u16 Max_Disp_Mastering_Luminance;
	u16 Min_Disp_Mastering_Luminance;
	u16 Max_Content_Light_Level;
	u16 Max_Frame_Average_Light_Level;
} XHdmiC_DRMInfoFrame;
  • To generate Dynamic Mastering info frame:
    void XV_HdmiC_DRMIF_GeneratePacket(XHdmiC_DRMInfoFrame *DRMInfoFrame, XHdmiC_Aux *aux);
  • To insert Dynamic Mastering info frame into the TX stream:
    u32 XV_HdmiTxSs1_SendGenericAuxInfoframe(XV_HdmiTxSs1 *InstancePtr, void *AuxPtr);
    Note: Dynamic Mastering info frame should be interested into TX stream at least once in every two frames. The API should be called accordingly in user application.