V4L2编程相关总结
来源:互联网 发布:张明淳 工程矩阵答案 编辑:程序博客网 时间:2024/06/06 11:39
主程序框架:
1. options_init();
2.options_deal(argc, argv);
3. video_init();
4.screen_init();
5.screen_mainloop();
6.screen_quit();
7.video_quit();
3.视频初始化
3.1 video_open(); fd = open(device, O_RDWR); //打开设备
3.2 video_set_format(); VIDIOC_S_FMT //设定格式,查看格式为VIDIOC_GFMT
3.3 buffer_init(); //缓冲区初始化,见下文
3.4 video_streamon(); VIDIOC_STREAMON //打开采集
3.3缓冲区初始化
3.3.1 缓冲区请求,VIDIOC_REQBUFS, 应用程序缓冲获得了calloc()
3.3.2 缓冲区映射, VIDIOC_QUERYBUF(把VIDIO_REQBUFS 中分配的数据缓存转换成物理地址)
3.3.3 缓冲区入队VIDIO_QBUF
5屏幕显示主循环
5.1 出队,VIDIOC_DQBUF //从缓冲区获取一个缓冲帧,前提是所有的队列已经入好。
5.2 处理采集回来的图像
5.3 VIDIOC_QBUF // 将取出的缓冲帧放回缓冲区
7视频采集退出
7.1 关闭采集 VIDIO_STREAMOFF
7.2 关闭视频文件指针close(fd)
7.3 释放缓存,解除映射关系unmmap();
- V4L2编程相关总结
- V4L2编程和Camera开发相关
- V4L2相关
- V4L2视频采集设备应用程序编程总结
- Linux下的V4L2的编程总结
- V4L2编程
- V4L2编程
- V4L2编程
- V4L2 编程
- V4L2 编程
- V4L2 编程
- V4L2编程
- V4L2编程
- V4L2 编程
- V4L2 编程
- V4L2 编程
- V4L2 编程
- V4L2编程
- 越南棋手出现惊天大漏 6连胜过程并不顺利
- 条件编译,几防止头文件重复包含
- 0-1背包算法 plus 空间复杂度优化版
- 解决android repo (git出错的问题)
- JS去空格
- V4L2编程相关总结
- 用Lua语言编写Wireshark dissector插件
- Android synchronized wait notify 多线程同步 .
- VMware硬盘扩容
- 英文、中文强制换行与不换行的css代码
- SIP RFC 3261
- oracle 数据库学习指导(1)
- 在Linux下,禁止某一个显示屏的输出
- Java靠强大的JVM维护了一个蓝领级语言?