97国产精品视频人人做人人爱,3344在线观看无码,成年人国产视频,欧美日一级片,在线看AV天堂,高清无码一本到东京热,欧美一级黄片一区2区,免费又爽又刺激高潮网址

vue中播放rtsp流

2023-4-4    前端達(dá)人

實(shí)現(xiàn)vue中播放rtsp視頻流的問題

背景:項(xiàng)目中通過攝像機(jī)提供的rtsp流來顯示畫面,但是在編寫項(xiàng)目中,需要將rtsp實(shí)時流畫面?zhèn)鬏數(shù)絯eb前端頁面中。于是找了很多方法,都是后臺轉(zhuǎn)碼轉(zhuǎn)成rtmp來播放,現(xiàn)在大部分插件和瀏覽器都是支持使用rtmp播放視頻流。而rtsp隨著flash的退出而被復(fù)雜化了。網(wǎng)上都是1、通過ffmpeg轉(zhuǎn)碼后輸出,2、通過攝像機(jī)指定的web插件轉(zhuǎn)碼輔助播放,如海康,大華攝像機(jī);3、還有個猿大師播放器基于猿大師中間件提供的內(nèi)嵌網(wǎng)頁播放(沒用過,不知道行不行,原本想用現(xiàn)在這個方法行不行的,若不行就用這個猿大師了的)

開始

:
node.js工具
jsmpeg.js文件
npm install rtsp2web

科普了解一下

  1. rtsp2web 是一個依賴 ffmpeg,能實(shí)時將傳入的 rtsp 視頻流轉(zhuǎn)碼成圖像數(shù)據(jù)并通過 ws 推送到前端的智能工具。
  2. 前端頁面借助 jsmpeg.js 就可以很輕松的實(shí)現(xiàn)播放
  3. 同時rtsp2web的特點(diǎn)還有:1、并發(fā),支持同時播放多路視頻2、合并同源,同時播放多個同一個rtsp視頻源時,只會創(chuàng)建一個轉(zhuǎn)碼推流進(jìn)程,不會創(chuàng)建多個。3、智能釋放資源,智能檢測當(dāng)前沒有使用的轉(zhuǎn)碼推流進(jìn)程,將其關(guān)閉,并釋放電腦資源。

使用

下載ffmpeg(鏈接: https://www.ffmpeg.org/download.html#build-windows

安裝成功以后,你重新打開一個命令行終端,輸入:ffmpeg -h,如果能輸出 ffmpeg 的相關(guān)信息出來,則證明你的電腦安裝 ffmpeg 成功。

使用rtsp2web

創(chuàng)建了一個vuecli(vue2)項(xiàng)目,名稱不要起rtsp2web,與src文件夾同級
下創(chuàng)建一個serve文件夾

-|public
    |-favicon.ico
    |-index.html
-|src
-|serve
-|.gittignore
-.....  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在serve下初始化和下載

npm init --yes
npm install rtsp2web  
  • 1
  • 2

在serve下創(chuàng)建index.js

//index.js
const RTSP2web = require('rtsp2web')

//服務(wù)端的端口號,端口號可以自定義
const port = 8033
new RTSP2web({
    port
)}  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

運(yùn)行命令:node index.js

前端代碼

在public的index.html中
其中jsmpeg.min.js通過src引入,可以用jsmpeg.js或者jsmpeg.min.js都行

<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
    <!--v  jsmpeg.min.js文件用在這   v-->
    <script src="https://jsmpeg.com/jsmpeg.min.js" charset="utf-8"></script>    
    <title><%= htmlWebpackPlugin.options.title %></title>
  </head>
  <body>
    <noscript>
      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
    </noscript>
    <div id="app"></div>
    <!-- built files will be auto injected -->
  </body>
  <script>
    var rtsp = 'rtsp://username:password@ip:port/live'
    window.onload = () => {
    //這里的port要與index.js的port保持一致
    new JSMpeg.Player("ws://localhost:8033/rtsp?url="+btoa(rtsp), {
       canvas: document.getElementById("canvas")
    })
  }
  </script>
</html>  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

#####在vue頁面中用canvas中播放視頻
如 在App.vue中這樣用:

<template>
  <div id="app">
    <!-- <img alt="Vue logo" src="./assets/logo.png">
    <HelloWorld msg="Welcome to Your Vue.js App"/> -->
    <canvas id="canvas" style="width: 600px; height: 600px;"></canvas>
  </div>
</template>  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

問題

為什么node index.js之后沒反應(yīng)?
—檢查端口號是否填寫對應(yīng),index.js中的端口要與script里的端口保持一致
|
為什么長時間未顯示圖像?
—需要等待大概1-2分鐘,就會顯示畫面。至于這么長時間未顯示,小弟也不知道啊。。希望大佬指點(diǎn)。。

最后

完事了就,這是我歷經(jīng)千辛萬苦找到的方法,弄這個vue中播放rtsp搞了好久,技術(shù)太拉了我,只能用這些小玩意來搞。原本打算用java或者python通過拉rtsp流解析成rtmp的,奈何能力不足,也懶得思考懶得搞懶得弄,所以擺爛了QAQ
若哪里有講的不妥和使用不當(dāng)?shù)牡胤竭€請您告知一下,萬分感謝大佬指點(diǎn),小弟深表感謝<抱拳>
-----------------------------------------------------------------------------------------------------------

