Windows Phone 7 - 播放流视频

发布于 2024-12-06 04:52:36 字数 835 浏览 1 评论 0 原文

在 WP7 平台(使用 C# 和 Silverlight)上,我尝试将在线流播放到 MediaElement...

这是 C# 代码: (...)

WebClient wc = new WebClient();                
wc.OpenReadCompleted += (s, e) =>
  {
   try
   {
     mediaElement.SetSource(e.Result);
   }
   catch (Exception we)
   {
     System.Diagnostics.Debug.WriteLine(we.Message);
   }
  };
wc.OpenReadAsync(new Uri(url, UriKind.Absolute));

(...) 以下是 XAML 源代码:

>

url 的类型为 http://.../Manifest ,格式为平台支持的格式。

调用 SetSource 时,会引发异常并显示以下消息 “流必须是IsolatedStorageFileStream 类型”。

我做错了什么?

预先感谢您的一些帮助 干杯

On WP7 platform (using C# and Silverlight) I try to play an online stream into a MediaElement...

Here is the C# code:
(...)

WebClient wc = new WebClient();                
wc.OpenReadCompleted += (s, e) =>
  {
   try
   {
     mediaElement.SetSource(e.Result);
   }
   catch (Exception we)
   {
     System.Diagnostics.Debug.WriteLine(we.Message);
   }
  };
wc.OpenReadAsync(new Uri(url, UriKind.Absolute));

(...)
Here is the XAML source code:

<MediaElement Height="316" HorizontalAlignment="Left" Margin="6,6,0,0" Name="mediaElement" VerticalAlignment="Top" Width="450" AutoPlay="False" />

The url is type of http://.../Manifest and the format is a one supported by the platform.

When SetSource is called then an exception is raised with the following message
"Stream must be of type IsolatedStorageFileStream".

What do I do wrong?

Thanks in advance for some help
Cheers

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

听闻余生 2024-12-13 04:52:36

MSDN 说:

Silverlight for Windows Phone 不支持将通用流传递给 SetSource(System.IO.Stream)。不过,Silverlight for Windows Phone 支持派生自 Stream 的isolatedStorageFileStream 类。

相反,请考虑设置 MediaElement.Source 属性直接指向流 uri。没有理由先“下载”它。

MSDN says:

Passing a generic stream to SetSource(System.IO.Stream) is not supported in Silverlight for Windows Phone. However, the IsolatedStorageFileStream class, which derives from Stream, is suppoted on Silverlight for Windows Phone.

Instead, consider setting the MediaElement.Source property directly to the stream uri. There's no reason to "download" it first.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文