2012-06-25 49 views
1

我讀了一些關於mpeg傳輸流的教程,但有兩個基本問題我不明白: 1. mpeg-ts muxer從音頻和視頻中接收pes數據包,並輸出mpeg-ts數據包。它如何做這個混合?每當有來自任何程序的數據包在等待其輸入時,是否該複用器喚醒並處理切片爲mpeg-ts的pes? 2.是否用戶可以選擇mpeg-ts複用器輸出的比特率?編碼速率與mpeg-ts速率之間的關係是什麼?mpeg-ts基本

非常感謝你,

+0

你是在談論一些特定的muxer,或者你在問一般? – Tuxdude

回答

0

MPEG2-TS複用是一項複雜的藝術形式。建議閱讀:MPEG2-TS規範,SPTS/MPTS,VBR與CBR,假想參考解碼器和緩衝器(EB,MB,TB),抖動和漂移。

你的問題的一個非常簡短的答案可以總結如下: 爲每個編碼器,在行的另一端有一個解碼器,它希望每隔一幀的時間間隔顯示一個視頻幀(或音頻幀)。該幀需要在其呈現時間之前被解碼。如果此幀使用其他幀作爲參考,它們也需要在演示前解碼。當多路複用時,數據必須在演示前到達足夠的時間。在時間n時要呈現的視頻幀必須在時間n-x的解碼器處可用,其中x是取決於解碼器的緩衝器速率的時間度量(參見MB,TB,EB)。如果TS比特率太低,則發生「下溢」並且視頻不能及時地在解碼器中。如果TS比特率太大,則發生「溢出」,並且緩衝器必須丟棄也會產生視覺僞像的分組。