我正在尝试使用 MediaPlayer 同时播放 20 个 ogg 文件。这是因为我想做一个混合效果。在播放一首音乐时,还必须播放其他文件。其实我在iOS上已经做了一个有这个功能的应用,播放和混音都没有问题。现在,我应该将此应用程序转换为 android 应用程序。所以我判了 20 个媒体播放器变量
MediaPlayer player1;
MediaPlayer player2;
MediaPlayer player3;
.....
play1 = (Button)findViewById(R.id.btn1);
play2 = (Button)findViewById(R.id.btn2);
play3 = (Button)findViewById(R.id.btn3);
......
play1.setOnClickListener(this);
play2.setOnClickListener(this);
play3.setOnClickListener(this);
......
每当我单击每个按钮时,它都会播放每种声音并进行混音。
player1 = MediaPlayer.create(TestActivity.this, R.raw.md_cricket2);
player1.setLooping(true);
player1.start();
......
但是,在这一点上我有一些问题。两种声音混合是可以的,但是当我尝试播放超过 3 种声音时,会添加一些声音,例如“滴答,滴答”。听起来像白噪音..我不知道为什么...我认为在android中制作这个混合应用程序真的很简单,因为我已经在iOS中做过,但我不知道问题是什么.. . 有没有人可以给我建议?我认为soundpool不是一个答案。它仅适用于短音。MediaPlayer 不适合同时播放多个声音?那么,我该如何实现这个功能呢?