繁体   English   中英

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

[英]Volume, Panning, and Multiple Processes of Android's MediaPlayer

我要做三个任务:1.让多个Mediaplayer运行不同的音频流。 2.更改这些音频流的音量。 3.分别更改左右耳的音量(即平移)

经过一会搜索,我没有找到满意的答案。

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

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

对于3.,我偶然发现AudioTrack几乎没有发现任何东西。

好吧,我想出了一个非常简单的解决方案,我认为将其放在这里很有用。

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

不适用于所有音频格式。 目前,.wav文件可以完全工作,而.mp3则不能工作(从这三个方面来看)。

我希望这可以节省您一些时间,因为我只是在无意中浪费了时间想出一个解决方案。

需要注意的是,这可以在运行API 23的Nexus 5上使用,因此我无法保证其他情况。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM