rtmp+nginx搭建流媒體服務(wù)器

1.在已經(jīng)安裝 nginx 的前提下峦树,搭建rtmp服務(wù)器:

nginx和rtmp文件目錄結(jié)構(gòu)

2.進(jìn)入 nginx 目錄渡冻,vi config.sh 創(chuàng)建腳本文件戚扳,內(nèi)容如下

安裝腳本:避免沖突影響其他(起別名)

nginx./auto/configure? --prefix=/usr/local/nginx1 \

????????????????????????--with-http_v2_module \

? ? ? ? ? ? ? ? ? ? ? ? ?--with-http_flv_module \

????????????????????????--with-http_mp4_module \

????????????????????????--add-module=../nginx-rtmp-module/

3.執(zhí)行腳本并編譯安裝

確保環(huán)境 pcre,openssl,zlib,gcc-c++已經(jīng)安裝,參考:nginx安裝

給腳本賦權(quán):? chmod 777 config.sh

執(zhí)行腳本:? /config.sh

編譯: make?

安裝: make? install??

4.修改nginx監(jiān)聽端口

80已經(jīng)存在

5.配置rtmp 服務(wù)

rtmp服務(wù)配置:(復(fù)制到txt中族吻,修改后再粘貼)

rtmp { server { listen 1935; chunk_size 4096; application live { live on; record off; } application live2 { live on; record off; } application vod { play /var/flvs; } application vod_http { play http://本地nginx的ip:運(yùn)行的端口/vod; } application hls { live on; hls on; hls_path /tmp/hls; } } }

6.重啟

/usr/local/nginx1/sbin/nginx -s reload

7.推流

使用 obs 推流帽借,地址為 rtmp://ip地址:1935/live


無nginx的安裝方式:

?需要注意的是本機(jī)搭建使用的是Centos 7.X的版本,iptables命令等使用方式有變動(dòng)

????????首先需要注意的是雖然nginx可以使用yum安裝超歌,但是yum安裝使用的都是編譯后的文件進(jìn)行安裝砍艾,并且后面所需要的rtmp模塊一般在yum源里面是找不到的,所以要想將rtmp也安裝進(jìn)來巍举,我們選擇源碼安裝脆荷,經(jīng)過步驟配置,編譯懊悯,安裝蜓谋。?

? ??????本文是使用nginx源碼,自行編譯安裝定枷。首先是下載源碼孤澎,由于nginx的代碼是開源托管在github上,我們先用yum 將git下載下來欠窒,然后使用git將源碼從github上clone下來

cdmkdirsource#創(chuàng)建源碼目錄 后面的源碼都放在這個(gè)目錄cdsourceyum -y install git#安裝git

git clone https://github.com/nginx/nginx.git#從github服務(wù)器上將nginx的源代碼下載下來

git clone https://github.com/arut/nginx-rtmp-module.git#將rtmp模塊的源碼下載下來

下載依賴模塊源碼pcre覆旭、OpenSSL退子、zlib 如果機(jī)器上已經(jīng)安裝了這些模塊就不需要了

rpm -qa|grep模塊名字#查詢安裝的模塊的包信息

wget https://www.openssl.org/source/openssl-1.1.0.tar.gz? #下載OpenSSL源碼包

wget https://ftp.pcre.org/pub/pcre/pcre-8.39.tar.gz? #下載pcre源碼包

wget http://www.zlib.net/zlib-1.2.11.tar.gz? #下載zlib包源碼

tar -zxvf 包名#解壓各個(gè)包源碼

附一張目錄結(jié)構(gòu)圖?

找到nginx源碼包中 configure 所在的目錄,以下腳本就是基于configure來實(shí)現(xiàn)的型将,在本機(jī)上configure 命令就在auto 目錄下寂祥,當(dāng)前目錄 /root/source/nginx 就在這個(gè)目錄下編寫腳本vi config.sh 加入以下內(nèi)容

./auto/configure--prefix=/usr/local/nginx\--with-pcre=../pcre-8.39\

--with-openssl=../openssl-1.1.0\

--with-zlib=../zlib-1.2.11\

--with-http_v2_module\

--with-http_flv_module\

--with-http_mp4_module\

--add-module=../nginx-rtmp-module/

保存后給文件賦予操作權(quán)限,再執(zhí)行

chmod777config.sh#賦予權(quán)限

./config.sh#執(zhí)行腳本

檢查配置沒有問題?

yum -y? install? gcc? #確保依賴的gcc安裝

yum -y? install? gcc-c++? #確保依賴的c++已經(jīng)安裝

make? #編譯

顯示如下則編譯成功?

make install#安裝

1安裝成功?

iptables -I INPUT -p tcp -mstate--stateNEW --dport8084-j ACCEPT? ? ? ? #放行8084端口的 NEW狀態(tài)請(qǐng)求(本機(jī)的RELATED,ESTABLISHED狀態(tài)是默認(rèn)放行的)

service iptables save#保存規(guī)則

service iptables restart#重啟防火墻保證新的規(guī)則加載進(jìn)來

測(cè)試nginx是否安裝成功 ip:port 如果出現(xiàn)以下界面說明安裝成功?

在nginx配置文件中配置rtmp服務(wù)七兜,記住rtmp服務(wù)是和http服務(wù)是平級(jí)的丸凭,所以我們需要在和http配置平級(jí)的位置另起rtmp服務(wù)

vi /usr/local/nginx/conf/nginx.conf? ?#修改配置文件

在配置文件末尾加入以下內(nèi)容

# rtmp config

rtmp? {? ?

????????server? {? ? ? ?

????????????listen1935;? ? ? ? chunk_size4096;? ? ?

????????????? application live? {? ? ? ? ? ? liveon;? ? ? ? ? ? recordoff;? ? ? ? }? ? ?

????????????? application live2? {? ? ? ? ? ? liveon;? ? ? ? ? ? recordoff;? ? ? ? }? ? ?

????????????? application vod? {? ? ? ? ? ? play /var/flvs;? ? ? ? }? ? ? ?

? ? ? ? ? ? ? application vod_http? {? ? ? ? ? ? playhttp://服務(wù)器的ip/vod;? ? ? ? }? ? ?

????????????? application hls? {? ? ? ? ? ? liveon;? ? ? ? ? ? hlson;? ? ? ? ? ? hls_path /tmp/hls;? ? ? ? }? ?

????}

}

/usr/local/nginx/sbin/nginx-sreload? ?#修改配置文件重啟nginx服務(wù)

端口放行需要有三個(gè)條件,1.云服務(wù)的安全組放行腕铸;2.防火墻iptables放行惜犀;3.服務(wù)本身放行

安全組

登錄云服務(wù)器控制臺(tái)進(jìn)行設(shè)置?

防火墻

iptables -I INPUT -p tcp -mstate--stateNEW --dport1935-j ACCEPT? ?#放行1935端口的 NEW狀態(tài)請(qǐng)求

service iptables save? ?#保存規(guī)則

service iptables restart? ?#重啟防火墻保證新的規(guī)則加載進(jìn)來

服務(wù)本身

由于nginx服務(wù)我們已經(jīng)配置過1935端口,所以是放行狀態(tài)的狠裹,我們可以在windows本地使用telnet 命令測(cè)試端口是否通

如果出現(xiàn)一下界面說明端口已經(jīng)通了?

使OBS推流

OBS(Open Broadcaster Software) 是以互聯(lián)網(wǎng)流媒體直播內(nèi)容為目的免費(fèi)和開放源碼軟件虽界。需要下載這個(gè)軟件,借助這個(gè)軟件進(jìn)行推流(電腦沒有攝像頭的貌似安裝不了涛菠。莉御。。)

就長(zhǎng)這個(gè)樣子?

打開后我們需要有一個(gè)場(chǎng)景俗冻,并且在這個(gè)場(chǎng)景下有一個(gè)流的來源(可以是窗口礁叔,如果選的是視頻則會(huì)自動(dòng)識(shí)別攝像頭),接下來就是設(shè)置了

在配置中最需要關(guān)注的就是流的配置了迄薄,由于是自建的流媒體服務(wù)器所以我們照這樣配置

rtmp://你的服務(wù)器ip:端口(1935)/live#URL填寫流的地址

設(shè)置完成我們就可以 開始推流了

拉流測(cè)試地址

推薦一個(gè)拉流的測(cè)試地址琅关,里面針對(duì)各種協(xié)議都能測(cè)試拉流測(cè)試,需要注意圖中幾個(gè)地方噪奄,由于我們使用的rtmp協(xié)議死姚,我們選擇這一欄,底下填寫我們推流的地址和我們?cè)谏厦鎜bs的設(shè)置里面配置的流的名稱勤篮,start都毒, ok搞定!E龅蕖U司ⅰ!

參考:從零搭建流媒體服務(wù)器+obs推流直播 - CSDN博客

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末金抡,一起剝皮案震驚了整個(gè)濱河市瀑焦,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌梗肝,老刑警劉巖榛瓮,帶你破解...
    沈念sama閱讀 217,907評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異巫击,居然都是意外死亡禀晓,警方通過查閱死者的電腦和手機(jī)精续,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來粹懒,“玉大人重付,你說我怎么就攤上這事≠旃裕” “怎么了确垫?”我有些...
    開封第一講書人閱讀 164,298評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)帽芽。 經(jīng)常有香客問我删掀,道長(zhǎng),這世上最難降的妖魔是什么嚣镜? 我笑而不...
    開封第一講書人閱讀 58,586評(píng)論 1 293
  • 正文 為了忘掉前任爬迟,我火速辦了婚禮,結(jié)果婚禮上菊匿,老公的妹妹穿的比我還像新娘。我一直安慰自己计福,他們只是感情好跌捆,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著象颖,像睡著了一般佩厚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上说订,一...
    開封第一講書人閱讀 51,488評(píng)論 1 302
  • 那天抄瓦,我揣著相機(jī)與錄音,去河邊找鬼陶冷。 笑死钙姊,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的埂伦。 我是一名探鬼主播煞额,決...
    沈念sama閱讀 40,275評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼沾谜!你這毒婦竟也來了膊毁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,176評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤基跑,失蹤者是張志新(化名)和其女友劉穎婚温,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體媳否,經(jīng)...
    沈念sama閱讀 45,619評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡栅螟,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評(píng)論 3 336
  • 正文 我和宋清朗相戀三年栈顷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嵌巷。...
    茶點(diǎn)故事閱讀 39,932評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡萄凤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出搪哪,到底是詐尸還是另有隱情靡努,我是刑警寧澤,帶...
    沈念sama閱讀 35,655評(píng)論 5 346
  • 正文 年R本政府宣布晓折,位于F島的核電站惑朦,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏漓概。R本人自食惡果不足惜漾月,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望胃珍。 院中可真熱鬧梁肿,春花似錦、人聲如沸觅彰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽填抬。三九已至烛芬,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間飒责,已是汗流浹背赘娄。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留宏蛉,地道東北人遣臼。 一個(gè)月前我還...
    沈念sama閱讀 48,095評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像檐晕,于是被迫代替她去往敵國(guó)和親暑诸。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容