使用H5Stream實現rtsp流播放,並整合到web項目中


更新!!!這篇博客最早是工作要求實現rtsp流媒體播放,所以做了一個demo測試下,后來又不需要做這個功能了,遂沒有再深入研究,只記錄了之前的學習結果,最近發現有小伙伴留言說流媒體無法播放,我看了下,的確rtsp流無法播放,但是MP4格式還是可以的。由於工作繁忙未有時間研究,所以這篇博客權且給大家參考一下,如果有小伙伴找到最新解決辦法,歡迎留言哦~謝謝。

 


以下為原文:

預期目標在項目中增加一個rtsp流媒體播放的功能。

H5Stream(h5stream 支持RTSP/RTMP拉流/RTMP推流/GB28181 攝像機NVR集成,支持HLS/RTSP/RTMP/WS/RTC 服務,並且在不轉碼的情況下支持H.264;還兼容不同的操作系統和瀏覽器)。

然后查看官方文檔,但是對於萌新來說,實在太難理解了!/(ㄒoㄒ)/~~

於是我又開始各種搜羅教程,但是網上的教程很少,就幾篇還寫的不是很全面,這里先附上我看到的博客:


准備工作:下載和安裝

官網提供的在這(你可以試着自己找資源)?

官網傳送門?

百度網盤?

懶人全部打包下載


開始:

(1)雙擊vcredist_x64.exe進行安裝,安裝后需重啟,這個安裝包也保存着吧,如果已經安裝成功的雙擊會顯示修復和卸載

(2)解壓產品包h5s-r9.0.0605-win64-release.zip,解壓路徑隨意

(3)雙擊根目錄中的regservice.bat自動注冊

(4)修改\h5s-r8.7.0718.19-win64-release\conf目錄下的h5ss.conf配置文件,將strUrl的流地址修改為你自己的

          這里提供一個流地址:rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov

          tip:你可以使用VLC播放器測試一下流地址是否正常,如果無法播放,請更換為其他的

(5)雙擊根目錄下的h5ss.bat啟動服務,切記不能關閉哦!

注意:如果無法運行,出現如下報錯:那可能是vcredist_x64.exe安裝出了問題,這里提供微軟下載,重新安裝下!

(6)打開網頁,瀏覽器輸入localhost:8080 ,看到如下界面代表成功

(7)你也可以直接瀏覽器輸入localhost:8080/demo.html 

那如何引入到自己的web項目中呢???


其實很簡單,在h5s-r8.7.0718.19-win64-release\www目錄下有個demo.html文件,復制到你的項目中去,然后引入相應的js文件,注意!!host 的 window.location.host 改為 localhost:8080,因為H5Stream默認端口為8080,所以為了避免沖突,將你web項目的端口號修改為8081,否則你啟動H5Stream服務的時候,就無法啟動項目了!

  1.  
    <!DOCTYPE HTML>
  2.  
    <html>
  3.  
    <head>
  4.  
    <title>H5STREAM VIDEO</title>
  5.  
    <script src="js/jquery-3.1.1.js"></script>
  6.  
    <script src="js/bootstrap.js"></script>
  7.  
    <script src="js/adapter.js"></script>
  8.  
    <script src="js/platform.js"></script>
  9.  
    <script src="js/h5splayer.js"></script>
  10.  
    <script src="js/h5splayerhelper.js"></script>
  11.  
     
  12.  
    <link rel = "stylesheet" type = "text/css" href = "css/h5splayer.css" />
  13.  
     
  14.  
    </head>
  15.  
     
  16.  
    <body>
  17.  
     
  18.  
    <div class="h5videodiv">
  19.  
    <video class="h5video" id="h5sVideo1" autoplay webkit-playsinline playsinline>
  20.  
     
  21.  
    </video>
  22.  
    <div class="playpause" id="playpause1" ></div>
  23.  
    </div>
  24.  
     
  25.  
     
  26.  
    </body>
  27.  
     
  28.  
    <script>
  29.  
     
  30.  
    if (H5siOS() === true
  31.  
    || H5sSafariBrowser() === true)
  32.  
    {
  33.  
    $( '#h5sVideo1').prop("controls", true);
  34.  
     
  35.  
    }
  36.  
     
  37.  
    var conf1 = {
  38.  
    videoid:'h5sVideo1',
  39.  
    protocol: window.location.protocol, //'http:' or 'https:'
  40.  
    host: "localhost:8080", //'localhost:8080'
  41.  
    rootpath:'/', // '/' or window.location.pathname
  42.  
    token:'token1',
  43.  
    hlsver:'v1', //v1 is for ts, v2 is for fmp4
  44.  
    session:'c1782caf-b670-42d8-ba90-2244d0b0ee83' //session got from login
  45.  
    };
  46.  
     
  47.  
     
  48.  
    var v1 = H5sPlayerCreate(conf1);
  49.  
     
  50.  
     
  51.  
    $( '#h5sVideo1').parent().click(function () {
  52.  
    if($(this).children(".h5video").get(0).paused){
  53.  
    if(v1 != null)
  54.  
    {
  55.  
    v1.disconnect();
  56.  
    delete v1;
  57.  
    v1 = null;
  58.  
    }
  59.  
     
  60.  
    v1 = H5sPlayerCreate(conf1);
  61.  
     
  62.  
    console.log(v1);
  63.  
    v1.connect();
  64.  
     
  65.  
    $( this).children(".playpause").fadeOut();
  66.  
    } else{
  67.  
    v1.disconnect();
  68.  
    delete v1;
  69.  
    v1 = null;
  70.  
    $( this).children(".h5video").get(0).pause();
  71.  
    $( this).children(".playpause").fadeIn();
  72.  
    }
  73.  
    });
  74.  
     
  75.  
     
  76.  
    </script>
  77.  
     
  78.  
    </html>

最后:

重新啟動h5ss.bat

然后運行web項目,就可以看到視頻了。

我是將視頻嵌套在我已有的html中,效果如下


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM