Nginx搭建RTMP流媒體服務(wù)器的實(shí)現(xiàn)
1 環(huán)境搭建
環(huán)境搭建主要是利用nginx服務(wù)器的插件模塊nginx-rtmp-module進(jìn)行rtmp的推拉流操作。
依賴庫安裝
安裝過nginx的可以跳個(gè)這個(gè)步驟,主要是安裝ssl、pcre和zlib庫依賴
#安裝ssl依賴庫 sudo apt-get install openssl libssl-dev #安裝pcre sudo apt-get install libpcre3 libpcre3-dev #安裝zlib sudo apt-get install zlib1g-dev
源碼下載與編譯
源碼下載路徑:https://github.com/arut/nginx-rtmp-module
下載源碼,如果git命令沒法下載就直接到網(wǎng)頁下載復(fù)制到對(duì)應(yīng)目錄。
mkdir /home/rtmp cd /home/rtmp git clone https://github.com/nginx/nginx.git git clone https://github.com/arut/nginx-rtmp-module.git
編譯過程
設(shè)置nginx編譯參數(shù)
auto/configure --with-http_ssl_module --with-http_v2_module --with-http_flv_module --with-http_mp4_module --add-module=../nginx-rtmp-module
編譯和安裝
make -j4 sudo make install
安裝完可以查看nginx版本是否正常
默認(rèn)安裝路徑:/usr/local/nginx/

2 推流服務(wù)
2.1 利用文件推流
完成nginx服務(wù)器的安裝后,需要進(jìn)行rtmp服務(wù)的配置,只需要修改nginx配置即可:
vi /usr/local/nginx/conf/nginx.conf
配置內(nèi)容注意事項(xiàng):
- 開啟root權(quán)限,以便可以訪問home下的目錄;
- play路徑設(shè)置為自己的視頻文件夾路徑
user root;
rtmp { #RTMP server
server {
listen 1935; #server port
chunk_size 4096; #chunk_size
application vod {
#play /mnt/hgfs/ygf/vod; #media file position
play /home/ffmpeg_learn/test_sources/test-av;
}
}
}

重啟nginx
/usr/local/nginx/sbin/nginx -s reload
需要注意的是播放的路徑一定要正確,同時(shí)播放音頻是aac視頻視h264,這里添加一個(gè)test.mp4文件。

下面是測(cè)試過程,windows利用vlc工具播放rtmp的路徑。這里的ip需要設(shè)置為自己的Ubuntu ip地址

視頻效果如下:

注意需要確定視頻文件的格式:
音頻為AAC視頻為H264
2.2 將一路流灌到nginx服務(wù)器rtmp進(jìn)行推流
1 修改nginx配置,新增直播節(jié)點(diǎn),用于FFmpeg將流推到對(duì)應(yīng)節(jié)點(diǎn)上
application live{ # live add
live on;
}

2 重啟nginx服務(wù)器
/usr/local/nginx/sbin/nginx -s reload
3 進(jìn)行推流操作
ffmpeg -re -i /home/ffmpeg_learn/test_sources/test-av/Titanic.mp4 -c copy -f flv rtmp://192.168.88.180/live/Titanic
利用vlc查看視頻,如下所示:

3 直播拉流
上面利用VLC就是一個(gè)拉流的過程。
這里介紹FFmpeg命令行操作。
#利用ffplay直接觀看 ffplay rtmp://192.168.88.180/vod/Titanic.mp4 #利用FFmpeg下載到文件 ffmpeg -i rtmp://192.168.88.180/vod/Titanic.mp4 test.mp4
到此這篇關(guān)于Nginx搭建RTMP流媒體服務(wù)器的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Nginx搭建RTMP內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- nginx-rtmp-module模塊實(shí)現(xiàn)視頻點(diǎn)播的示例代碼
- Nginx安裝nginx-rtmp-module模塊的實(shí)現(xiàn)
- 通俗易懂講解nginx-rtmp-module
- nginx-rtmp-module構(gòu)建流媒體直播服務(wù)器實(shí)戰(zhàn)指南
- nginx臨時(shí)搭建rtmp服務(wù)器的方法實(shí)現(xiàn)
- nginx?搭建http-flv(rtmp)流媒體的方法步驟
- nginx?rtmp模塊編譯?arm版本的問題
- 使用Nginx搭載rtmp直播服務(wù)器的方法
- Nginx搭建rtmp直播服務(wù)器實(shí)現(xiàn)代碼
- Nginx-rtmp實(shí)現(xiàn)直播媒體實(shí)時(shí)流效果
- Centos基于Nginx搭建RTMP服務(wù)器的實(shí)現(xiàn)
相關(guān)文章
在Linux系統(tǒng)中將Redmine和SVN整合入Nginx的方法
這篇文章主要介紹了在Linux系統(tǒng)中將Redmine和SVN整合入Nginx的方法,示例基于CentOS系統(tǒng),并用到了Ruby腳本,需要的朋友可以參考下2015-06-06
nginx 多個(gè)location轉(zhuǎn)發(fā)任意請(qǐng)求或訪問靜態(tài)資源文件的實(shí)現(xiàn)
這篇文章主要介紹了nginx 多個(gè)location轉(zhuǎn)發(fā)任意請(qǐng)求或訪問靜態(tài)資源文件的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
詳解nginx同一端口監(jiān)聽多個(gè)域名和同時(shí)監(jiān)聽http與https
這篇文章主要介紹了詳解nginx同一端口監(jiān)聽多個(gè)域名和同時(shí)監(jiān)聽http與https的相關(guān)資料,需要的朋友可以參考下2017-05-05
使用Nginx搭建流媒體服務(wù)器實(shí)現(xiàn)直播功能
這篇文章主要介紹了使用Nginx搭建流媒體服務(wù)器實(shí)現(xiàn)直播功能,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
Nginx實(shí)現(xiàn)動(dòng)靜分離的示例代碼
Nginx動(dòng)靜分離是旨在將靜態(tài)頁面與動(dòng)態(tài)頁面或靜態(tài)內(nèi)容接口與動(dòng)態(tài)內(nèi)容接口分開,本文主要介紹了Nginx實(shí)現(xiàn)動(dòng)靜分離的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03
nginx如何將http訪問的網(wǎng)站改成https訪問
這篇文章主要介紹了nginx如何將http訪問的網(wǎng)站改成https訪問,幫助大家更好的理解和使用nginx,感興趣的朋友可以了解下2021-02-02

