WICHeifHdrProperties 枚举 (wincodec.h)
指定高效图像格式 (HEIF) 图像的 HDR 属性。
语法
typedef enum WICHeifHdrProperties {
WICHeifHdrMaximumLuminanceLevel = 0x1,
WICHeifHdrMaximumFrameAverageLuminanceLevel = 0x2,
WICHeifHdrMinimumMasteringDisplayLuminanceLevel = 0x3,
WICHeifHdrMaximumMasteringDisplayLuminanceLevel = 0x4,
WICHeifHdrCustomVideoPrimaries = 0x5,
WICHeifHdrProperties_FORCE_DWORD = 0x7fffffff
} ;
常量
WICHeifHdrMaximumLuminanceLevel 值: 0x1 [VT_UI2]指定 Nits 中内容的最大亮度级别。 |
WICHeifHdrMaximumFrameAverageLuminanceLevel 值: 0x2 [VT_UI2]指定 Nits 中内容的最大平均每帧亮度级别。 |
WICHeifHdrMinimumMasteringDisplayLuminanceLevel 值: 0x3 [VT_UI2]指定创作内容的显示器的最大亮度(以 Nits 为单位)。 |
WICHeifHdrMaximumMasteringDisplayLuminanceLevel 值: 0x4 [VT_UI2]指定创作内容的显示器的最大亮度(以 Nits 为单位)。 |
WICHeifHdrCustomVideoPrimaries 值: 0x5 [VT_BLOB]指定视频媒体类型的自定义颜色主色。 此属性的值是 一个MT_CUSTOM_VIDEO_PRIMARIES结构,作为字节数组 (VT_BLOB) 返回。 |
WICHeifHdrProperties_FORCE_DWORD 值: 0x7fffffff |
注解
使用 IWicMetadataReader::GetValue 检索使用此枚举指定的属性的值。 使用 GUID CLSID_WICMetadataReader实例化 IWicMetadataReader 实例。 调用 IWicMetadataReader::GetMetadataFormat 并确认值 GUID_MetadataFormatHeifHDR ,以验证元数据格式是否为 HEIF HDR 元数据。
并非所有 HEIF HDR 图像都会在文件中显示所有这些属性,因此元数据读取器将仅公开可用的这些属性。
using namespace winrt;
std::optional<uint32_t> GetMaximumLuminanceLevelFromMetadataReader(_In_ IWICMetadataReader* metadataReader)
{
std::optional<uint32_t> result;
GUID metadataFormat;
// Retrieve the format of the metadata used by this IWICMetadataReader
check_hresult(metadataReader->GetMetadataFormat(&metadataFormat));
// This function only handles HEIF HDR metadata
if (metadataFormat != GUID_MetadataFormatHeifHDR)
{
throw_hresult(E_INVALIDARG);
}
PROPVARIANT variantId = {};
PROPVARIANT variantValue = {};
variantId.vt = VT_UI4;
variantId.uiVal = WICHeifHdrMaximumLuminanceLevel;
if (SUCCEEDED(metadataReader->GetValue(nullptr, &variantId, &variantValue)))
{
if (variantValue.vt == VT_UI4)
{
result = variantValue.uiVal;
}
PropVariantClear(&variantValue);
}
return result;
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10版本 1903 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 版本 1903 [仅限桌面应用] |
标头 | wincodec.h |