V4L2
htjacky
这个作者很懒,什么都没留下…
展开
-
Video4Linux框架简介(1)
原作者:Hans Verkuil特性与架构 特性●视频捕获/输出和调谐(/ dev /videoX,流和控制)●视频捕获和输出覆盖(/ dev / videoX,控制)●内存到内存(也称为编解码器)设备(/ dev / videoX,streaming和控制)●原始和切分VBI捕获和输出(/ dev /vbiX,streaming和控制)●无线电翻译 2017-02-08 17:25:14 · 2110 阅读 · 0 评论 -
Video4Linux框架简介(2) - v4l2_device
V4L2 PCI基础驱动程序实例struct v4l2_device (1)(译注: 第一步,先基于你的桥接驱动(譬如这里就是PCI设备),添加一个v4l2设备对象,通常v4l2设备都不是独立存在的。)#include // 每个V4L2驱动都需要添加这两个头文件#include MODULE_DESCRIPTION("V4L2 PCI Skeleton Dr翻译 2017-02-08 18:58:54 · 1776 阅读 · 0 评论 -
Overview of the V4L2 driver framework(一)
Overview of the V4L2driver frameworkV4L2驱动框架概览===================================== Thistext documents the various structures provided by the V4L2 framework andtheir relationships.本文档描述翻译 2017-02-03 18:16:31 · 844 阅读 · 0 评论 -
Overview of the V4L2 driver framework(二)
struct v4l2_device------------------ Each device instanceis represented by a struct v4l2_device (v4l2-device.h). Very simple devices canjust allocate this struct, but most of the time you would翻译 2017-02-03 18:40:57 · 714 阅读 · 0 评论 -
Video4Linux框架简介(3) - video_device
video_device是指向v4l2具体的设备,名字同样有些不够准确,事实上,根据注册时传入type(本例中使用的是VFL_TYPE_GRABBER,也就是视频输入设备 -- Camera)的不同,可以分为视频输入,视频输出,VBI,Radio等。第一步先是在驱动的probe函数中添加video_device的初始化并注册:struct skeleton {struct pci_dev翻译 2017-02-08 19:52:43 · 2732 阅读 · 0 评论 -
Video4Linux框架简介(4) - v4l2_ioctl_ops
译注:本节主要会介绍一些v4l2常用的ioctl回调函数,每个驱动开发者可根据硬件需要来做具体实现或者不做实现。1. Input ioctlsvidioc_enum_input,顾名思义就是枚举输入,对于本示例驱动来说,有标准的S-Video输入和HDMI两种。static int skeleton_enum_input(struct file *file, void *priv,s翻译 2017-02-09 10:38:56 · 3685 阅读 · 0 评论 -
Video4Linux框架简介(5) - Streaming
译注:在前几节我们介绍了如何初始化v4l2驱动的框架、查询能力值、设置输入/视频标准/格式,但是还没有真正地传输过一帧数据。万事俱备,只欠东风,本节将会重点介绍"流媒体"中的数据流。流模式,数据流主要通过如下几种方式进行传输:●read/write接口:这种的基本比较少用。●内存映射流 I / O:驱动程序分配的内存,mmap()到用户空间。●用户指针流 I / O翻译 2017-02-10 11:05:48 · 2782 阅读 · 0 评论 -
Video4Linux框架简介(6) - 控制框架
V4L2 PCI驱动实例控制框架译注:在图像传输开始后,会有各种各样的控制参数需要下发给硬件,譬如brightness, contrast等。首先,要增加如下的控制处理回调函数,一些芯片厂商把kernel驱动做小,很多就依赖event机制在userspace侧处理。#include #include struct skeleton {...struct v4l2翻译 2017-02-10 14:00:55 · 1286 阅读 · 0 评论 -
Video4Linux框架简介(7) - V4L2框架和v4l2_subdev
V4L2框架译注:这是目前看到关于V4L2框架内众多结构关系最提纲挈领的一张图。子设备:v4l2_subdev struct●通常芯片连接到i2c或SPI总线,或通过GPIO引脚控制,但它们也可以表示SoC / FPGA内部模块。●子设备驱动程序可以由不同的桥驱动程序使用,因此它们不能依赖于任何特定的桥驱动程序。●不能进行探测,因此桥接器驱动程序必须翻译 2017-02-10 14:22:58 · 9394 阅读 · 0 评论