我在网页上嵌入了一个视频。由于客户端的要求,我必须使用Windows媒体播放器,而另一层复杂性是这是所有脱机内容。此系统的目的是让用户在离线时访问文档。我确信在本地提供这些内容有更好的方法,但根据客户的要求,这是一个必要的恶。
ISSUE: 启动页面上的视频无法在浏览器的Windows媒体播放器中播放。如果我打开完整的桌面媒体播放器,视频播放就可以了。
错误:
Windows Media Player error C00D11B1
Windows Media Player can't play the file.
CODE:
<object classid='CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95' width="650" height="366"
codebase='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#version=5,1,52,701'
standby='Loading Microsoft Windows Media Player components...' type='application/x-oleobject' >
<param name='filename' value="../Video/Intro.mov">
<param name='animationatStart' value='1'>
<param name='transparentatStart' value='1'>
<param name='autoStart' value='0'>
<param name='ShowControls' value='1'>
<param name='ShowDisplay' value='0'>
<param name='ShowStatusBar' value='0'>
<param name='loop' value='0'>
<EMBED type='application/x-mplayer2' id='mediaPlayer' name='mediaPlayer' displaysize='4' autosize='0'
bgcolor='darkblue' showcontrols='1' showtracker='1'
showdisplay='0' showstatusbar='0' videoborder3d='0' width="650" height="366"
src="../Video/Intro.mov" autostart='0' designtimesp='5311' loop='0'>
</EMBED>
注意:使用此工具假设用户无法访问互联网,因此codebase
属性毫无价值,但我将其留在那里只是为了看到效果。
答案 0 :(得分:1)
由于Codec问题(缺少编解码器或编写错误的编解码器),我得到了与基于MediaElement的播放器应用程序相同的错误(C00D11B1)。据我了解,MediaElement和MediaPlayer类使用相同的WMP库。您是否尝试将MOV文件转换为WMV? MP4是一种废话,因为它是许多不同类型的编解码器数据的容器。当您转换为MP4时,转换器可能只是将MOV编码的视频数据复制到MP4文件中。顺便说一句,一些MP4在主显示器上可以正常播放但在辅助显示器上没有 - 我认为编解码器在进行数学运算时遇到麻烦,因为Seconday显示原点(左上角)不是从(x,y = 0,0)开始)。
安装编解码器包(如K-Lite)可能会有所帮助。但是,如果您要将应用程序分发给用户社区,最好的解决方案是使用WMV文件,因为Windows机器应该支持该格式而不添加新的编解码器。