HI3559AV100各模块输入输出支持的压缩格式
1、AVS配置
avs.cpp
... stAVSConfig.u32OutW = u32OutW; stAVSConfig.u32OutH = u32OutH; stAVSConfig.enOutCmpMode = COMPRESS_MODE_SEG; // stAVSConfig.benChn1 = benChn1; stAVSConfig.stGrpAttr.stFrameRate.s32DstFrameRate = 30; stAVSConfig.stGrpAttr.stFrameRate.s32SrcFrameRate = 30; stAVSConfig.stGrpAttr.bSyncPipe = HI_TRUE;//AVS 会根据各路输入图像 PTS 进行同步 pstGrpAttr = &stAVSConfig.stGrpAttr; pstGrpAttr->enMode = AVS_MODE_BLEND; pstGrpAttr->u32PipeNum = u32PipeNum; pstGrpAttr->stGainAttr.enMode = AVS_GAIN_MODE_AUTO; ...
- stAVSConfig.enOutCmpMode = COMPRESS_MODE_SEG; //段压缩的视频格式,对3559a,以256bytes为一段进行压缩
- stAVSConfig.stGrpAttr.bSyncPipe = HI_TRUE; //AVS 会根据各路输入图像 PTS 进行同步
- pstGrpAttr->enMode = AVS_MODE_BLEND; //融合拼接模式,根据LUT拼接,在拼接处有融合;
- pstGrpAttr->stGainAttr.enMode = AVS_GAIN_MODE_AUTO; //自动模式,AVS自动统计拼接处的亮度差异,自动进行亮度增益补偿
AVS_MODE_BLEND:
使用此模式的AVSGrp,需满足各路图像相同,仅支持PIXEL_FORMAT_YVU_SEMIPLANAR_420的像素格式
仅支持VIDEO_FORMAT_TILE_16x8的视频格式,支持COMPRESS_MODE_TILE压缩或者非压格式,各路图像的压缩模式要求相同
AVS通道属性
typedef struct hiAVS_CHN_ATTR_S { HI_U32 u32Width; HI_U32 u32Height; COMPRESS_MODE_E enCompressMode; DYNAMIC_RANGE_E enDynamicRange HI_U32 u32Depth; FRAME_RATE_CTRL_S stFrameRate; }AVS_CHN_ATTR_S;
注意:
- AVS模块的通道不支持帧率控制,配置不会生效
- u32Width、u32Height 和 enDynamicRange 只有在 AVS_MODE_BLEND 拼接模式下才生效
- 仅通道 0 支持 COMPRESS_MODE_SEG 压缩,其余通道不支持压缩
- 通道图像队列深度在获取通道图像的时候才有用,如没必要,建议设置为 0,否则会导致AVS模块VB占用增加
- 通道 0 的动态范围设置无效,通道 0 输出的动态范围和输入图相同