參考。1


  1. https://zhuanlan.zhihu.com/p/531899593 ??
    藍(lán)藍(lán)設(shè)計(jì)建立了UI設(shè)計(jì)分享群,每天會分享國內(nèi)外的一些優(yōu)秀設(shè)計(jì),如果有興趣的話,可以進(jìn)入一起成長學(xué)習(xí),請加微信ban_lanlan,報(bào)下信息,藍(lán)小助會請您入群。歡迎您加入噢~~
    希望得到建議咨詢、商務(wù)合作,也請與我們聯(lián)系01063334945。 

    分享此文一切功德,皆悉回向給文章原作者及眾讀者. 免責(zé)聲明:藍(lán)藍(lán)設(shè)計(jì)尊重原作者,文章的版權(quán)歸原作者。如涉及版權(quán)問題,請及時與我們?nèi)〉寐?lián)系,我們立即更正或刪除。 

    藍(lán)藍(lán)設(shè)計(jì)www.0391cbd.com )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)、UI設(shè)計(jì)公司、界面設(shè)計(jì)公司、UI設(shè)計(jì)服務(wù)公司、數(shù)據(jù)可視化設(shè)計(jì)公司、UI交互設(shè)計(jì)公司、高端網(wǎng)站設(shè)計(jì)公司、UI咨詢、用戶體驗(yàn)公司、軟件界面設(shè)計(jì)公司。

日歷

鏈接

個人資料

存檔

主站蜘蛛池模板: 午夜精品久久久久久久无码软件| 国产欧美日韩免费| 亚洲第一精品福利| 91久久大香线蕉| 国产精品不卡片视频免费观看| 欧洲极品无码一区二区三区| 黄色成年视频| 精品国产毛片| 99热这里都是国产精品| 国产尤物视频网址导航| 国产成人综合久久| 亚洲国产91人成在线| 毛片免费在线| 一本大道东京热无码av| 日本高清免费不卡视频| 特级做a爰片毛片免费69| 国产精品一老牛影视频| 欧美日韩国产精品va| 99久久精品美女高潮喷水| 一级看片免费视频| 美女扒开下面流白浆在线试听 | 中文天堂在线视频| 久久中文无码精品| a级毛片网| 婷婷色中文| 一区二区影院| 久久99精品久久久久纯品| 亚洲中文无码av永久伊人| 亚洲人成在线精品| 乱码国产乱码精品精在线播放| 欧美色图久久| 国产女人综合久久精品视| 国产第三区| 欧美激情视频在线观看一区| 在线日本国产成人免费的| 久久99久久无码毛片一区二区| 亚洲人成电影在线播放| 国产97视频在线观看| 在线国产综合一区二区三区| 亚洲日韩国产精品综合在线观看| 欧洲精品视频在线观看| 91网在线| 91精品福利自产拍在线观看| 国产呦视频免费视频在线观看| 午夜成人在线视频| 亚洲国产精品成人久久综合影院| 国产成人禁片在线观看| 九九久久精品国产av片囯产区| 久草青青在线视频| 亚洲精品色AV无码看| 亚洲一区二区约美女探花| 日韩色图区| 一级看片免费视频| 国产香蕉97碰碰视频VA碰碰看| 国产成人乱无码视频| 久久国语对白| 日本亚洲欧美在线| 欧美精品成人一区二区视频一| 成人av手机在线观看| 中文无码精品A∨在线观看不卡| 野花国产精品入口| 亚洲国产欧美目韩成人综合| 啪啪国产视频| 专干老肥熟女视频网站| 奇米影视狠狠精品7777| 麻豆AV网站免费进入| 欧美色图久久| 欧美日韩国产在线人| 欧美日韩精品一区二区在线线 | 99在线视频免费| 欧美精品二区| 蜜臀AV在线播放| 在线网站18禁| 在线国产欧美| 毛片手机在线看| 欧美一级在线看| 国产手机在线小视频免费观看| 国产成人亚洲精品色欲AV| 欧美日韩国产一级| 色首页AV在线| 国产三级毛片| 狠狠综合久久|