緩衝內容
當讀取器物件開啟串流檔案時,它會根據檔案標頭中的設定來決定緩衝區的大小。 您可以將緩衝區視為一個貯體,其底部的漏洞會以固定速率流失。 只要貯體填滿的速率不是平均大於流失的速率,貯體永遠不會溢位。
虛數值區流失的速率是資料流程的位元速率。 貯體填滿的速率是實際的串流位速率。 根據達到的壓縮量而定,壓縮資料流程中的資料會因樣本大小而異。 因此,即使資料流程的位元速率是在設定檔中設定,但它代表平均位元速率,而不是常數。
緩衝處理很重要的另一個資料流程設定是緩衝區視窗。 緩衝區視窗是以時間測量,並指定可以緩衝處理多少內容。 您可以使用緩衝區視窗找到虛數貯體容量。 例如,如果您有位元速率為 32 Kbps 的資料流程,且緩衝區視窗為 3 秒,則緩衝區的大小會保留 32 Kbps 內容的 3 秒,或 12,000 個位元組 (每秒 32,000 個位 x 3 秒 /8 位) 。 編解碼器會限制編碼樣本的實際串流位元速率的變化,因此在一段時間內等於緩衝區視窗,平均位元速率不會大於資料流程的位元速率。
一般而言,您會在設定檔中設定資料流程的位元速率和緩衝區視窗,而寫入器會處理其餘部分。 不過,將壓縮樣本傳遞至讀取器時,您必須將目的地設定檔中資料流程的位元速率和緩衝區視窗設定為來自壓縮資料流程的值,以確保正確的值會傳送至新檔案。
相關主題