Enumeración WICHeifHdrProperties (wincodec.h)
Especifica las propiedades HDR de una imagen de formato de imagen de alta eficiencia (HEIF).
Syntax
typedef enum WICHeifHdrProperties {
WICHeifHdrMaximumLuminanceLevel = 0x1,
WICHeifHdrMaximumFrameAverageLuminanceLevel = 0x2,
WICHeifHdrMinimumMasteringDisplayLuminanceLevel = 0x3,
WICHeifHdrMaximumMasteringDisplayLuminanceLevel = 0x4,
WICHeifHdrCustomVideoPrimaries = 0x5,
WICHeifHdrProperties_FORCE_DWORD = 0x7fffffff
} ;
Constantes
WICHeifHdrMaximumLuminanceLevel Valor: 0x1 [VT_UI2] Especifica el nivel máximo de luminancia del contenido en Nits. |
WICHeifHdrMaximumFrameAverageLuminanceLevel Valor: 0x2 [VT_UI2] Especifica el nivel máximo de luminancia por fotograma del contenido en Nits. |
WICHeifHdrMinimumMasteringDisplayLuminanceLevel Valor: 0x3 [VT_UI2] Especifica la luminancia máxima de la pantalla en la que se creó el contenido, en Nits. |
WICHeifHdrMaximumMasteringDisplayLuminanceLevel Valor: 0x4 [VT_UI2] Especifica la luminancia máxima de la pantalla en la que se creó el contenido, en Nits. |
WICHeifHdrCustomVideoPrimaries Valor: 0x5 [VT_BLOB] Especifica los colores personalizados principales para un tipo de medio de vídeo. El valor de esta propiedad es una estructura de MT_CUSTOM_VIDEO_PRIMARIES, que se devuelve como una matriz de bytes (VT_BLOB). |
WICHeifHdrProperties_FORCE_DWORD Valor: 0x7fffffff |
Comentarios
Use IWicMetadataReader::GetValue para recuperar el valor de las propiedades especificadas con esta enumeración. Cree una instancia de la instancia de IWicMetadataReader mediante el GUID CLSID_WICMetadataReader. Llame a IWicMetadataReader::GetMetadataFormat y confirme que el valor es GUID_MetadataFormatHeifHDR para comprobar que el formato de metadatos es metadatos HEIF HDR.
No todas las imágenes HDR HEIF tendrán todas estas propiedades presentes en el archivo, por lo que solo el lector de metadatos expondrá las propiedades disponibles.
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;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10, versión 1903 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server, versión 1903 [solo aplicaciones de escritorio] |
Encabezado | wincodec.h |