Camera
文章平均质量分 83
Tommy_wxie
Tommy_wxie
展开
-
V4L2应用程序框架
V4L2是V4L的升级版本,linux下视频设备程序提供了一套接口规范。常用的结构体在内核目录include/linux/videodev2.h中定义struct v4l2_requestbuffers //申请帧缓冲,对应命令VIDIOC_REQBUFSstruct v4l2_capability //视频设备的功能,对应命令VIDIOC_QUERYCAPst转载 2013-09-08 10:47:08 · 1645 阅读 · 1 评论 -
Android Camera Framework Stream(一)
现在我们尝试从最开始的启动流程来熟悉android camera的整体framework流程:首先从上图的各个步骤来逐一分析流程,后续会根据具体的一些点进行内容的添加和扩充: ? Camera.javapackages/apps/camera/src/com/android/最上层的应用就是从这个文件开始。该文件集中了整个android上层应用的所有相关内容,当然更多的则为转载 2014-09-20 10:29:59 · 1947 阅读 · 0 评论 -
ARM平台YUV转RGB888
ARM平台YUV转RGB888(转)前段时间,公司有个嵌入式的项目,我做的其中有一项是yuv视频到rgb888图像的转换。我主要是参照一位牛人的博客做的:http://blog.csdn.net/housisong/archive/2007/10/31/1859084.aspx YUV422p To RGB888 C语言版本接口说明:/****************原创 2014-07-17 16:24:01 · 4328 阅读 · 1 评论 -
YUV格式详解
YUV420格式解析一般的的YUV420图像格式实际上是Y'UV,420指的是其在Y U V上面的采样率。在YUV420的格式中,首先存储每一个像素的Y'值,然后跟着存储的是每2*2方阵采样一次的U值,最后存储的是每2*2方阵采样一次的V值。于是,一个4*4的方阵中,其数据存储为: 其颜色的存放格式如图所示: 上述转自:http://blog.csd转载 2014-04-26 16:24:15 · 1169 阅读 · 0 评论 -
YUV格式详解
YUV 采样YUV 的优点之一是,色度频道的采样率可比 Y 频道低,同时不会明显降低视觉质量。有一种表示法可用来描述 U 和 V 与 Y 的采样频率比例,这个表示法称为 A:B:C 表示法:•4:4:4 表示色度频道没有下采样。 •4:2:2 表示 2:1 的水平下采样,没有垂直下采样。对于每两个 U 样例或 V 样例,每个扫描行都包含四转载 2014-04-26 16:17:59 · 1263 阅读 · 0 评论 -
Android Camera TakePicture過程分析
Android Camera TakePicture過程分析接著上一篇文章,繼續講解camera拍照等具體功能實行流程Camera子系统采用C/S架构,客户端和服务端在两个不同的进程当中,它们使用android中的binder机制进行通信,本系列文章将从Android Camera应用程序到硬件抽象的实现一步一步对照相机系统进行分析,首先从CameraService初始化过程着手,原创 2014-04-03 11:35:41 · 12234 阅读 · 4 评论 -
Android Camera open运行流程
Android Camera 运行流程一 首先既然Camera是利用binder通信,它肯定要将它的service注册到ServiceManager里面,以备后续Client引用,那么这一步是在哪里进行的呢?细心的人会发现,在frameworks\base\media\mediaserver\Main_MediaServer.cpp下有个main函数,可以用来注册媒体服务。没错就是原创 2014-04-03 11:34:14 · 5424 阅读 · 1 评论 -
V4L2驱动程序架构
1 V4L2简介video4linux2(V4L2)是Linux内核中关于视频设备的内核驱动,它为Linux中视频设备访问提供了通用接口,在Linux系统中,V4L2驱动的Video设备节点路径通常/dev/video/中的videoXV4L2驱动对用户空间提供字符设备,主设备号为81,对于视频设备,其次设备号为0-63。除此之外,次设备号为64-127的Radio设备,次设备号为转载 2013-09-16 12:09:15 · 1868 阅读 · 0 评论 -
和菜鸟一起学linux之V4L2摄像头应用流程
对于v4l2,上次是在调试收音机驱动的时候用过,其他也就只是用i2c配置一些寄存器就可以了。那时只是粗粗的了解了,把收音机当作v4l2的设备后会在/dev目录下生成一个radio的节点。然后就可以操作了。后来就没怎么接触了。这周,需要调试下usb的摄像头。因为有问题,所以就要跟进,于是也就要开始学习下linux的v4l2了。看到一篇很不错的文章,下面参考这篇文章,加上自己的一些见解,做一些总结把。转载 2013-09-09 17:54:13 · 2402 阅读 · 1 评论 -
Linux的视频编程(v4l2编程)
一.什么是video4linuxVideo4linux2(简称V4L2),是linux中关于视频设备的内核驱动。在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,摄像头在/dev/video0下。二、一般操作流程(视频设备):1. 打开设备文件。 int fd=open(”/dev/video0″,O_RDWR);2. 取得设备的capability,看看设备转载 2013-09-09 10:25:42 · 1737 阅读 · 2 评论 -
V4L2驱动框架
V4L2驱动框架主设备号: 81次设备号: 0-63 64-67 192-223 224-255/dev/videoX 应用层————————————char驱动————————————V4L2————————————具体的驱动————————————硬件应用层的操作都原创 2013-09-08 11:20:04 · 2575 阅读 · 1 评论 -
Android系统Camera录像过程分析
最近调试系统Camera,遇到如下问题:在录像过程中,拔掉Camera;会出现应用程序卡死现象。 先说说之前的设计架构: 当用户拔掉Camera时,会给应用程序发送广播;当应用程序收到广播后调用Activity类的finish方法(系统会自动调用onPause方法),而我们的onPause方法做了停止录制和关闭Camera的动作。 问题出在: 当调用系统MediaRecor转载 2014-09-20 15:20:29 · 2823 阅读 · 0 评论