windows phone 7中的循环声音
Posted
技术标签:
【中文标题】windows phone 7中的循环声音【英文标题】:looping sounds in windows phone 7 【发布时间】:2012-06-03 00:59:24 【问题描述】:我试图在按下按钮时让声音循环播放,然后在再次按下同一个按钮时停止声音。我有多个同时播放的声音(所有声音都在循环播放),所有声音都应该能够以任何顺序开始和停止。
我的问题?
如果您按下一个按钮,则声音循环正常,当再次按下该按钮时它会停止,但是如果您按下一个按钮(因此一个声音正在循环),然后再按另一个(尝试同时播放两种声音)同时)然后第一个声音停止了,我一辈子都想不通为什么?
我的代码:
private void button3_Click(object sender, RoutedEventArgs e)
SoundEffect sound3;
int x = 0;
StreamResourceInfo SoundFileInfo = App.GetResourceStream(new Uri("tracks/drum (human).wav", UriKind.Relative));
sound3 = SoundEffect.FromStream(SoundFileInfo.Stream);
SoundEffectInstance sound3instance = sound3.CreateInstance();
if (button3.Content.Equals("Sound 3"))
sound3instance.IsLooped = true;
sound3instance.Play();
button3.Content = "Playing";
else
sound3instance.Pause();
button3.Content = "Sound 3";
private void button4_Click(object sender, RoutedEventArgs e)
SoundEffect sound4;
StreamResourceInfo SoundFileInfo2 = App.GetResourceStream(new Uri("Cow Moo 1.wav", UriKind.Relative));
sound4 = SoundEffect.FromStream(SoundFileInfo2.Stream);
SoundEffectInstance sound4instance = sound4.CreateInstance();
if (button4.Content.Equals("Sound 4"))
sound4instance.IsLooped = true;
sound4instance.Play();
button4.Content = "PLaying";
else
sound4instance.Pause();
button4.Content = "Sound 4";
非常感谢,
杰克
【问题讨论】:
【参考方案1】:sound3instance 和 sound4instance 是否存储在方法之外?
【讨论】:
但是我可以让声音相互循环很好,但前提是我删除了检查按钮内容的 if(也检查声音是否应该播放或停止)? 不,它们是在方法中创建的,然后...我现在将尝试移动它 谢谢它现在可以使用了!!! (现在我认为这是一个愚蠢的错误,但我永远不会发现它)以上是关于windows phone 7中的循环声音的主要内容,如果未能解决你的问题,请参考以下文章
适用于 Windows Phone 8.1 的后台媒体播放器中的无缝循环
Windows-Phone-7:检查 soundEffectInstance 的实例是不是正在播放