目錄
- 1 環(huán)境搭建
- 依賴庫安裝
- 源碼下載與編譯
- 編譯過程
- 2 推流服務(wù)
- 2.1 利用文件推流
- 2.2 將一路流灌到nginx服務(wù)器rtmp進(jìn)行推流
- 3 直播拉流
1 環(huán)境搭建
環(huán)境搭建主要是利用nginx服務(wù)器的插件模塊nginx-rtmp-module進(jìn)行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命令沒法下載就直接到網(wǎng)頁下載復(fù)制到對應(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)容注意事項:
- 開啟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
需要注意的是播放的路徑一定要正確,同時播放音頻是aac視頻視h264,這里添加一個test.mp4文件。
下面是測試過程,windows利用vlc工具播放rtmp的路徑。這里的ip需要設(shè)置為自己的Ubuntu ip地址
視頻效果如下:
注意需要確定視頻文件的格式:
音頻為AAC視頻為H264
2.2 將一路流灌到nginx服務(wù)器rtmp進(jìn)行推流
1 修改nginx配置,新增直播節(jié)點(diǎn),用于FFmpeg將流推到對應(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就是一個拉流的過程。
這里介紹FFmpeg命令行操作。
#利用ffplay直接觀看 ffplay rtmp://192.168.88.180/vod/Titanic.mp4 #利用FFmpeg下載到文件 ffmpeg -i rtmp://192.168.88.180/vod/Titanic.mp4 test.mp4