Android的MediaPlayer的音量,平移和多个进程

时间:2015-11-11 17:40:22

标签: android audio

我有三个我想做的任务: 1.让多个媒体播放器运行不同的音频流。 2.更改这些音频流的音量。 3.独立改变左耳和右耳音量(即平移)

经过一段时间的搜索后,我没有找到满意的答案。

对于1.,大多数人建议使用SoundPool(我原来的直觉)或AudioTrack(后者是一个血腥的噩梦,因为它意味着基本上必须建立一个全新的媒体播放器。)

对于2.,每个人似乎都有一个spaz并继续谈论AudioManager,这实际上是一个不同的问题(在我看到的大多数情况下,包括我的)。它也无法处理3。

对于3.,我几乎没有发现任何偶尔引用AudioTrack的内容。

好吧,我提出了一个非常简单的解决方案,我觉得这个解决方案很有用。

1 个答案:

答案 0 :(得分:0)

解决方案是,您可以使用.setVolume(左,右)为每个轨道使用具有独立左/右卷的多个MediaPlayer。但是,这绝对至关重要 ......

适用于所有音频格式。目前,我已经完成了.wav文件的工作,而.mp3将无法工作(在3个方面中的任何一个方面)。

我希望这可以节省你们中的一些人,因为我浪费了一些时间,不小心想出了一个解决方案。

作为一个警告,这适用于运行API 23的Nexus 5,所以我不能为其他环境做出承诺。