共用方式為


使用非同步讀取器依框架編號搜尋

[與此頁面相關聯的功能 Windows Media Format 11 SDK是舊版功能。 來源讀取器和接收寫入器已取代它。 來源讀取器和接收寫入器已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用來源讀取器和接收寫入器,而不是Windows 媒體格式 11 SDK。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

非同步讀取器物件可用來搜尋 ASF 檔案中視訊資料流程的畫面編號。 若要使用以框架為基礎的搜尋,讀取器中載入的檔案必須依框架編制索引。 每個個別的視訊串流都可以編制索引。 若要判斷資料流程是否已依框架編制索引,您可以呼叫 IWMHeaderInfo::GetAttributeByName,檢查檔案標頭中的 g_wszWMNumberOfFrames 屬性。

若要使用非同步讀取器依框架編號搜尋 ASF 檔案中的資料,請執行下列步驟。

  1. 呼叫IWMReader::QueryInterface,以取得讀取器物件的IWMReaderAdvanced3介面指標。
  2. 呼叫 IWMReaderAdvanced3::StartAtPosition來設定起始畫面編號和持續時間。 您必須指定框架索引視訊資料流程的資料流程編號。 讀取器會將其餘輸出同步處理至指定資料流程之指定框架的呈現時間,並開始傳遞輸出範例。
  3. 處理範例,如同您在 IWMReaderCallback::OnSample 方法的實作中一樣。

使用非同步讀取器讀取檔案

在播放時讀取中繼資料

使用索引