没有合适的资源?快使用搜索试试~ 我知道了~
嵌入式LINUX环境下视频采集知识(V4L2)-joryers-ChinaUnix博客1
需积分: 0 0 下载量 147 浏览量
2022-08-03
18:08:35
上传
评论
收藏 561KB PDF 举报
温馨提示
试读
11页
16-8-18 上午11:51嵌入式LINUX环境下视频采集知识(V4L2)-joryers-ChinaUnix博客第 1 页(共 11 页)16-8-18 上
资源详情
资源评论
资源推荐
16-8-18 上午11:51嵌式LINUX环境下视频采集知识(V4L2)-joryers-ChinaUnix博客
第 1 (共 11 )http://blog.chinaunix.net/uid-29746641-id-4349330.html
amduron
c
dixiaobi
kingdeko
fengwei1
3346lkl
2598
4
0
0
2014-07-10 15:22
4
4
20144
IT168
Chinaunix | | | |
joryers
LINUX(V4L2) 2014-07-10 15:25:19
LINUX
LINUX(V4L2) kjqin
Video for Linux two(Video4Linux2)V4L2V4LV4L2linuxAPI
Video for Linux two
Linux“”V4L2
/dev/v4l/video0/dev/video0V4L2
(mmap)(read)V4L2include/linux/videodev.h
LinuxV4L2Linux
V4L2Linux 2.5.x
V4L2API(Common API Elements)(Image Formats)/(Input/Output)
Linux(Interfaces)
——Video Capture Interface;
—— Video Output Interface;
/——Video Overlay Interface;
——Video Output Overlay Interface;
——Codec Interface
V4L2
V4L2(mmap)(read)
V4L2
V4L2;
/;
;
;
1.
Linux“/dev/video0”openfd_v4l2
(1)
v4l2_cropv4l2_crop
v4l2_buffer_typetypev4l2_rectctype
joryersChinaUnix
| |
2016
16-8-18 上午11:51嵌式LINUX环境下视频采集知识(V4L2)-joryers-ChinaUnix博客
第 2 (共 11 )http://blog.chinaunix.net/uid-29746641-id-4349330.html
IT168qiye
SACC2013
·vm.swappiness...
·Linux——D...
·Solariscore dump...
·MySQLgap
·FreeBSDPPPoE...
·lua(linux)
·linux+ARM
V4L2_BUF_TYPE_VIDEO_CAPTUREcLeftTop
widthheightioctlfd_v4l2
struct v4l2_crop { enum v4l2_buf_type type;
struct v4l2_rect c;
};
(2)
v4l2_formattypefmt
typeV4L2_BUF_TYPE_VIDEO_CAPTUREbufferfmtpix
v4l2_pix_formatpixpixelformat
V4L2_PIX_FMT_YUV420;widthheight;sizeimage
;bytesperlineioctlfd_ v4l2
struct v4l2_format
{ enum v4l2_buf_type type;
union
{ struct v4l2_pix_format pix; // V4L2_BUF_TYPE_VIDEO_CAPTURE
struct v4l2_window win; // V4L2_BUF_TYPE_VIDEO_OVERLAY
__u8 raw_data[200]; // user-defined
} fmt;
};
(3)
v4l2_streamparmtypeparmtype
V4L2_BUF_TYPE_VIDEO_CAPTUREparmv412_capturecapture v4l2_fract
timeperframenumeratordenominatornumerator/denominator;
capturemode10ioctlfd_ v4l2
struct v4l2_streamparm
{ enum v4l2_buf_type type;
union
{ struct v4l2_captureparm capture;
struct v4l2_outputparm output;
__u8 raw_data[200]; /* user-defined */
} parm;
};
2.
API(VIDIOC_REQBUFS)3
API(VIDIOC_QUERYBUF)
(mmap)
(1)
(incoming queues)(outgoing queues)
2
(VIDIOC_QBUF)
16-8-18 上午11:51嵌式LINUX环境下视频采集知识(V4L2)-joryers-ChinaUnix博客
第 3 (共 11 )http://blog.chinaunix.net/uid-29746641-id-4349330.html
(2)
,1
1
(3)
3.V4L2API
V4L2
ioctl
(1)int fd=open("/dev/video0",O_RDWR);
(2),ioctl(fd_v4l, VIDIOC_QUERYCAP, &cap)
(3)
PAL/NTSCioctl(fd_v4l, VIDIOC_S_STD, &std_id)
ioctl(fd_v4l, VIDIOC_S_CROP, &crop)
ioctl(fd_v4l, VIDIOC_S_FMT, &fmt)
ioctl(fd_v4l, VIDIOC_S_PARM, &parm)
ioctl(fd_v4l, VIDIOC_S_CTRL, &ctrl)
(4)
/3,ioctl(fd_v4l, VIDIOC_REQBUFS, &req)
ioctl(fd_v4l, VIDIOC_QUERYBUF, &buf)
(5)
buffers[i].start = mmap (NULL, buffers[i].length, PROT_READ | PROT_WRITE, MAP_SHARED, fd_v4l, buffers[i].offset);
(6)ioctl (fd_v4l, VIDIOC_QBUF, &buf)
(7) ioctl (fd_v4l, VIDIOC_STREAMON, &type)
(8)
(9)ioctl (fd_v4l, VIDIOC_DQBUF, &buf)
(10),ioctl (fd_v4l, VIDIOC_QBUF, &buf)
810
(11)ioctl (fd_v4l, VIDIOC_STREAMOFF, &type)
(12)unmapclose(fd_v4l)
剩余10页未读,继续阅读
赵伊辰
- 粉丝: 56
- 资源: 314
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0