使用同步讀取器擷取壓縮樣本
[與此頁面相關聯的功能 Windows Media Format 11 SDK是舊版功能。 來源讀取器和接收寫入器已取代它。 來源讀取器和接收寫入器已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用來源讀取器和接收寫入器,而不是Windows Media Format 11 SDK。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
如同非同步讀取器,同步讀取器也可以擷取壓縮的樣本。 將資料流程從一個檔案複製到另一個檔案時,應該使用壓縮的樣本。
Windows Media Format SDK 在從 ASF 檔案擷取資料之後,不會提供任何解碼資料的方法。 如果您收到壓縮的範例,稍後想要解壓縮它們,則必須提供自己的程式碼來執行此動作。 解決這項限制的其中一個方法是將壓縮的樣本寫入新的 ASF 檔案,然後將它們重新讀入一般、未壓縮的樣本。
若要使用同步讀取器接收壓縮的樣本,請在播放之前或期間呼叫 IWMSyncReader::SetReadStreamSamples 。 針對 fCompressed傳遞 true。
注意
影像資料流程對壓縮資料流程傳遞無效。 如果您將影像資料流程從一個檔案複製到另一個檔案,它將無法在新檔案中運作。 若要從檔案將影像資料流程複製到檔案,請依輸出編號擷取影像串流範例,並將其包含在新的檔案中,就像包含新的影像資料流程一樣。
相關主題