我正在尝试播放托管在 Azure blob 上的音频文件。我通过 HTTP(不是 HTTPS)为它们提供服务,并从使用 Web 客户端打开的流中使用 SoundEffect.Play。这适用于 WAV 文件。
WebClient wc = new WebClient();
wc.OpenReadAsync(uri);
wc.OpenReadCompleted += (s, e) =>
{
try
{
var sfx = SoundEffect.FromStream(e.Result);
FrameworkDispatcher.Update();
sfx.Play();
}
catch (Exception ex)
{
Debug.WriteLine("Well, crap!");
}
};
对于 MP3,我使用这种方法:
var song = Song.FromUri(item.Title, uri);
FrameworkDispatcher.Update();
MediaPlayer.Play(song);
它有时可以在模拟器中运行,但不能在设备上运行!我什至尝试不使用 Zune 来部署和使用 WPConnect 将 XAP 直接部署到设备(有些人说这使它工作)
这让我发疯!这些 mp3 文件应该只是播放,对吧?