我使用

https://github.com/googlesamples/android-Camera2Basic,但尝试修改它,我可以访问每个帧,然后在surfaceview上绘制.

我明白了,我应该添加额外的表面(ImageReader.getSurface()),并在此回调中从中读取帧:

private final ImageReader.OnImageAvailableListener mOnImageAvailableListener

= new ImageReader.OnImageAvailableListener() {

@Override

public void onImageAvailable(ImageReader reader) {

Log.d("Img", "onImageAvailable");

mBackgroundHandler.post(new ImageSaver(reader.acquireNextImage(), mFile));

}

};

问题是只有当用户捕获图像而不是从摄像机发送到预览屏幕的eacg帧时,才会调用此回调.

这是我试图添加的内容:

private void createCameraPreviewSession() {

try {

SurfaceTexture texture = mTextureView.getSurfaceTexture();

assert texture != null;

// We configure the size of default buffer to be the size of camera preview we want.

texture.setDefaultBufferSize(mPreviewSize.getWidth(), mPreviewSize.getHeight());

// This is the output Surface we need to start preview.

Surface surface = new Surface(texture);

// We set up a CaptureRequest.Builder with the output Surface.

mPreviewRequestBuilder

= mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);

mPreviewRequestBuilder.addTarget(surface);

// Here, we create a CameraCaptureSession for camera preview.

mCameraDevice.createCaptureSession(Arrays.asList(surface, mImageReader.getSurface()),

new CameraCaptureSession.StateCallback() {

@Override

public void onConfigured(CameraCaptureSession cameraCaptureSession) {

// The camera is already closed

if (null == mCameraDevice) {

return;

}

// When the session is ready, we start displaying the preview.

mCaptureSession = cameraCaptureSession;

try {

// Auto focus should be continuous for camera preview.

mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE,

CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE);

// Flash is automatically enabled when necessary.

mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AE_MODE,

CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH);

// Finally, we start displaying the camera preview.

mPreviewRequest = mPreviewRequestBuilder.build();

mCaptureSession.setRepeatingRequest(mPreviewRequest,

mCaptureCallback, mBackgroundHandler);

//mPreviewRequestBuilder.addTarget(mImageReader.getSurface());

} catch (CameraAccessException e) {

e.printStackTrace();

}

}

@Override

public void onConfigureFailed(CameraCaptureSession cameraCaptureSession) {

showToast("Failed");

}

}, null

);

/**TODO added for capturing aeach frame*/

// This is the CaptureRequest.Builder that we use to take a picture.

final CaptureRequest.Builder captureBuilder =

mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE);

captureBuilder.addTarget(mImageReader.getSurface());

// Use the same AE and AF modes as the preview.

captureBuilder.set(CaptureRequest.CONTROL_AF_MODE,

CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE);

captureBuilder.set(CaptureRequest.CONTROL_AE_MODE,

CaptureRequest.CONTROL_AE_MODE_ON_AUTO_FLASH);

/**end added for capture each frame*/

} catch (CameraAccessException e) {

e.printStackTrace();

}

}

