• <abbr id="chdyf"></abbr>
    <ruby id="chdyf"><acronym id="chdyf"><meter id="chdyf"></meter></acronym></ruby>
    <bdo id="chdyf"></bdo>
    <dfn id="chdyf"><menu id="chdyf"></menu></dfn>
    1. <menuitem id="chdyf"></menuitem><strong id="chdyf"><menu id="chdyf"></menu></strong>

      <rt id="chdyf"><menu id="chdyf"></menu></rt>
      成人小说一区二区三区,伊人精品成人久久综合全集观看,久久HEZYO色综合,中文字幕精品人妻熟女,影音先锋成人网站,我要看免费一级毛片,中国女人做爰A片,中文字幕av久久爽Av

      vue中播放rtsp流

      2023-4-4    前端達人

      實現vue中播放rtsp視頻流的問題

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

      開始

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

      科普了解一下

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

      使用

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

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

      使用rtsp2web

      創建了一個vuecli(vue2)項目,名稱不要起rtsp2web,與src文件夾同級
      下創建一個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下創建index.js

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

      運行命令: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之后沒反應?
      —檢查端口號是否填寫對應,index.js中的端口要與script里的端口保持一致
      |
      為什么長時間未顯示圖像?
      —需要等待大概1-2分鐘,就會顯示畫面。至于這么長時間未顯示,小弟也不知道啊。。希望大佬指點。。

      最后

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

      參考。1


      1. https://zhuanlan.zhihu.com/p/531899593 ??
        藍藍設計建立了UI設計分享群,每天會分享國內外的一些優秀設計,如果有興趣的話,可以進入一起成長學習,請加微信ban_lanlan,報下信息,藍小助會請您入群。歡迎您加入噢~~
        希望得到建議咨詢、商務合作,也請與我們聯系01063334945。 

        分享此文一切功德,皆悉回向給文章原作者及眾讀者. 免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。 

        藍藍設計m.wtxcl.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務UI設計公司、界面設計公司、UI設計服務公司、數據可視化設計公司、UI交互設計公司、高端網站設計公司、UI咨詢、用戶體驗公司、軟件界面設計公司

      日歷

      鏈接

      個人資料

      藍藍設計的小編 http://m.wtxcl.cn

      存檔

      主站蜘蛛池模板: 中文av不卡| 亚洲精品视频在线| 日韩综合| 秋霞无码中文| 久久久久国产精品免费免费搜索| 无码国内精品久久综合88| 日本视频一区在线观看免费| 多人乱p视频在线免费观看| 上海集散中心旅游官网订票| 狠狠插影院| 亚洲国产精品综合福利专区| 欧美一级鲁丝片免费一区| 一本无码中文字幕| 日本亚洲一区二区三区| 国产精品乱码一区二区三| 无码精品黑人| 中文字幕日韩精品人妻| AV免费网站| 哈尔滨市| 日韩精品一区二区三区中文 | 欧美极品在线视频| 什邡市| 国产精品进线69影院| 69视频网站| 丝袜福利导航| 超级碰碰碰| 亚洲成人在线网站| 中文字幕一二区| 襄垣县| 久久毛片ddd| 久久无码av| 天堂VA蜜桃一区二区三区| 国产精品亚洲一区二区在线观看| sewang网页版入口| 中文字幕av久久| 久久99精品久久久久| 多人性激烈的欧美三级视频| 久久77| 亚洲啊v.在线播放| 亚洲日本在线一区| 亚洲AV性色精品国产小电影 |