Nginx搭建RTMP流媒體服務器的實現(xiàn)
1 環(huán)境搭建
環(huán)境搭建主要是利用nginx服務器的插件模塊nginx-rtmp-module進行rtmp的推拉流操作。
依賴庫安裝
安裝過nginx的可以跳個這個步驟,主要是安裝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命令沒法下載就直接到網頁下載復制到對應目錄。
mkdir /home/rtmp cd /home/rtmp git clone https://github.com/nginx/nginx.git git clone https://github.com/arut/nginx-rtmp-module.git
編譯過程
設置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版本是否正常
默認安裝路徑:/usr/local/nginx/
2 推流服務
2.1 利用文件推流
完成nginx服務器的安裝后,需要進行rtmp服務的配置,只需要修改nginx配置即可:
vi /usr/local/nginx/conf/nginx.conf
配置內容注意事項:
- 開啟root權限,以便可以訪問home下的目錄;
- play路徑設置為自己的視頻文件夾路徑
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
需要注意的是播放的路徑一定要正確,同時播放音頻是aac視頻視h264,這里添加一個test.mp4文件。
下面是測試過程,windows利用vlc工具播放rtmp的路徑。這里的ip需要設置為自己的Ubuntu ip地址
視頻效果如下:
注意需要確定視頻文件的格式:
音頻為AAC視頻為H264
2.2 將一路流灌到nginx服務器rtmp進行推流
1 修改nginx配置,新增直播節(jié)點,用于FFmpeg將流推到對應節(jié)點上
application live{ # live add live on; }
2 重啟nginx服務器
/usr/local/nginx/sbin/nginx -s reload
3 進行推流操作
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就是一個拉流的過程。
這里介紹FFmpeg命令行操作。
#利用ffplay直接觀看 ffplay rtmp://192.168.88.180/vod/Titanic.mp4 #利用FFmpeg下載到文件 ffmpeg -i rtmp://192.168.88.180/vod/Titanic.mp4 test.mp4
到此這篇關于Nginx搭建RTMP流媒體服務器的實現(xiàn)的文章就介紹到這了,更多相關Nginx搭建RTMP內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
docker nginx實現(xiàn)一個主機部署多個站點操作
這篇文章主要介紹了docker nginx實現(xiàn)一個主機部署多個站點操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11Nginx安裝后/etc/nginx/conf.d下沒有default.conf的解決
nginx.conf是nginx默認加載的配置文件 通過nginx -V可以看nginx默認配置文件路徑,本文主要介紹了Nginx安裝后/etc/nginx/conf.d下沒有default.conf的解決,感興趣的可以了解一下2023-11-11