这是我在这里的第一篇文章,我希望我能找到一些帮助V4L2视频采集例如
我工作的嵌入式linux三星OK6410板和OV9650 CMOS摄像头
我要捕获视频并将其保存在SD卡上
我想使用捕获视频的循环缓冲区,当它满了时,允许新数据覆盖旧的数据。
有是,凸起的情况下,捕获持续10秒钟,然后停止的标志。视频保存到SD卡应包含提升标志前10秒和提升后10秒。
我读了捕获例如在V4L2的API规范的官方网站在这里
http://free-electrons.com/kerneldoc/latest/video4linux/API.html
但也有我无法理解或不知道如果我理解正确
一些要点在这个例子中,有4个帧缓冲区,每个缓冲区可以保存一个帧。这是正确的吗?
有一个变量(frame_count)被初始化为70,这是否意味着通过完成这个程序,我将有一个包含70帧的视频?
fns(主循环)和(读取帧)做了什么?我知道他们应该做什么,但无法理解书面代码,环..等
我该如何调整这个代码中的fps?或者我应该在相机寄存器中写入值?
捕获视频后,我将有一个填充了原始数据的缓冲区,我想压缩它或使用编解码器将其保存为MPEG,我可以改变要压缩的像素格式(例如MPEG) YUYV的?或者我应该怎么做来压缩视频?编解码器还是什么?
我可以在缓冲区中将这些原始数据写入文件.yuv吗?我发现了一些可以播放这种格式的视频的软件。
是否可以使用循环缓冲区而不是线性缓冲区来保存捕获的视频?
我知道我的帖子太长,但我是一个新手,找不到任何教程,可以帮助我编写我的代码。
在此先感谢
从自由电子的另一链路:http://free-electrons.com/kerneldoc/latest/DocBook/media_api/index.html – 2013-02-24 01:01:44
所有链路断开 – irobo 2018-03-08 18:09:50