Java Android MediaCodec,解码的数据可以是原始数据的两倍吗?
我在测试 麦克风 ->音频记录(原始PCM) ->MediaCodec编码器(到原始AAC) ->UDP ->MediaCodec解码器(到原始PCM) ->演讲者 目前,解码器过程已成功完成,至少没有错误 然而,作为每个解码周期输出的rawPCM的字节[]大小大约是编码周期输入的两倍 音频记录器﹕ 4096读取字节数 音频编码器﹕ 360字节编码 D/UDP接收机﹕ 收到!!from///127.0.0.1:39000 D/UDP接收机﹕ 接收到360字节 音频解码器﹕ 8192已解码字节 很明显,我希望RAWCMM的尺寸与原来的尺寸相匹配,但感觉有点不对劲 这个问题与我之前的问题相关,代码也在那里 到目前为止,我还没有做这个解码字节播放扬声器 有什么想法吗?谢谢Java Android MediaCodec,解码的数据可以是原始数据的两倍吗?,java,android,encoding,decoding,android-mediacodec,Java,Android,Encoding,Decoding,Android Mediacodec,我在测试 麦克风 ->音频记录(原始PCM) ->MediaCodec编码器(到原始AAC) ->UDP ->MediaCodec解码器(到原始PCM) ->演讲者 目前,解码器过程已成功完成,至少没有错误 然而,作为每个解码周期输出的rawPCM的字节[]大小大约是编码周期输入的两倍 音频记录器﹕ 4096读取字节数 音频编码器﹕ 360字节编码 D/UDP接收机﹕ 收到!!from///127.0.0.1:39000 D/UDP接收机﹕ 接收到360字节 音频解码器﹕ 8192已解码字节 很
更新: 我试着玩speaker,实际上,它稍微起作用了,所以解码过程至少起作用了
轻微表示延迟约为10秒,音质糟糕。我在Genymotion emulator上测试了这一点,不知道这种仿真器是如何影响这一点的。这听起来像是在捕获单声道,对其进行编码,然后解码器将其作为立体声流输出,单声道在左声道和右声道之间复制
确保当
MediaCodec.dequeueOutputBuffer()
返回MediaCodec.INFO\u OUTPUT\u FORMAT\u更改时,调用MediaCodec.getOutputFormat()
获取当前格式。我正在尝试解决同样的问题,是的,当我调用MediaCodec.getOutputFormat()
时,在解码器的MediaCodec.INFO\u输出\u格式\u已更改
,原始输入中有2个通道,而不是1个。