Windows Media Format SDK 接口
[与此页面关联的功能 Windows Media Format 11 SDK 是旧版功能。 它已被源读取器和接收器编写器取代。 源读取器和接收器编写器已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用源读取器和接收器编写器,而不是 Windows Media Format 11 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
以下两个表描述了此 SDK 支持的接口,并显示了它们与对象和其他接口的关系。
接口 | 描述 |
---|---|
INSNetSourceCreator | 创建可用于缓存密码和查找代理服务器的管理网络源 插件。 |
INSSBuffer | 控制存储在缓冲区对象中的缓冲区。 此接口用于向和从此 SDK 中的方法传递示例。 |
INSSBuffer2 | 继承自 INSSBuffer。 此接口的新方法已取消记录,因为它们未在此版本中实现。 |
INSSBuffer3 | 设置和检索缓冲区属性。 缓冲区属性用于在传入或传递自此 SDK 的方法时,使用缓冲区传达信息。 |
INSSBuffer4 | 枚举缓冲区属性。 |
IReferenceClock | 提供对标准参考时钟的访问。 |
IRMGetLicense | 执行客户端许可证获取。 |
IWMAddressAccess | 控制编写器网络接收器对象上的 IP 访问列表。 |
IWMAddressAccess2 | 向 IWMAddressAccess 接口添加 IPv6 支持。 |
IWMAuthorizer | 提供对证书的访问。 |
IWMBackupRestoreProps | 设置、检索和删除 IWMLicenseBackup 和 IWMLicenseRestore 接口所需的属性。 |
IWMBandwidthSharing | 配置带宽共享对象。 带宽共享对象由配置文件对象创建,用于指定流,无论其单个比特率如何,它们之间永远不会使用超过特定数量的带宽。 |
IWMClientConnections | 检索有关连接到编写器网络接收器对象的客户端的信息。 |
IWMClientConnections2 | 检索有关连接到编写器网络接收器对象的客户端的高级信息。 |
IWMCodecAMVideoAccelerator | 由 Windows Media 解码器 DMO 公开并由媒体播放器的源筛选器调用,以设置启用 DirectX VA 以解码 Windows Media 视频内容所需的各种连接。 |
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 for Network Devices 安全传输协议发送的数据流。 |
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 视频加速 (DirectX VA) 的播放器应用程序实现。 它将视频流中的样本传递到已启用 DirectX VA 的视频卡进行解压缩时,可以执行特定于应用程序的处理。 |
IWMPlayerTimestampHook | 在玩家或玩家源筛选器上实现。 它使筛选器能够在将视频样本传送到下游之前修改视频样本上的时间戳。 |
IWMProfile | 管理配置文件的创建和编辑。 配置文件描述文件的格式,例如流类型、比特率等。 大多数应用程序使用现有配置文件,不需要实现此接口。 |
IWMProfile2 | 提供对配置文件 ID 的访问权限。 |
IWMProfile3 | 提供用于处理带宽共享、流优先级以及配置文件支持的其他高级功能的方法。 |
IWMProfileManager | 管理配置文件的加载和保存。 |
IWMProfileManager2 | 管理配置文件管理器对象使用的系统配置文件的版本号。 |
IWMProfileManagerLanguage | 管理枚举系统配置文件的语言。 |
IWMPropertyVault | 提供用于管理属性的标准化接口。 |
IWMProximityDetection | 验证本地网络上的设备。 必须先验证设备,然后才能使用适用于网络设备的 Windows Media DRM 10 安全传输协议接收数据。 |
IWMReader | 管理 ASF 文件的异步读取。 |
IWMReaderAccelerator | 在 WM Reader 对象上实现。 它由玩家或玩家源筛选器调用,以从解码器 DMO 获取接口。 |
IWMReaderAdvanced | 提供读取器的高级功能,例如用户提供的时钟、缓冲区分配、返回统计信息和接收流选择通知。 |
IWMReaderAdvanced2 | 为现有读取器对象提供其他高级方法范围。 |
IWMReaderAdvanced3 | 为读取器对象提供其他高级方法。 |
IWMReaderAdvanced4 | 支持语言选择和其他高级阅读功能。 |
IWMReaderAdvanced5 | 使你能够将玩家挂钩回调接口与读取器对象相关联。 |
IWMReaderAdvanced6 | 启用示例保护。 |
IWMReaderAllocatorEx | 为 IWMReaderCallbackAdvanced 接口的 AllocateForOutput 和 AllocateForStream 方法提供扩展的替代项。 |
IWMReaderCallback | 由应用程序实现,用于提供有关当前读取操作的示例和状态信息。 |
IWMReaderCallbackAdvanced | (可选)由应用程序实现,为现有读取器回调对象提供高级功能。 |
IWMReaderNetworkConfig | 管理网络配置设置。 |
IWMReaderNetworkConfig2 | 提供其他网络配置功能。 |
IWMReaderPlaylistBurn | 确认将播放列表中的文件复制到 CD 的 DRM 权限。 |
IWMReaderStreamClock | 用于设置和取消流时钟上的计时器,以及检索流时钟的当前值。 |
IWMReaderTimecode | 提供有关文件中 SMPTE 时间代码的信息。 |
IWMReaderTypeNegotiation | 提供可用于测试流输出属性的某些更改是否正常工作的单个方法。 |
IWMRegisterCallback | 使应用程序能够从接收器对象获取状态消息。 |
IWMRegisteredDevice | 提供对设备注册数据库中条目中的数据的访问权限。 |
IWMSBufferAllocator | 提供在服务器上分配缓冲区的方法。 |
IWMSecureChannel | 提供允许两个 DLL 相互验证和执行安全通信的方法 |
IWMSInternalAdminNetSource | 管理密码缓存和代理位置。 |
IWMSInternalAdminNetSource2 | 提供比 IWMSInternalAdminNetSource 更安全的密码缓存方法。 |
IWMSInternalAdminNetSource3 | 提供了一种改进的方法来查找代理服务器。 |
IWMStatusCallback | 由应用程序实现,以响应此 SDK 的多个对象的状态。 |
IWMStreamConfig | 管理在配置文件中使用的流的配置。 |
IWMStreamConfig2 | 提供其他流操作方法。 |
IWMStreamConfig3 | 管理流的语言信息。 |
IWMStreamList | 管理定义流之间的关系的各种对象。 |
IWMStreamPrioritization | 提供配置流优先顺序对象的方法。 |
IWMSyncReader | 提供通过同步调用读取文件的功能。 |
IWMSyncReader2 | 向同步读取器添加 SMPTE 时间代码支持。 |
IWMVideoMediaProps | 管理视频流的属性。 |
IWMWatermarkInfo | 提供对可用水印的访问。 |
IWMWriter | 用作编写 ASF 文件的main接口。 |
IWMWriterAdvanced | 为现有编写器对象提供高级功能。 |
IWMWriterAdvanced2 | 提供一些高级功能,特别是用于处理无隔行扫描的视频。 |
IWMWriterAdvanced3 | 提供详细编写器统计信息的方法。 |
IWMWriterFileSink | 管理文件接收器对象。 |
IWMWriterFileSink2 | 提供文件接收器对象的扩展管理。 |
IWMWriterFileSink3 | 进一步扩展文件接收器对象的功能。 |
IWMWriterNetworkSink | 管理网络接收器对象。 |
IWMWriterPostView | 管理编写器中示例的输出。 用于在编码过程中验证文件的编码内容。 |
IWMWriterPostViewCallback | 由应用程序实现,用于从编写器接收 postview 示例。 |
IWMWriterPreprocess | 管理多通道编码的设置。 |
IWMWriterPushSink | 管理推送接收器对象。 |
IWMWriterSink | 管理来自编写器接口的原始 Windows Media Format 输入。 用作其他编写器接收器接口的基本接口。 |
下表显示了每个接口的继承以及可从中获取实例的对象。
备注
此 SDK 中每个接口的接口标识符是接口的名称,前面是“IID_”。 例如, IWMReaderAdvanced 接口的标识符IID_IWMReaderAdvanced。 若要获取指向读取器对象的 IWMReaderAdvanced 接口的指针,请使用以下代码,其中 pReader 是指向 IWMReader 接口的 指针:
IWMReaderAdvanced *pReaderAdvanced;
hr = pReader->QueryInterface(IID_IWMReaderAdvanced,
(LPVOID*) &pReaderAdvanced);
相关主题