
camera
文章平均质量分 82
信田君9527
keep reading the fu*king code and learning
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
stride for plane for YUV
YUVYou can think of an image as a superposition of severalplanes(or layers in a more natural language). YUV formats have three planes:Y,U, andV.Yis thelumaplane, and can be seen as the image as grayscale.UandVare reffered to as thechromap...原创 2021-09-26 17:00:11 · 600 阅读 · 0 评论 -
YUV格式数据
YUV格式有两大类:平面(planar)和紧凑(packed)。对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。以下缩写p表示“紧凑”,sp表示“半紧凑”。以分辨率8*4为例,数据存储方式如下。1、yuyv(yuv422)【YUY2】:YUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVYUYVY原创 2021-08-20 10:37:45 · 1514 阅读 · 0 评论 -
V4L2 操作流程和接口说明
背景: V4L2是V4L的升级版本,为linux下视频设备程序提供了一套接口规范。包括一套数据结构和底层V4L2驱动接口。一般操作流程(视频设备):1.打开设备文件。int fd=open("/dev/video0",O_RDWR);2. 取得设备的capability,看看设备具有什么功能,比如是否具有视频输入,或者音频输入输出等。VIDIOC_QUERYCAP,struct v4l2_capability(可选)3. 选择视频输入,一个视频设备可以有多个视频输入。原创 2021-08-03 10:35:35 · 2157 阅读 · 0 评论 -
Android Camera processCaptureResult 分析
当camera open,并且顺利下发capture request之后,camera HAL完成capture操作,会通过HIDL定义的接口processCaptureResult将数据回传处理。/hardware/interfaces/camera/device/3.2/ICameraDeviceCallback.halICameraDeviceCallback是HIDL定义的camera回调接口,processCaptureResult方法就是从HAL层回调到CameraServer的接口,C原创 2021-06-29 12:36:18 · 3300 阅读 · 2 评论 -
Android Camera preview分析
大家使用API2开发相机APP时预览是调用CameraCaptureSession类的setRepeatingRequest方法,该方法的实现是由CameraCaptureSessionImpl完成的。/frameworks\base\core\java\android\hardware\camera2\impl\CameraCaptureSessionImpl.java @Override public int setRepeatingRequest(CaptureRequest原创 2021-06-28 18:59:56 · 1397 阅读 · 1 评论 -
Android camera createCaptureSession分析
在openCamera() 成功打开相机后,会通过CameraDevice.StateCallback回调接口onOpened()方法返回一个CameraDevice对象给应用层,而这个CameraDevice对象是一个CameraDeviceImpl,那么接下来的createCaptureSession就是调用它来实现的。/frameworks/base/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java @Overr原创 2021-06-28 14:06:31 · 2308 阅读 · 0 评论 -
Android camera 拍照 流程
APP347 /**348 * Take picture, initiating an auto focus scan if needed.349 */350 @Override351 public void takePicture(final PhotoCaptureParameters params, final CaptureSession session) {352 // Do not do anything when a pictur原创 2021-06-25 16:50:39 · 937 阅读 · 0 评论 -
Android camera preview流程
(原文链接:https://blog.csdn.net/weixin_41944449/article/details/102609776)APP在 Camera2 相机应用,打开相机应用将会调用到 Camera2OneCameraOpenerImpl 类 [packages/apps/Camera2/src/com/android/camera/one/v2/Camera2OneCameraOpenerImpl.java] 的 open() 方法,在该方法中将会通过 CameraManager..转载 2021-06-22 16:00:14 · 2749 阅读 · 0 评论 -
YCbCr色彩空间
一. RGB三原色光模式(RGB color model)表示方式R(red): 红色 G(green): 绿色 B(blue): 蓝色使用场景摄影, 彩色电视, 彩色显示屏二. HSV(HSL)HSV(HSL) 是一种将 RGB 色彩模型中的点在圆柱坐标系中的表示法。表示方式H(Hue): 色相(表示什么颜色) 每个角度上都有不同的颜色 S(Saturation): 饱和度(表示颜色的深浅) 色轮上的饱和度, 从圆心出发, 半径越大, 饱和度.原创 2021-06-22 14:43:51 · 12041 阅读 · 1 评论 -
Android camera open 流程
从 Application 连接到 CameraService,这涉及到 Android 架构中的三个层次:App 层,Framework 层,Runtime 层。其中,App 层直接调用 Framework 层所封装的方法,而 Framework 层需要通过 Binder 远程调用 Runtime 中 CameraService 的函数。(https://blog.csdn.net/qq_16775897/article/details/81537710)APP:mCameraManager.o原创 2021-06-21 18:38:55 · 3161 阅读 · 0 评论 -
Android Camera Provider and Service 启动流程
cameraserver 与 provider 这两个进程启动、初始化的调用逻辑,如上图所示(Thanks to :https://blog.csdn.net/qq_16775897/article/details/81240600)总体逻辑顺序:provider 进程启动,注册;cameraserver 进程启动,注册,初始化;cameraserver 获取远端 provider(此时实例化 CameraProvider 并初始化)上图中,实线箭头是调用关系。左边是 camerase..原创 2021-06-21 16:58:07 · 1959 阅读 · 1 评论 -
Treble 架构下的 Android Camera 框架
Camera 子系统从上到下分别是App/Framework,CameraService,HAL Impl App/FrameworkvsCameraService之间,通过AIDLbinder 通信 CameraServicevsCamera HAL之间,通过HIDLbinder 通信 App Framework部分是最上层部分,包括 Java & C++ 代码,实现了Android Camera2 API接口,提供给 android 应用使用,Java ...原创 2021-06-21 13:59:53 · 1004 阅读 · 2 评论 -
Android External USB Cameras
The Android platform supports the use of plug-and-play USB cameras (that is, webcams) using the standardAndroid Camera2 APIand the cameraHIDLinterface. Webcams generally supportUSB video class (UVC)drivers and on Linux, the standardVideo4Linux (V4L)...原创 2021-06-21 13:39:19 · 2138 阅读 · 0 评论 -
Android USB Camera
Android 设备基于linux kernel, 自带V4L2支持。z原创 2021-06-21 13:32:25 · 3396 阅读 · 0 评论 -
Android Camera:Camera Framework架构
Camera从上到下,主要分为三层:APP client 、CameraFramework、CameraHal。这三层分别运行在不同的进程,APP client运行在APP用户进程中,CameraFramework运行在cameraserver进程中,而CamerHal运行在provider进程中。原文链接:https://blog.csdn.net/biandan1231/article/details/116866786...原创 2021-06-18 13:48:44 · 1289 阅读 · 0 评论 -
Android Camera--CSC(color space convert)图像色彩空间转换
1 YUV域介绍根据三基色原理,任意一种色光F都可以用不同分量的R、G、B三色相加混合而成,即F = r [ R ] + g [ G ] + b [ B ],其中r、g、b分别为三基色参与混合的系数。当三基色分量都为0(最弱)时混合为黑色光;而当三基色分量都为k(最强)时混合为白色光。调整r、g、b三个系数的值,可以混合出介于黑色光和白色光之间的各种各样的色光。 ~~~~~~~在现代彩色电视系统中,通常采用三管彩色摄像机或彩色CCD摄像机进行摄像,然后把摄得的彩色图像信号经...原创 2021-06-17 10:55:43 · 1377 阅读 · 0 评论 -
Android camera系列:DNG格式
1. 原厂Raw格式原厂Raw文件,直接记录了相机芯片上的数字信号,因此也被称为"数字底片"。Raw文件保留了相机拍摄的所有信息,使用了芯片上原始的色彩空间,因此画质极高,后期空间极大,摄影师在拍摄时,基本都会选用Raw格式来保存。但是Raw文件也有不好的地方,就是兼容性差。大部分Raw文件,都不能被主流电脑软件直接读取。只有各大相机厂家自己的图片软件,或者Adobe Camera Raw这样的处理程序,才能打开原厂Raw格式文件。而且每当新出了相机,老版本的图片处理软件都需要进行更新,否则是打不开新原创 2021-02-08 15:15:32 · 3340 阅读 · 0 评论 -
Android CameraX based app
CameraX is an addition to Jetpack that makes it easier to add camera capabilities to your app. The library provides a number of compatibility fixes and workarounds to help make the developer experience consistent across many devices.API Referenceandroidx原创 2021-01-31 13:18:37 · 178 阅读 · 0 评论