В настоящее время планируем создать приложение для фотографий, использующее данные RAW, предоставленные камерой на устройствах Android.
Я написал быстрый скелет с помощью 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+state:results
Который упоминает, что на момент написания этой статьи (февраль 2009 г.) он "никогда не работал". Итак, я прав, если предположить, что сегодня это все еще не работает или, возможно, я что-то неправильно настраиваю?
Телефон, который я использую для отладки, это Droid X.
Просто сбит с толку, потому что я вижу, что API упоминает, что буфер данных RAW в обратном вызове может быть нулевым, если на устройстве недостаточно памяти, но он возвращается как нулевой, даже когда я установил изображение очень малые размеры (100х100)
Спасибо
Edit:
Добавление некоторого отладочного вывода, который я получаю из LogCat:
DEBUG / CameraHal (1156): инициализация необработанной памяти захвата: 0x42d39000 (155648), jpg: 0x429c4000 (57856), pv 0x42d5f000 (276736)
ОТЛАДКА / CameraHal (1156): Получено необработанное yuv 0x4119f000 размер 153600
DEBUG / CameraHal (1156): Получено JPG 0x429c4000 размер 57584
DEBUG / CamTest (4716): обратный вызов RAW - данные NULL
DEBUG / CamTest (4716): обратный вызов JPEG - данные действительны
«CamTest» - это мой пользовательский отладочный вывод.