国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

??祵?shí)時監(jiān)控預(yù)覽視頻流接入web

這篇具有很好參考價值的文章主要介紹了海康實(shí)時監(jiān)控預(yù)覽視頻流接入web。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

? ? ? ? 我們采取的方案是后端獲取視頻流返回給前端,然后前端播放

??甸_放平臺??低暫献魃鷳B(tài)致力打造一個能力開放體系、兩個生態(tài)圈,Hikvision AI Cloud開放平臺是能力開放體系的核心內(nèi)容。它是海康威視基于多年在視頻及物聯(lián)網(wǎng)核心技術(shù)積累之上,融合AI、大數(shù)據(jù)、云計(jì)算等技術(shù),為合作伙伴提供的一個二次開發(fā)及創(chuàng)新的平臺。https://open.hikvision.com/docs/docId?productId=5c67f1e2f05948198c909700&version=%2Ff95e951cefc54578b523d1738f65f0a1&tagPath=%E5%AF%B9%E6%8E%A5%E6%8C%87%E5%8D%971.后端代碼

1.1 獲取設(shè)備編號

private static final String ARTEMIS_PATH = "/artemis";

/**
 * 視頻設(shè)備信息
 */
public static String getCodeList(Integer page, Integer size, String host, String appKey, String appSecret) {
    {
        /* STEP1:設(shè)置平臺參數(shù),根據(jù)實(shí)際情況,設(shè)置host appkey appsecret 三個參數(shù).*/
        ArtemisConfig.host = host;
        ArtemisConfig.appKey = appKey;
        ArtemisConfig.appSecret = appSecret;
        String previewUrlsApi = ARTEMIS_PATH + "/api/resource/v2/encodeDevice/search";
        Map<String, String> path = new HashMap<String, String>(2) {
            {
                put("https://", previewUrlsApi);//根據(jù)現(xiàn)場環(huán)境部署確認(rèn)是http還是https
            }
        };
        String contentType = "application/json";

        ObjectMapper mapper = new ObjectMapper();
        Map<String, Object> map = new HashMap<>();
        map.put("pageNo", page);
        map.put("pageSize", size);
        String body = "";
        try {
            body = mapper.writeValueAsString(map);
        } catch (JsonProcessingException e) {
            e.printStackTrace();
        }
        return ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, contentType, null);
    }
}

1.2 根據(jù)設(shè)備編號獲取視頻流

private static String getCameraPreviewUrl(String regionIndexCode, String protocol, String streamform,String host, String appKey, String appSecret) {
    /* STEP1:設(shè)置平臺參數(shù),根據(jù)實(shí)際情況,設(shè)置host apKey appSecret 三個參數(shù).*/
    // artemis網(wǎng)關(guān)服務(wù)器ip端口
    ArtemisConfig.host = host;
    // 秘鑰appKey
    ArtemisConfig.appKey = appKey;
    // 秘鑰appSecret
    ArtemisConfig.appSecret = appSecret;

    /*** STEP2:設(shè)置OpenAPI接口的上下文*/
    final String artemisPath = "/artemis";
    final String previewUrlsApi = artemisPath + "/api/video/v2/cameras/previewURLs";
    Map<String, String> path = new HashMap<String, String>(2) {
        {
            //根據(jù)現(xiàn)場環(huán)境部署確認(rèn)是http還是https
            put("https://", previewUrlsApi);
        }
    };
    /* STEP4:設(shè)置參數(shù)提交方式*/
    String contentType = "application/json";

    /*** STEP5:組裝請求參數(shù)*/
    JSONObject jsonBody = new JSONObject();
    jsonBody.put("cameraIndexCode", regionIndexCode);
    //下面的參數(shù)是我用的參數(shù),根據(jù)需要改成傳輸進(jìn)來的參數(shù)
    jsonBody.put("streamType", 0);
    //hls返回m3u8
    jsonBody.put("protocol", "ws");
    jsonBody.put("transmode", 1);
    //jsonBody.put("streamform", "rtp");

    String body = jsonBody.toString();
    String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, contentType, null);
    return result;
}
  • 根據(jù)官方文檔傳輸對應(yīng)的參數(shù)?
  • 官方接口限制:為保證數(shù)據(jù)的安全性,取流URL設(shè)有有效時間,有效時間為5分鐘。
  • 注意不同協(xié)議的限制不同,rtsp沒得限制但前端播放麻煩,web端展示的話ws比較好

