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

牽著老婆滿街逛

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

RTMP 協議學習總結

轉載自:http://blog.chinaunix.net/uid-17102734-id-3986995.html

RTMP協議是一個互聯網TCP/IP五層體系結構中應用層的協議。RTMP協議中基本的數據單元稱為消息(Message)。當RTMP協議在互聯網中傳輸數據的時候,消息會被拆分成更小的單元,稱為消息塊(Chunk)。

1 消息

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

2 消息塊
在網絡上傳輸數據時,消息需要被拆分成較小的數據塊,才適合在相應的網絡環境上傳輸。RTMP協議中規定,消息在網絡上傳輸時被拆分成消息塊(Chunk)。消息塊首部(Chunk Header)有三部分組成:用于標識本塊的Chunk Basic Header,用于標識本塊負載所屬消息的Chunk Message Header,以及當時間戳溢出時才出現的Extended Timestamp。消息塊的報文結構如下圖所示。



3 消息分塊

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

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

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

ID

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

HeaderType(fmt):決定了Chunk Message Header的編碼方式和大小,在第一個字節的高兩位
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() 數據都是在這個通道的
04              Audio和Vidio通道
05 06 07     服務器保留,經觀察FMS2用這些Channel也用來發送音頻或視頻數據
2.2 Chunk Message Header
以最大fmt =00 length(Chunk Message Header) == 12 為例
Chunk Message Header的結構是:timestamp,message_length,message_type,msg_stream_id
其中message_type是一個枚舉變量:
type為1,2,3,5,6的時候是協議控制消息
type為4的時候表示 User Control Messages [Event_type + Event_Data] Event_type有Stream Begin
Stream End...
type為8,音頻數據
type為9,視頻數據
type為18 元數據消息[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中發送。
coonect(name,TranscationID,Command Object<name-value> pair)
play,publish,seek,pause等命令可以在NetStream中發送。
2.3 Ext Time Stamp
2.4數據
RTMP流媒體播放過程
RTMP協議規定,播放一個流媒體有兩個前提步驟:第一步,建立一個網絡連接(NetConnection);第二步,建立一個網絡流(NetStream)。其中,網絡連接代表服務器端應用程序和客戶端之間基礎的連通關系。網絡流代表了發送多媒體數據的通道。服務器和客戶端之間只能建立一個網絡連接,但是基于該連接可以創建很多網絡流。

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

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


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   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>
            噜噜噜在线观看免费视频日韩| 欧美在线观看一区二区三区| 欧美a级理论片| 在线观看成人小视频| 久久久免费av| 久久久久这里只有精品| 在线观看视频亚洲| 亚洲国产精品一区二区三区| 欧美成人精品影院| 夜夜嗨av一区二区三区四季av| 最近看过的日韩成人| 欧美日韩一区二区在线视频| 亚洲一本视频| 午夜精品美女久久久久av福利| 国内久久婷婷综合| 欧美国产极速在线| 欧美日韩在线观看一区二区| 亚洲欧美视频一区二区三区| 午夜视频久久久久久| 亚洲国产91| 99视频精品| 国产综合激情| 亚洲精品久久久久中文字幕欢迎你| 欧美精品一区二区三区一线天视频| 亚洲午夜性刺激影院| 午夜在线观看免费一区| 亚洲欧洲视频在线| 亚洲一区二区三区在线播放| 伊人久久婷婷色综合98网| 亚洲老司机av| 国内自拍一区| 日韩一区二区精品在线观看| 国产一区二区在线观看免费播放 | 日韩视频在线一区二区| 一区二区三区国产在线| 国产主播一区二区三区| 亚洲三级影院| 狠狠色噜噜狠狠色综合久| 91久久久亚洲精品| 国产一区二区三区久久久久久久久 | 国产色产综合色产在线视频| 欧美国产精品v| 国产日本欧洲亚洲| 99精品欧美一区| 亚洲高清视频在线| 欧美在线www| 亚洲男女自偷自拍| 欧美另类99xxxxx| 麻豆精品在线视频| 国产日韩欧美麻豆| 亚洲一区影院| 国产精品99久久久久久有的能看| 蜜臀a∨国产成人精品| 久久精品五月婷婷| 国产精品美女xx| 日韩视频永久免费| 亚洲精品老司机| 老牛国产精品一区的观看方式| 欧美在线资源| 国产欧美日韩激情| 亚洲一区二区网站| 亚洲综合欧美| 国产精品国产三级国产普通话三级| 亚洲黄色大片| 亚洲人成欧美中文字幕| 老司机免费视频一区二区| 久久久久久久一区二区| 国产日韩欧美日韩大片| 亚洲欧美国产va在线影院| 亚洲午夜免费视频| 欧美视频日韩| 正在播放欧美视频| 亚洲男女自偷自拍| 国产精品亚洲美女av网站| 中文亚洲免费| 亚洲免费视频一区二区| 国产精品久久久久久久7电影| av成人老司机| 欧美与黑人午夜性猛交久久久| 国产精品三上| 欧美淫片网站| 欧美成年人视频网站| 亚洲精品久久视频| 欧美日韩国产综合网| 亚洲午夜电影| 久久久久久69| 亚洲国产精品专区久久| 欧美激情精品久久久六区热门| 91久久一区二区| 午夜视频在线观看一区二区| 国产婷婷色一区二区三区| 久久福利毛片| 亚洲欧洲一区二区三区| 亚洲影视在线| 国内自拍亚洲| 欧美精品二区三区四区免费看视频| 亚洲精品国偷自产在线99热| 午夜在线不卡| 亚洲国产毛片完整版 | 欧美日韩一区二区三区高清| 亚洲一区在线看| 久久午夜激情| 日韩一二三区视频| 国产一区二区三区丝袜| 欧美大片18| 欧美一区二区黄色| 亚洲日本理论电影| 久久国产免费看| 一区二区三区视频在线看| 国产精品入口麻豆原神| 欧美.日韩.国产.一区.二区| 中国女人久久久| 欧美成在线视频| 欧美一区二区三区精品| 亚洲日本黄色| 国产一区二区三区在线观看视频 | 欧美日韩在线观看一区二区| 久久国产加勒比精品无码| 亚洲精品久久久久久久久久久久| 久久国产主播| 一区二区三区精品久久久| 国产在线精品一区二区夜色| 欧美日韩在线免费视频| 久久免费视频在线观看| 亚洲一区精彩视频| 亚洲美女一区| 欧美激情小视频| 久久九九热免费视频| 亚洲欧美三级在线| 一区二区免费在线视频| 亚洲国产精品欧美一二99| 国产亚洲精品成人av久久ww| 欧美亚一区二区| 欧美激情在线免费观看| 久久久亚洲午夜电影| 午夜宅男久久久| 亚洲欧美卡通另类91av| 艳女tv在线观看国产一区| 亚洲高清成人| 欧美激情网友自拍| 欧美高清在线观看| 欧美jizz19hd性欧美| 巨胸喷奶水www久久久免费动漫| 亚洲欧美日韩精品综合在线观看| 一区二区三区欧美视频| 一区二区电影免费在线观看| 日韩亚洲欧美精品| 99日韩精品| 亚洲视频一区二区| 亚洲桃花岛网站| 亚洲午夜久久久| 亚洲欧美日韩区| 久久精品国产亚洲高清剧情介绍 | 亚洲人成在线观看一区二区 | 国产精品a久久久久久| 欧美精品自拍| 欧美日韩日本网| 欧美午夜精品久久久久久人妖| 欧美性做爰毛片| 国产精品视频午夜| 国产亚洲精品一区二区| 好看的日韩av电影| 亚洲第一级黄色片| 亚洲美女在线看| 亚洲无限av看| 欧美影院在线播放| 免费精品视频| 91久久精品www人人做人人爽| 亚洲剧情一区二区| 亚洲香蕉网站| 久久福利影视| 欧美人成在线| 国产精品亚洲精品| 亚洲第一成人在线| 中文有码久久| 久久伊人一区二区| 亚洲精品国产无天堂网2021| 亚洲一区图片| 欧美刺激性大交免费视频 | 香蕉亚洲视频| 欧美国产日韩精品| 国产农村妇女精品| 亚洲欧洲综合另类| 午夜日韩电影| 亚洲国产二区| 亚洲女人天堂成人av在线| 久久天天躁夜夜躁狠狠躁2022 | 欧美日韩国产综合一区二区| 国产毛片精品视频| 亚洲国内在线| 久久成人国产| 亚洲二区在线| 欧美一区2区三区4区公司二百| 麻豆精品精品国产自在97香蕉| 国产精品国产自产拍高清av王其 | 欧美视频你懂的| 永久久久久久| 亚洲欧美中文日韩在线| 亚洲第一精品电影| 欧美一区二区三区视频在线|