Используйте MediaCodec и MediaExtractor для декодирования и кодирования видео

Мне нужно декодировать видео в последовательность растровых изображений, чтобы я мог изменить их, а затем сжать их обратно в видеофайл в Android.

Я планирую управлять этим с помощьюgetFrameAtTime и сохранить его в последовательности изображений. Затем я могу изменить изображения в последовательности и кодировать их обратно в фильм. Но у меня есть две проблемы с этим:

Во-первых, когда я читаю,getFrameAtTime предназначен для создания миниатюр и не гарантирует возвращение правильного кадра. Это делает видео запаздывающим.Во-вторых, сохранение изображений и их чтение занимает много времени.

Я прочитал, что правильный способ сделать декодирование с MediaExtractor, это нормально, но у меня есть только примеры, чтобы сделать его прямо наsurfaceView, Есть ли способ для меня, чтобы преобразоватьoutputBuffer в растровое изображение?

Мне нужно, чтобы он работал с уровнем API от 16 и выше.

Ответы на вопрос(2)

Ваш ответ на вопрос