Silverlight入门学习(30)

原文地址: http://www.dingos.cn/index.php?topic=2000.0

第三十章   如何在 Silverlight 播放音频或声音文件?

Silverlight 提供了一个名为 MediaElement 的类用来播放音 频或视频文件。

Silverlight 中的 MediaElement 支持播放 MP3 WMV 格 式的视频 / 音频文件。现在 Silverlight 当前版本不支持播 放 .WAV .AVI 格式的文件。

如果尝试使用 MediaElement 控件播放 .WAV .AVI 文件,将收到以下错误:

Error: Unhandled Error in Silverlight 2 Application <Application Name>Code: 3001 
Category: MediaError 
Message: AG_E_INVALID_FILE_FORMAT 
为了播放 .MP3 .WMV 文件,首先比较将这些文件包含在 Silverlight 项目中,然后设 置它作为嵌入资源。

为了使视频文件作为嵌入资源,将视频文件添加到项目中,右键项目中的视频文件并选择“属性”页。 设置“生成操作”为“嵌入的资源”。这样编译时视频文件会嵌入到 .xap 文件中。

将视频文件作为嵌入资源后,可以在 XAML 中定义 MediaElement 对象编写代码来播放文件。下面示例代码演示播放视频文件:

MediaElement media = new MediaElement ();

Stream stream = Assembly .GetExecutingAssembly().GetManifestResourceStream(

     "MyNamespace.Sound1.wav" );

media.SetSource(stream);

media.AutoPlay = false ;

media.Stop();

media.Play();

代码分析:

Stream stream = Assembly .GetExecutingAssembly().GetManifestResourceStream(

     "MyNamespace.Sound1.wav" );

上面的代码行从可执行程序集捕获视频流。记住这个视频文件时通过设置“生成操作”为“嵌入的资 源”嵌入在程序集中的。

在上面代码中,“ MyNamespace ”表示应用程序的 命名空间。“ Sound1.wav ”是视频的文明名,假设这个文件在应用程序的根目录。如果文件在子目录,也需要包括目录名,用“ . ” 号隔开。

media.SetSource(stream);

上面的代码行,设置了播放媒体的源。

media.AutoPlay = false ;

上面的代码行,表示播放器不能自动播放媒体,只有点击了开始才会播放。

media.Stop();

media.Play();

上面的 diamond 行,可以看到在 .Play() 之前做了 .Stop() 。这个停止仅在你多次播放相同的 MediaElement 时才需要。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜晚回家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值