[java]如何在web瀏覽器上即時監控攝影機?
天蓬老师
天蓬老师 2017-04-18 10:56:03
0
3
1867

攝像頭是海康威視的,不用海康威視自帶的後台係統監控係統,想自己寫一個網頁顯示。
本來以為很簡單的事,但發現還是有難度的,後台獲取攝像頭的數據流大概是ByteByReference類型。
海康威視裏麵的開發實例是個jFrame的實例,線索追蹤到

   if (!playControl.PlayM4_InputData(m_lPort.getValue(), pBuffer, dwBufSize))  //输入流数据
    {
        break;
    }

之後就想消失掉了一樣,隻在PlayCtrl這裏定義了一句:

    boolean PlayM4_InputData(NativeLong nPort, ByteByReference pBuf, int nSize);

搜索全部java文件都沒有這個接口的實現,可能是隱藏在了那些(我看不懂的)庫文件裏了。而且pBuffer這個應該指的就是數據流吧,但它在哪裏賦值的也不清楚.

*******(以上都是廢話)*******
我的設想是:用socket長鏈接傳送ByteByReference數據給瀏覽器。
但是現在有個問題:瀏覽器要怎麼接收和解釋這類型的數據啊??:( 向各位大俠請教一下。Thanks.
還有一個問題是PlayM4_InputData裏麵處理過些什麼也不知道,所以pBuffer是不是在輸出之前改過也不清楚。


[用插件的方法]要下載一個VLC軟件,還得隻能在IE瀏覽器上運行。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Streamedian player example</title>
</head>
<body>

<object type='application/x-vlc-plugin' pluginspage="http://www.videolan.org/" id='vlc' events='false' width="720" height="410">
    <param name='mrl' value='rtsp://admin:hx123456@113.106.249.238:554/Streaming/Channels/101?transportmode=unicast' />
    <param name='volume' value='50' />
    <param name='autoplay' value='true' />
    <param name='loop' value='false' />
    <param name='fullscreen' value='false' />
    <param name='controls' value='false' />
</object>

</body>
</html>
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(3)
迷茫

建議使用影片發佈軟體把相機發佈成RTMP的視訊串流。然後在客戶端播放這個視訊串流

左手右手慢动作

你好樓主,你的意思是下載了vlc,使用下面的程式碼,把rtsp://admin:hx123456@113.106.249.238:554/Streaming/Channels/101?transportmode=unicast'這些參數改成自己的就可以獲得海康威視的監視器畫面了嗎?

伊谢尔伦

最簡單的方式,接入螢石雲,設定直播,會提供M3U8的URL網址,可以在現代瀏覽器(包括手機)中直接播放不用任何插件,一些操作可以直接調用螢石雲提供的HTTP API ,缺點是需要購買螢石雲的流量(很便宜,數量少似乎是免費的)

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板