共用方式為


Windows 媒體格式 SDK 介面

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

下列兩個數據表描述此 SDK 所支援的介面,並顯示它們與物件和其他介面的關聯性。

介面 描述
INSNetSourceCreator 建立系統管理網路來源 外掛程式,可用來快取密碼並尋找 Proxy 伺服器。
INSSBuffer 控制儲存在緩衝區物件中的緩衝區。 此介面用於將此 SDK 中的範例傳入和傳出方法。
INSSBuffer2 繼承自 INSSBuffer。 此介面的新方法未記載,因為它們並未在此版本中實作。
INSSBuffer3 設定和擷取緩衝區屬性。 當傳遞至這個 SDK 的方法或從方法傳入或傳出緩衝區時,會使用緩衝區屬性來傳達資訊。
INSSBuffer4 列舉緩衝區屬性。
IReferenceClock 提供標準參考時鐘的存取權。
IRMGetLicense 執行客戶端授權取得。
IWMAddressAccess 控制寫入器網路接收物件上的IP存取清單。
IWMAddressAccess2 將 IPv6 支援新增至 IWMAddressAccess 介面。
IWMAuthorizer 提供憑證的存取權。
IWMBackupRestoreProps 設定、擷取和移除 IWMLicenseBackupIWMLicenseRestore 介面所需的屬性。
IWMBandwidthSharing 設定頻寬共享物件。 帶寬共享物件是由配置檔物件所建立,以指定數據流,無論其個別比特率為何,都永遠不會使用超過它們之間的特定頻寬量。
IWMClientConnections 擷取連線到寫入器網路接收物件之用戶端的相關信息。
IWMClientConnections2 擷取連線到寫入器網路接收物件之客戶端的進階資訊。
IWMCodecAMVideoAccelerator 由 Windows Media 譯碼器 DMO 公開,並由媒體播放機的來源篩選器呼叫,以設定啟用 DirectX VA 以譯碼 Windows Media Video 內容所需的各種連線。
IWMCodecInfo 擷取系統上所載入支援音訊編解碼器的可用格式。 在配置檔中建立音訊數據流時,會使用這些格式。
IWMCodecInfo2 提供對編解碼器名稱的存取權,以及每個程式代碼所支援之格式的描述。
IWMCodecInfo3 提供編解碼器屬性和音訊格式屬性的存取權。 也可讓您查詢編解碼器以取得功能支援。
IWMCodecVideoAccelerator 不支援此介面。 請改用 IWMCodecAMVideoAccelerator
IWMCredentialCallback 取得使用者的認證,並檢查他們是否有權存取遠端月臺。
IWMDeviceRegistration 管理裝置註冊資料庫,其中包含連線到局域網路的數位媒體播放裝置專案。
IWMDRMEditor 可讓應用程式檢查 DRM 標頭屬性,而不需要受保護內容的授權。
IWMDRMMessageParser 剖析從數位媒體播放裝置收到的訊息。
IWMDRMReader 取得授權、設定 DRM 屬性,以及個別化用戶端。
IWMDRMReader2 讀取使用 Windows Media Rights Manager 10 SDK 所建立的授權。
IWMDRMReader3 藉由提供方法來取得授權核准的保護系統,以啟用內容轉譯。
IWMDRMTranscryptor 將受DRM保護的內容轉換成數據流,可使用Windows Media DRM 10 進行網路裝置安全傳輸通訊協定傳送。
IWMDRMWriter 提供寫入器對象的授權建立功能。
IWMDRMWriter2 設定寫入器接受串流範例,其中包含針對網路裝置支援 Windows Media DRM 10 的裝置進行串流處理的數據加密。
IWMDRMWriter3 啟用寫入加密數據流範例以匯入受保護的內容。
IWMGetSecureChannel 此介面是由一個通訊方用來取得另一方 IWMSecureChannel 介面。
IWMHeaderInfo 管理標頭資訊,例如元數據、標記等等。
IWMHeaderInfo2 提供用來建立檔案之編解碼器相關信息的存取權。
IWMHeaderInfo3 提供屬性語言支援和其他進階元數據功能。
IWMImageInfo 從檔案擷取 ID3v2 “APIC” 框架。 應避免使用此介面,而應避免使用 WM/Picture 屬性。
IWMIndexer 提供手動編製檔案索引的方法。
IWMIndexer2 提供索引設定選項。
IWMInputMediaProps 管理輸入媒體數據流的屬性。
IWMIStreamProps 讀取 IStream 物件的屬性。
IWMLanguageList 管理 ASF 檔案的語言清單。
IWMLicenseBackup 備份授權,通常讓它們可以還原到另一部計算機。
IWMLicenseRestore 還原授權。
IWMMediaProps 提供對數據流之媒體類型結構的存取。
IWMMetadataEditor 提供元數據編輯的檔案管理。
IWMMetadataEditor2 提供改善的方法,以開啟檔案以供元數據編輯器使用。
IWMMutualExclusion 設定互斥物件。 配置文件物件會建立互斥物件,以指定互斥數據流的群組。
IWMMutualExclusion2 新增相互排除的群組和命名支援。
IWMOutputMediaProps 管理輸出數據流的屬性。
IWMPacketSize 管理 ASF 檔案中封包的大小上限。
IWMPacketSize2 管理 ASF 檔案中封包的大小下限。
IWMPlayerHook 由使用 DirectX Video Acceleration (DirectX VA) 的播放機應用程式實作。 當影片串流中的樣本傳遞至已啟用 DirectX VA 的視訊卡進行解壓縮時,它可讓應用程式特定的處理執行。
IWMPlayerTimestampHook 在播放機或播放器來源篩選上實作。 它可讓篩選條件先修改影片範例上的時間戳,再將其傳遞至下游。
IWMProfile 管理配置檔的建立和編輯。 配置檔描述檔案的格式,例如數據流類型、比特率等等。 大部分的應用程式都使用現有的配置檔,而且不需要實作這個介面。
IWMProfile2 提供配置檔識別碼的存取權。
IWMProfile3 提供處理配置檔所支援頻寬共用、串流優先順序和其他進階功能的方法。
IWMProfileManager 管理配置檔的載入和儲存。
IWMProfileManager2 管理配置檔管理員物件所使用的系統配置檔版本號碼。
IWMProfileManagerLanguage 管理列舉系統配置檔的語言。
IWMPropertyVault 提供用於管理屬性的標準化介面。
IWMProximityDetection 驗證局域網路上的裝置。 裝置必須先經過驗證,才能使用 Windows Media DRM 10 接收網路裝置安全傳輸通訊協議的數據。
IWMReader 管理 ASF 檔案的異步讀取。
IWMReaderAccelerator 在 WM Reader 對象上實作。 玩家或播放機來源篩選會呼叫它,以從譯碼器 DMO取得介面。
IWMReaderAdvanced 提供讀取器的進階功能,例如使用者提供的時鐘、緩衝區配置、傳回統計數據,以及接收數據流選取通知。
IWMReaderAdvanced2 為現有的讀取器物件提供其他進階方法範圍。
IWMReaderAdvanced3 為讀取器物件提供其他進階方法。
IWMReaderAdvanced4 提供語言選取和其他進階閱讀功能的支援。
IWMReaderAdvanced5 可讓您將播放程式攔截回呼介面與讀取器對象產生關聯。
IWMReaderAdvanced6 啟用範例保護。
IWMReaderAllocatorEx 提供 IWMReaderCallbackAdvanced 介面之 AllocateForOutputAllocateForStream 方法的擴充替代方案。
IWMReaderCallback 由應用程式實作,以提供目前讀取作業的範例和狀態資訊。
IWMReaderCallbackAdvanced 應用程式選擇性地實作,為現有的讀取器回呼物件提供進階功能。
IWMReaderNetworkConfig 管理網路組態設定。
IWMReaderNetworkConfig2 提供其他網路設定功能。
IWMReaderPlaylistBurn 確認將播放清單中的檔案複製到CD的DRM許可權。
IWMReaderStreamClock 用來設定和取消串流時鐘上的定時器,以及擷取數據流時鐘的目前值。
IWMReaderTimecode 提供檔案中 SMPTE 時間代碼的相關信息。
IWMReaderTypeNegotiation 提供單一方法,可用來測試數據流輸出屬性的某些變更是否正常運作。
IWMRegisterCallback 可讓應用程式從接收物件取得狀態消息。
IWMRegisteredDevice 提供存取裝置註冊資料庫中項目中的數據。
IWMSBufferAllocator 提供在伺服器上配置緩衝區的方法。
IWMSecureChannel 提供方法,允許兩個 DLL 彼此驗證並執行安全通訊
IWMSInternalAdminNetSource 管理密碼快取和 Proxy 位置。
IWMSInternalAdminNetSource2 提供比 IWMSInternalAdminNetSource更安全的密碼快取方法。
IWMSInternalAdminNetSource3 提供改善的方法,以找出 Proxy 伺服器。
IWMStatusCallback 由應用程式實作,以回應此 SDK 數個物件的狀態。
IWMStreamConfig 管理要用於配置檔的數據流組態。
IWMStreamConfig2 提供其他串流作方法。
IWMStreamConfig3 管理數據流的語言資訊。
IWMStreamList 管理定義數據流之間關聯性的各種物件。
IWMStreamPrioritization 提供方法來設定數據流優先順序物件。
IWMSyncReader 提供使用同步呼叫讀取檔案的能力。
IWMSyncReader2 將 SMPTE 時間程式代碼支援新增至同步讀取器。
IWMVideoMediaProps 管理視訊串流的屬性。
IWMWatermarkInfo 提供可用水印的存取權。
IWMWriter 做為寫入 ASF 檔案的主要介面。
IWMWriterAdvanced 提供現有寫入器物件的進階功能。
IWMWriterAdvanced2 提供一些進階功能,特別是用於處理已解除交錯的視訊。
IWMWriterAdvanced3 提供詳細寫入器統計數據的方法。
IWMWriterFileSink 管理檔案接收物件。
IWMWriterFileSink2 提供檔案接收對象的擴充管理。
IWMWriterFileSink3 進一步擴充檔案接收物件的功能。
IWMWriterNetworkSink 管理網路接收物件。
IWMWriterPostView 管理寫入器範例的輸出。 用來在編碼過程中驗證檔案的編碼內容。
IWMWriterPostViewCallback 由應用程式實作,以接收寫入器中的 postview 範例。
IWMWriterPreprocess 管理多重傳遞編碼的設定。
IWMWriterPushSink 管理發送接收物件。
IWMWriterSink 從寫入器介面管理原始 Windows 媒體格式輸入。 做為其他寫入器接收介面的基底介面。

 

