使用元数据

[与此页面关联的功能 Windows Media Format 11 SDK 是一项旧功能。 它已被源读取器和接收器编写器取代。 源读取器和接收器编写器已针对Windows 10和Windows 11进行了优化。 如果可能,Microsoft 强烈建议新代码使用源读取器和接收器编写器,而不是 Windows Media 格式 11 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

元数据支持由编写器对象、读取器和同步读取器对象以及元数据编辑器对象提供。 有关元数据的一般信息,请参阅 元数据。 有关 Windows Media Format SDK 中支持元数据的功能的信息,请参阅 元数据功能

用于元数据编辑的接口是 IWMHeaderInfo3,可以通过调用上面列出的对象之一中任何接口的 QueryInterface 方法获取该接口。 IWMHeaderInfo3 继承 IWMHeaderInfoIWMHeaderInfo2 的方法。 处理元数据属性的 IWMHeaderInfo3 方法表示访问元数据的方法不同于 IWMHeaderInfo 的方法。 应始终使用更新的方法。

ASF 文件中的元数据由索引和流编号标识。 为文件级属性分配的流数为 0。 在以前版本的 Windows Media Format SDK 中,可以通过名称标识属性。 但是,由于现在可以在流中复制属性名称,因此不再可行。 相反,可以检索与名称匹配的所有索引。 有关详细信息,请参阅 检索元数据属性

为了帮助快速查找属性,可以使用特殊的流编号0xFFFF。 使用此流号将文件标识为一个整体,而不是特定流或文件级属性。 Windows Media Format SDK 的对象为每个流和文件级属性维护单独的索引。 使用流0xFFFF时,索引与指定特定流时使用的索引不同。 例如,流 0 的索引为 0 的属性与流0xFFFF的索引为 0 的属性不同。

以下部分更详细地介绍了元数据的使用。

部分 说明
检索元数据属性 介绍如何从文件头读取元数据属性。
设置元数据属性 介绍如何向文件标头添加新的元数据属性。
编辑元数据属性 介绍如何编辑现有元数据属性。
删除元数据属性 介绍如何删除现有元数据属性。
使用复杂元数据属性 描述如何使用其值由结构表示的属性。

 

几个示例应用程序演示如何检索和编辑元数据。 具体而言,请参阅 MetadataEdit 示例,该示例同时提供 C++ 和 C# 版本。

属性

编程指南

示例应用程序