Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Однокадровое изображение из Camera Preview Android

Автор вопроса: SamRowleyОтветов: 2

Я хочу иметь возможность сделать снимок экрана предварительного просмотра камеры, отображаемого на SurfaceView. Я знаю, что это как-то связано с методом onPreviewFrame(), и он возвращает массив байтов в формате YUV, но я понятия не имею, как вызвать метод onPreviewFrame() сам по себе.

Я использовал его в сочетании с Camera.setPreviewCallback(), но это непрерывная вещь, которая продолжает генерировать изображение, мне нужно сделать это один раз на onClick(), чтобы сделать снимок без остановки окна предварительного просмотра. Любые идеи?

androidjavacameraphoto

Ответы

Ответ 1 · рейтинг 2 · SamRowley

Для всех, у кого есть похожая проблема, я решил ее, используя метод setOneShotPreviewCallback() для объекта камеры, чтобы дать мне byte[] информацию для изображения. при этом его можно использовать для создания YUV, а затем сжимать в растровое изображение или что вам нужно.

Ответ 2 · рейтинг 1 · Veeresh

Захватите изображение предварительного просмотра на холсте и заблокируйте его. Затем вы можете легко сохранить в растровое изображение См. этот пост для полного объяснения с примером кода http://www.anddev.org/using_camerapreview_to_save_a_picture_on_disk-t226.html

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы