Enumerazione WICHeifHdrProperties (wincodec.h)
Specifica le proprietà HDR di un'immagine HEIF (High Efficiency Image Format).
Sintassi
typedef enum WICHeifHdrProperties {
WICHeifHdrMaximumLuminanceLevel = 0x1,
WICHeifHdrMaximumFrameAverageLuminanceLevel = 0x2,
WICHeifHdrMinimumMasteringDisplayLuminanceLevel = 0x3,
WICHeifHdrMaximumMasteringDisplayLuminanceLevel = 0x4,
WICHeifHdrCustomVideoPrimaries = 0x5,
WICHeifHdrProperties_FORCE_DWORD = 0x7fffffff
} ;
Costanti
WICHeifHdrMaximumLuminanceLevel Valore: 0x1 [VT_UI2] Specifica il livello massimo di luminanza del contenuto in Nits. |
WICHeifHdrMaximumFrameAverageLuminanceLevel Valore: 0x2 [VT_UI2] Specifica il livello di dominanza media massima per fotogramma del contenuto in Nits. |
WICHeifHdrMinimumMasteringDisplayLuminanceLevel Valore: 0x3 [VT_UI2] Specifica la luminanza massima della visualizzazione in cui è stato creato il contenuto, in Nits. |
WICHeifHdrMaximumMasteringDisplayLuminanceLevel Valore: 0x4 [VT_UI2] Specifica la luminanza massima della visualizzazione in cui è stato creato il contenuto, in Nits. |
WICHeifHdrCustomVideoPrimaries Valore: 0x5 [VT_BLOB] Specifica le primarie di colore personalizzate per un tipo di supporto video. Il valore di questa proprietà è una struttura MT_CUSTOM_VIDEO_PRIMARIES, restituita come matrice di byte (VT_BLOB). |
WICHeifHdrProperties_FORCE_DWORD Valore: 0x7fffffff |
Commenti
Usare IWicMetadataReader::GetValue per recuperare il valore delle proprietà specificate con questa enumerazione. Creare un'istanza di IWicMetadataReader usando il GUID CLSID_WICMetadataReader. Chiamare IWicMetadataReader::GetMetadataFormat e verificare che il valore sia GUID_MetadataFormatHeifHDR per verificare che il formato dei metadati sia metadati HDR HEIF.
Non tutte le immagini HDR HEIF avranno tutte queste proprietà presenti nel file, quindi solo le proprietà disponibili verranno esposte dal lettore di metadati.
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;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 versione 1903 [solo app desktop] |
Server minimo supportato | Windows Server, versione 1903 [solo app desktop] |
Intestazione | wincodec.h |