enumerasi DXVA2_VideoPrimaries (dxva2api.h)
Menentukan warna utama sumber video. Bendera ini digunakan dalam struktur DXVA2_ExtendedFormat .
Sintaks
typedef enum _DXVA2_VideoPrimaries {
DXVA2_VideoPrimariesMask = 0x1f,
DXVA2_VideoPrimaries_Unknown = 0,
DXVA2_VideoPrimaries_reserved = 1,
DXVA2_VideoPrimaries_BT709 = 2,
DXVA2_VideoPrimaries_BT470_2_SysM = 3,
DXVA2_VideoPrimaries_BT470_2_SysBG = 4,
DXVA2_VideoPrimaries_SMPTE170M = 5,
DXVA2_VideoPrimaries_SMPTE240M = 6,
DXVA2_VideoPrimaries_EBU3213 = 7,
DXVA2_VideoPrimaries_SMPTE_C = 8
} DXVA2_VideoPrimaries;
Konstanta
DXVA2_VideoPrimariesMask Nilai: 0x1f Bitmask untuk memvalidasi nilai bendera. Nilai ini bukan bendera yang valid. |
DXVA2_VideoPrimaries_Unknown Nilai: 0 Tidak dikenal. Perlakukan sebagai DXVA2_VideoPrimaries_BT709. |
DXVA2_VideoPrimaries_reserved Nilai: 1 Dicadangkan. Jangan gunakan. |
DXVA2_VideoPrimaries_BT709 Nilai: 2 ITU-R BT.709. Juga digunakan untuk sRGB dan scRGB. |
DXVA2_VideoPrimaries_BT470_2_SysM Nilai: 3 ITU-R BT.470-4 System M (NTSC). |
DXVA2_VideoPrimaries_BT470_2_SysBG Nilai: 4 ITU-R BT.470-4 Sistem B,G (PAL). |
DXVA2_VideoPrimaries_SMPTE170M Nilai: 5 SMPTE 170M. |
DXVA2_VideoPrimaries_SMPTE240M Nilai: 6 SMPTE 240M. |
DXVA2_VideoPrimaries_EBU3213 Nilai: 7 EBU Tech. 3213. |
DXVA2_VideoPrimaries_SMPTE_C Nilai: 8 SMPTE C (SMPTE RP 145). |
Keterangan
Warna utama menentukan cara mengonversi warna RGB menjadi ruang warna CIE XYZ, dan dapat digunakan untuk menerjemahkan warna antara ruang warna RGB yang berbeda. Ruang warna RGB didefinisikan oleh koordinat kromatikitas (x,y) dari utama RGB ditambah titik putih, seperti yang tercantum dalam tabel berikut.
Ruang warna | (Rx, Ry) | (Gx, Gy) | (Bx, Oleh) | Titik putih (Wx, Wy) |
---|---|---|---|---|
BT.709 | (0.64, 0.33) | (0.30, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-2 Sistem B,G; EBU 3213 | (0.64, 0.33) | (0.29, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-4 Sistem M | (0.67, 0.33) | (0.21, 0.71) | (0.14, 0.08) | CIE III.C (0.310, 0.316) |
SMPTE 170M; SMPTE 240M; SMPTE C | (0.63, 0.34) | (0.31, 0.595) | (0.155, 0.07) | D65 (0,3127, 0,3291) |
Koordinat z dapat berasal dari x dan y sebagai berikut: z = 1 - x - y. Untuk mengonversi antara warna RGB ke nilai tristimulus CIE XYZ, komputasi matriks T sebagai berikut:
Mengingat T, Anda dapat menggunakan rumus berikut untuk mengonversi antara nilai warna RGB dan nilai tristimulus CIE XYZ. Rumus-rumus ini mengasumsikan bahwa komponen RGB linier (tidak diperbaiki gamma) dan dinormalisasi ke rentang [0...1]. Untuk mengonversi warna langsung dari satu ruang warna RGB ke ruang warna lainnya, gunakan rumus berikut, di mana T1 adalah matriks untuk ruang warna RGB1, dan T2 adalah matriks untuk ruang warna RGB2. Untuk turunan dari rumus ini, lihat Charles Poynton, Digital Video dan HDTV Algoritma dan Antarmuka (Morgan Kaufmann, 2003).Enumerasi ini setara dengan enumerasi DXVA_VideoPrimaries yang digunakan dalam DXVA 1.0.
Jika Anda menggunakan antarmuka IMFMediaType untuk menjelaskan format video, warna utama ditentukan dalam atribut MF_MT_VIDEO_PRIMARIES .
Persyaratan
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Header | dxva2api.h |