嵌入式视频方案学习第六篇——视频输入
2017-05-23 00:05
316 查看
视频输入模块定义:
通过BT656/601/1120等接口采集视频数据,传送到内存区域的模块。可以对图像进行缩放,裁剪,翻转
常用接口:
1、设置VI设备属性
HI_S32 HI_MPI_VI_SetDevAttr(VI_DEV ViDev, const VI_DEV_ATTR_S *pstDevAttr)
参数:参数比较多具体参照文档说明,主要是VI的工作模式,接口模式等
2、启用VI设备
HI_S32 HI_MPI_VI_EnableDev(VI_DEV ViDev)
启动相应的设备号即可
3、禁用VI设备
HI_S32 HI_MPI_VI_DisableDev(VI_DEV ViDev)
4、设置通道属性
HI_S32 HI_MPI_VI_SetChnAttr(VI_CHN ViChn,const VI_CHN_ATTR_S *pstAttr)
参数:主要进行图像大小,图像翻转,采样帧率,像素格式,重采样进行配置
5、设置VI通道次属性
HI_S32 HI_MPI_VI_SetChnMinorAttr(VI_CHN ViChn,const VI_CHN_ATTR_S *pstAttr);
参数:在源帧率目标帧率的采样采用次属性
6、启动VI通道
HI_S32 HI_MPI_VI_EnableChn(VI_CHN ViChn)
7、禁用VI通道。
HI_S32 HI_MPI_VI_DisableChn(VI_CHN ViChn);
8、获取VI采集的图像
HI_S32 HI_MPI_VI_GetFrame(VI_CHN ViChn, VIDEO_FRAME_INFO_S *pstFrameInfo);
9、释放VI图像数据所占的缓存
HI_S32 HI_MPI_VI_ReleaseFrame(VI_CHN ViChn, VIDEO_FRAME_INFO_S *pstFrameInfo);
10、设置用户图片,作为无视频信号时的插入图片
HI_S32 HI_MPI_VI_SetUserPic(VI_CHN ViChn, VI_USERPIC_ATTR_S *pstUsrPic);
这个接口很有意思,可以把存储好的图片传到VI通道
11、启用插入用户图片。
HI_S32 HI_MPI_VI_EnableUserPic(VI_CHN ViChn);
12、获取VI通道对应的设备文件句柄
HI_S32 HI_MPI_VI_GetFd(VI_CHN ViChn);
13、设置VI闪光灯的配置信息
HI_S32 HI_MPI_VI_SetFlashConfig(VI_DEV ViDev,const VI_FLASH_CONFIG_S *pstFlashConfig);
14、关闭/ 启用VI闪光灯。
HI_S32 HI_MPI_VI_FlashTrigger(VI_DEV ViDev, HI_BOOL bEnable);
15、设置VI镜头畸变校正(LDC )属性
HI_S32 HI_MPI_VI_SetLDCAttr(VI_CHN ViChn, const VI_LDC_ATTR_S *pstLDCAttr);
16、设置VI设备的CSC 属性
HI_S32 HI_MPI_VI_SetCSCAttr(VI_DEV ViDev, const VI_CSC_ATTR_S *pstCSCAttr);
17、设置VI图像旋转属性
这几个属性可以具体调一下,看看有什么变化
通过BT656/601/1120等接口采集视频数据,传送到内存区域的模块。可以对图像进行缩放,裁剪,翻转
常用接口:
1、设置VI设备属性
HI_S32 HI_MPI_VI_SetDevAttr(VI_DEV ViDev, const VI_DEV_ATTR_S *pstDevAttr)
参数:参数比较多具体参照文档说明,主要是VI的工作模式,接口模式等
2、启用VI设备
HI_S32 HI_MPI_VI_EnableDev(VI_DEV ViDev)
启动相应的设备号即可
3、禁用VI设备
HI_S32 HI_MPI_VI_DisableDev(VI_DEV ViDev)
4、设置通道属性
HI_S32 HI_MPI_VI_SetChnAttr(VI_CHN ViChn,const VI_CHN_ATTR_S *pstAttr)
参数:主要进行图像大小,图像翻转,采样帧率,像素格式,重采样进行配置
5、设置VI通道次属性
HI_S32 HI_MPI_VI_SetChnMinorAttr(VI_CHN ViChn,const VI_CHN_ATTR_S *pstAttr);
参数:在源帧率目标帧率的采样采用次属性
6、启动VI通道
HI_S32 HI_MPI_VI_EnableChn(VI_CHN ViChn)
7、禁用VI通道。
HI_S32 HI_MPI_VI_DisableChn(VI_CHN ViChn);
8、获取VI采集的图像
HI_S32 HI_MPI_VI_GetFrame(VI_CHN ViChn, VIDEO_FRAME_INFO_S *pstFrameInfo);
9、释放VI图像数据所占的缓存
HI_S32 HI_MPI_VI_ReleaseFrame(VI_CHN ViChn, VIDEO_FRAME_INFO_S *pstFrameInfo);
10、设置用户图片,作为无视频信号时的插入图片
HI_S32 HI_MPI_VI_SetUserPic(VI_CHN ViChn, VI_USERPIC_ATTR_S *pstUsrPic);
这个接口很有意思,可以把存储好的图片传到VI通道
11、启用插入用户图片。
HI_S32 HI_MPI_VI_EnableUserPic(VI_CHN ViChn);
12、获取VI通道对应的设备文件句柄
HI_S32 HI_MPI_VI_GetFd(VI_CHN ViChn);
13、设置VI闪光灯的配置信息
HI_S32 HI_MPI_VI_SetFlashConfig(VI_DEV ViDev,const VI_FLASH_CONFIG_S *pstFlashConfig);
14、关闭/ 启用VI闪光灯。
HI_S32 HI_MPI_VI_FlashTrigger(VI_DEV ViDev, HI_BOOL bEnable);
15、设置VI镜头畸变校正(LDC )属性
HI_S32 HI_MPI_VI_SetLDCAttr(VI_CHN ViChn, const VI_LDC_ATTR_S *pstLDCAttr);
16、设置VI设备的CSC 属性
HI_S32 HI_MPI_VI_SetCSCAttr(VI_DEV ViDev, const VI_CSC_ATTR_S *pstCSCAttr);
17、设置VI图像旋转属性
这几个属性可以具体调一下,看看有什么变化
相关文章推荐
- 嵌入式视频方案学习第七篇——视频输入VI一般的初始化流程
- 嵌入式视频方案学习第二篇——Hi3518E介绍
- 嵌入式视频方案学习第四篇——系统基本控制
- 友善之臂视频监控方案源码学习(5) - 输入控制
- 嵌入式视频方案学习第三篇——Hi3518E SDK安装说明
- 嵌入式视频方案学习第五篇——系统初始化的一般流程
- 嵌入式视频方案学习第十三篇——音频模块AUDIO
- 嵌入式视频方案学习第九篇——视频处理子系统VPSS
- 友善之臂视频监控方案源码学习(5) - 输入控制
- 嵌入式视频方案学习第十篇——视频处理子系统VPSS 一般初始化流程
- 嵌入式视频方案学习第十二篇——视频编码模块VENC 一般初始化过程
- 友善之臂视频监控方案源码学习(5) - 输入控制
- 嵌入式视频方案学习第十一篇——视频编码模块VENC
- 嵌入式视频方案学习第八篇——视频输出VOU
- 友善之臂视频监控方案源码学习(5) - 输入控制
- 嵌入式视频方案学习第三篇——Hi3518E 媒体处理软件平台介绍
- 嵌入式视频方案学习之第一篇—主流视频方案介绍
- 嵌入式学习资料——成都国嵌实验手册完整版以及实验源码和韦东山大哥视频教程等
- 友善之臂视频监控方案源码学习(4) - 数据流向
- 友善之臂视频监控方案源码学习(1) - 架构分析