Я делаю проект по обработке изображений. Я получаю необработанный видеопоток h264 в режиме реального времени и декодирую его с помощью MediaCodec. Я успешно отобразил декодированное видео в TextureView или SurfaceView. Теперь я хочу обработать каждый кадр, сделать с ним что-то с помощью OpenCV4Android и показать обновленный видеокадр на экране. Я знаю, что в OpenCV есть пример проекта, который демонстрирует, как обрабатывать видеокадры с камеры телефона, но мне интересно, как это сделать, если у меня есть другой источник видео.
Также у меня есть несколько вопросов по TextureView:
Что делает onSurfaceTextureUpdated() из SurfaceTextureListener? Если я вызову getBitmap() в этой функции, значит ли это, что я получу каждый кадр видео? А как насчет SurfaceTexture.onFrameAvailableListener?
Можно ли использовать скрытый TextureView в качестве промежуточного звена, извлекать его кадры для обработки и отображать их обратно на другую поверхность, скажем, текстуру OpenGL ES для отображения?