麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發(fā)設計 > 正文

RTP、RTCP協(xié)議學習-2015.04.15

2019-11-14 16:03:41
字體:
來源:轉載
供稿:網(wǎng)友

  最近做視頻編解碼部分,傳輸采用RTP協(xié)議。對學習做個記錄

  1、簡介

  實時傳輸協(xié)議Real-time Transport PRotocol或簡寫RTP)是一個網(wǎng)絡傳輸協(xié)議,它是由IETF的多媒體傳輸工作小組1996年在RFC 1889中公布的。RTP被定義為傳輸音頻、視頻、模擬數(shù)據(jù)等實時數(shù)據(jù)的傳輸協(xié)議,與傳統(tǒng)的注重的高可靠的數(shù)據(jù)傳輸?shù)倪\輸層協(xié)議相比,它更加側重的數(shù)據(jù)傳輸?shù)膶崟r性,此協(xié)議提供的服務包括數(shù)據(jù)順序號、時間標記、傳輸控制等。RTP通常與輔助控制協(xié)議RTCP一起工作,RTP只負責實時數(shù)據(jù)的傳輸,RTCP負責對RTP的通信和會話進行帶外管理(如流量控制、擁塞控制、會話源管理等)。RTP和RTCP配合使用,能以有效的反饋和最小的開銷使傳輸效率最佳化,故特別適合傳送網(wǎng)上的實時數(shù)據(jù)。

  2、RTP的協(xié)議層次

  

  可以看出RTP和UDP一樣位于傳輸層,實時語音、視頻數(shù)據(jù)經(jīng)過模數(shù)轉換和壓縮編碼處理后,先送給RTP封裝成為RTP數(shù)據(jù)單元,RTP數(shù)據(jù)單元被封裝為UDP數(shù)據(jù)報,然后再向下遞交給ip封裝為IP數(shù)據(jù)包。這里有個地方需要注意:RTP分組只包含RTP數(shù)據(jù),而控制是由另一個配套協(xié)議RTCP提供。RTP在端口號1025到65535之間選擇一個未使用的偶數(shù)UDP端口號,而在同一次會話中的RTCP則使用下一個奇數(shù)UDP端口號。RTP通常和RTCP一起工作,在RTP會話期間,各參與者周期的發(fā)送RTCP消息。RTCP消息含有已發(fā)送數(shù)據(jù)的丟包統(tǒng)計和網(wǎng)絡擁塞等信息,服務器可以利用這些信息動態(tài)的改變傳輸速率,甚至改變凈荷的類型。RTCP消息也被封裝為UDP數(shù)據(jù)報進行傳輸。

  3、RTP的協(xié)議封裝

  

version (V): 2 bits

標明RTP版本號。協(xié)議初始版本為0,RFC3550中規(guī)定的版本號為2。

padding (P): 1 bit

如果該位被設置,則在該packet末尾包含了額外的附加信息,附加信息的最后一個字節(jié)表示額外附加信息的長度(包含該字節(jié)本身)。該字段之所以存在是因為一些加密機制需要固定長度的數(shù)據(jù)塊,或者為了在一個底層協(xié)議數(shù)據(jù)單元中傳輸多個RTP packets。

extension (X): 1 bit

如果該位被設置,則在固定的頭部后存在一個擴展頭部,格式定義在RFC3550 5.3.1節(jié)。

CSRC count (CC): 4 bits

在固定頭部后存在多少個CSRC標記。

marker (M): 1 bit

該位的功能依賴于profile的定義。profile可以改變該位的長度,但是要保持marker和payload type總長度不變(一共是8 bit)。

payload type (PT): 7 bits

標記著RTP packet所攜帶信息的類型,標準類型列出在RFC3551中。如果接收方不能識別該類型,必須忽略該packet。

sequence number: 16 bits

序列號,每個RTP packet發(fā)送后該序列號加1,接收方可以根據(jù)該序列號重新排列數(shù)據(jù)包順序。

timestamp: 32 bits

時間戳。反映RTP packet所攜帶信息包中第一個字節(jié)的采樣時間。

SSRC: 32 bits

數(shù)據(jù)源標識。在一個RTP session其間每個數(shù)據(jù)流都應該有一個不同的SSRC。

CSRC list: 0 to 15 items, 每個源標識32 bits

貢獻數(shù)據(jù)源標識。只有存在Mixer的時候才有效。如一個將多聲道的語音流合并成一個單聲道的語音流,在這里就列出原來每個聲道的SSRC。

  4、關于RTP的類庫。

  看了網(wǎng)上的一些資料,.NET方面對RTP的封裝看到了一個RTP.NET.DLL。有個人的博客專門介紹了這個DLL,今天只是嘗試接收了一下,發(fā)現(xiàn)可以接收到數(shù)據(jù)。在使用這個DLL的時候,出現(xiàn)了“其他信息: 混合模式程序集是針對“v2.0.50727”版的運行時生成的,在沒有配置其他信息的情況下,無法在 4.0 運行時中加載該程序集。”異常,解決方法很簡單。在APP.Config中configuration下添加

  <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>
      </startup>

  5、總結

  (1)對RTP理論方面進行了一些學習,覺得現(xiàn)在還能理解能用到的就是上面這一些。

 ?。?)初步調(diào)用了一下RTP.NET.DLL,能接收到數(shù)據(jù)

 ?。?)發(fā)送的數(shù)據(jù)使用的是VLC media player工具進行測試

 ?。?)參考資料有很多,基本也是摘錄。

  每天記錄一點點,就能進步一點點....

 

  


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 曰批全过程120分钟免费69 | 亚洲性视频 | 国产第一页精品 | 99国内精品 | 综合精品 | a网在线 | 国产精品久久久久久久午夜片 | 91精品国产成人 | 亚州精品在线视频 | 亚洲精品7777xxxx青睐 | 91精品国啪老师啪 | 99精品国产成人一区二区 | 亚洲成人欧美在线 | 国内精品久久久久影院不卡 | 午夜精品久久久久久中宇 | 羞羞视频免费观看网站 | 日本在线播放一区 | 成人18在线 | 毛片大全免费 | 久久久久久久久久久久久久国产 | 13一14毛片免费看 | h色网站在线观看 | 日本残忍极度灌浣肠视频 | 亚洲精品有限 | 亚洲午夜在线 | 在线观看国产免费视频 | 欧美一级免费看 | 精国品产一区二区三区有限公司 | 日本中文高清 | 无遮挡一级毛片视频 | 国产精品久久久久久模特 | 操操操操操 | 91成人免费看片 | 久在线播放| 欧美视频国产精品 | 国产精品视频免费在线观看 | 久久久久久中文字幕 | 国产伦精品一区二区三区 | 91看片淫黄大片欧美看国产片 | 黄在线观看 | 欧产日产国产精品乱噜噜 |