Enumerasi WICHeifHdrProperties (wincodec.h)
Menentukan properti HDR dari gambar Format Gambar Efisiensi Tinggi (HEIF).
Sintaks
typedef enum WICHeifHdrProperties {
WICHeifHdrMaximumLuminanceLevel = 0x1,
WICHeifHdrMaximumFrameAverageLuminanceLevel = 0x2,
WICHeifHdrMinimumMasteringDisplayLuminanceLevel = 0x3,
WICHeifHdrMaximumMasteringDisplayLuminanceLevel = 0x4,
WICHeifHdrCustomVideoPrimaries = 0x5,
WICHeifHdrProperties_FORCE_DWORD = 0x7fffffff
} ;
Konstanta
WICHeifHdrMaximumLuminanceLevel Nilai: 0x1 [VT_UI2] Menentukan tingkat luminance maksimum konten dalam Nits. |
WICHeifHdrMaximumFrameAverageLuminanceLevel Nilai: 0x2 [VT_UI2] Menentukan tingkat luminasi rata-rata maksimum per bingkai konten dalam Nits. |
WICHeifHdrMinimumMasteringDisplayLuminanceLevel Nilai: 0x3 [VT_UI2] Menentukan luminasi maksimum tampilan tempat konten ditulis, dalam Nits. |
WICHeifHdrMaximumMasteringDisplayLuminanceLevel Nilai: 0x4 [VT_UI2] Menentukan luminasi maksimum tampilan tempat konten ditulis, dalam Nits. |
WICHeifHdrCustomVideoPrimaries Nilai: 0x5 [VT_BLOB] Menentukan warna kustom utama untuk tipe media video. Nilai properti ini adalah struktur MT_CUSTOM_VIDEO_PRIMARIES, dikembalikan sebagai array byte (VT_BLOB). |
WICHeifHdrProperties_FORCE_DWORD Nilai: 0x7fffffff |
Keterangan
Gunakan IWicMetadataReader::GetValue untuk mengambil nilai properti yang ditentukan dengan enumerasi ini. Buat instans IWicMetadataReader menggunakan CLSID_WICMetadataReader GUID. Panggil IWicMetadataReader::GetMetadataFormat dan konfirmasikan bahwa nilainya GUID_MetadataFormatHeifHDR untuk memverifikasi bahwa format metadata adalah metadata HEIF HDR.
Tidak semua gambar HDR HEIF akan memiliki semua properti ini yang ada dalam file, jadi hanya properti yang tersedia yang akan diekspos oleh pembaca metadata.
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;
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 10, versi 1903 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server, versi 1903 [hanya aplikasi desktop] |
Header | wincodec.h |