欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
[實(shí)戰]利用RTMP實(shí)現直播系統
一,目標:
利用開(kāi)源或者免費工具實(shí)現一個(gè)直播系統;同時(shí)支持在瀏覽器、播放器和嵌入到PC應用或者移動(dòng)APP中觀(guān)看直播。
二,技術(shù)選型:
視音頻源端::
Adobe Flash Media Live Encoder 3.2,可以在windows和mac安裝;
如果你已有一些支持RTMP的采集設備,那是最好了;
或許你想在自己的應用中實(shí)現,這樣你就必須自己開(kāi)發(fā)處理采集,編碼和協(xié)議傳輸了(以后再表;
RTMP Server:
FMS -- Adobe公司出品的服務(wù)器,價(jià)格昂貴,當然是最正宗的,因為RTMP就是Adobe公司的私有協(xié)議;
Wowza -- 同樣需要授權費, 大概是$55 per month/instance,效率和穩定性都還不錯;
Red5 -- 一個(gè)開(kāi)源實(shí)現, 效率和穩定性都稍微差些,由于它是Java實(shí)現的,所以天生支持跨平臺運行;
Nignx-rtmp-module - -nginx的一個(gè)第三方模塊,如果你熟悉nginx那是不錯的選擇,當然它也是免費的,不過(guò)功能就沒(méi)有其他幾個(gè)豐富了;
這里我選擇nginx+nginx-rtmp-module作為服務(wù)器,這是我認為最容易上手的一種方式了(如果你把windows作為服務(wù)器那可能麻煩些, 官方提供的windows二進(jìn)制版本是沒(méi)有nignx-rtmp-module的,而且nginx在windows下的性能比Linux就差太多了)
客戶(hù)端:
Flash Player VLC  也可以安裝其他支持rtmp的播放器;
JW Media Player 一個(gè)開(kāi)源的flash視音頻播放器,利用它我們可以直接在瀏覽器觀(guān)看直播;(移動(dòng)端的瀏覽器是不知道flash的)
ffmpge/librtmp  如果你希望在自己的應用中實(shí)現播放器,或者希望在移動(dòng)端直接接收RTMP流,那就要自己開(kāi)發(fā)了(以后再表)
最后選型是: Adobe Flash Media Live Encoder 3.2 + Nignx-rtmp-module + JW Media Player
三,實(shí)現
(本文將nginx 安裝到Centos 6.5 下,IP 為192.168.0.51)
1,下載安裝 Adobe Flash Media Live Encoder 3.2
2,編譯安裝配置nginx + nginx-rtmp-module (nginx 1.7 無(wú)法編譯通過(guò))
#wget http://nginx.org/download/nginx-1.6.2.tar.gz
#tar -zxvf nginx-1.6.2.tar.gz
#Git clone https://github.com/arut/nginx-rtmp-module.git (如果沒(méi)有安裝git則直接下載zip包)
#cd nginx-1.6.2
#./configure --add-module=../nginx-rtmp-module --with-http_ssl_module
#make
#make install
配置(詳細查看https://github.com/arut/nginx-rtmp-module), 編輯nginx/nginx.conf,增加rtmp模塊:
rtmp {
server {
listen 1935;
chunk_size 4000;
#可以將mylive改成你想要的名字
application mylive {
live on;
}
}
}
在http模塊增加:
location /stat{
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl{
root html;
}
同時(shí)需要將nginx-rtmp-module源碼目錄下的stat.xsl拷貝到nginx/html下,這樣就可以通過(guò)網(wǎng)頁(yè)查看服務(wù)器的RTMP狀態(tài)了。
啟動(dòng)nginx
3,下載免費版本JW player: https://account.jwplayer.com/static/download/jwplayer-6.10.zip (需要注冊登錄后才可以下載),將其解壓到nginx/html下;
4,編寫(xiě)live.html,保存到nginx/html下;
[html] view plain copy
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>live-player</title>
<style type="text/css">
</style>
</head>
<body>
<script type='text/javascript' src='jwplayer/jwplayer.js'></script>
<center>
<b>RTMP直播系統</b>
<div id='mediaspace'>This text will be replaced</div>
<script type='text/javascript'>
var server = window.location.hostname;
// mylive 對應nginx.conf配置項application的名字
// live_stream 對應Adobe Flash Stream Media Live Encoder配置的stream名稱(chēng)
var live_url = 'rtmp://' + server + '/mylive' + '/live_stream';
jwplayer('mediaspace').setup({
'flashplayer': 'jwplayer/jwplayer.flash.swf',
'file': live_url,
'controlbar': 'bottom',
'width': '760',
'height': '428',
//autostart: true,  //如果打開(kāi)此標志,在打開(kāi)網(wǎng)頁(yè)時(shí)會(huì )自動(dòng)播放直播流
});
</script>
</body>
</html>
這時(shí)候我們在瀏覽器輸入http://192.168.0.51/live.html:
5, Adobe Flash Media Live Encoder使用
A, 在FMS URL填寫(xiě)RTMP服務(wù)器地址,mylive則是我們在nginx.conf配置的rtmp application的名字(根據自己的配置填寫(xiě));
B,  在Stream填寫(xiě)流的名字,這個(gè)名字相當是一個(gè)文件的名字,填寫(xiě)好后必須修改live.html的配置;
這時(shí)候我們按“Connect”,如果沒(méi)有提示錯誤則表示連接服務(wù)器成功了,如果提示錯誤,則要檢查服務(wù)器是否運行,是否已配置了rtmp模塊相關(guān)屬性,尤其是application名字是否相對應。
C, 在Video 欄配置視頻相關(guān)屬性
Device: 表示攝像頭信息,如果有多個(gè)攝像頭,則可以通過(guò)選擇切換;
Format: 視頻編碼格式,只支持H264和VP6,我們選擇H264就好;
Frame Rate: 幀率,如果越大則視頻會(huì )更流暢和清晰,但同時(shí)也會(huì )對碼流有影響;
Input Size: 攝像頭采集的分辨率,我們最好是按攝像頭最好的分辨率設置;
BitRate: 碼流,越大占的帶寬就越多,最好根據輸出分辨率和網(wǎng)絡(luò )來(lái)調節,如果分辨率大,而碼流小則圖像就會(huì )比較模糊,如果在網(wǎng)絡(luò )不好的狀況可以降低碼流來(lái)保證流暢度;
Output Size: 編碼輸出分辨率,這個(gè)會(huì )影響碼流和圖像質(zhì)量;
D,在A(yíng)udio欄配置音頻相關(guān)屬性
Device: 麥克風(fēng)
Format: 音頻編碼格式,一般有MP3和AAC,在不同平臺不一樣,我在windows下只有MP3,在mac下MP3和AAC都有;
Channels: 聲道,Mono 單聲道,Stereo 雙聲道,根據自己的采集設備進(jìn)行選擇;
Sample Rate: 聲音采樣率,一般是越大采集出來(lái)的聲音會(huì )越清晰,但同時(shí)會(huì )影響到碼流;
Bit Rate: 碼流,類(lèi)似視頻的Bit Rate;
但我們都設置好了就可以點(diǎn)擊“start”進(jìn)行直播了,此時(shí)我們再點(diǎn)擊http://192.168.0.51/live.html 頁(yè)面的播放按鈕,在3s左右后就會(huì )看到直播畫(huà)面;
在我的實(shí)測中(局域網(wǎng)和Intenet都有測試),一般都在1-3s之間的延遲;
四,問(wèn)題和解決
1,在你檢查了N遍參數都正確后,視頻一直在loading狀態(tài)或者失敗了,那請你檢查一下服務(wù)器的防火墻是否開(kāi)放1935端口;
2,視頻很卡,則可以將video 參數BitRate和Output Size,相應調小些,同時(shí)也可以將Audio的Sample Rate和Bit Rate調??;
3,沒(méi)有聲音,可以通過(guò)切換audio參數的Format試試;
五,后續
通過(guò)現有的工具,然后幾行代碼,我們就可以實(shí)現一個(gè)簡(jiǎn)單的直播系統了,但離我們的生產(chǎn)環(huán)境還是有差距的,也許我們有那么幾個(gè)疑問(wèn):
服務(wù)器可以支持多少并發(fā),性能如何?
如何在移動(dòng)端觀(guān)看直播?
如何在自己的應用程序支持像Adobe Media Live Encode一樣的功能?
如何在自己的應用程序直接接收RTMP流?
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
基于Nginx搭建RTMP/HLS視頻直播服務(wù)器
FFmpeg總結(十二)用ffmpeg與nginx實(shí)現直播多路流并發(fā)播放
nginx+nginx-rtmp-module+ffmpeg搭建流媒體服務(wù)器
NGINX MPEG-TS Live Module & Dash JS
Android中直播視頻技術(shù)探究之
Nginx RTMP 功能研究和hls配置
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久