Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android Camera子系統之源代碼View

Android Camera子系統之源代碼View

編輯:關於Android編程

本文基於Android 4.2.2+Linux3.6.9+SAMA5D3 SoC從源代碼的角度審視Android Camera子系統。

應用層

Androd原生Camera應用

/system/app/LegacyCamera.apk

http://androidxref.com/4.2.2_r1/xref/packages/apps/LegacyCamera/

Camera應用調用Android應用框架提供的Camera API

import android.hardware.Camera;

import android.hardware.Camera.Area;

import android.hardware.Camera.CameraInfo;

import android.hardware.Camera.Face;

import android.hardware.Camera.FaceDetectionListener;

import android.hardware.Camera.Parameters;

import android.hardware.Camera.PictureCallback;

import android.hardware.Camera.Size;

應用框架層

/system/framework/framework.jar

http://androidxref.com/4.2.2_r1/xref/frameworks/base/core/java/android/hardware/Camera.java

JNI

/system/lib/libandroid_runtime.so

http://androidxref.com/4.2.2_r1/xref/frameworks/base/core/jni/android_hardware_Camera.cpp

Camera Service Binder Proxy

Camera Service Binder Proxy是Camera Client和Camera Service之間通信的統一通道。Camera Client和Camera Service都會調用Camera Service Binder Proxy。


/system/lib/libcamera_client.so

頭文件目錄

http://androidxref.com/4.2.2_r1/xref/frameworks/av/include/camera/

源文件目錄

http://androidxref.com/4.2.2_r1/xref/frameworks/av/camera/

Camera Service

Camera Service與Camera HAL交互,通過Binder Service的方式為Camera Client提供服務。

/system/lib/libcameraservice.so

http://androidxref.com/4.2.2_r1/xref/frameworks/av/services/camera/libcameraservice/

HAL

Camera硬件抽象層定義並實現供Camera Service調用的標准接口,保證Camera硬件的功能能夠正常發揮。

/system/lib/hw/camera.sama5d3-ek.so

頭文件

http://androidxref.com/4.2.2_r1/xref/hardware/libhardware/include/hardware/camera.h

源文件目錄

https://github.com/Android4SAM/platform_hardware_atmel/tree/master/sama5d3/camera

Kernel Driver

Camera驅動程序與Camera硬件和HAL交互。Camera硬件和驅動程序必須支持YV12和NV21圖像格式以支持預覽和錄像。

The V4L2driver for Atmel Linux

https://github.com/Android4SAM/linux-at91/blob/android4sam_v4.0/drivers/media/video/atmel-isi.c

SoC Cameradriver for Omni Vision 2640 sensor

https://github.com/Android4SAM/linux-at91/blob/android4sam_v4.0/drivers/media/video/ov2640.c

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved