青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴(yán)以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

RTMP 協(xié)議學(xué)習(xí)總結(jié)

轉(zhuǎn)載自:http://blog.chinaunix.net/uid-17102734-id-3986995.html

RTMP協(xié)議是一個(gè)互聯(lián)網(wǎng)TCP/IP五層體系結(jié)構(gòu)中應(yīng)用層的協(xié)議。RTMP協(xié)議中基本的數(shù)據(jù)單元稱為消息(Message)。當(dāng)RTMP協(xié)議在互聯(lián)網(wǎng)中傳輸數(shù)據(jù)的時(shí)候,消息會被拆分成更小的單元,稱為消息塊(Chunk)。

1 消息

消息是RTMP協(xié)議中基本的數(shù)據(jù)單元。不同種類的消息包含不同的Message Type ID,代表不同的功能。RTMP協(xié)議中一共規(guī)定了十多種消息類型,分別發(fā)揮著不同的作用。例如,Message Type ID在1-7的消息用于協(xié)議控制,這些消息一般是RTMP協(xié)議自身管理要使用的消息,用戶一般情況下無需操作其中的數(shù)據(jù)。Message Type ID為8,9的消息分別用于傳輸音頻和視頻數(shù)據(jù)。Message Type ID為15-20的消息用于發(fā)送AMF編碼的命令,負(fù)責(zé)用戶與服務(wù)器之間的交互,比如播放,暫停等等。消息首部(Message Header)有四部分組成:標(biāo)志消息類型的Message Type ID,標(biāo)志消息長度的Payload Length,標(biāo)識時(shí)間戳的Timestamp,標(biāo)識消息所屬媒體流的Stream ID。消息的報(bào)文結(jié)構(gòu)如下圖所示。

2 消息塊
在網(wǎng)絡(luò)上傳輸數(shù)據(jù)時(shí),消息需要被拆分成較小的數(shù)據(jù)塊,才適合在相應(yīng)的網(wǎng)絡(luò)環(huán)境上傳輸。RTMP協(xié)議中規(guī)定,消息在網(wǎng)絡(luò)上傳輸時(shí)被拆分成消息塊(Chunk)。消息塊首部(Chunk Header)有三部分組成:用于標(biāo)識本塊的Chunk Basic Header,用于標(biāo)識本塊負(fù)載所屬消息的Chunk Message Header,以及當(dāng)時(shí)間戳溢出時(shí)才出現(xiàn)的Extended Timestamp。消息塊的報(bào)文結(jié)構(gòu)如下圖所示。



3 消息分塊

在消息被分割成幾個(gè)消息塊的過程中,消息負(fù)載部分(Message Body)被分割成大小固定的數(shù)據(jù)塊(默認(rèn)是128字節(jié),最后一個(gè)數(shù)據(jù)塊可以小于該固定長度),并在其首部加上消息塊首部(Chunk Header),就組成了相應(yīng)的消息塊。消息分塊過程如下圖所示,一個(gè)大小為307字節(jié)的消息被分割成128字節(jié)的消息塊(除了最后一個(gè))。

RTMP傳輸媒體數(shù)據(jù)的過程中,發(fā)送端首先把媒體數(shù)據(jù)封裝成消息,然后把消息分割成消息塊,最后將分割后的消息塊通過TCP協(xié)議發(fā)送出去。接收端在通過TCP協(xié)議收到數(shù)據(jù)后,首先把消息塊重新組合成消息,然后通過對消息進(jìn)行解封裝處理就可以恢復(fù)出媒體數(shù)據(jù)。

2.1 Chunk Basic Header [1-3字節(jié)]
HeaderType+ChannelID組成,其中ChannelID的大小決定了整個(gè)Chunk Basic Header的大小
2.1.1  

ID

和消息塊的類型,消息塊類型決定了消息包頭的編碼格式,長度完全

