RTMP流媒體播放過程


參考博客:流媒體播放過程


RTMP協(xié)議規(guī)定:第一步避咆,建立一個網(wǎng)絡(luò)連接(NetConnection):客戶端和服務(wù)端的基礎(chǔ)連通關(guān)系 第二步:建立一個網(wǎng)絡(luò)流(NetStream)發(fā)送多媒體的通道(只能建立一個網(wǎng)絡(luò)連接,可以建立多個網(wǎng)絡(luò)流)

播放一個RTMP協(xié)議的流媒體:1.握手 2.建立連接 3.建立流 4.播放 RTMP連接都是以握手作為開始的筋夏。建立連接階段用于建立客戶端與服務(wù)器之間的“網(wǎng)絡(luò)連接”;建立流階段用于建立客戶端與服務(wù)器之間的“網(wǎng)絡(luò)流”岂丘;播放階段用于傳輸視音頻數(shù)據(jù)棠笑。

1.握手(HandShake)

一個RTMP連接以握手開始,雙方分別發(fā)送大小固定的三個數(shù)據(jù)塊

a)握手開始于客戶端發(fā)送C0喘沿、C1塊。服務(wù)器收到C0或C1后發(fā)送S0和S1竭贩。

b)當客戶端收齊S0和S1后蚜印,開始發(fā)送C2。當服務(wù)器收齊C0和C1后娶视,開始發(fā)送S2晒哄。

c)當客戶端和服務(wù)器分別收到S2和C2后睁宰,握手完成。


2.建立網(wǎng)絡(luò)連接(NetConnection)

a)客戶端發(fā)送命令消息中的“連接”(connect)到服務(wù)器寝凌,請求與一個服務(wù)應(yīng)用實例建立連接柒傻。

b)服務(wù)器接收到連接命令消息后,發(fā)送確認窗口大小(Window Acknowledgement Size)協(xié)議消息到客戶端较木,同時連接到連接命令中提到的應(yīng)用程序红符。

c)服務(wù)器發(fā)送設(shè)置帶寬()協(xié)議消息到客戶端。

d)客戶端處理設(shè)置帶寬協(xié)議消息后伐债,發(fā)送確認窗口大小(Window Acknowledgement Size)協(xié)議消息到服務(wù)器端预侯。

e)服務(wù)器發(fā)送用戶控制消息中的“流開始”(Stream Begin)消息到客戶端。

f) 服務(wù)器發(fā)送命令消息中的“結(jié)果”(_result)峰锁,通知客戶端連接的狀態(tài)萎馅。


3.建立網(wǎng)絡(luò)流(NetStream)

a) 客戶端發(fā)送命令消息中的“創(chuàng)建流”(createStream)命令到服務(wù)器端。

b)服務(wù)器端接收到“創(chuàng)建流”命令后虹蒋,發(fā)送命令消息中的“結(jié)果”(_result)糜芳,通知客戶端流的狀態(tài)。

4 播放(Play)

a) 客戶端發(fā)送命令消息中的“播放”(play)命令到服務(wù)器魄衅。

b)接收到播放命令后峭竣,服務(wù)器發(fā)送設(shè)置塊大小(ChunkSize)協(xié)議消息晃虫。

c)服務(wù)器發(fā)送用戶控制消息中的“streambegin”皆撩,告知客戶端流ID。

d)播放命令成功的話哲银,服務(wù)器發(fā)送命令消息中的“響應(yīng)狀態(tài)” NetStream.Play.Start & NetStream.Play.reset扛吞,告知客戶端“播放”命令執(zhí)行成功。

e) 在此之后服務(wù)器發(fā)送客戶端要播放的音頻和視頻數(shù)據(jù)盘榨。


網(wǎng)絡(luò)視音頻服務(wù)主要包括兩種方式:點播和直播喻粹。點播意即根據(jù)用戶的需要播放相應(yīng)的視頻節(jié)目,這是互聯(lián)網(wǎng)視音頻服務(wù)最主要的方式草巡。絕大部分視頻網(wǎng)站都提供了。點播服務(wù)型酥。直播意即互聯(lián)網(wǎng)視音頻平臺直接將視頻內(nèi)容實時發(fā)送給用戶山憨,目前還處于發(fā)展階段。直播在網(wǎng)絡(luò)電視臺弥喉,社交視頻網(wǎng)站較為常見郁竟。

