"编码PCM 16/8位"这是什么意思??让我说我有一个mp3音乐,我想将其转换为编码的PCM,所以我可以直接将其提供给AudioTrack对象的write()。
我可以转换的任何工具? 转换为PCM后,它将在Android中播放。 (考虑到我不打扰质量)
谢谢!
答案 0 :(得分:0)
PCM(脉冲编码调制)是WAV文件格式中使用的标准编码方案。它由8位或16位样本组成;每秒有多个音频 - 这个数字称为采样率。 AudioTrack
用于播放PCM数据;这可以在您写入其内部缓冲区(即MODE_STREAM
)时实时完成,或者您可以填充缓冲区然后回放(MODE_STATIC
)。如果您使用流媒体模式,请务必在播放期间连续呼叫write()
以继续填充缓冲区,否则AudioTrack
将停止播放,直到收到更多数据。
至于工具,一个简单的就是iTunes。转到首选项 - >常规 - >导入设置,然后从下拉菜单中选择“WAV编码器”。现在,右键单击要转换的文件,然后选择“创建WAV版本”。正如你所提到的,你将失去一点质量,这在转换中是不可避免的。
除此方法外,请考虑使用MediaPlayer
API,它将原生播放MP3。