我正在使用 MediaCodec 在 android 上压缩带有音频的视频。当我在 try/catch 中运行代码时,除了音频的最后一部分丢失之外,输出视频很好。
我不得不重写代码并将其转换为 Kotlin,但到目前为止没有任何效果。我在这里看到了一些类似的问题,但错误代码略有不同,因为它更多的是音频问题,而这看起来像是视频提取的问题。
这是发生错误的代码。这条线videoDecoder.queueInputBuffer
正是崩溃。
videoExtractorDone = !videoExtractor.advance()
if (videoExtractorDone) {
if (false) Log.d(TAG, "video extractor: EOS")
videoDecoder.queueInputBuffer(decoderInputBufferIndex, 0, 0, 0, videoDecoderOutputBufferInfo.flags)
}
如何解决此问题以使剪辑具有完整的音频?我不能丢失此过程中的任何音频。