zoukankan      html  css  js  c++  java
  • 海康视频监控---Demo

    1,使用在页面中调用ActiveX控件

             <object classid='clsid:E7EF736D-B4E6-4A5A-BA94-732D71107808' codebase='' standby='Waiting...' id='PreviewActiveX' width='100%' height='100%' name='ocx' align='center'>
                <param name='wndtype' value='1'>
                <param name='playmode' value='undefined'>
            </object>

    这里的

    classid,是ActiveX控件的编号,可以在注册表中查到

    codebase,是控件没有安装的情况下需要去查找的路径,通常后面要加上版本号.如:codebase/NetVideoActiveX23.cab#version=2,3,9,1

    param,   子节点的param则是该控件的参数列表

    注意:这里的activex是微软开发且闭源的,仅适用于IE(本人一直用的是Chrome所以一直不显示控件,这里提醒一下)

    Firefox和Chrome需要安装特定的插件:

        如果chrome安装:ActiveX for Chrome (未测试)

        如果是Firfox安装:npActivexPlugin(未测试)

    2,操作说明这里的海康视频监控有两个OCX控件供调用

     一个是 NetVideoActiveX23.ocx

     另一个是WebVideoActiveX.ocx

    *区别这里我没找到,如果知道的可以留言说一下~

    我在用的时候是用的WebVideoActiveX.ocx

    因为NetVideoActiveX23.ocx我尝试调用StartRealPlay方法总是返回-1,所以预览不成功,然后就改用WebVideoActiveX.ocx

    cmd下注册WebVideoActiveX.ocx:regsvr32 WebVideoActiveX.ocx

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <script src="script/Jquery.js"></script>
        <script src="script/mjpegPlugin.js"></script>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>10.24.1.114V23</title>
        <script src="script/dvr.js"></script>
        <script src="script/js.js"></script>
    </head>
    <body>
        <%--<div style="margin: 0px;  600px; height: 300px; background-color: #343434" id="main_plugin"></div>--%>
        <div style=" 640px; height: 480px; margin: auto auto;">
            <object classid='clsid:E7EF736D-B4E6-4A5A-BA94-732D71107808' codebase='' standby='Waiting...' id='PreviewActiveX' width='100%' height='100%' name='ocx' align='center'>
                <param name='wndtype' value='1'>
                <param name='playmode' value='undefined'>
            </object>
        </div>
        <div style="float: left">
            <div>
                <input type="button" value="初始化插件" onclick="InitPreviewOCX()" />
            </div>
            <div>
                <select id="wintype">
                    <option>1</option>
                    <option>2</option>
                    <option>3</option>
                </select>
                <input type="button" value="设置窗口模式" onclick="InitWindow()" />
            </div>
            <div>
                <span style="margin-right: 20px">窗口号:
                    <select id="winNum">
                        <option>0</option>
                        <option>1</option>
                        <option>2</option>
                    </select>
                </span>
                <span>通道号:
                    <select id="chanelNum">
                        <option>0</option>
                        <option>1</option>
                        <option>2</option>
                    </select>
                </span>
                <input type="button" value="预览" onclick="StartRealPlay()" />
            </div>
        </div>
    </body>
    </html>
    
    <script type="text/javascript">
    
        var m_PreviewOCX = null
        var ipAddress = "192.168.13.211";
        var rstpPort = "554";
        var userPwd = "YWRtaW46MTIzNDU="
    
    
        //初始化OCX插件
        function InitPreviewOCX() {
            //if (!checkPlugin()) {
            //    m_PreviewOCX = $("#mjpegPlugin").mjpegPlugin();
            //}
            setTimeout(m_PreviewOCX = document.getElementById("PreviewActiveX"), 5000);
        }
    
        function InitWindow() {
            //iWindowType  画面分割模式。  1 - 1窗口模式,2 - 4窗口模式,3 - 9窗口模
            var iWindowType = $("#wintype").val();
    
            m_PreviewOCX.HWP_ArrangeWindow(iWindowType);
        }
    
        function StartRealPlay() {
            var iChannelNum = $("#chanelNum").val();
            var iWinNun = $("#winNum").val();
            var rstpUri = "rtsp://" + ipAddress + ":" + rstpPort + "/PSIA/streaming/channels/" + (iChannelNum * 100 + 1);
            m_PreviewOCX.HWP_Play(rstpUri, userPwd, iWinNun, "", "");
    
        }
    
    
        function GetSelectWndInfo(SelectWndInfo) {
    
        }
        function GetAllWndInfo(RealplayInfo) {
    
        }
        function PluginEventHandler(iEventType, iParam1, iParam2) {
    
        }
        function SetZeroChanEnlarge(EnlargeInfo) {
    
        }
    
    </script>
    
    <script for="PreviewActiveX" event="GetSelectWndInfo(SelectWndInfo)">
        GetSelectWndInfo(SelectWndInfo);
    </script>
    <script for="PreviewActiveX" event="GetAllWndInfo(RealplayInfo)">
        GetAllWndInfo(RealplayInfo);
    </script>
    <script for="PreviewActiveX" event="PluginEventHandler(iEventType, iParam1, iParam2)">
        PluginEventHandler(iEventType, iParam1, iParam2);
    </script>
    <script for="PreviewActiveX" event="SetZeroChanEnlarge(EnlargeInfo)">
        SetZeroChanEnlarge(EnlargeInfo);
    </script>
    

      
    这里要注意,一定要先调用

      m_PreviewOCX.HWP_ArrangeWindow(iWindowType);
    否则预览不成功

       

  • 相关阅读:
    多态
    课堂动手动脑
    凯撒加密
    构造方法、类初始化
    课堂动手动脑------随机数的产生
    课堂内容小结
    JAVA数字求和
    运行上次失败用例(--lf 和 --ff)
    conftest.py作用范围
    fixture作用范围
  • 原文地址:https://www.cnblogs.com/anbylau2130/p/4434427.html
Copyright © 2011-2022 走看看