??甸_放平臺??低暫献魃鷳B(tài)致力打造一個能力開放體系、兩個生態(tài)圈,Hikvision AI Cloud開放平臺是能力開放體系的核心內(nèi)容。它是??低暬诙嗄暝谝曨l及物聯(lián)網(wǎng)核心技術(shù)積累之上,融合AI、大數(shù)據(jù)、云計(jì)算等技術(shù),為合作伙伴提供的一個二次開發(fā)及創(chuàng)新的平臺。https://open.hikvision.com/docs/docId?productId=5c67f1e2f05948198c909700&version=%2Ff95e951cefc54578b523d1738f65f0a1&tagPath=API%E5%88%97%E8%A1%A8-%E8%A7%86%E9%A2%91%E5%BA%94%E7%94%A8%E6%9C%8D%E5%8A%A1-%E8%A7%86%E9%A2%91%E8%83%BD%E5%8A%9B

參數(shù)名稱 數(shù)據(jù)類型 是否必須 參數(shù)描述
cameraIndexCode string True 監(jiān)控點(diǎn)唯一標(biāo)識,分頁獲取監(jiān)控點(diǎn)資源接口獲取返回參數(shù)cameraIndexCode
streamType integer False 碼流類型,0:主碼流<br>1:子碼流<br>2:第三碼流<br>參數(shù)不填,默認(rèn)為主碼流
protocol string False 取流協(xié)議(應(yīng)用層協(xié)議)<br>“hik”:HIK私有協(xié)議,使用視頻SDK進(jìn)行播放時,傳入此類型;<br>“rtsp”:RTSP協(xié)議;<br>“rtmp”:RTMP協(xié)議(RTMP協(xié)議只支持海康SDK協(xié)議、EHOME協(xié)議、ONVIF協(xié)議接入的設(shè)備;只支持H264視頻編碼和AAC音頻編碼);<br>“hls”:HLS協(xié)議(HLS協(xié)議只支持??礢DK協(xié)議、EHOME協(xié)議、ONVIF協(xié)議接入的設(shè)備;只支持H264視頻編碼和AAC音頻編碼);<br>“ws”:Websocket協(xié)議(一般用于H5視頻播放器取流播放)。<br>參數(shù)不填,默認(rèn)為HIK協(xié)議
transmode integer False 傳輸協(xié)議(傳輸層協(xié)議),0:UDP<br>1:TCP<br>默認(rèn)是TCP<br>注:GB28181 2011及以前版本只支持UDP傳輸
expand string False 標(biāo)識擴(kuò)展內(nèi)容,格式:key=value,<br>調(diào)用方根據(jù)其播放控件支持的解碼格式選擇相應(yīng)的封裝類型;<br>多個擴(kuò)展時,以“&”隔開;<br>支持的內(nèi)容詳見附錄F expand擴(kuò)展內(nèi)容說明
streamform string False 輸出碼流轉(zhuǎn)封裝格式,“ps”:PS封裝格式、“rtp”:RTP封裝協(xié)議。<br>當(dāng)protocol=rtsp時生效,且不傳值時默認(rèn)為RTP封裝協(xié)議。

1.3 控制設(shè)備

/**
 * 設(shè)備控制
 */
