У меня есть поток H264 видео, которое мне нужно показать в моем приложении для Android. Если я конструирую MediaCodec с поверхностью, тогда видео не будет декодировано для моего приложения без проблем, и я смогу увидеть его на этой поверхности.Декодирование кадров H264 в байтовый массив
Но мне также необходимо получить растровое изображение видео в определенные моменты (т. Е. Сохранить определенные кадры на SD-карте). Можно ли настроить библиотеку MediaCodec для возврата массива байтов вместо работы непосредственно с поверхностью?
Другим вариантом является получение растрового изображения непосредственно с поверхности, но я также не смог найти эту опцию на SDK.
Но это не то, что я, что: у меня есть поток H264, и я хочу, чтобы декодировать непосредственно в буфер байтов, избегая любой компонент пользовательского интерфейса. –
Вопрос не упоминал цель как извлечение байтовых данных и отсутствие пользовательского интерфейса, вы должны сделать свой вопрос более ясным. Независимо от того, проверьте измененный ответ, чтобы убедиться, что он соответствует вашим потребностям. – Kai
Я думаю, вы правы, мой вопрос не был правильно сформулирован. Мне нужно захватить все, что пользователь просматривает (в SurfaceView, созданный MediaCodec) в качестве моментального снимка. –