識別輸出數字
[與此頁面相關聯的功能 Windows Media Format 11 SDK是舊版功能。 原始資料讀取器 和 資料接收寫入器已取代它。 來源讀取器 和 接收寫入器 已針對 Windows 10 和 Windows 11 優化。 Microsoft強烈建議新程式碼應盡可能使用 來源讀取器 和 匯出器,而不是 Windows Media Format 11 SDK。 Microsoft建議使用舊版 API 的現有程式代碼,盡可能改寫成使用新的 API。]
若要識別載入檔案的輸出編號,請執行下列步驟。 異步讀取器和同步讀取器都使用相同的程式。 如果介面名稱不同,同步讀取器方法會列在異步讀取器方法之後的括弧中。
- 建立讀取器物件並載入檔案以供讀取。 如需詳細資訊,請參閱 建立讀取器和開啟檔案(或 建立同步讀取器並開啟檔案)。
- 呼叫 IWMReader::GetOutputCount 來擷取檔案的輸出總數(或 IWMSyncReader::GetOutputCount)。
- 依次瀏覽輸出,針對每個輸出執行下列步驟:
- 針對目前輸出擷取 IWMOutputMediaProps 介面,並呼叫 IWMReader::GetOutputProps(或 IWMSyncReader::GetOutputProps)。
- 對IWMMediaProps::GetMediaType進行兩個呼叫,以擷取輸出的WM_MEDIA_TYPE 結構。 進行第一次呼叫以取得結構的大小,然後為其配置記憶體,並在第二次呼叫時將指標傳遞至配置的記憶體。 或者,您可以呼叫 IWMMediaProps::GetType,這會提供主要類型,而不需要您配置 WM_MEDIA_TYPE 結構的記憶體。 您可以略過錯誤主要類別的輸出。
- 從 WM_MEDIA_TYPE 結構擷取主要媒體類型和媒體子類型。 這些值會分別儲存在主要類型 和 子類型 的數據 成員中。
- 檢查 WM_MEDIA_TYPE.formattype的值。 這指定緩衝區中包含的結構類型,位於 WM_MEDIA_TYPE.pbFormat。 如需格式類型的詳細資訊,請參閱 媒體類型。
- 配置記憶體以保存上一個步驟中識別的類型結構。 將結構複製到您設定的記憶體。 針對音訊和視訊,此結構提供如何轉譯數據的基本資訊。
同步讀取器也提供方法來擷取輸出編號與數據流編號之間的關聯。 如需詳細資訊,請參閱 尋找資料流編號和輸出編號。
相關主題