透過 ffmpeg 傳輸 HTTP

透過 ffmpeg 傳輸 HTTP

我想透過 HTTP 傳輸視訊串流,但 ffmpeg 失敗並顯示以下訊息:

[tcp @ 0x5636b74e4740] 連線到 tcp://127.0.0.1:4000 失敗:連線被拒絕http://127.0.0.1:4000/: 連線被拒絕

我的命令是:

ffmpeg -i rtsp://username:[email protected]:554 -vsync 0 -vcodec copy -movflags frag_keyframe+empty_moov -f mp4 http://127.0.0.1:4000/

我只是想將 RTSP 影片轉換為使用 HTTP 在瀏覽器上播放。顯然我需要一個 HTTP 伺服器,但不知道該怎麼做。任何幫助表示讚賞。

謝謝

答案1

要執行 ffmpeg,您必須先在系統上安裝 ffmpeg...並確保它與 html 檔案位於同一資料夾中。然後運行命令:

ffmpeg -i rtsp://username:[email protected]:554/Streaming/Channels/101 -fflags flush_packets -max_delay 5 -flags -global_header -hls_time 5 -hls_list_size 2 -hls_flags delete_segments -vcodec copy -y video1.m3u8

它將串流轉換為擴展名為 m3u8 的視訊檔案。

運行命令後,使用 html 在網路上顯示:

<html>
  <head>
    <link href="https://vjs.zencdn.net/7.17.0/video-js.css" rel="stylesheet" />
    <style>
      .cctvplay
      {
        float: left;
        margin-left: 5px;
        margin-top: 5px;
      }
    </style>
  </head>
  <body>
    <div class='cctvplay' >
      <video id="my-video" style="text-decoration: none" class="video-js" controls poster='' preload="auto" width="520" height="440" data-setup=" {}" >
        <source src="video1.m3u8" />
      
    </div>
         <script src="https://vjs.zencdn.net/7.17.0/video.min.js"></script>
  </body>
</html>

祝你好運...

相關內容