2015-10-06 86 views
0

兩位同事最近開始流抽搐起來,想創建一個安裝在那裏他們可以自己流間切換的「活」(如A是流,希望結束,B開始了他流,沒有中斷)。 Twitch顯然只允許一個人一次流到特定的頻道/流鍵,並停止一個流即刻啓動另一個流,通常導致約10秒的「停機時間」。切換礦

出於這個原因,我看着設立服務器,他們既可以流,它可以處理兩個輸入和推出一個單一的流抽搐攝取服務器。我檢查了一些關於爲此設置nginx和rtmp插件的教程,但是我遇到了同一個問題,一次只能有一個人可以流式傳輸。我想會得到像OBS或XSplit客戶流節目的一種可能設置,然後顯示來自nginx的,RTMP輸入流和切換場景在服務器上根據需要,但是這兩個方案似乎都需要一個顯卡爲自己活「預覽「,因此不能在我的服務器上工作。

是否有任何的nginx-RTMP配置或其他客戶機側(最佳的Linux,但也可以是窗口以及)溶液我可以使用用於組合兩個輸入RTMP流成單個輸出流?輸入之間的切換也可以通過手工完成,如果需要的話,只要它在「實時」工作並且不中斷輸出。

在此先感謝!

回答

0

這就是我與ffmpeg和YouTube也採用了RTMP輸入直播活動。可能與抽搐工作過:

  • 兩個流拉開到您的服務器,一次一個,而像mpegts中介格式促使他們到本地UDP端口。在我的情況下,它已經H.264/AAC

    ffmpeg -re -i <source1> -c copy -bsf:v h264_mp4toannexb udp://127.0.0.1:10000 
    

    然後殺死並立即做:

    ffmpeg -re -i <source2> -c copy -bsf:v h264_mp4toannexb udp://127.0.0.1:10000 
    
  • 獲取本地流,編碼,並通過RTMP推。它會等待,如果沒有輸入,將在PTS/DTS管理間斷:

    ffmpeg -re -i udp://127.0.0.1:10000 -c:v libx264 -r 25 -g 100 -c:a libfdk_aac -f flv rtmp://...