HeaderType(fmt):決定了Chunk Message Header的編碼方式和大小,在第一個(gè)字節(jié)的高兩位
Bits Chunk Message Header Length
00   12 bytes
01   8 bytes
10   4 bytes
11   1 byte
2.1.2 ChannelID:
ChannelID 用途
02              Ping 和ByteRead通道
03              Invoke通道 我們的connect() publish()和自字寫的NetConnection.Call() 數(shù)據(jù)都是在這個(gè)通道的
04              Audio和Vidio通道
05 06 07     服務(wù)器保留,經(jīng)觀察FMS2用這些Channel也用來發(fā)送音頻或視頻數(shù)據(jù)
2.2 Chunk Message Header
以最大fmt =00 length(Chunk Message Header) == 12 為例
Chunk Message Header的結(jié)構(gòu)是:timestamp,message_length,message_type,msg_stream_id
其中message_type是一個(gè)枚舉變量:
type為1,2,3,5,6的時(shí)候是協(xié)議控制消息
type為4的時(shí)候表示 User Control Messages [Event_type + Event_Data] Event_type有Stream Begin
Stream End...
type為8,音頻數(shù)據(jù)
type為9,視頻數(shù)據(jù)
type為18 元數(shù)據(jù)消息[AMF0]
type為20 命令消息 Command Message(RPC Message)
These messages are sent to perform some operations like connect, createStream, publish, play, pause on the peer.
命令消息主要分成兩種NetConnection和NetStream。
connect,call,close,createStream命令可以在NetConnection中發(fā)送。
coonect(name,TranscationID,Command Object<name-value> pair)
play,publish,seek,pause等命令可以在NetStream中發(fā)送。
2.3 Ext Time Stamp
2.4數(shù)據(jù)
RTMP流媒體播放過程
RTMP協(xié)議規(guī)定,播放一個(gè)流媒體有兩個(gè)前提步驟:第一步,建立一個(gè)網(wǎng)絡(luò)連接(NetConnection);第二步,建立一個(gè)網(wǎng)絡(luò)流(NetStream)。其中,網(wǎng)絡(luò)連接代表服務(wù)器端應(yīng)用程序和客戶端之間基礎(chǔ)的連通關(guān)系。網(wǎng)絡(luò)流代表了發(fā)送多媒體數(shù)據(jù)的通道。服務(wù)器和客戶端之間只能建立一個(gè)網(wǎng)絡(luò)連接,但是基于該連接可以創(chuàng)建很多網(wǎng)絡(luò)流。

播放一個(gè)RTMP協(xié)議的流媒體需要經(jīng)過以下幾個(gè)步驟:握手,建立連接,建立流,播放。RTMP連接都是以握手作為開始的。建立連接階段用于建立客戶端與服務(wù)器之間的“網(wǎng)絡(luò)連接”;建立流階段用于建立客戶端與服務(wù)器之間的“網(wǎng)絡(luò)流”;播放階段用于傳輸視音頻數(shù)據(jù)。
參考:http://blog.csdn.net/leixiaohua1020/article/category/1362941
RTMP協(xié)議中文版
http://wenku.baidu.com/link?url=Lc4gR-FLeCkHCMM1NL-FcAUtKFTRaFn0tcdoqcid6Dtvu_Q2wlSQ-GMY711Ptc_TdeG2KU0E9e-aHddFVZJSMwt2CujY2p7AdHg8Vr15HuG
RTMP協(xié)議英文版
http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/rtmp/pdf/rtmp_specification_1.0.pdf
開源項(xiàng)目 RTMP Dump
http://rtmpdump.mplayerhq.hu/

