跳至主要內容
Callaba

在 OBS Studio 中發送和接收 RTMP 流

本頁內容

要從 OBS 發送 RTMP,請在“設定 → 推流”中輸入分配的 URL 和流密鑰。要在 OBS 中接收訊號,請在媒體來源中使用為該任務簽發的接收端 URL。Publisher 和 Receiver 是不同的存取角色,但使用同一設定的流名稱,也可使用相同 RTMP URL。

打開 OBS 前所需內容

  • 已啟用的 RTMP 監聽器及為其簽發的發布端 URL/密鑰。
  • 包含有意設定的影片和音訊來源的已知 OBS 場景。
  • 一個獨立的接收或監看路徑,以證明訊號到達後的情況。

此過程使用為部署提供的 Custom RTMP 值。OBS 維護按版本劃分的設定文檔。

受控和 Guest 輸入

對於受控模式,使用分配的 URL 和設定的流名稱;Publisher 和 Receiver 角色使用同一個連接名稱。在 Guest 模式下,OBS 仍將字段標為流密鑰:請在其中輸入您選定的非空流名稱,並在接收時使用同一名稱。Guest 模式會有意開放端點。

從 OBS 向 Callaba 發送 RTMP

  1. 在 OBS 中打開設定 → 推流。
  2. 選擇自定義…作為服務。
  3. 在伺服器中貼上分配的伺服器 URL,在流密鑰中貼上發布端值。
  4. 點擊應用,然後開始推流。
  5. 在 Callaba 中確認 RTMP Server 報告活動的發布端和入站位元率。

預期結果:分配的發布端顯示為活動狀態,且 OBS 發送時位元率會變化。如果 OBS 顯示正在推流而監聽器保持空閒,請比較精確的伺服器路徑和密鑰,然後檢查監聽器連接埠和發布端存取規則。

在 OBS 中接收 RTMP 訊號

  1. 獲取為此 OBS 接收路徑準備的接收端或播放器 URL。
  2. 在一個場景中添加媒體來源。
  3. 關閉本地文件,並將該接收端 URL 貼上到輸入中。
  4. 在 OBS 預覽中確認影像和預期音訊。

預期結果:接收 OBS 場景顯示選定訊號及其預期音訊。RTMP 接收 URL 不是瀏覽器播放器 URL。瀏覽器播放是另一條獨立工作流程,應使用設定好的 HLS/Web Player 端點,而不是在瀏覽器中原生播放 RTMP。

活動前測試兩個方向

檢查項它證明什麼
OBS 發送端已連接OBS 已嘗試建立發布端工作階段。
伺服器活動和位元率監聽器已接受發布端並檢測到媒體流。
接收端影像和音訊所選接收路徑解碼出有效的節目媒體。
選定輸出單獨設定的錄製、路由或播放器可正常工作。

常見故障

連接立即失敗:重新複製 URL 和流名稱/密鑰;確認監聽器和網路路徑。連接成功但沒有有效媒體:檢查 OBS 場景、音訊來源、編碼器日誌和接收端媒體。接收端一直黑屏:確認 OBS 正在使用設定的 RTMP 接收路徑和相同流名稱/密鑰,然後檢查媒體兼容性和接收端狀態。

相關設定

使用Callaba RTMP Server建立設定好的接收路徑,使用RTMP Server 操作員指南瞭解生命週期和存取詳情;如果下一步是在瀏覽器中觀看,請使用RTMP 播放器和瀏覽器播放。

可重複的 OBS 驗收執行

在空閒 TCP 連接埠上建立 RTMP Server,然後建立一個 Publisher Stream 和一個 Receiver Stream。精確複製分配的發布端 URL 和流名稱/密鑰;不要根據顯示的伺服器名稱構造 URL。對於 OBS 接收端,使用具有相同流名稱/密鑰的設定 RTMP 接收路徑。對於瀏覽器觀看,建立獨立 HLS 或 Web Player 輸出。在 OBS 中使用 Custom 服務,而非平臺預設。對於保守的首次測試,在 FLV/RTMP 輸出路徑中發送 H.264 影片和 AAC 音訊;先使用部署接受的解析度、幀率和位元率,再一次只更改一個參數。

在 Callaba 中檢查 getStatistics:輸入位元率和發布端數量確認接收;僅當接收端實際連接時接收端數量才變化。對於 OBS 中的接收端,添加 Media Source,禁用 Local File,將接收端 URL 作為 Input 輸入,並讓該來源在場景中保持可見。活動發布端下黑色預覽意味著應檢查接收端 URL 或媒體兼容性;零輸入位元率則應回到發送端、密鑰、連接埠或發布端角色排查。有關精確的監聽器和統計字段,請參閱RTMP Server 生命週期參考。

後續步驟

使用Callaba RTMP Server建立接收路徑;如果下一項任務是在瀏覽器中觀看,請使用RTMP 播放器和瀏覽器播放。