Я создал приложение для обнаружения лиц, в котором я получаю кадры из onPreviewFrame, выполняю обнаружение лиц, а затем рисую круг на холсте над моим SurfaceView.Проблема заключается в том, что кадры автоматически отображаются с использованием потока SurfaceView при запуске Camera.StartPreview ().Это очевидно необходимо для запуска PreviewCallback. Поскольку обработка, обнаружение лица и рисование выполняются в отдельном потоке (я предполагаю здесь), между отображаемым кадром и результатом этого кадра есть 2-секундная задержкаобрабатывается и рисуется на холсте.
Что я хочу сделать, так это остановить предварительный просмотр камеры, отображающий кадры, и отобразить их сам после обработки.Я считаю, что это имеет три преимущества:
Задержка с исчезновением.
Я могу рисовать прямо на растровом изображении, а не на холсте, который бесполезен, так как вы не можете отменить то, что сделали.
Это поможет сохранить низкое потребление памяти за счет отсутствия двух потоков, использующих одно и то же изображение.
Я читал, что можно отображать кадры из PreviewCallback, кто-нибудь знает, как и какостановить отображение кадров автоматически?
Заранее большое спасибо.