顯示具有 ffmpeg 標籤的文章。 顯示所有文章
顯示具有 ffmpeg 標籤的文章。 顯示所有文章

2026/04/17

昨天看文章有提到 MediaMTX 這個軟体
單一檔案就可以執行
想說下載來玩玩
有几個點要注意

使用obs串流時 輸出 設定一定要修改如下 否則無法串流成功


















另外就是直接用browser 打開 使用 webrtc 時 影像沒問題 但完全沒聲音
但這時用 vlc 去開 影像聲音都沒問題
查到說是音訊編碼的問題
但srs沒有這個問題

使用如下指令推流 影音都沒問題

ffmpeg -re -i input.mp4 \
  -c:v libx264 -preset veryfast -tune zerolatency \
  -c:a libopus -ar 48000 -ac 2 -b:a 96k \
  -f rtsp rtsp://localhost:8554/live


還有一個問題就是browser打開後預設是靜音 要手動打開



使用以下指令進行螢幕擷取並串流 影音都沒問題

ffmpeg -f x11grab -video_size 1024x768 -framerate 30 -i :0.0 \
-f pulse -i default \
-c:v libx264 -preset veryfast -pix_fmt yuv420p -g 60 -bf 0 \
-c:a libopus -b:a 128k -ar 48000 -ac 2 \
-flags +global_header \
-rtsp_transport tcp -f rtsp rtsp://localhost:8554/live


obs目前還沒找到方法

2025/02/06

要如何讓使用者能看影片但不被下載

首先把 mp4 分片

ffmpeg -i abc.mp4 -codec: copy -start_number 0 -hls_time 15 -hls_list_size 0 -f hls abc.m3u8

分片後把 abc.mp4 移出目錄


建立 index.html


<html>
<head>
  <link href="https://vjs.zencdn.net/8.21.1/video-js.css" rel="stylesheet" />

  <!-- If you'd like to support IE8 (for Video.js versions prior to v7) -->
  <!-- <script src="https://vjs.zencdn.net/ie8/1.1.2/videojs-ie8.min.js"></script> -->
</head>

<body>
  <video
    id="my-video"
    class="video-js"
    controls
    preload="auto"
    width="640"
    height="480"
    刪除以下一行
    poster="MY_VIDEO_POSTER.jpg"
    data-setup="{}"
  >
    <source src="MY_VIDEO.mp4" type="video/mp4" />
    <source src="MY_VIDEO.webm" type="video/webm" />
   刪除以上二行

    把第一步產生的所有分片檔放到 web server 的目錄 並依需求修改以下文字

    <source src='http://10.0.0.1/test/abc.m3u8' type="application/x-mpegURL">   
    
    <p class="vjs-no-js">
      To view this video please enable JavaScript, and consider upgrading to a
      web browser that
      <a href="https://videojs.com/html5-video-support/" target="_blank"
        >supports HTML5 video</a
      >
    </p>
  </video>

  <script src="https://vjs.zencdn.net/8.21.1/video.min.js"></script>
</body>
</html>


用browser打開即可觀看