public static String controlling(String cameraIndexCode, Integer action, String command, Integer speed, Integer presetIndex) {
    {
        /** STEP1:設(shè)置平臺參數(shù),根據(jù)實(shí)際情況,設(shè)置host appkey appsecret 三個參數(shù).*/
        ArtemisConfig.host = host; // artemis網(wǎng)關(guān)服務(wù)器ip端口
        ArtemisConfig.appKey = appKey;  // 秘鑰appkey
        ArtemisConfig.appSecret = appSecret;// 秘鑰appSecret
        String previewURLsApi = ARTEMIS_PATH + "/api/video/v1/ptzs/controlling";
        Map<String, String> path = new HashMap<String, String>(2) {
            {
                //根據(jù)現(xiàn)場環(huán)境部署確認(rèn)是http還是https
                put("https://", previewURLsApi);
            }
        };
        String contentType = "application/json";
        JSONObject jsonBody = new JSONObject();
        try {
            jsonBody.put("cameraIndexCode", cameraIndexCode);
            jsonBody.put("action", action);
            jsonBody.put("command", command);
            if (speed != null) {
                jsonBody.put("speed", speed);
            }
            if (presetIndex != null) {
                jsonBody.put("presetIndex", presetIndex);
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
        String body = jsonBody.toString();
        String result = ArtemisHttpUtil.doPostStringArtemis(path, body, null, null, contentType, null);
        return result;
    }
}
參數(shù)名稱 數(shù)據(jù)類型 是否必須 參數(shù)描述
cameraIndexCode string True 監(jiān)控點(diǎn)編號,
可通過分頁獲取監(jiān)控點(diǎn)資源獲取
action number True 0-開始 ,1-停止
注:GOTO_PRESET命令下填任意值均可轉(zhuǎn)到預(yù)置點(diǎn),建議填0即可
command string True 不區(qū)分大小寫
說明:
LEFT 左轉(zhuǎn)
RIGHT右轉(zhuǎn)
UP 上轉(zhuǎn)
DOWN 下轉(zhuǎn)
ZOOM_IN 焦距變大
ZOOM_OUT 焦距變小
LEFT_UP 左上
LEFT_DOWN 左下
RIGHT_UP 右上
RIGHT_DOWN 右下
FOCUS_NEAR 焦點(diǎn)前移
FOCUS_FAR 焦點(diǎn)后移
IRIS_ENLARGE 光圈擴(kuò)大
IRIS_REDUCE 光圈縮小
WIPER_SWITCH 接通雨刷開關(guān)
START_RECORD_TRACK 開始記錄運(yùn)行軌跡
STOP_RECORD_TRACK 停止記錄運(yùn)行軌跡
START_TRACK 開始運(yùn)行軌跡
STOP_TRACK 停止運(yùn)行軌跡;
以下命令presetIndex不可為空:
GOTO_PRESET到預(yù)置點(diǎn)
speed number False 云臺速度,取值范圍為1-100,默認(rèn)50
presetIndex number False 預(yù)置點(diǎn)編號,可通過查詢預(yù)置點(diǎn)信息接口獲取整數(shù),通常在300以內(nèi)

2.前端代碼

??甸_放平臺??低暫献魃鷳B(tài)致力打造一個能力開放體系、兩個生態(tài)圈,Hikvision AI Cloud開放平臺是能力開放體系的核心內(nèi)容。它是??低暬诙嗄暝谝曨l及物聯(lián)網(wǎng)核心技術(shù)積累之上,融合AI、大數(shù)據(jù)、云計(jì)算等技術(shù),為合作伙伴提供的一個二次開發(fā)及創(chuàng)新的平臺。https://open.hikvision.com/download/5c67f1e2f05948198c909700?type=20websocket 視頻流,skill,音視頻

  • 直接拿官方demo改一下就行

3.rtsp/ws/hls/htmp不同協(xié)議視頻流的區(qū)別與優(yōu)缺點(diǎn)

RTSP(Real-Time Streaming Protocol)

????????RTSP 是一種應(yīng)用層協(xié)議,用于控制媒體播放,而不是直接傳輸媒體數(shù)據(jù)。它通常與 RTP(實(shí)時傳輸協(xié)議)一起使用,RTP 負(fù)責(zé)傳輸媒體數(shù)據(jù)。

  • 優(yōu)點(diǎn):支持實(shí)時播放,用于實(shí)時流媒體傳輸。支持流式傳輸,允許播放器隨時跳轉(zhuǎn)到視頻的不同部分。
  • 缺點(diǎn):RTSP 本身不傳輸視頻數(shù)據(jù),而是控制數(shù)據(jù),需要配合其他協(xié)議(如 RTP)來傳輸實(shí)際的媒體數(shù)據(jù)。對于防火墻和 NAT 穿透的支持有限,可能需要額外的設(shè)置和配置。

WS (WebSocket)

????????WebSocket 是一種雙向通信協(xié)議,可在單個 TCP 連接上進(jìn)行全雙工通信。

  • 優(yōu)點(diǎn):實(shí)時性好,支持雙向通信??梢酝ㄟ^瀏覽器直接與服務(wù)器建立持久連接,無需頻繁的 HTTP 請求。
  • 缺點(diǎn):相對于傳統(tǒng)的 HTTP 請求,WebSocket 在一些特殊環(huán)境下可能會受到限制,如防火墻和代理服務(wù)器的設(shè)置。

HLS (HTTP Live Streaming)

????????HLS 是蘋果公司提出的一種基于 HTTP 的流媒體傳輸協(xié)議,主要用于 iOS 設(shè)備和 Safari 瀏覽器播放。

  • 優(yōu)點(diǎn):支持自適應(yīng)碼率,可以根據(jù)網(wǎng)絡(luò)情況調(diào)整視頻質(zhì)量。可以通過普通的 HTTP 服務(wù)器傳輸,易于部署和使用。
  • 缺點(diǎn):延遲較高,通常在 10-30 秒之間。對于直播流,切片時間短會增加服務(wù)器負(fù)載,切片時間長會增加延遲。

RTMP (Real-Time Messaging Protocol)

????????RTMP 是 Adobe Systems 提出的一種流媒體傳輸協(xié)議,主要用于 Flash 播放器。文章來源地址http://www.zghlxwxcb.cn/news/detail-854251.html

  • 優(yōu)點(diǎn):實(shí)時性好,適用于實(shí)時直播。低延遲,通常在 1-3 秒之間。
  • 缺點(diǎn):不被現(xiàn)代瀏覽器原生支持,需要額外的插件或支持。在移動設(shè)備上的兼容性較差,不適用于 iOS 設(shè)備和大部分移動瀏覽器。

到了這里,關(guān)于??祵?shí)時監(jiān)控預(yù)覽視頻流接入web的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue中web端播放rtsp視頻流(攝像頭監(jiān)控視頻)(??低曚浵駲C(jī))

    vue中web端播放rtsp視頻流(攝像頭監(jiān)控視頻)(海康威視錄像機(jī))

    ffmpeg下載?https://ffmpeg.org/download.html 找ffmpeg-release-essentials.zip點(diǎn)擊下載,下載完解壓 ffmpeg.exe 程序運(yùn)行 添加成功后驗(yàn)證是否生效任意地方打開cmd窗口輸入 ffmpeg 打印如下表示成功 新建一個app.js文件,同級目錄下npm安裝 node-rtsp-stream 我是直接寫在項(xiàng)目里了,你們可以單獨(dú)寫在外

    2024年04月25日
    瀏覽(36)
  • 安防監(jiān)控項(xiàng)目---mjpeg-streamer視頻圖像顯示(實(shí)時視頻流實(shí)現(xiàn))

    安防監(jiān)控項(xiàng)目---mjpeg-streamer視頻圖像顯示(實(shí)時視頻流實(shí)現(xiàn))

    書接上期,我們已經(jīng)實(shí)現(xiàn)了許多功能了,但是對于視頻流的實(shí)時上傳還未實(shí)現(xiàn),本期主要分享的就是如何具體實(shí)現(xiàn)網(wǎng)頁實(shí)時顯示攝像頭采集到的視頻,從而實(shí)現(xiàn)安防中監(jiān)控的功能,這個功能完成后呢,就只剩下一個功能需求了,那就是GPRS模塊,能夠?qū)崿F(xiàn)危險報(bào)警的功能,也能

    2024年02月06日
    瀏覽(26)
  • Python 實(shí)現(xiàn)??禉C(jī)器人工業(yè)相機(jī) MV-CU060-10GM 的實(shí)時顯示視頻流及拍照功能

    Python 實(shí)現(xiàn)??禉C(jī)器人工業(yè)相機(jī) MV-CU060-10GM 的實(shí)時顯示視頻流及拍照功能

    一、背景介紹 1、最近項(xiàng)目中需要給客戶對接??禉C(jī)器人工業(yè)相機(jī) MV-CU060-10GM; 2、客戶要求通過部署的管理平臺,可以在頁面上實(shí)現(xiàn)如下功能: 1)相機(jī)視頻流開始預(yù)覽; 2)相機(jī)視頻流停止預(yù)覽; 3)相機(jī)拍照功能。 需求背景:客戶需要對生產(chǎn)的產(chǎn)品進(jìn)行定期抽樣質(zhì)檢,其中

    2024年02月08日
    瀏覽(24)
  • Python??低昐DK實(shí)現(xiàn)實(shí)時預(yù)覽:快速構(gòu)建高效視頻監(jiān)控系統(tǒng)

    Python??低昐DK實(shí)現(xiàn)實(shí)時預(yù)覽:快速構(gòu)建高效視頻監(jiān)控系統(tǒng) 在當(dāng)今社會,安全問題越來越受到人們的關(guān)注,越來越多的企業(yè)和機(jī)構(gòu)開始建設(shè)視頻監(jiān)控系統(tǒng)。而Python作為一種高效、易用的編程語言,已經(jīng)成為了許多開發(fā)人員的首選。本文將介紹如何使用Python海康威視SDK來實(shí)現(xiàn)實(shí)

    2024年02月14日
    瀏覽(23)
  • 【vue2】前端如何播放rtsp 視頻流,拿到rtsp視頻流地址如何處理,??狄曨lrtsp h264 如何播放

    【vue2】前端如何播放rtsp 視頻流,拿到rtsp視頻流地址如何處理,海康視頻rtsp h264 如何播放

    最近在寫vue2 項(xiàng)目其中有個需求是實(shí)時播放攝像頭的視頻,攝像頭是 ???的設(shè)備,搞了很長時間終于監(jiān)控視頻出來了,記錄一下,放置下次遇到。文章有點(diǎn)長,略顯啰嗦請耐心看完。 測試?測試什么?測試rtsp視頻流能不能播放。 video mediaplay官網(wǎng) 即(VLC) 下載、安裝完VLC后

    2024年02月05日
    瀏覽(25)
  • Windows上使用FFmpeg實(shí)現(xiàn)本地視頻推送模擬海康協(xié)議rtsp視頻流

    Windows上使用FFmpeg實(shí)現(xiàn)本地視頻推送模擬??祬f(xié)議rtsp視頻流

    Nginx搭建RTMP服務(wù)器+FFmpeg實(shí)現(xiàn)海康威視攝像頭預(yù)覽: Nginx搭建RTMP服務(wù)器+FFmpeg實(shí)現(xiàn)??低晹z像頭預(yù)覽_nginx rtmp ??禂z像頭_霸道流氓氣質(zhì)的博客-CSDN博客 上面記錄的是使用FFmpeg拉取??祬f(xié)議攝像頭的rtsp流并推流到流媒體服務(wù)器。 如果在其它業(yè)務(wù)場景下需要本地的視頻文件模擬

    2024年02月12日
    瀏覽(22)
  • Unity內(nèi)接入WebRTC視頻流

    Unity內(nèi)接入WebRTC視頻流

    1.在Unity工程內(nèi)導(dǎo)入“WebViewForWindow”插件,得到如圖文件夾。 2.將該路徑下的預(yù)制體拖到場景內(nèi)的Canvas下 3.如果填入Url,直接Unity運(yùn)行可直接加載網(wǎng)頁(但是不適配我們本次功能需求,只做介紹) 4.我們需要通過http接口請求返回WebRTC流(如果是其他方式拿到WebRTC視頻流流程一

    2024年02月01日
    瀏覽(27)
  • 在VUE框架的WEB網(wǎng)頁端播放??低昍TSP視頻流完全方案

    在VUE框架的WEB網(wǎng)頁端播放??低昍TSP視頻流完全方案

    1.服務(wù)器轉(zhuǎn)流前端轉(zhuǎn)碼方案 服務(wù)器端先把RTSP流用Web Socket或WebRTC推送到前端,再通過WASM轉(zhuǎn)碼MP4播放。此方案雖號稱是無插件方案,但是需要服務(wù)器支持,兩次轉(zhuǎn)碼導(dǎo)致延遲較高,一般高達(dá)數(shù)秒甚至數(shù)分鐘。此方案首屏畫面顯示很慢。因?yàn)樾枰?wù)器不斷轉(zhuǎn)碼轉(zhuǎn)流,對CPU和內(nèi)存

    2024年02月05日
    瀏覽(22)
  • live555推送實(shí)時視頻流

    1,linux 環(huán)境: 官網(wǎng)上下載,下載地址:http://www.live555.com/liveMedia/public/ live555 版本:“2018.12.14” 參考:http://www.live555.com/liveMedia/faq.html 這個FAQ要仔細(xì)閱讀。 2,編譯 根據(jù)不同的平臺來配置,并生成對應(yīng)的Makefile 2.1 ARM平臺: 修改交叉編譯工具 cp config.armlinux config.arm vi config.arm

    2023年04月08日
    瀏覽(18)
  • 安防視頻管理平臺GB設(shè)備接入EasyCVR, 如何獲取RTMP與RTSP視頻流

    安防視頻管理平臺GB設(shè)備接入EasyCVR, 如何獲取RTMP與RTSP視頻流

    安防視頻監(jiān)控平臺EasyCVR可拓展性強(qiáng)、視頻能力靈活、部署輕快,可支持的主流標(biāo)準(zhǔn)協(xié)議有國標(biāo)GB28181、RTSP/Onvif、RTMP等,以及支持廠家私有協(xié)議與SDK接入,包括??礒home、海大宇等設(shè)備的SDK等。平臺既具備傳統(tǒng)安防視頻監(jiān)控的能力,比如:視頻監(jiān)控直播、云端錄像、云存儲、錄

    2024年02月15日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包