RTMP協議分析 二 AMF資料

2021-06-26 16:26:36 字數 698 閱讀 4360

型別說明(objtype)

資料 datasize

core_string

0x02   

2位元組 (2位元組的資料紀錄了string的實際長度)

core_object 

0x03 

0位元組(開始巢狀0x00000009表示巢狀結束)

null  

0x05 

0位元組 空位元組無意義

core_number

0x00  

8位元組core_map

0x08     

4位元組(開始巢狀)

core_boolean

0x01    

1位元組objvalue不一定是乙個固定的大小,他可以包含另外乙個amf資料,這另外乙個amf資料裡面又有objtype 加上 objvalue,也就是amf資料的巢狀關係

amf0資料的巢狀關係如下:

object=

core_boolean=

core_number=

core_string=

core_date=

core_array=

core_map=

core_object=

詳細的objtype資料型別如下:,參考red5

enum amf

;rtmp協議分析 一、rtmp包頭 :

RTMP協議分析 二 AMF資料

rtmp包預設的最大長度為128位元組,或通過chunksize改變rtmp包最大長度 當amf資料超過128byte的時候就可能有多個rtmp包組成,如果需要解碼的rtmp包太長則被tcp協議分割成多個tcp包.那麼解碼的時候需要先將包含rtmp包的tcp封包合併,再把合併的資料解碼,解碼後可得到...

rtmp資料封裝二 AMF

rtmp協議在傳輸script資料onmetadata時使用amf action message format 格式封裝。amf type對應的編號 amf type data length data 1 字串 amf string和amf long string都是存字串,amf string的字...

RTMP協議分析

rtmp協議封包 由乙個包頭和乙個包體組成,包頭可以是4種長度的任意一種 12,8,4,1 byte s 完整的rtmp包頭應該是12bytes,包含了時間戳,amfsize,amftype,streamid資訊,8位元組的包頭只紀錄了時間戳,amfsize,amftype,其他位元組的包頭紀錄資訊...