MediaCodecMuxer кодирует видео слишком медленно

Я использую MediaCodec Muxer для кодирования видео, но процесс идет слишком медленно. Иногда 60 секунд видео, процесс кодирования занимает более 90 секунд. План кодирования происходит от ExtractDecodeEditEncodeMuxTest(BigFlake), и я интерпретирую этот пример на уровне jni. Я не знаю, происходит ли это из-за использования отражения в моем коде для вызова Java API, которое приводит к очень медленному кодированию видео, или процесс обмена между GLDisplay и MediaCodec inputSurface вызывает эту проблему? Я использую eglCreateWindowSurface для создания GLSurface, мне интересно, могу ли я использовать eglCreatePbufferSurface для создания внеэкранной поверхности, которая может ускорить процесс кодирования? Кто-нибудь может дать совет? Спасибо!

1 ответ

Решение

Я ускоряюсь, кодируя аудио и видео в другой поток, и ускоряю кодирование аудио, увеличивая буфер записи звука.

Другие вопросы по тегам