Monotouch声音无法正常播放

时间:2011-05-10 00:46:57

标签: c# audio xamarin.ios

我正试图在单声道播放中播放声音文件,但在一两秒后会被切断。这是我用来播放声音的代码:

SoundFileName = filename; 
var sound = SystemSound.FromFile(filename);
sound.PlaySystemSound();

这是我正在尝试播放的MP3文件。再一次,我听到它短暂的一秒钟,然后它被削减。之后我添加了一个thread.sleep()行,然后它将在整个过程中播放。

但这并不理想,因为我正在播放的mp3文件的长度可能会有所不同。任何帮助将不胜感激。谢谢。

2 个答案:

答案 0 :(得分:6)

您需要在表单或类级别声明sound对象。在您发布的示例中,sound仅限于该函数的范围,因此只要该方法结束,该变量就会超出范围并在声音播放完毕之前进行处理。 Thread.sleep有效,因为该调用会阻止该方法暂停一段时间(从而阻止sound超出范围)。

答案 1 :(得分:0)

您可能还想看看这个问题:Playing a sound with MonoTouch

我认为SystemSound并不打算与开放时间段的MP3一起使用。