播放声音用MediaPlayerAudioTrack两者都提供java API供应用发者使用虽都播放声音两者区别
其区别MediaPlayer播放种格式声音文件例MP3AACWAVOGGMIDI等MediaPlayerframework层创建应音频解码器
AudioTrack能播放已经解码PCM流文件支持wav格式音频文件wav格式音频文件部都PCM流AudioTrack创建解码器所能播放需要解码wav文件
两者间紧密联系MediaPlayerframework层创建AudioTrack解码PCM数流传递给AudioTrackAudioTrack再传递给AudioFlinger进行混音才传递给硬件播放
所MediaPlayer包含AudioTRack
通查看API知道MediaPlayer提供5setDataSource三类类传递播放文件字符串路径作参数例直接取sd卡mp3文件路径类传递播放文件FileDescriptor文件描述符作播放id例例db查询音频文件id直接赋给MediaPlayer进行播放类Uri类型资源文件用于播放content uri文件
解码方式和传输协议不一样