Nginx學習之配置RTMP模塊搭建推流服務
摘要: 小程序升級實時音視頻錄製及播放能力,開放 Wi-Fi、NFC(HCE) 等硬體連接功能。同時提供按需載入、自定義組件和更多訪問層級等新特性,增強了第三方平台的能力,以滿足日趨豐富的業務需求。
作者: 小柒
原文
寫在開始
小程序升級實時音視頻錄製及播放能力,開放 Wi-Fi、NFC(HCE) 等硬體連接功能。同時提供按需載入、自定義組件和更多訪問層級等新特性,增強了第三方平台的能力,以滿足日趨豐富的業務需求。
為更高效地連接用戶與商家,小程序提供了實時音視頻錄製及播放組件。符合類目要求的小程序自助開通後,可自建或使用雲服務,實現單向、雙向甚至多向的音視頻功能,如在線授課、遠程諮詢、視頻客服,以及多人會議等。
2017-12-26微信小程序推送了這樣一條消息,文檔,代碼也是簡單的一筆帶過,用戶需要自建或使用雲服務,實現單向、雙向甚至多向的音視頻功能。目前僅支持 flv, rtmp 格式。
本篇博客通過介紹使用nginx的rtmp模塊來使nginx服務支持rtmp協議,可以完成推流和播放的功能。
開發環境
Linux (centos7),Nginx (openresty),nginx-rtmp-module
安裝
由於之前已經安裝過了openresty,詳見博文。這裡我們只需要安裝nginx-rtmp-module模塊即可。
下載並解壓模塊:
停止原來的Nginx服務:
配置並編輯:
複製Nginx:
配置rtmp服務:
檢查並啟動服務:
播放
上傳一個視頻文件test.flv至/opt/video目錄。
下載一個VLC media player,工具欄-媒體-打開網路串流-網路,然後偶輸入網路URL(rtmp://ip:port/vod/test.flv),點擊播放。
回看
實時回看視頻伺服器的配置:
HTTP服務:
微信推流
手機打開小程序頁面,進行視頻推流服務,稍後我們會在/opt/video/hls/itstyle 目錄下發現一些ts文件和index.m3u8文件。
注意 url中的itstyle可以隨便定義,相當於一個房間標識。
PC推流
PC 直播是在 PC(windows/mac)上藉助安裝的推流軟體 OBS(推薦)或者 XSplit 向RTMP視頻雲的推流地址,推送經過壓縮編碼現場活動、教學、投影或者遊戲等畫面,同時觀眾可以通過和推流地址相對應的播放地址收看實時畫面。
PC 直播流程非常簡單,主要步驟:
- 通過RTMP自定義一個推流地址,解決往哪推流的問題;
- 採用第三方的推流軟體,設置推流音視頻源以及編碼參數,解決推什麼內容的問題;
- 觀眾就可以使用我們提供的 RTMP DEMO 通過設置播放地址即可進行觀看,解決內容觸達到觀眾那裡的問題。
推薦閱讀:第三方推流工具使用指南
Web播放
xiaozhibo.html:
跨域問題crossdomain.xml放置在網站根目錄:
測試訪問地址:http://rtmp.52itstyle.com/xiaozhibo.html
參考文檔:
http://www.cnblogs.com/zx-admin/p/5783523.html
https://cloud.tencent.com/document/product/267
https://github.com/arut/nginx-rtmp-module/wiki/Directives#rtmp
出處: https://blog.52itstyle.com
更多技術乾貨敬請關注云棲社區知乎機構號:阿里云云棲社區 - 知乎
推薦閱讀:
※memcache在Windows和linux環境下的安裝和具體配置
※搬瓦工VPS註冊購買常見問題基礎小白版!
※使用雲鎖管理監控伺服器安全與性能