一、軟體需求
2、pcre原始碼包。這是乙個正規表示式庫。nginx會用到這個開源庫來做正則匹配。很多軟體都會引用,比如php引擎編譯的時候也會用到。
3、nginx-rtmp-module原始碼包
這才rtmp服務真正要的工具。
4、openssl原始碼包。這個不是必須。只有nginx 版本在1.3.14 - 1.5.0之間的,才需要安裝。nginx-rtmp-module的文件特意提到了這點。
在編譯nginx的時候,加上引數--with-http_ssl_module。如:./configure --add-module=rtmp模組的原始碼位置
二、編譯nginx
解壓nginx。進入到nginx原始碼目錄,執行如下命令:
第一步:
./configure --prefix=nginx安裝到哪個目錄
--with-pcre=pcre庫的原始碼目錄,注意是原始碼目錄
--add-module=rtmp模組的原始碼目錄
注:預先將pcre庫、rtmp模組解壓。以便上面使用。
一般兩種壓縮包。命令不同,如下:
tar.gz包命令:tax -xzvf 軟體包
zip包:unzip 軟體包
第二步:
make && make install
三、配置nginx
配置nginx.conf,增加
rtmp
與http
是同級別的,內容如下:
user root;注:nginx-rtmp-module在nignx.conf中使用的指令有很多,需要慢慢消化。先搭建乙個簡單的骨架。比如還可以進行hls協議的服務。worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
error_log logs/error.log error;
pid logs/nginx.pid;
events
#服務於rtmp協議的請求 rtmp://開頭
rtmp
} #這裡可以加其他server偵聽其他埠
}#服務於http請求
使用指令的說明文件:
四、推流和拉流
怎麼推流
功能、命令格式如下:
ffmpeg -re -i e:\test.mp4 -f flv rtmp:
-r設定幀速率,預設為25。
-i 設定輸入流,也就是讀取哪個檔案推流到服務端。
執行命令後,會在命令列看到推流過程:
需要乙個很常用的流**工具:vlc。
軟體安裝好後(筆者安裝的是window下vlc工具),開啟軟體,選擇"開啟網路串流",如下所示:
輸入拉流的位址,推流和拉流都是同乙個位址(說的是rtmp協議)。如:rtmp:
到此,完成了,一邊推流,一邊拉流的效果。
特別注意:
如下:ffmpeg -re -i e:\test.mp4 -vcodec copy -acodec copy -f flv rtmp:
-acodec表示音訊編碼,copy表示不改變編解碼器,只是改封裝器。
nginx搭建rtmp伺服器
1 nginx 位址 configure prefix usr local nginx add module home samba shb rtmp nginx rtmp module with http ssl module home samba shb rtmp nginx rtmp modul...
Linux上用nginx搭建RTMP伺服器
參考文章 我的環境ubuntu 1 安裝編譯 nginx 所需要的庫 sudo apt get install build essential libpcre3 libpcre3 dev libssl dev wget wget 4 解壓 tar zxvf nginx 1.9.15.tar.gz u...
rtmp伺服器搭建 windows
為了讓大家少踩筆者踩過的坑,目前將工作中搭建rtmp推流伺服器的步驟總結如下 此處注意千萬不要命名為nginx 1.7.11.3 gryphon,筆者初次搭建rtmp推流伺服器時,將解壓後的目錄命名為nginx 1.7.11.3 gryphon,出現區域網內的其他電腦都無法訪問rtmp伺服器的問題,...