直播服務(wù)普遍采用了RTMP作為流媒體協(xié)議,F(xiàn)LV作為封裝格式由境,H.264作為視頻編碼格式棚亩,AAC作為音頻編碼格式蓖议。采用RTMP作為直播協(xié)議的好處在于其被Flash播放器支持。而Flash播放器如今已經(jīng)安裝在全球99%的電腦上讥蟆,并且與瀏覽器結(jié)合的很好勒虾。因此這種流媒體直播平臺可以實現(xiàn)“無插件直播”,極大的簡化了客戶端的操作瘸彤。封裝格式修然,視頻編碼,音頻編碼方面质况,無一例外的使用了FLV + H.264 +AAC的組合愕宋。FLV是RTMP使用的封裝格式,H.264是當今實際應(yīng)用中編碼效率最高的視頻編碼標準结榄,AAC則是當今實際應(yīng)用中編碼效率最高的音頻編碼標準中贝。視頻播放器方面,都使用了Flash播放器

點播服務(wù)普遍采用了HTTP作為流媒體協(xié)議臼朗,H.264作為視頻編碼格式雄妥,AAC作為音頻編碼格式。采用HTTP作為點播協(xié)議有以下兩點優(yōu)勢:一方面依溯,HTTP是基于TCP協(xié)議的應(yīng)用層協(xié)議老厌,媒體傳輸過程中不會出現(xiàn)丟包等現(xiàn)象,從而保證了視頻的質(zhì)量黎炉;另一方面枝秤,HTTP被絕大部分的Web服務(wù)器支持,因而流媒體服務(wù)機構(gòu)不必投資購買額外的流媒體服務(wù)器慷嗜,從而節(jié)約了開支淀弹。點播服務(wù)采用的封裝格式有多種:MP4,F(xiàn)LV庆械,F(xiàn)4V等薇溃,它們之間的區(qū)別不是很大。視頻編碼標準和音頻編碼標準是H.264和AAC缭乘。這兩種標準分別是當今實際應(yīng)用中編碼效率最高的視頻標準和音頻標準沐序。視頻播放器方面,無一例外的都使用了Flash播放器

歡迎加入:iOS開發(fā)交流群:570890454

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末堕绩,一起剝皮案震驚了整個濱河市策幼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌奴紧,老刑警劉巖特姐,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異黍氮,居然都是意外死亡唐含,警方通過查閱死者的電腦和手機浅浮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捷枯,“玉大人滚秩,你說我怎么就攤上這事⊥校” “怎么了叔遂?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長争剿。 經(jīng)常有香客問我已艰,道長,這世上最難降的妖魔是什么蚕苇? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任哩掺,我火速辦了婚禮,結(jié)果婚禮上涩笤,老公的妹妹穿的比我還像新娘嚼吞。我一直安慰自己,他們只是感情好蹬碧,可當我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布舱禽。 她就那樣靜靜地躺著,像睡著了一般恩沽。 火紅的嫁衣襯著肌膚如雪誊稚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天罗心,我揣著相機與錄音里伯,去河邊找鬼。 笑死渤闷,一個胖子當著我的面吹牛疾瓮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播飒箭,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼狼电,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了补憾?” 一聲冷哼從身側(cè)響起漫萄,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎盈匾,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體毕骡,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡削饵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年岩瘦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片窿撬。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡启昧,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出劈伴,到底是詐尸還是另有隱情密末,我是刑警寧澤,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布跛璧,位于F島的核電站严里,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏追城。R本人自食惡果不足惜刹碾,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望座柱。 院中可真熱鬧迷帜,春花似錦、人聲如沸色洞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽火诸。三九已至锦针,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間惭蹂,已是汗流浹背伞插。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留盾碗,地道東北人媚污。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像廷雅,于是被迫代替她去往敵國和親耗美。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,440評論 2 348

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

  • 實時消息協(xié)議---流的分塊 版權(quán)聲明: 版權(quán)(c)2009 Adobe系統(tǒng)有限公司航缀。全權(quán)所有商架。 摘要: 本備忘錄描...
    一個人zy閱讀 1,889評論 0 9
  • 個人翻譯,轉(zhuǎn)載請注明出處芥玉,謝謝蛇摸! Adobe's Real Time Messaging Protocol 摘要 ...
    SniperPan閱讀 2,719評論 1 17
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)灿巧,斷路器赶袄,智...
    卡卡羅2017閱讀 134,626評論 18 139
  • 轉(zhuǎn)發(fā)自 2016-10-27李智文騰訊Bugly 概要 分享內(nèi)容: 互聯(lián)網(wǎng)內(nèi)容載體變遷歷程揽涮,文字——圖片/聲音——...
    樹懶啊樹懶閱讀 11,952評論 3 123
  • 寫在前面的話 前面一篇文章已經(jīng)對移動端數(shù)據(jù)源采集與編碼進行了說明,接下來就是將之前采集的數(shù)據(jù)上傳給我們的視頻服務(wù)器...
    前世小書童閱讀 8,912評論 3 25