MAC 架設 nginx 串流伺服器讓 OBS 能同時直播到多平台與 Facebook RTMPS 設定教學

這是一篇教您如何讓 OBS 可同時直播到多個平台,又解決 nginx 無法支援 Facebook RTMPS 的教學,不過這些東西需要有一定 linux 基礎,如果您看不懂的話請直接跳過吧!只要按照步驟就可以讓您的 OBS 同時直播到 Facebook 與 Youtube 等其他社群平台…
Mac 架設 nginx 讓 OBS 能同時直播到多平台與 Facebook RTMPS 設定教學


1.安裝 Homebrew 與 nginx 設定方式

打開您的 MAC 系統當中的『終端機』進入命令提示字元模式,按照順序輸入指令安裝 Homebrew 與 nginx。

  1. /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)”
  2. brew install wget
  3. brew tap denji/homebrew-nginx
  4. brew install nginx-full –with-rtmp-module
  5. nginx
  6. 安裝好之後請在瀏覽器輸入 http://localhost:8080 驗證服務是否正常運作。

Mac 架設 nginx 讓 OBS 能同時直播到多平台與 Facebook RTMPS 設定教學

2.設定 nginx 新增 RTMP 設定參數

編輯 /usr/local/etc/nginx/nginx.conf 設定檔新增並在 http 相關參數之上增加以下設定

  • 變數1:請更改成您喜歡的英文單字,也就是日後你串流位置的後面目錄,例如設定成 leo 就變成 rtmp://localhost/leo
  • push rtmp:// 部分輸入串流伺服器的位置,並在後面補上金鑰,每一行就是針對一個直播平台,要多平台就設定第二行即可
  • 注意:nginx 不支援 RTMPS 加密傳輸,而且 Facebook 2019年11月1日起將不支援位加密的 RTMP,只能接受加密過後的 RTMPS,如果沒經過優化是無法啟動 nginx 服務

rtmp {
server {
listen 1935;
chunk_size 4096;

application 變數1 {
live on;
record off;
push rtmp://a.rtmp.youtube.com/live2/金鑰;
push rtmp://live-api-s.facebook.com:80/rtmp/金鑰;
}
}
}

 

3.將服務更改成 80 Port

編輯 /usr/local/etc/nginx/nginx.conf 設定檔找到以下參數將 8080 更改成 80 即可。

listen 8080;

nginx 基本指令

  • 啟動:nginx
  • 重新啟動:nginx -s reload
  • 停止:nginx -s stop
  • 離開:nginx -s quit

4.安裝 stunnel

由於 Facebook 2019年11月1日起將不支援位加密的 RTMP,只能接受加密過後的 RTMPS,所以利用 stunnel 讓 nginx 也能支援 RTMPS,輸入以下指令來安裝 stunnel

  • brew install stunnel

5.設定 stunnel

在以下路徑新增『stunnel.conf』檔案並將以下內容複製貼上。

  • /usr/local/etc/stunnel/stunnel.conf

[fb-live]
client = yes
accept = 127.0.0.1:19350
connect = live-api-s.facebook.com:443
verifyChain = no

最後再命令提示字元下輸入『stunnel』沒有出現錯誤訊息就代表成功囉,這樣在 nginx 設定檔當中只要輸入以下格式就會自動轉到 RTMPS。

  • push rtmp://127.0.0.1:19350/rtmp/金鑰

6.OBS 串流設定

最後打開 OBS 在串流位置輸入『rtmp://localhost/leo』金鑰維持空白即可。


用LINE傳送
加入LINE頻道 加入TG頻道

Leo
Leo

喜愛旅遊並沉迷科技應用數十年無法自拔的重度 3C 上癮者!

3 則留言

  1. LEO 先生您好

    請問一下, windows 系統 照上面的方式,也是行得通的嗎?
    (原先可以FB+YT,但現在FB不吃了)
    感謝您
    TAC 敬上

    版主回應:
    理論上可行!但套件要自己找Windows 的版本來安裝

  2. 你好,我想問下,安裝時候,提示Traceback (most recent call last):
    -e:1:in `’: undefined local variable or method `“’ for main:Object (NameError),是什麼回事了!

    版主回應:
    你是安裝什麼出現這訊息的?

  3. 大大可做一個windows10的教學嗎,
    我也被fb rtmps的問題困擾

    版主回應:
    哈~~Windows 10 找機會試試

發表迴響