Мне удалось преобразовать изображения из потока предварительного просмотра в пригодный для использования формат, используя алгоритм YUV420-to-RGB
, представленный здесь . В моем приложении я также делаю это каждые 2-3 секунды для анализа цвета.
Вы можете написать соответствующий Runnable
и использовать Handler.postDelayed()
(см. docs ) для цепочки вызовов для соответствующего интервала. Вы также можете использовать Message
и Handler.sendMessageDelayed()
в сочетании с переопределением Handler.handleMessage()
для того же эффекта.
Ключевой идеей является включение кода для отправки (отложенного) другого идентичного сообщения в код для обработки этого сообщения. Это позволяет непрерывный захват. Будьте осторожны, чтобы очистить конвейер сообщений, когда в конечном итоге решите остановить приложение!