5.4. Data Types¶
5.4.1. VO_DEV¶
【Description】
Define the device number.
【Syntax】
typedef CVI_U32 VO_DEV;
【Member】
Processor
escription
CV183x
There is only one video output device.
0: DHD0
Support LCD, MIPI TX, BT.656, BT.1120
CV182xCV181x
There is only one video output device.
0: DHD0
Support LCD, MIPI TX, BT.656, BT.1120, RGB, 180
【Note】
None.
【Related Data Type and Interface】
None.
5.4.2. VO_LAYER¶
【Description】
Define the video layer number.
【Syntax】
typedef CVI_U32 VO_LAYER;
【Member】
Processor
escription
CV183x
There is only one video output layer.
0: VHD0
CV182xCV181x
There is only one video output layer.
0: VHD0
【Note】
None.
【Related Data Type and Interface】
None.
5.4.3. VO_INTF_TYPE¶
【Description】
Define the interface number of the video output device.
【Syntax】
#define VO_INTF_CVBS (0x01L << 0)
#define VO_INTF_YPBPR (0x01L << 1)
#define VO_INTF_VGA (0x01L << 2)
#define VO_INTF_BT656 (0x01L << 3)
#define VO_INTF_BT1120 (0x01L << 6)
#define VO_INTF_LCD (0x01L << 7)
#define VO_INTF_LCD_18BIT (0x01L << 10)
#define VO_INTF_LCD_24BIT (0x01L << 11)
#define VO_INTF_LCD_30BIT (0x01L << 12)
#define VO_INTF_MIPI (0x01L << 13)
#define VO_INTF_MIPI_SLAVE (0x01L << 14)
#define VO_INTF_HDMI (0x01L << 15)
typedef CVI_U32 VO_INTF_TYPE_E;
【Note】
None.
【Related Data Type and Interface】
None.
5.4.4. VO_INTF_SYNC_E¶
【Description】
Define the standard timing of video output devices.
【Syntax】
typedef enum _VO_INTF_SYNC_E {
VO_OUTPUT_PAL = 0,
VO_OUTPUT_NTSC,
VO_OUTPUT_1080P24,
VO_OUTPUT_1080P25,
VO_OUTPUT_1080P30,
VO_OUTPUT_720P50,
VO_OUTPUT_720P60,
VO_OUTPUT_1080P50,
VO_OUTPUT_1080P60,
VO_OUTPUT_576P50,
VO_OUTPUT_480P60
VO_OUTPUT_800x600_60,
VO_OUTPUT_1024x768_60,
VO_OUTPUT_1280x1024_60,
VO_OUTPUT_1366x768_60
VO_OUTPUT_1440x900_60,
VO_OUTPUT_1280x800_60,
VO_OUTPUT_1600x1200_60,
VO_OUTPUT_1680x1050_60
VO_OUTPUT_1920x1200_60,
VO_OUTPUT_640x480_60,
VO_OUTPUT_1920x2160_30,
VO_OUTPUT_2560x1440_30,
VO_OUTPUT_2560x1440_60,
VO_OUTPUT_2560x1600_60,
VO_OUTPUT_3840x2160_24,
VO_OUTPUT_3840x2160_25,
VO_OUTPUT_3840x2160_30,
VO_OUTPUT_3840x2160_50,
VO_OUTPUT_3840x2160_60,
VO_OUTPUT_4096x2160_24,
VO_OUTPUT_4096x2160_25,
VO_OUTPUT_4096x2160_30,
VO_OUTPUT_4096x2160_50,
VO_OUTPUT_4096x2160_60,
VO_OUTPUT_720x1280_60, /* For MIPI DSI Tx 720 x1280 at 60 Hz */
VO_OUTPUT_1080x1920_60, /* For MIPI DSI Tx 1080x1920 at 60 Hz */
VO_OUTPUT_USER, /* User timing. */
VO_OUTPUT_BUTT
} VO_INTF_SYNC_E;
【Note】
None.
【Related Data Type and Interface】
None.
5.4.5. VO_SYNC_INFO_S¶
【Description】
Define the sequential structure of the device.
【Syntax】
typedef struct _VO_SYNC_INFO_S {
CVI_BOOL bSynm;
CVI_BOOL bIop;
CVI_U16 u16FrameRate;
CVI_U16 u16Vact;
CVI_U16 u16Vbb;
CVI_U16 u16Vfb;
CVI_U16 u16Hact;
CVI_U16 u16Hbb;
CVI_U16 u16Hfb;
CVI_U16 u16Hpw;
CVI_U16 u16Vpw;
CVI_BOOL bIdv;
CVI_BOOL bIhs;
CVI_BOOL bIvs;
} VO_SYNC_INFO_S;
【Member】
Member |
Description |
---|---|
bSynm |
Synchronous signal mode, 0: embedded sync, 1: separate sync。 |
bIop |
0: interlaced, 1:progressive。 |
u16FrameRate |
Number of updates per second |
u16Vact |
Vertical image rows |
u16Vbb |
Vertical back porch rows |
u16Vfb |
Vertical front porch rows |
u16Hact |
Phase number of horizontal image |
u16Hbb |
Horizontal back porch phase number |
u16Hfb |
Horizontal front porch phase number |
u16Hpw |
Number of horizontal synchronous phases |
u16Vpw |
Vertical synchronous rows |
bIdv |
Is Data valid reversed |
bIhs |
Is horizontal synchronization reversed |
bIvs |
Is vertical synchronization reversed |
【Note】
None.
【Related Data Type and Interface】
None.
5.4.6. VO_PUB_ATTR_S¶
【Description】
Define output device structure.
【Syntax】
typedef struct _VO_PUB_ATTR_S {
CVI_U32 u32BgColor;
VO_INTF_TYPE_E enIntfType;
VO_INTF_SYNC_E enIntfSync;
VO_SYNC_INFO_S stSyncInfo;
union {
VO_I80_CFG_S sti80Cfg;
VO_LVDS_ATTR_S stLvdsAttr;
};
} VO_PUB_ATTR_S;
【Member】
Member |
Description |
---|---|
u32BgColor |
Background color. In RGBAAA format, bit[9:0] is B, bit[19:10] is G, and bit[29:20] is R. |
enIntfType |
The interface of the output device. |
enIntfSync |
Standard timing of output devices |
stSyncInfo |
The custom timing of the output device, only works when enIntfSync is VO_OUTPUT_USER . |
sti80Cfg |
Interface properties of the output device when the interface is I80 |
stLvdsAttr |
Interface properties when the output device interface is LCD |
【Note】
None.
【Related Data Type and Interface】
None.
5.4.7. VO_VIDEO_LAYER_ATTR_S¶
【Description】
Define the video layer structure.
【Syntax】
typedef struct _VO_VIDEO_LAYER_ATTR_S {
RECT_S stDispRect;
SIZE_S stImageSize;
CVI_U32 u32DispFrmRt;
PIXEL_FORMAT_E enPixFormat;
} VO_VIDEO_LAYER_ATTR_S;
【Member】
Member |
Description |
---|---|
stDispRect |
The display range of the video layer should be smaller than that of the device. |
stImageSize |
Image size. If scaling is not supported, the image size should be equal to stDispRect |
u32DispFrmRt |
Display the number of updates |
enPixFormat |
Image format of video layer |
【Note】
None.
【Related Data Type and Interface】
None.
5.4.8. VO_CHN_ATTR_S¶
【Description】
Define output channel structure.
【Syntax】
typedef struct _VO_CHN_ATTR_S {
CVI_U32 u32Priority;
RECT_S stRect;
} VO_CHN_ATTR_S;
【Member】
Member |
Description |
---|---|
u32Priority |
In case of multi-channel, the one with high priority (relatively small) will be on the channel. |
stRect |
The display area of the channel. |
【Note】
None.
【Related Data Type and Interface】
None.