android camera预览帧,android camera2处理每一帧并显示其预览相关推荐

  1. Android openGl开发详解(二)——通过SurfaceView,TextureView,GlSurfaceView显示相机预览(附Demo)

    最近公司在做自定义相机这一块,之前使用的是第三方,后来需求变更,第三方不支持添加动态贴纸,所以只能自己扩展.当然网上有很多例子,但是关于添加动态贴纸的例子几乎找不到,反正我是没找到(欲哭无泪).当然, ...

  2. Android camera(4)---Android Camera开发之基础知识篇

    Android Camera开发之基础知识篇 转自:https://blog.csdn.net/feiduclear_up/article/details/51968975#jump5 概述 Andr ...

  3. Android Camera简单整理(四)-Android Camera性能Debug经验

    针对手机厂商相机性能优化部分进行重点总结记录 Android Camera性能Debug经验 一.相机性能场景 二.相机性能debug工具及方案建议 1.dumpsys media.camera 1. ...

  4. android camera慢动作,关于android:这可能是全网关于Camera慢动作录像SlowMotion介绍最全的文章了...

    这是一篇对于慢动作录像(slowmotion)的文章,看完后置信你对慢动作录像不会再感到生疏了~ 这篇文章针对上面几点来开展: 1)写这篇文章的原由? 2)什么是慢动作录像(SlowMotionRec ...

  5. Android Camera(5)---Android Camera调用流程

    Android Camera调用流程 http://blog.csdn.net/lushengchu_luis/article/details/11033095 1.Packages/apps/到fr ...

  6. com.android.camera.action.crop uri,Android判断com.android.camera.action.CROP是否存在

    版权声明:本文为xing_star原创文章,转载请注明出处! 最近线上报错,有个用户连续crash了10次左右,查看了下堆栈信息,发现是提示com.android.camera.action.CROP ...

  7. android camera 图片被旋转,android 部分手机Camera 拍照 图片被旋转90度的解决方法

    部分手机拍照完后 图片旋转角度90度,目前解决方法普遍都是通过图片路径,获取图片信息判断角度,然后转换角度.如下: /** * 读取图片属性:旋转的角度 * @param path 图片绝对路径 * ...

  8. Android Camera了解一下

    首发于公众号 Android Camera了解一下 Camera 演进简介 最近在项目中遇到 Camera相关的场景,之前对这块不是很了解,趁机补了一下盲区.Android Camera 相关也是生态 ...

  9. 第1讲 Android Camera性能分析 课程组织安排

    本讲是Android Camera性能分析专题的第1讲,我们介绍课程组织安排,包括如下内容: 课程详细内容 课程配套源码和资料 视频在线观看: 极客笔记:极客笔记在线课程 加入知识星球与更多Camer ...

  10. android camera (2) ---高通平台camera开发

    1. 设置摄像头方向 2. 打开线程与预览线程 3. 设置参数 4. Camera外设按键 5. 自动对焦与触摸对焦 6. 拍照 7. 人脸检测 8. 位置管理 9. 旋转管理 10. 变焦 11. ...

最新文章

  1. 推荐8个鲜为人知,但是很有意思的工具,简洁又好用!
  2. zk Acl权限:只有一个账号有crdwa权限,匿名用户只有r权限
  3. 致创业者:APP已死 服务永生
  4. (四)boost库之正则表达式regex
  5. Flex Graphics
  6. phpcmsV9框架:安装教程
  7. 百度SEO快克工具包 1.5.0 官方版
  8. C#算法设计查找篇之01-顺序查找
  9. Fedora Linux中配置JDK5或JDK6环境变量
  10. element table多选只能选中当前页数据_关于“列表多选”操作流的小思考
  11. python随笔系列--多进程多线程并发度初探
  12. php如何优雅地把数组传递给前端js脚本?
  13. JS如何判断浏览器类型和详细区分IE各版本浏览器
  14. vue修改编码_看,官方出品了 Vue 编码风格指南!
  15. IoT协议LwM2M MQTT与CoAP
  16. vue项目接口地址暴露_vue组件暴露和.js文件暴露接口的操作方法
  17. 利用FME计算椭球面积
  18. 【长期更新】计算机类企业网申地址内推码大整理
  19. 红太狼和灰太狼的囧人爱情
  20. 0基础快速入门CSS技术栈(6)—图解详细阐述说透CSS的浮动及应用、浮动的扩展及清除浮动和详解快速·1photoshop切图(附详细案例源码解析过程)2021-01-07更新

热门文章

  1. JSK-16014 打印字母图形【打印图案】
  2. CCF NOI1048 检测矩阵
  3. Java 面试题 —— java 源码
  4. 广义逆高斯分布(Generalized Inverse Gaussian Distribution)及修正贝塞尔函数
  5. 矩阵分析相关证明(一) —— 正交与投影
  6. 云计算服务与基本术语、概念
  7. matlab 工具函数(一) —— 添加指定 SNR 的噪声
  8. 分治法(divide conquer)与动态规划(dynamic programming)应用举例
  9. python常用代码入门-入门十大Python机器学习算法(附代码)
  10. python在线编辑器-在线python编辑器