为啥我的 SoundPool 声音没有在 onClick() 中同时播放?
Posted
技术标签:
【中文标题】为啥我的 SoundPool 声音没有在 onClick() 中同时播放?【英文标题】:Why are my SoundPool sounds not playing simultaneously in onClick()?为什么我的 SoundPool 声音没有在 onClick() 中同时播放? 【发布时间】:2010-09-24 03:39:31 【问题描述】:当我点击时,下面的代码导致两个声音不是同时播放,而是顺序播放。为什么它们不能同时播放?
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mytextview=(TextView) findViewById(R.id.textview);
mytextview.setOnClickListener(this);
sp=(SoundPool) new SoundPool(8,0x00000003,1);
upSound=sp.load(this, R.raw.sound1, 1);
downSound=sp.load(this, R.raw.sound2, 1);
@Override
public void onClick(View v)
sp.play(downSound, VOLUME, VOLUME, 1, 0, 1);
sp.play(upSound, VOLUME, VOLUME, 1, 0, 2);
【问题讨论】:
你想在用户操作上下时播放声音吗? 尝试使用媒体播放器播放第二个文件。然后它会同时播放。 【参考方案1】:在处理声音文件时我看不到很多非常重要的信息: 不要使用 WAV !!!
您会看到奇怪的行为,这可能因手机而异。
始终使用 OGG !!!
【讨论】:
rly 帮助了我!多谢 !使用 .wav 它实际上表现得很奇怪。有时它正在播放,有时根本没有声音。使用一些在线转换器将其转换为 ogg 后,它的工作 ^^ thx【参考方案2】:this question 可能重复。在对该问题的回答中,有一个指向 answer 的链接指向另一个问题,如果您仍在寻找可能会有所帮助的问题......
【讨论】:
以上是关于为啥我的 SoundPool 声音没有在 onClick() 中同时播放?的主要内容,如果未能解决你的问题,请参考以下文章