[教學] 《吉米教你用》Mac自架nginx與rtmp私人串流伺服器來同時直播到多個平台 - iPhone4.TW

會員登入



顯示結果從 1 到 4 共計 4 條
  1. #1
    吉米丘 的頭像

    勸敗大魔王

    註冊日期:09-20-2007
    文章:50,710
    謝謝你: 9,906
    在 6,551篇文章中獲得 48,051個感謝


    前情提要

    直播是現在大家很習慣出現的一種分享即時動態的一種方式



    YouTuber選擇在YouTube直播,例如「Auto-Online 汽車線上情報誌



    電競玩家選擇在Twitch直播,例如「美勞哥的頻道




    一般普羅大眾則是在facebook直播

    各有各的族群以及其同好

    所當你只是單一角色時,你只要在一個地方直播就可以收到斗內(donate贊助金的網路語言)

    但若你有需求需要同時在多平台、多粉絲頁做「同步」直播的時候

    就是我們要開外掛的意思啦



    有錢好辦事,花錢就能解決

    首先,吉米先來分享最簡單的方法

    就是花錢就能解決的課金戰士,這沒什麼不好,只要能快速、方便解決問題,好讓我們可以去賺更多錢,幹嘛要自己搞呢?

    國外有很多類似服務,我就簡單講其中一個吧



    restream.io
    https://restream.io/

    看圖案就可以知道大概,簡單來解釋,就是當我們直播時,選擇「自定RTMP」的直播,把影片內容傳輸到restream.io



    然後它們「再」幫我們把影片直播到其他平台例如YouTube、Twitch、斗魚、bilibili、STEAM、USTREAM...等服務

    對! 你一直在找的那個facebook直播並沒有在「免費版」的帳號內

    人家提供服務也是要賺錢的嘛~

    好,那怎麼收費呢?



    這裡採取的是收「月費」或是「年費有更多優惠」的機制

    standard版,每個月$13.3美元,就可以除了免費版的直播平台之外,額外增加一個臉書的直播平台可以串接,採用的是Custom RTMP的方式

    Professional版,每個月$34.3美元,就是專業用途可以增加3組臉書平台直播的串接,也是採用的Custom RTMP的方式,當然還有更多功能



    另外還有企業版更高階版本,若你需要同時五個、十五個臉書不同帳號或是粉絲團的直播,花錢就解決了



    頻寬問題、技術問題都是他們解決,還有一些後台大數據、以及其他功能由他們提供

    你我就專心做內容直播分享即可~


    用法很簡單



    把我們想要同時直播的頻道連結起來,例如這邊我串上Twitch、YouTube兩個平台

    由於我沒有常常在直播,直播也沒有錢賺,所以就不要多花錢當課金戰士




    然後記下畫面右邊的RTMP URL跟金鑰起來(這裡的金鑰除非重設,不然是專屬的)




    當你需要直播的時候,在OBS或是在手機的直播軟體上,開啟直播之後,就會自動推送到restream.io,然後再推送到全世界囉~

    好,看到這裡,相信有賺錢的夥伴應該已經直接上面刷卡結束這一回合,省下下面很多麻煩

    如果你跟吉米一樣暫時還沒有從直播獲得巨量收入,卻又有需要多平台直播,我們就接著看下去吧~


    這一回好的好處是

    花錢省去很多麻煩、不需要電腦架設主機、在外頭直播也可以直接來免電腦多平台直播


    用Mac自架 nginx + rtmp 伺服器

    開始之前,吉米先假設你的電腦設備已經足以負擔同時玩遊戲、擷取影片、又同時直播的工作



    若還跑不動的話,吉米另外一篇開外掛的eGPU還沒寫好,等寫好之後再串回來本文

    接著第二點是吉米假設你所在位置的「上傳」頻寬足以應付同時傳輸多平台的需求,所謂上傳頻寬是100/40,是後面那個40Mbps,不是100Mps/s,更不是40MB/s喔




    好,看的懂到這裡,我們接下來要開啟終端機模式

    若你不擅長於終端機敲指令,或是看錯誤訊息自己解決的話,那請跳回上一個回合,付錢解決這些問題吧~

    有了跑的動的Mac電腦+有足夠的頻寬+有足夠的膽量自己下語法安裝程式

    就讓我們看下去吧~



    Homebrew


    台灣前陣子很流行自己釀啤酒,自己搞啤酒花、自己釀、自己喝,一切自給自足的概念



    同樣在Mac上面也有一個「Homebrew」自家釀造的概念

    開啟你的終端機,輸入下面指令,請自行拷貝貼上整段

    若你看不懂,請回上一回合吧,吉米現在得設下一些關卡,讓你知道你該選擇付錢還是DIY,畢竟天下沒有白吃的午餐啊~

    代碼:
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    接著輸入密碼就會列出下面的一長串要安裝的內容來安裝



    安裝好之後

    接著輸入下面指令來使用使用 Homebrew 安裝 Apple 沒有預裝但是「你需要的東西」。

    代碼:
    brew install wget
    安裝好之後就會得到下面一長串訊息



    在brew上安裝nginx

    接著我們要來安裝nginx啦

    網路上很多人教只需要輸入

    代碼:
    brew tap homebrew/nginx
    我是沒成功啦

    不過我爬文找到解法,改輸入下面的語法即可把需要安裝的內容下載回來

    代碼:
    brew tap denji/homebrew-nginx



    接著輸入安裝nginx與rtmp的模組語法

    代碼:
    brew install nginx-full --with-rtmp-module


    會跑出上面的訊息,若完成就完成了




    若你出現一串錯誤訊息:Error: parent directory is world writable but not sticky

    表示有個目錄要修改權限,請輸入下列語法,這關我又卡了好久,呵呵

    代碼:
    sudo chmod +t /private/tmp/
    權限修好之後,再跑一次安裝語法就應該沒問題了



    這邊列出了幾個常用的語法,只要在命令列上輸入下面語法就可以

    啟動
    代碼:
    nginx
    重啟
    代碼:
    nginx -s reload
    停止程序:
    代碼:
    nginx -s stop



    這時候開啟瀏覽器,在網址列上面輸入localhost:8080,就可以看到上面的歡迎畫面,表示安裝成功囉

    nginx開啟預設的port是在8080,而一般開啟網址是在80所以我們要開啟編輯器修改一下

    nginx的設定檔在 /usr/local/etc/nginx/ 目錄下,編輯nginx.conf檔即可



    先把大約在36行左右的這段 listen 從8080改成80即可


    加入rtmp參數

    接著我們要在設定檔的「http { 」上方插入下面語法


    PHP 代碼:
    rtmp {
        
    server {
            
    listen 1935;
            
    chunk_size 4096;

            
    application mytv {
                
    live on;
                
    record off;
                
    push rtmp://live.restream.io/live/金鑰;
                
    push rtmp://live-api-s.facebook.com:80/rtmp/金鑰;

            
    }
        }



    這裡我用了一個連到restream.io的連結,後面要貼上它給你的金鑰





    第二個是facebook直播的rtmp連結,用電腦版連上臉書,選擇「直播」之後,再選擇右上的「連接」,這邊有個「使用持續性串流金鑰」看你要不要偷懶改成固定的,或是浮動的每次都來修改一下

    最後回到上面設定檔把金鑰貼上去

    這樣你就不用每次改來改去很麻煩了~




    記得存檔

    然後回到終端機輸入nginx重啟指令

    代碼:
    nginx -s reload

    最後回到OBS,或是手機第三方直播軟體



    回到OBS,把我們要直播的串流改成「自定串流伺服器」



    把URL改成
    rtmp://localhost/mytv

    例如要從外部連回來自己的RTMP直播伺服器做「轉播」

    記得在NAT上面開啟1935port做redirect喔~



    然後Mac上面的防火牆也要開啟1935port的進跟出喔




    並且針對resteam.io的要求,要到「串流」開啟「進階選項」,把keyframe改成2

    這樣就完成可以直播了


    這一回合的好處

    省錢(但前提是自己的電腦夠快/頻寬夠快)、自己掌握一切、改成固定金鑰之後理論上就可以在外部免電腦直播


    直播測試

    接著只要把直播設定好,對著我們自己的主機IP丟就可以了

    下面是吉米測試的影片,可以看到左下角的GPU使用狀況

    這次吉米設定的是iMac27 5K的內顯AMD Radeon R9 M295X用來算遊戲

    透過AKiTiO NUDE外掛的eGPU跑的是AMD Radeon RX Vega 64用來跑OBS的直播運算

    兩者都操好操滿,所以不怕lag啦



    (來看看臉書好友們怎麼說)






    以上就是吉米的簡單筆記分享,避免自己忘記,也分享給大家使用



    最後教大家怎麼還原

    關掉nginx

    代碼:
    nginx -s quit
    移除homebrew

    代碼:
    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
    此篇文章於 01-02-2019 17:16 被 吉米丘 編輯。


  2. #2
    吉米丘 的頭像

    勸敗大魔王

    註冊日期:09-20-2007
    文章:50,710
    謝謝你: 9,906
    在 6,551篇文章中獲得 48,051個感謝


  3. #3
    吉米丘 的頭像

    勸敗大魔王

    註冊日期:09-20-2007
    文章:50,710
    謝謝你: 9,906
    在 6,551篇文章中獲得 48,051個感謝


    補充一下測試這段時間的網路流量,上傳好像只用到700多KB/s


  4. #4
    吉米丘 的頭像

    勸敗大魔王

    註冊日期:09-20-2007
    文章:50,710
    謝謝你: 9,906
    在 6,551篇文章中獲得 48,051個感謝


    今日實測同時送臉書個人+臉書粉絲頁+Restream.io(Twitch+YouTube)的輸出流量約在1.7MB/s ~ 2.0 MB/s 之間

    傳送條件是 1080P 4Mbps 的直播畫質


 

 

相似的主題

  1. [影片] 《吉米教你用》AI人工智慧來幫你快速建立影片字幕
    由吉米丘論壇中攝影教學區
    回覆: 5
    最後發表: 03-11-2019, 16:30
  2. 回覆: 2
    最後發表: 09-10-2018, 13:41
  3. 回覆: 1
    最後發表: 07-10-2018, 23:42
  4. [教學] 《吉米教你用》 Switcher Studio 來強化直播畫質與效果
    由吉米丘論壇中攝影教學區
    回覆: 2
    最後發表: 12-29-2017, 17:56
  5. [教學] 跨平台影音串流軟體 iSub&Subsonic 教學 伺服端
    由yih6208論壇中AppStore 軟體推薦區
    回覆: 0
    最後發表: 07-10-2012, 09:23

發文規則

  • 不可以發表新主題
  • 不可以發表回覆
  • 不可以上傳附件
  • 不可以編輯自己的文章
  •  
回到此頁頂端