1、流媒體
1.1基本概念
流媒體(Streaming media),也叫做:流式媒體。
流媒體的一個非常典型、火爆的應用場景:直播。近幾年,直播行業是蒸蒸日上。
1.2直播架構
下面放幾張圖片,簡單了解一下直播技術的基本架構。
簡單
詳細
你可能會有個疑問:信令服務器是幹嘛用的?用來處理分享端和觀看端的一些信令指令,比如創建房間、加入房間等。
京東雲
百度智能雲
用文字總結一下基本流程是:
分享端(比如主播)-> 産生音視頻 -> 編碼壓縮音視頻 -> 推流到服務器
觀看端(比如觀衆)-> 從服務器拉流-> 解碼解壓縮音視頻-> 播放音視頻
1.3推拉流
推流:通過流媒體協議,将音視頻數據發送到流媒體服務器
拉流:通過流媒體協議,從流媒體服務器上拉取獲得音視頻數據
1.4流媒體協議
常見的流媒體協議有:rtmp、HLS等。
譯為:實時消息傳輸協議,由Adobe公司出品
默認基于TCP的1935端口
基于HTTP的流媒體網絡傳輸協議,蘋果公司出品
參考:RFC 8216
本文主要介紹RTMP協議相關知識。
2、服務器環境
首先,要搭建好RTMP服務器環境,主要步驟如下:
我這裡安裝的是VMWare
CentOS是Linux系統的一種,這裡用7.6版本,建議跟我的版本保持一緻
nginx:一款高性能的開源web服務器
nginx-rtmp-module:讓nginx支持rtmp
2.1安裝CentOS
2.1.1下載CentOS
推薦網站:centoschina,上面有CentOS的各種版本,這裡下載CentOS-7-x86_64-DVD-1810.iso,大小是4G多。
2.2安裝nginx
在nginx官網下載目前最新的穩定版:nginx-1.20.1.tar.gz。
2.3安裝nginx-rtmp-module
在nginx-rtmp-module的github下載目前最新的穩定版:v1.2.2.tar.gz。
2.4配置nginx
2.5啟動nginx
2.6一些步驟和命令整理
查看共享成功與否
vmware-hgfsclient
挂載到對應目錄(這裡放mnt)
vmhgfs-fuse .host:/共享目錄名稱 /mnt/目錄名稱
cp源目标
tar -zxvf 解壓文件
vim conf/nginx.conf
export PATH=$PATH:/usr/local/nginx/sbin
nginx
端口占用:lsof -i:1935
殺死進程:kill -9 pid
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!