我搜索了几个小时..我只想对录制的电影进行有效的解码/编码。这在 android 4.1 上是否可行?现在我只将几 kb 写入我的 mp4 文件。没有错误。
在这工作之后,我将使用 KEY_FRAME_RATE 和 KEY_I_FRAME_INTERVAL 将其置于慢动作中。
我使用 mediaExtractor 来配置 MediaCodec。我看到 3 个步骤(完整代码请参阅要点):
1./
encoder.dequeueInputBuffer(5000);
extractor.readSampleData(inputBuf, offset);
ptsUsec2 = extractor.getSampleTime();
encoder.queueInputBuffer(inputBufIndex, ...);
2./
encoder.dequeueOutputBuffer(info, 5000);
ByteBuffer encodedData = encoderOutputBuffers[encoderStatus];
//i write encodedData to a FileOutputStream (to save the MP4);
decoder.queueInputBuffer(inputBufIndex, ...);
3./
decoder.dequeueOutputBuffer(info, 5000);
decoder.releaseOutputBuffer(decoderStatus, ...);
这是我从谷歌的 EncodeDecodeTest 文件中修改的完整函数: gist
谢谢你的帮助,菲利克斯