在視頻會議的名詞解釋里面,在很多地方會出現一個名詞就是時間戳,時間戳顧名思義就是一個時間的表現形式。那在我們視頻會議系統里面時間戳有什么作用呢?
首先視頻會議應用的網絡環境比較的復雜,第一種環境是帶寬非常高的局域網和城域網,他們的帶寬比較上都是100M,因此數據很少出現丟包或者數據包排列不正確的情況。第二種情況是我們在公網上傳輸的網絡環境,服務器的帶寬一般都是100M以下,甚至是10M以上,而終端的帶寬可能會更低,如在ADSL中的終端,下載帶寬只有4M,上傳帶寬可能只能達到512k,因此在這種環境當中,一般的數據傳輸都可能會出現延遲和丟包的情況,在視頻會議的應用當中,第二種情況由于視頻數據是比較大的傳輸數據,因此很容易造成網絡的延遲和丟包。
那我們怎樣克服網絡的延遲和丟包的情況呢?我們需要應付第二種環境,就需要應用時間戳。那具體我們在視頻會議的怎樣用時間戳處理網絡延遲和丟包呢?我們首先在編碼的時候,建立一個時間戳,這個時間戳有兩個意義,第一意義是表示這個時間是一個相對的時間,二個意義表示這個時間是個有先后順序的標識,因此時間戳除了表示這個時間的相對性還表示時間的先后順序。
我們在編碼后把這個時間戳和數據打包一起發生到客戶端進行播放,在播放的時候,我們把時間戳取出來,首先我們分析時間戳,如果時間戳不在播放的時間范圍,我們可以停止播放,等待時間到某個時候才進行播放,如音視頻同步就是采用這種方式。除了要分析時間戳是否在播放的時間范圍,我們還要分析時間戳的先后順序,如果時間戳出現了跳躍就證明了之前的數據包已經出現了丟包,而如果出現了時間戳出現了提前,證明了數據包出現了延遲,對于這兩種情況,我們在不同的有不同的處理方式,我們應該區分對待處理。