【发布时间】:2014-10-20 22:19:51
【问题描述】:
是否可以同时播放两个声音 (mp3) 文件?我尝试使用两个不同的 MediaPlayer 对象-
MediaPlayer mediaPlayer;
MediaPlayer mediaPlayer2;
播放声音,但这不起作用。我也不能使用 SoundPool,因为正在使用的声音文件每个大约 10MB(因为 SoundPool 不能很好地处理大于 3MB 的声音文件)。
这是一些熟悉我的情况的代码-
@Override
public void onResume() {
super.onResume();
if(mediaPlayer == null)
{
mediaPlayer = MediaPlayer.create(getActivity().getApplicationContext(), R.raw.song1);
}
if(mediaPlayer2 == null)
{
mediaPlayer2 = MediaPlayer.create(getActivity().getApplicationContext(), R.raw.song2);
}
}
private void startPlaying() {
mediaPlayer.setLooping(true);
mediaPlayer.start();
mediaPlayer2.start();
}
有什么建议吗?有什么方法可以使这 2 个 MediaPlayer 对象方法起作用吗?如果没有,那么还有哪些其他选择?代码会很有帮助!
【问题讨论】:
-
你想把它合并在一起还是同时播放两个文件。
-
@james 我需要同时播放这两个文件。
-
您找到答案了吗?我正在努力让它发挥作用。
-
@Totem 我做到了。有点。它将两个音频文件组合成一个文件,并使用单个媒体播放器实例播放。唯一的问题是我没有时间完善它。由于两个文件的组合,仍然会产生一些噪音。还需要我发一些代码吗?
-
@Totem 这是一个 + 和 ÷。平均值。我将发布代码作为答案。
标签: android audio merge android-mediaplayer mixing