我MediaCodec用来将.wav文件转换为.amr.我使用以下代码进行输入并获取编码缓冲区.我得到编码的文件,但它没有播放,我的输入是正确的,因为我能够在Audacity中播放该文件.我正在使用EncodeDecodeTest.javaandroid API测试.任何指向潜在问题的指标都表示赞赏.
MediaCodec codec = MediaCodec.createByCodecName(componentName);
try {
codec.configure(
format,
null /* surface */,
null /* crypto */,
MediaCodec.CONFIGURE_FLAG_ENCODE);
} catch (IllegalStateException e) {
AppLog.logString("codec '" + componentName + "' failed configuration.");
// assertTrue("codec '" + componentName + "' failed configuration.", false);
}
codec.start();
ByteBuffer[] codecInputBuffers = codec.getInputBuffers();
ByteBuffer[] codecOutputBuffers = codec.getOutputBuffers();
int numBytesSubmitted = 0;
boolean doneSubmittingInput = false;
int numBytesDequeued = 0;
while (true) {
int index =0 ;
if …Run Code Online (Sandbox Code Playgroud)