![FFMPEG 產生的直播 DASH 清單無效,但在某些播放器上仍可播放](https://rvso.com/image/726383/FFMPEG%20%E7%94%A2%E7%94%9F%E7%9A%84%E7%9B%B4%E6%92%AD%20DASH%20%E6%B8%85%E5%96%AE%E7%84%A1%E6%95%88%EF%BC%8C%E4%BD%86%E5%9C%A8%E6%9F%90%E4%BA%9B%E6%92%AD%E6%94%BE%E5%99%A8%E4%B8%8A%E4%BB%8D%E5%8F%AF%E6%92%AD%E6%94%BE.png)
我正在嘗試將來自 IP 攝影機的 RTSP 串流嵌入到網站中。我發現,直接嵌入 RTSP 是很棘手且足智多謀的,而且它還需要用戶採取一些關鍵操作(安裝不同的播放器,如 VLC 或啟用一些瀏覽器插件),所以我決定將 RTSP 串流轉換為即時串流使用FFMPEG 動態流(HLS 或MPEG-DASH)。當我嘗試產生 HLS 檔案時,CPU 負載跳至 100%,因此我認為(因為我的視訊伺服器非常弱,具有單核心 CPU)MPEG-DASH 是我堅持使用的選項,因為它增加2-3% 的CPU 負載,這是可以接受的。但是,當我嘗試使用以下命令驗證我的 manifest.mpd 檔案時https://conformance.dashif.org/它會傳回以下內容:
✔ XLink resolving
✖ MPD Validation
✖ Schematron Validation
我嘗試播放直播的清單達世幣但播放器卡在Loading狀態。然而,當我嘗試播放此直播的清單時可見光通信,JW玩家8和THEO播放器,它工作完美。然而,ffprobe
返回:http://MY_PUBLIC_IP:PORT/mpeg-dash/manifest.mpd: Invalid data found when processing input
。我做錯了什麼,以及如何產生我的破折號文件,這樣它們就可以用傳統(和免費)的播放器來播放,例如達世幣?
資源:
我正在使用的命令:ffmpeg -i rtsp://USERNAME:[email protected]:554/live -an -c:v copy -b:v 2000k -f dash -window_size 10 -extra_window_size 0 -min_seg_duration 2000000 -use_timeline 1 -use_template 1 -remove_at_exit 1 /var/www/camera/mpeg-dash/manifest.mpd