從客戶端啟用快速快取串流
[與此頁面相關聯的功能, Windows Media Format 11 SDK 是舊版功能。 它已被來源讀取器和接收寫入器取代。 來源讀取器和接收寫入器已針對 Windows 10 和 Windows 11 優化。 Microsoft 強烈建議新程式代碼盡可能使用來源讀取器和接收寫入器,而不是 Windows Media Format 11 SDK。 Microsoft 建議將使用舊版 API 的現有程式代碼重寫為盡可能使用新的 API。]
快速快取是一種串流技術,其中伺服器會以比播放所需的速率更高的比特率串流內容。
如果可用的頻寬高於內容的比特率,快速快取會以較高的速率串流並緩衝處理內容。 如果網路變得擁擠,這有助於稍後減少中斷。 如果網路頻寬低於內容的比特率,快速快取會在播放開始之前緩衝處理部分數據。 建議針對不可靠的網路,例如無線網路,或網路流量發生較大波動的網路,例如纜線數據機。 也建議用於可變比特率 (VBR) 內容。 VBR 內容的頻寬需求不一致,而快速快取可讓讀取器在較低的比特率部分期間緩衝串流。
只有隨選內容才支援快速快取串流。 此外,伺服器必須設定為使用快速快取串流。
若要在讀取器對象中啟用快速快取,請使用 TRUE 值呼叫 IWMReaderNetworkConfig2::SetEnableContentCaching 和 IWMReaderNetworkConfig2::SetEnableFastCache 方法。 第一個方法可讓讀取器快取串流內容。 第二個可特別使用快速快取。
使用這些設定時,如果網路頻寬明顯高於或低於內容的比特率,以及伺服器支援快取,讀取器預設會啟動快速快取。 使用者也可以藉由將下列一或多個修飾詞新增至URL,來控制讀取器物件是否使用快速快取。
修飾詞 | 描述 |
---|---|
WMCache | 如果存在此修飾詞,則值 『0』 會明確停用快速快取,而值 『1』 則會明確啟用它。 |
WMBitrate | 這個修飾詞會指定伺服器的最大比特率。 此修飾詞可用來將快速快取限制為特定頻寬限制。 如果已使用 IWMReaderNetworkConfig::Set 連線 ionBandwidth 呼叫來設定明確的連線頻寬,則會忽略此修飾詞。 |
WMContentBitrate | 這個修飾詞會指定內容的比特率。 讀取器會在從多個比特率 (MBR) 檔案中選取數據流時,使用這個修飾詞。 這可能會導致讀取器透過慢速連線接收高比特率內容,這會導致非常長時間的緩衝時間和延遲。 |
修飾詞 WMCache=1 會強制讀取器使用快速快取串流,不論網路頻帶或內容的比特率,以及不論先前對 SetEnableFastCache 的任何呼叫為何。 不過,它不會覆寫 讀取器上的 SetEnableContentCaching 設定;也不會覆寫伺服器組態。
URL 修飾詞的格式如下:
url?修飾詞=值
例如:
mms://MyServer/MyVideo.wmv?WMCache=1
可以指定多個修飾詞;使用 ampersand (&) 來分隔它們:
mms://MyServer/MyVideo.wmv?WMCache=1&WMContentBitrate=56000