我测试Android MediaCodec,可以解码原始双倍大小的数据吗?
麦克风
- > AudioRecord(原始PCM)
- > MediaCodec编码器(原始AAC)
- > UDP
- > MediaCodec解码器(原始PCM)
- >扬声器
目前,解码器进程已成功完成,至少没有错误。
但是,作为每个解码周期输出的rawPCM的Byte []大小大约是编码周期输入的两倍。
d/AudioRecoder:字节读
d/AudioEncoder:360个字节编码
d/UDP接收机:接收!!从///127.0.0.1:39000
d/UDP接收机:360个字节接收
d/AudioDecoder:字节解码
显然,我期望的rawPCM大小匹配于原始一个,并感觉错了。
这个问题与我以前的问题有关,代码也在那里。
PCM -> AAC (Encoder) -> PCM(Decoder) in real-time with correct optimization
到目前为止,我还没有做这个解码字节用扬声器播放。
有没有想法?谢谢。
UPDATE:
我试着用扬声器播放,而实际上,它略有工作,所以在解码过程的工作最少。
略微表示等待时间约为10秒,音质很差。我在Genymotion仿真器上测试了这个,不知道这种仿真器是如何影响这个的。
我试图解决同样的问题,是的,当我在解码器的MediaCodec上调用'MediaCodec.getOutputFormat()'时。INFO_OUTPUT_FORMAT_CHANGED',原始输入中有2个通道,而不是1个。 – Gensoukyou1337