预备知识
V4L2,即Linux视频设备内核驱动。
参考文章
- v4l2的学习建议和流程解析
- Linux V4L2学习
- 高通msm-V4L2-Camera驱动浅析5-buffer
- 00_video_decode (video decode):此内容为英伟达Jetson的Demo文档手册,有条件的可以结合Jetson的代码阅读。其中便提到了Output Plane,Capture Plane,结合上面的内容可以认为:Output Plane缓冲区用于存放编码后的视频数据,Capture Plane缓冲区用于存放编码前的原始图像数据,例如YUV格式的图像。换汤不换药,机制很简单,只是有些新词汇让人摸不着头脑,不要纠结于名称。
- 我们一起学linux之V4L2摄像头应用流程(强烈推荐)
- Linux 设备驱动 V4l2 最常用的控制命令,跟着这篇文章动手编码,编码过程中通过试错调试,可以更深入理解其原理。
参考手册
- Linux Media Subsystem Documentation:来自官方,权威详尽。
代码
样例代码项目已放在gitee:v4l2_samples。
为了简化项目管理,降低开发难度,样例代码使用Qt Creator开发。