android摄像头图像增强,Android Camera-CameraView和CameraX使用

本文对比介绍了Android中CameraView和CameraX库的使用,以简化摄像头图像增强功能的集成。CameraView提供API,用于快速集成Camera1和Camera2特性,而CameraX作为Jetpack支持库,基于Camera2 API,简化了预览、拍照和设备一致性处理。文章详细展示了如何在XML中配置CameraView,以及添加相机状态回调、拍照功能。同时,介绍了CameraX的预览、拍照和图片分析的配置和实现。
摘要由CSDN通过智能技术生成

前面两篇介绍了Camera1和Camera2的使用,发现Camera API从1到2的变化非常大,Camera2的复杂度提升了不少,官方为了让我们更容易使用Camera,出了个一个官方的库cameraview。不过这个库已经Deprecated,官方建议使用Jetpack CameraX 替代。本篇文章就介绍下CameraView和CameraX的使用

CameraView

CameraView的目的就是帮助开发者能够快速集成Camera1和Camera2的特性,可以用下面这张表来说明:

API Level

Camera API

Preview View

9-13

Camera1

SurfaceView

14-20

Camera1

TextureView

21-23

Camera2

TextureView

24

Camera2

SurfaceView

开发流程

CameraView定义

xml中定义

android:id="@+id/camera"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:keepScreenOn="true"

android:adjustViewBounds="true"

app:autoFocus="true"

app:aspectRatio="4:3"

app:facing="back"

app:flash="auto"/>

复制代码

xml中可以配置:

autoFocus:是否自动对焦

aspectRatio:预览画面比例

facing:前后摄像头

flash:闪光灯模式

增加生命周期

@Override

protected void onResume(){

super.onResume();

mCameraView.start();

}

@Override

protected void onPause(){

mCameraView.stop();

super.onPause();

}

复制代码

这样声明后,就可以完成预览的工作了

相机状态回调

在xml声明CameraView后,增加回调

if (mCameraView != null) {

mCameraView.addCallback(mCallback);

}

...

private CameraView.Callback mCallback

= new CameraView.Callba

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值