使用VUE和webrtc-streamer實現(xiàn)實時視頻播放(監(jiān)控設(shè)備-rtsp)
前言
首先說明目前我只完成了本地測試,因還沒確定技術(shù)選型所以暫無項目應用,先做一下儲備,后續(xù)項目應用的話這篇文章會持續(xù)更新。
監(jiān)控設(shè)備播放效果如下:基于公司環(huán)境測試了大華和??档谋O(jiān)控設(shè)備(H264編碼)可以正確播放

1、下載webrtc-streamer,本機測試我下載的最新window版本
https://github.com/mpromonet/webrtc-streamer/releases
2、解壓下載包

3、雙擊webrtc-streamer.exe啟動服務(wù)

如下圖則啟動成功,此時在瀏覽器訪問127.0.0.1:8000可以看到本機監(jiān)控畫面


4、將下載包html文件夾下webrtcstreamer.js文件和html/libs文件夾下adapter.min.js文件復制到VUE項目public目錄下
在index.html文件里引入這兩個js文件


5、編寫測試頁面
注意:第三步在本機啟動服務(wù)所以 new WebRtcStreamer(id,serverUrl)中URL傳入127.0.0.1端口可
見第三步截圖為8000;各監(jiān)控設(shè)備廠商有自己的RTSP地址格式connect要傳入正確的rtsp地址。
<template>
<div>
<el-button @click="handleChange">切換</el-button>
<video id="video" autoplay width="900" height="900"></video>
</div>
</template>
<script>
export default {
name: 'index1',
data() {
return {
webRtcServer: null
}
},
mounted() {
//video:需要綁定的video控件ID
//127.0.0.1:8000:啟動webrtc-streamer的設(shè)備IP和端口,默認8000
this.webRtcServer = new WebRtcStreamer('video', location.protocol + '//127.0.0.1:8000')
//需要查看的rtsp地址
this.webRtcServer.connect('rtsp://user:password@ip:port/cam/realmonitor?channel=1&subtype=0')
//rtsp://user:password@ip:port/h264/ch1/main/av_stream--???
//rtsp://user:password@ip:port/cam/realmonitor?channel=1&subtype=0--大華
},
beforeDestroy() {
this.webRtcServer.disconnect()
this.webRtcServer = null
},
methods: {
handleChange() {
this.webRtcServer.connect('rtsp://user:password@ip:port/h264/ch1/main/av_stream')
}
}
}
</script>
<style scoped></style>6、運行項目可查看監(jiān)控視頻播放效果
以上為本機測試webrtc-streamer實現(xiàn)實時視頻播放效果的全過程,后續(xù)還要驗證服務(wù)器運行服務(wù)、局域網(wǎng)公網(wǎng)訪問以及性能等。
總結(jié)
到此這篇關(guān)于使用VUE和webrtc-streamer實現(xiàn)實時視頻播放(監(jiān)控設(shè)備-rtsp)的文章就介紹到這了,更多相關(guān)webrtc-streamer實時視頻播放內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于vue項目一直出現(xiàn) sockjs-node/info?t=XX的解決辦法
sockjs-node 是一個JavaScript庫,提供跨瀏覽器JavaScript的API,創(chuàng)建了一個低延遲、全雙工的瀏覽器和web服務(wù)器之間通信通道,這篇文章主要介紹了vue項目一直出現(xiàn) sockjs-node/info?t=XX的解決辦法,需要的朋友可以參考下2023-12-12
vue引入iconfont圖標庫的優(yōu)雅實戰(zhàn)記錄
使用組件庫時,圖標往往不能滿足需求,所以我們常常需要用到第三方圖標庫,這篇文章主要給大家介紹了關(guān)于vue引入iconfont的相關(guān)資料,需要的朋友可以參考下2021-06-06
瀏覽器事件循環(huán)與vue nextTicket的實現(xiàn)
這篇文章主要介紹了瀏覽器事件循環(huán)(結(jié)合vue nextTicket)的實現(xiàn)方法,需要的朋友可以參考下2019-04-04
vue3+element-plus動態(tài)路由菜單示例代碼
這篇文章主要介紹了vue3+element-plus動態(tài)路由菜單示例代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-11-11

