我在网络浏览器IE9上使用vlc ActiveX插件播放视频直播。
它的工作在IE8中非常完美,但是当我将浏览器从IE8更新到IE9而不是不播放视频文件或活动时。
这是我的代码。
<object type="application/x-vlc-plugin" id="vlc" width="517" height="388" classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921">
<param name="MRL" id="mrlVideo" value="" />
<param name="volume" value="50" />
<param name="autoplay" value="True" />
<param name="loop" value="false" />
<param name="fullscreen" value="false" />
<param name="wmode" value="transparent" />
<param name="toolbar" value="true" />
<param name="windowless" value="true" />
</object>
在javascript中我正在使用这些
var vlc = document.getElementById("vlc");
var options = new Array(":rtsp-tcp");
var urlVideofile = "hppt://IP:portnumber/"
var id = vlc.playlist.add(urlVideofile, null, options);
vlc.playlist.playItem(id);
这是附加图像,显示错误到底是什么
非常感谢任何帮助
感谢。
答案 0 :(得分:1)
JavaScript区分大小写。您需要访问vlc.playlist
(不是vlc.Playlist
),请致电vlc.playlist.add
(不是vlc.Playlist.Add
)和vlc.playlist.play
(不是vlc.playlist.Play
)。 IE9的JavaScript引擎比先前版本的IE may have allowed case-insensitive access to ActiveX/COM APIs更符合标准。
此外,VLC 2.0.6中的a bug was introduced会破坏ActiveX API,因此您需要使用VLC 2.0.5或更早版本。 (尽管#8627中已经说明了这个问题,但在VLC 2.0.7中并没有解决这个问题,因为某些原因它似乎仍然包含2.0.6 ActiveX插件。)
答案 1 :(得分:0)
我们已找到解决方案
//var options = [":rtsp-tcp"]; //commented out
//replace the line above with this.Note the CSA key is pre-pended with:
var options = [":ts-csa-ck="+EncryptionkeyValue];
//options.push("ts-csa-ck=EncryptionkeyValue"); //commented out as its above now
var itemId = vlc.playlist.add(targetURL, "", options); // continue as normal
var id = vlc.playlist.add(urlVideofile, null, options);
vlc.playlist.playItem(id);
它适用于浏览器,包括具有最高版本的IE8,IE9,IE10, Chrome和FF。
谢谢