2009-01-25 47 views
2

当我运行我的Silverlight应用程序,此代码不能播放视频都:为什么MediaElement不能在Silverlight中工作?

<MediaElement 
     Source="winvideo-201DataGridPreview.wmv" 
     AutoPlay="True" 
     AudioStreamIndex="2" 
     Margin="10" 
     Height="200" 
     Width="200"/> 

从所有的例子我能找到的MediaElement的,这似乎是正确的语法,等

有什么我忘记了吗?

+0

也许语法是正确的,但是找到正确的编解码器或阻止框架播放媒体的东西存在问题。 – 2009-01-25 18:23:52

回答

1

Edward,根据您的XAML检查:1)WMV文件采用适当的编码格式,2)WMV文件位于您的XAP文件所在的位置(我实际上首先检查了这一点)。

1

这可能是不受支持的媒体文件的情况。

这些支持(来源:http://msdn.microsoft.com/en-us/library/cc189080(VS.95).aspx

的MediaElement的对象支持以下格式。无论文件扩展名如何,都支持这些编码。

视频

  • WMV1:Windows媒体视频7
  • WMV2:Windows媒体视频8
  • WMV3:Windows媒体视频9
  • WMVA:Windows媒体视频高级
  • 简介,非VC-1
  • WMVC1:Windows Media Video Advanced 档案,VC-1

音频

  • WMA 7:Windows媒体音频7

  • WMA 8:Windows媒体音频8

  • WMA 9:Windows媒体Audio 9

  • WMA 10:Windows Medi一个音频10

  • MP3:ISO/MPEG层-3

    • 输入:ISO/MPEG层-3数据流

    • 频道配置:单声道,立体声

    • 采样频率:8,11.025,12,16,22.05,24,32,44.1和48kHz

    • 比特率:8-320kbps,可变比特率

    • 限制:不支持“自由格式模式”(参见ISO/IEC 11172-3,子条款2.4.2.3)。

在很简单(但有点蛮力)的方式来测试,如果您的视频文件是Silverlight的兼容是把它上传到http://Silverlight streaming,它会告诉你,如果它是确定或没有。

0

我得到同样的问题,我还没有找到正确的配置,将正确引用视频文件。如果我通过源“vid1.wmv”引用我的视频并将其设置为内容,则它将打包到xap文件中,但视频将无法播放。

正如TimHeuer所说,检查视频文件与.xap文件位于同一位置。

如果我将视频文件直接复制到网络项目的ClientBin,它的工作原理。 这是我的解决方案,但我真的很想知道这应该如何正确完成。

2

我有一个类似的问题。我将wmv文件作为现有对象添加到我的Silverlight项目中,然后在wmv文件的属性中将其构建操作设置为Resource。一旦我做到了,它会为我效力。

0

这很烦人,但发现如果你右键点击你的媒体文件和属性,并将其设置为“Content”构建动作,它将包含在XAP中,然后你使用/myPic.jpg/wmv引用它,或者/Images/myPic.jpg/wmv(具体取决于你的项目和vid或pic的结构)。希望这可以帮助

2

引用的媒体文件需要位于ClientBin文件夹中。对于Sliver-light 4.0,您不仅可以使用.wmv,也可以使用.mp4格式。

相关问题