- 主要講述如何在ubuntu上搭建nginx服務(wù)器以及在nginx上集成rtmp視頻直播流推拉模塊
- 文中使用的路徑可根據(jù)個(gè)人習(xí)慣更改,但是編譯時(shí)候注意同時(shí)更改路徑
搭建nginx服務(wù)器
下載nginx
http://nginx.org/en/download.html,這里選擇nginx-1.8.1.tar.gz,下載至/usr/local
后使用 tar -zxvf nginx-1.8.1.tar.gz
解壓
下載所需依賴
- 到ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/下載pcre至
/usr/local
目錄下,請(qǐng)注意pcre有2種,下載pcre而不要下載pcre2,這里個(gè)人選擇pcre-8.39.tar.gz,下載成功后tar -zxvf pcre-8.39.tar.gz
解壓
- 到https://www.openssl.org/source/ 下載openssl至
/usr/local
,這里選擇openssl-1.0.2j.tar.gz,使用tar -zxvf openssl-1.0.2j.tar.gz
解壓
- 到
https://zlib.net/
下載zlib至/usr/local,這里選擇zlib-1.2.8.tar.gz,使用tar -zxvf zlib-1.2.8.tar.gz
解壓
所需文件已準(zhǔn)備完畢,開始編譯
- nginx編譯依賴pcre,zlib,openssl,編譯前請(qǐng)確保g++編譯器已安裝,若未安裝使用
sudo apt-get install build-essential
安裝
-
編譯openssl,
cd /usr/local/openssl-1.0.2j
切換至openssl目錄,使用下述命令編譯./config ./config -t make depend make make test make install
-
編譯pcre,
cd /usr/local/pcre-8.39
切換至pcre目錄,sudo apt-get install libpcre3-dev
安裝libpcre3-dev依賴庫(kù),然后使用下面命令編譯,如遇權(quán)限問(wèn)題在命令前加上sudo./configure --prefix=/usr/local/pcre-8.39 make make install
-
編譯nginx
cd /usr/local/nginx-1.8.1 sudo ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.39 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/local/openssl-1.0.2j --with-http_ssl_module sudo make sudo make install
測(cè)試nginx是否順利搭建
- 如編譯成功,
/usr/local
下將有nginx
文件夾,cd /usr/local/nginx/sbin
切換到該目錄,sudo ./nginx
,運(yùn)行nginx,在瀏覽器中輸入相應(yīng)ip,如看到下圖則nginx搭建成功,sudo ./nginx -s stop
可退出服務(wù)器
添加rtmp視頻直播流推拉模塊
-
https://github.com/arut/nginx-rtmp-module下載rtmp模塊至
/usr/local
- 切換回nginx源碼目錄開始編譯
cd /usr/local/nginx-1.8.1 sudo ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.39 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/local/openssl-1.0.2j --with-http_ssl_module --add-module=/usr/local/nginx-rtmp-module sudo make sudo make install
-
如編譯成功后nginx目錄如圖
- 切換至conf目錄
cd /usr/local/nginx/conf
,編輯nginx.confsudo nano nginx.conf
,在
http協(xié)議括號(hào)外添加rtmp { server { listen 1935; application test { live on; } application hls { live on; hls on; hls_path /tmp/hls; } } }
- 重啟nginx
測(cè)試直播推拉流
- 上傳一段視頻至/usr/local
- 安裝ffmpeg
sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next sudo apt-get update sudo apt-get install ffmpeg
- 使用ffmpeg推送本地視頻流,其中"test"要與nginx.conf中application字段對(duì)應(yīng),"test123"可隨意
ffmpeg -re -i /usr/local/test.mp4 -vcodec libx264 -vprofile baseline -acodec aac -ar 44100 -strict -2 -ac 1 -f flv -s 1280x720 -q 10 rtmp://localhost:1935/test/test123
- 在windows中使用potplayer打開rtmp://你的ip:1935/test/test123或者在ubuntu中使用VLC播放器打開rtmp://你的ip:1935/test/test123進(jìn)行播放