小编Edd*_*eng的帖子

从相机,SurfaceView或SurfaceHolder连续获取图像数据

所以我设置了这个相机预览Camera,SurfaceViewSurfaceHolder.我还有一个ImageView地方,我将把相机图像的修改版本,我希望这更新让我们说每秒一次.

当我从"res"加载图像时,所有代码都准备好并且已经工作但是我很难从相机读取图像数据.

我已经尝试过了:

  1. 创建一个intentfor MediaStore.ACTION_IMAGE_CAPTURE并开始onActivityResult获取一个小缩略图(实际上足够我)(Bitmap)data.getExtras().get("data")

    问题是这会打开相机应用程序,你需要"手动"拍照.

  2. 使用创建Camera.PreviewCallback,拍摄YuvImage并将其转换为图像YuvImage.compressToJpeg(...).

    这里的问题是无论何时何地我都无法启动它 Camera.setPreviewCallbackWithBuffer(PreviewCallback).

  3. 尝试PreviewHolder通过锁定到画布直接获取数据lockCanvas()并尝试将其转换为位图

    显然不起作用.

编辑: 这项工作的最佳方法是什么?我的意思是QR码阅读器必须不断地从相机中读取图像数据,它们如何工作?

java camera android surfaceview surfaceholder

2
推荐指数
1
解决办法
4332
查看次数

标签 统计

android ×1

camera ×1

java ×1

surfaceholder ×1

surfaceview ×1