RTP中時間戳的作用

2021-08-02 22:00:25 字數 617 閱讀 3101

1、調整語序

時間戳字段是rtp首部中說明資料報時間的同步資訊,是資料能以正確的時間順序恢復的關鍵。時間戳的值給出了分組中資料的第乙個位元組的取樣 時間(sampling instant),要求傳送方時間戳的時鐘是連續、單調增長的,即使在沒有資料輸入或傳送資料時也是如此。在靜默時,傳送方不必傳送資料,保持時間戳的增 長,在接收端,由於接收到的資料分組的序號沒有丟失,就知道沒有發生資料丟失,而且只要比較前後分組的時間戳的差異,就可以確定輸出的時間間隔。

rtp規定一次會話的初始時間戳必須隨機選擇,但協議沒有規定時間戳的單位,也沒有規定該值的精確解釋,而是由負載型別來確定時鐘的顆粒,這樣 各種應用型別可以根據需要選擇合適的輸出計時精度。

2、***體資料傳送速度

由於rtp協議沒有規定rtp分組的長度和傳送資料的速度,因而需要根據具體情況調整伺服器端傳送**資料的速度。對來自裝置的實時資料可 以採取等時間間隔訪問裝置緩衝區,在有新資料輸入時傳送資料的方式,時間戳的設定相對容易。對已經錄製好的本地硬碟上的**檔案,以h.263格式的檔案 為例,由於檔案本身不包含幀率資訊,所以需要知道錄製時的幀率或者設定乙個初始值,在傳送資料的時候找出傳送資料中的幀數目,根據幀率和預置值來計算時 延,以適當的速度傳送資料並設定時間戳資訊。

3、調整多種流同步

關於RTP中的時間戳問題

在使用jrtplib的傳送資料的時候需要設定時間戳單位 timestamp 和時間戳增量 timestamp increment 看了網上一些文章,細細想來現在才想通這個問題。rfc3550對時間戳的描述是 如果rtp包是週期性產生的,那麼將使用由取樣時鐘決定的名義上的取樣時刻,而不是讀取系統時間。...

RTP傳輸中的負載型別和時間戳

最近被rtp的負載型別和時間戳搞鬱悶了,乙個問題除錯了近一周,終於圓滿解決,回頭看看,發現其實主要原因還是自己沒有真正地搞清楚rtp協議中負載型別和時間戳的含義。雖然做rtp傳輸,有著jrtplib和ortp這兩個強大的庫支援,乙個是c 介面,乙個是c語言介面,各有各的特點,各有各的應用環境,但是僅...

談談RTP傳輸中的負載型別和時間戳

最近被rtp的負載型別和時間戳搞鬱悶了,乙個問題除錯了近一周,終於圓滿解決,回頭看看,發現其實主要原因還是自己沒有真正地搞清楚rtp協議中負載型別和時間戳的含義。雖然做rtp傳輸,有著 jrtplib和 ortp這兩個強大的庫支援,乙個是c 介面,乙個是c語言介面,各有各的特點,各有各的應用環境,但...