9

目前正计划利用 Android 设备中相机提供的 RAW 数据制作摄影应用程序。

我使用相机 API 编写了一个快速骨架,并注意到在使用 RAW 图像数据的回调中,给定的数据缓冲区始终为 NULL,无论我制作的图像有多大或多小,但我能够访问 JPG 缓冲区.

我做了一些搜索,发现了这个线程: http ://markmail.org/message/sraudbyrsi2hjqfr#query:I%27m%20talking%20about%20deprecating%20the%20raw%20picture%20callback%20that%20has%20never+page:1 +mid:sraudbyrsi2hjqfr+状态:结果

其中提到在撰写本文时(2009 年 2 月),它“从未奏效”。那么,我是否正确地假设今天它仍然不起作用,或者我可能设置不正确?

我用来调试的手机是 Droid X。

只是感到困惑,因为我确实看到 API 提到如果设备上没有足够的可用内存,回调中的 RAW 数据缓冲区可能为 null,但即使我将图像设置为非常小的尺寸,它也会返回为 null( 100x100)

谢谢

编辑:

添加一些我从 LogCat 获得的调试输出:

DEBUG/CameraHal(1156): 初始化捕获内存 raw: 0x42d39000 (155648), jpg: 0x429c4000 (57856), pv 0x42d5f000 (276736)

调试/CameraHal(1156):收到原始 yuv 0x4119f000 大小 153600
调试/CameraHal(1156):收到 jpg 0x429c4000 大小 57584

DEBUG/CamTest(4716):RAW 回调 - 数据为 NULL
DEBUG/CamTest(4716):JPEG 回调 - 数据有效

“CamTest”是我的自定义调试输出。

4

2 回答 2

3

看起来它确实从来没有奏效过。从您的其他线程看来,它也永远不会。

于 2010-12-23T00:29:06.783 回答
0

仅在使用 Android L 的 Nexus 5(可能是 7)上工作。

试试这个应用程序: https ://github.com/dylian94/android-Camera2Basic

它使用 Google 的新相机 API: http ://connect.dpreview.com/post/2707133307/google-android-api-camera-raw

于 2014-07-29T19:16:40.833 回答