下表顯示每個介面的繼承,以及可從中取得實例的物件。

介面 繼承自 物件
INSNetSourceCreator IUnknown 來源建立者物件
INSSBuffer IUnknown Buffer 物件
INSSBuffer2 INSSBuffer Buffer 物件
INSSBuffer3 INSSBuffer2 Buffer 物件
INSSBuffer4 INSSBuffer3 Buffer 物件
IReferenceClock IUnknown 讀取器物件
IWMAddressAccess IUnknown 寫入器網路接收物件
IWMAddressAccess2 IWMAddressAccess 寫入器網路接收物件
IWMBackupRestoreProps IUnknown Backup Restorer 物件
IWMBandwidthSharing IWMStreamList 頻寬共享物件
IWMClientConnections IUnknown 寫入器網路接收物件
IWMClientConnections2 IWMClientConnections 寫入器網路接收物件
IWMCodecAMVideoAccelerator IUnknown Windows Media 譯碼器 DMO
IWMCodecInfo IUnknown Profile Manager 物件
IWMCodecInfo2 IWMCodecInfo Profile Manager 物件
IWMCodecInfo3 IWMCodecInfo2 Profile Manager 物件
IWMCredentialCallback IUnknown 由應用程式實作
IWMDRMEditor IUnknown 元數據編輯器物件
IWMDRMReader IUnknown 讀取器物件
IWMDRMWriter IUnknown 寫入器物件
IWMHeaderInfo IUnknown 元數據編輯器物件讀取器物件同步讀取器物件寫入器物件
IWMHeaderInfo2 IWMHeaderInfo 元數據編輯器物件讀取器物件同步讀取器物件寫入器物件
IWMHeaderInfo3 IWMHeaderInfo2 元數據編輯器物件讀取器物件同步讀取器物件寫入器物件
IWMImageInfo IUnknown 元數據編輯器物件讀取器物件同步讀取器物件
IWMIndexer IUnknown Indexer 物件
IWMIndexer2 IWMIndexer Indexer 物件
IWMInputMediaProps IWMMediaProps 輸入媒體屬性物件
IWMIStreamProps IUnknown Stream 物件 (IStream
IWMLanguageList IUnknown Profile 物件元數據編輯器物件讀取器物件同步讀取器物件寫入器物件
IWMLicenseBackup IUnknown Backup Restorer 物件
IWMLicenseRestore IUnknown Backup Restorer 物件
IWMMediaProps IUnknown Input Media Properties 物件Output Media Properties 物件Stream 組態物件
IWMMetadataEditor IUnknown 元數據編輯器物件
IWMMetadataEditor2 IWMMetadataEditor 元數據編輯器物件
IWMMutualExclusion IWMStreamList 互斥物件
IWMMutualExclusion2 IWMMutualExclusion 互斥物件
IWMOutputMediaProps IUnknown 輸出媒體屬性物件
IWMPacketSize IUnknown Profile Manager 物件
IWMPacketSize2 IWMPacketSize Profile Manager 物件
IWMPlayerHook IUnknown 由應用程式實作
IWMPlayerTimestampHook IUnknown 來源篩選
IWMProfile IUnknown Profile 物件
IWMProfile2 IWMProfile Profile 物件
IWMProfile3 IWMProfile2 Profile 物件
IWMProfileManager IUnknown Profile Manager 物件
IWMProfileManager2 IWMProfileManager Profile Manager 物件
IWMProfileManagerLanguage IUnknown Profile Manager 物件
IWMPropertyVault IUnknown Stream 組態物件
IWMReader IUnknown 讀取器物件
IWMReaderAccelerator IUnknown 讀取器物件
IWMReaderAdvanced IUnknown 讀取器物件
IWMReaderAdvanced2 IWMReaderAdvanced 讀取器物件
IWMReaderAdvanced3 IWMReaderAdvanced2 讀取器物件
IWMReaderAdvanced4 IWMReaderAdvanced3 讀取器物件
IWMReaderAllocatorEx IUnknown 由應用程式實作
IWMReaderCallback IWMStatusCallback 由應用程式實作
IWMReaderCallbackAdvanced IUnknown 由應用程式實作
IWMReaderNetworkConfig IUnknown 讀取器物件
IWMReaderNetworkConfig2 IWMReaderNetworkConfig 讀取器物件
IWMReaderStreamClock IUnknown 讀取器物件
IWMReaderTimecode IUnknown 讀取器物件
IWMReaderTypeNegotiation IUnknown 讀取器物件
IWMRegisterCallback IUnknown 由應用程式實作
IWMSBufferAllocator IUnknown 由網路伺服器實作
IWMSInternalAdminNetSource IUnknown 網路來源系統管理員物件
IWMSInternalAdminNetSource2 IWMSInternalAdminNetSource 網路來源系統管理員物件
IWMSInternalAdminNetSource3 IWMSInternalAdminNetSource2 網路來源系統管理員物件
IWMStatusCallback IUnknown 由應用程式實作
IWMStreamConfig IUnknown Stream 組態物件
IWMStreamConfig2 IWMStreamConfig Stream 組態物件
IWMStreamConfig3 IWMStreamConfig2 Stream 組態物件
IWMStreamList IUnknown 頻寬共享物件互斥物件
IWMStreamPrioritization IUnknown 數據流優先順序物件
IWMSyncReader IUnknown 同步讀取器物件
IWMSyncReader2 IWMSyncReader 同步讀取器物件
IWMVideoMediaProps IWMMediaProps Stream 組態物件
IWMWatermarkInfo IUnknown 寫入器物件
IWMWriter IUnknown 寫入器物件
IWMWriterAdvanced IUnknown 寫入器物件
IWMWriterAdvanced2 IWMWriterAdvanced 寫入器物件
IWMWriterAdvanced3 IWMWriterAdvanced2 寫入器物件
IWMWriterFileSink IWMWriterSink 寫入器檔案接收物件
IWMWriterFileSink2 IWMWriterFileSink 寫入器檔案接收物件
IWMWriterFileSink3 IWMWriterFileSink2 寫入器檔案接收物件
IWMWriterNetworkSink IWMWriterSink 寫入器網路接收物件
IWMWriterPostView IUnknown 寫入器物件
IWMWriterPostViewCallback IUnknown 由應用程式實作
IWMWriterPreprocess IUnknown 寫入器物件
IWMWriterPushSink IWMWriterSink 寫入器推入接收物件
IWMWriterSink IUnknown 寫入器檔案接收物件寫入器網路接收物件寫入器推入接收物件

 

言論

此 SDK 中每個介面的介面識別碼是介面的名稱前面加上 「IID_」。。 例如,IWMReaderAdvanced 介面的標識碼是IID_IWMReaderAdvanced。 若要取得讀取器物件的 IWMReaderAdvanced 介面指標,請使用下列程序代碼,其中 pReaderIWMReader 介面的指標:

IWMReaderAdvanced *pReaderAdvanced;
hr = pReader->QueryInterface(IID_IWMReaderAdvanced,
                             (LPVOID*) &pReaderAdvanced);

物件

程式設計參考