posted on 2014-05-31 20:13 楊粼波 閱讀(1653) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品99久久久久久有的能看| 亚洲精品一二区| 久久狠狠亚洲综合| 亚洲国产一区二区三区青草影视 | 亚洲免费中文字幕| 久久成人免费网| 亚洲在线日韩| 欧美日韩亚洲视频一区| 一本色道久久综合狠狠躁篇怎么玩 | 今天的高清视频免费播放成人 | 久久国产天堂福利天堂| 欧美午夜视频| 国产一区激情| 亚洲影视在线播放| 久久久噜噜噜久久中文字免| 欧美国产视频日韩| 亚洲无人区一区| 欧美色大人视频| 先锋资源久久| 久久性色av| 亚洲一区二区三区乱码aⅴ| 最新国产乱人伦偷精品免费网站| 亚洲二区三区四区| 亚洲男人的天堂在线观看| 卡一卡二国产精品| 国产精品亚洲精品| 亚洲一区二区三区高清| 欧美激情1区2区3区| 久久久久久亚洲精品中文字幕| 欧美日韩亚洲视频| 亚洲伦理中文字幕| 欧美国产第一页| 中文无字幕一区二区三区| 欧美诱惑福利视频| 国产一区二区三区四区五区美女| 一区二区高清视频| 国产精品入口日韩视频大尺度| 麻豆成人精品| 亚洲激情自拍| 亚洲欧美在线观看| 女仆av观看一区| 国产日韩欧美综合| 日韩视频在线观看| 久久久久久久久久久一区| 亚洲国产另类 国产精品国产免费| 亚洲精品乱码久久久久久久久| 欧美在线三区| 国产精品免费一区二区三区在线观看 | 国产精品久久久久一区二区三区| 精品动漫3d一区二区三区免费版 | 久久网站免费| 国产一区二区三区黄视频| 亚洲自拍电影| 在线一区欧美| 欧美日韩在线不卡一区| 日韩视频免费在线观看| 亚洲电影成人| 免费一级欧美片在线观看| 在线观看免费视频综合| 久久看片网站| 久久成人18免费网站| 国产精品网红福利| 亚洲免费在线| 亚洲深爱激情| 国产精品视频男人的天堂| 亚洲一区二区视频| 中文久久精品| 国产偷国产偷精品高清尤物| 欧美专区一区二区三区| 午夜精品久久| 黄色国产精品一区二区三区| 久久久99国产精品免费| 久久精品日韩欧美| 亚洲国产va精品久久久不卡综合| 免费亚洲一区| 欧美破处大片在线视频| 亚洲一区二区免费看| 亚洲一区精品在线| 韩日视频一区| 亚洲二区视频| 国产精品白丝黑袜喷水久久久| 香蕉久久久久久久av网站| 欧美亚洲日本国产| 亚洲国产欧美国产综合一区| 亚洲精品国产精品乱码不99 | 国内成+人亚洲| 欧美成人情趣视频| 欧美日韩国产二区| 久久精品国产第一区二区三区| 久久国内精品自在自线400部| 亚洲经典三级| 亚洲综合国产精品| 亚洲国产欧美精品| 亚洲综合日韩| 亚洲日本一区二区| 午夜精品久久久久久久久久久久 | 久久精品国产免费观看| 美女久久一区| 亚洲欧美在线免费| 麻豆精品在线视频| 午夜在线a亚洲v天堂网2018| 久久天天狠狠| 性欧美video另类hd性玩具| 久久综合国产精品| 欧美一区二区免费视频| 欧美freesex交免费视频| 欧美亚洲一区在线| 欧美精品一区二区三区蜜桃| 久久久噜噜噜久久中文字免| 欧美日韩综合视频网址| 欧美大片va欧美在线播放| 国产精品一区二区女厕厕| 亚洲精品乱码久久久久久蜜桃91 | 在线播放日韩| 亚洲视频axxx| 亚洲区第一页| 久久激情五月丁香伊人| 亚洲午夜视频在线观看| 欧美99在线视频观看| 亚洲国产日韩一区| 久久午夜电影网| 国产精品高清免费在线观看| 欧美搞黄网站| 狠狠色丁香婷婷综合久久片| 亚洲午夜精品久久| 亚洲视频观看| 欧美黑人一区二区三区| 米奇777超碰欧美日韩亚洲| 国产乱子伦一区二区三区国色天香| 亚洲缚视频在线观看| 亚洲高清在线观看一区| 欧美一区国产一区| 欧美一区二区成人| 国产精品久久久久久久免费软件| 91久久精品美女| 亚洲精品中文字幕女同| 欧美激情二区三区| 亚洲激情中文1区| aⅴ色国产欧美| 欧美日韩伦理在线| 99精品欧美一区二区三区| 一区二区三区 在线观看视| 欧美美女喷水视频| 夜夜爽av福利精品导航| 亚洲免费在线看| 国产精品一区二区三区乱码| 亚洲欧美一区二区三区久久| 久久国产一区二区| 精品动漫3d一区二区三区免费| 久久蜜臀精品av| 欧美激情在线| 中文在线一区| 国产欧美精品一区| 久久人人看视频| 亚洲精品免费电影| 欧美一级二区| 亚洲成人在线观看视频| 欧美成人在线免费视频| 夜夜爽www精品| 久久综合久久综合久久| 亚洲精品在线看| 国产精品美女| 久久久久久久成人| 亚洲美女中文字幕| 久久精品国产清自在天天线| 亚洲欧洲日本在线| 国产精品久久久久国产精品日日| 午夜日韩福利| 亚洲国产精品久久久| 午夜精品久久久久久99热| 伊人男人综合视频网| 欧美日韩在线免费观看| 欧美亚洲视频在线看网址| 亚洲国产精品美女| 欧美一区网站| 亚洲美女黄网| 韩日精品在线| 国产精品嫩草99a| 裸体一区二区| 亚洲欧美视频一区二区三区| 最新国产の精品合集bt伙计| 久久九九99| 亚洲福利专区| 欧美极品aⅴ影院| 欧美一区二区三区免费大片| 亚洲国产成人久久综合| 性一交一乱一区二区洋洋av| 亚洲精品免费在线播放| 国产专区欧美专区| 国产精品美女黄网| 欧美理论在线播放| 99精品视频免费观看视频| 国产精品乱码一区二三区小蝌蚪 | 国产亚洲精品bt天堂精选| 免费观看在线综合| 欧美亚洲视频在线观看| 亚洲午夜在线观看视频在线| 91久久一区二区| 鲁大师影院一区二区三区| 欧美在线一二三|