网页嵌入VLC,怎么动态输入VLC的RTSP地址?

时间:2021-06-11 15:51:33

项目之前的测试版本,固定一个IP地址,网页的代码如下:
<html>
<title>VLC Mozilla plugin test page</title>
<body>

<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
      
        width="640"
       
        height="480"
       
        id="vlc"
        
        events="True">

<param name="MRL" value="rtsp://admin:12345@192.168.23.98" />

<EMBED 
type="application/x-vlc-plugin"
version="VideoLAN.VLCPlugin.2"
       
width="640"
       
height="480"
       
//toolbar="true"
       
//text="Waiting for video"
       
id="vlc">
</EMBED>

</OBJECT>
<script language="Javascript">

var mrl="rtsp://admin:12345@192.168.23.98";
var idd = vlc.playlist.add(mrl);
vlc.playlist.playItem(idd);
//var vlc = document.getElementById("vlc");
//vlc.audio.toggleMute();
//!-->
</script>
</body>
</html>


经测试,可以读出视频流地址。

现在需要动态绑定IP地址,而不是固定一个IP,查询网上一些例子。下面为修改代码,网页渲染后运行JS代码,更新VLC

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>视频剪辑</title>
<script type="text/javascript" charset="UTF-8">

var vlc; // VLC对象
var itemId;  // 播放列表中播放节目的id

// 初始化 
function initPlayUrl(){
vlc=document.getElementById("vlc");

// 添加播放地址
var vedio_url="rtsp://admin:12345@192.168.23.98";
itemId= vlc.playlist.add(vedio_url);
vlc.playlist.playItem(itemId);
  
}

</script>
</head>
<body onload="initPlayUrl()" >

   <object type='application/x-vlc-plugin' id='vlc' events='false'>
       classid='clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921' width="720" height="540">
          <param name='mrl' value='' />
          <param name='volume' value='50' />
          <param name='autoplay' value='ture' />
          <param name='loop' value='false' />
          <param name='fullscreen' value='false' />
    </object>



</body>
</html> 


但是,测试好像不能显示视频内容,希望得到解答,或者知道该怎么动态添加IP地址的也可以,谢谢

3 个解决方案

#1


同问啊,我现在也遇到这样的问题,修改MRL后不能重新加载播放,使用InnerHtml的话画面是一片空白,真不知道该怎么弄了。

#2


这里有一个地址:http://www.lxway.com/818280822.htm
在js中动态修改

#3


html中定义
<param name="MRL" ref value="rtsp://192.168.0.164/5">  
js中动态改变
var vlc=document.getElementById('vlc_back');
var idd = vlc.playlist.add('http://192.168.0.164:8180/Video1.mp4');
vlc.playlist.playItem(idd);

测试通过。 网页嵌入VLC,怎么动态输入VLC的RTSP地址?

#1


同问啊,我现在也遇到这样的问题,修改MRL后不能重新加载播放,使用InnerHtml的话画面是一片空白,真不知道该怎么弄了。

#2


这里有一个地址:http://www.lxway.com/818280822.htm
在js中动态修改

#3


html中定义
<param name="MRL" ref value="rtsp://192.168.0.164/5">  
js中动态改变
var vlc=document.getElementById('vlc_back');
var idd = vlc.playlist.add('http://192.168.0.164:8180/Video1.mp4');
vlc.playlist.playItem(idd);

测试通过。 网页嵌入VLC,怎么动态输入VLC的RTSP地址?