DXVA2_VideoPrimaries-Enumeration (dxva2api.h)
Gibt die Farbvorwahlen einer Videoquelle an. Diese Flags werden in der DXVA2_ExtendedFormat-Struktur verwendet.
Syntax
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;
Konstanten
DXVA2_VideoPrimariesMask Wert: 0x1f Bitmaske zum Überprüfen von Flagwerten. Dieser Wert ist kein gültiges Flag. |
DXVA2_VideoPrimaries_Unknown Wert: 0 Unbekannt Behandeln Sie als DXVA2_VideoPrimaries_BT709. |
DXVA2_VideoPrimaries_reserved Wert: 1 Reserviert. Darf nicht verwendet werden. |
DXVA2_VideoPrimaries_BT709 Wert: 2 ITU-R BT.709. Wird auch für sRGB und scRGB verwendet. |
DXVA2_VideoPrimaries_BT470_2_SysM Wert: 3 ITU-R BT.470-4 System M (NTSC). |
DXVA2_VideoPrimaries_BT470_2_SysBG Wert: 4 ITU-R BT.470-4 System B, G (PAL). |
DXVA2_VideoPrimaries_SMPTE170M Wert: 5 SMPTE 170M. |
DXVA2_VideoPrimaries_SMPTE240M Wert: 6 SMPTE 240M. |
DXVA2_VideoPrimaries_EBU3213 Wert: 7 EBU Tech. 3213. |
DXVA2_VideoPrimaries_SMPTE_C Wert: 8 SMPTE C (SMPTE RP 145). |
Hinweise
Farbprimries definieren, wie RGB-Farben in den CIE XYZ-Farbraum konvertiert werden, und können verwendet werden, um Farben zwischen verschiedenen RGB-Farbräumen zu übersetzen. Ein RGB-Farbraum wird durch die Farbigkeitskoordinaten (x,y) der RGB-Vorwahlen und den Weißpunkt definiert, wie in der folgenden Tabelle aufgeführt.
Farbraum | (Rx, Ry) | (Gx, Gy) | (Bx, By) | Weißpunkt (Wx, Wy) |
---|---|---|---|---|
BT.709 | (0.64, 0.33) | (0.30, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-2 System B, G; EBU 3213 | (0.64, 0.33) | (0.29, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-4 System 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) |
Die z-Koordinaten können wie folgt von x und y abgeleitet werden: z = 1 - x - y. Um zwischen RGB-Farben in CIE XYZ Tristimulus-Werte zu konvertieren, berechnen Sie eine Matrix T wie folgt:
Bei T können Sie die folgenden Formeln verwenden, um zwischen einem RGB-Farbwert und einem CIE XYZ-Tristimulus-Wert zu konvertieren. Diese Formeln gehen davon aus, dass die RGB-Komponenten linear (nicht gammakorriert) und auf den Bereich [0...1] normalisiert sind. Um Farben direkt von einem RGB-Farbraum in einen anderen zu konvertieren, verwenden Sie die folgende Formel, wobei T1 die Matrix für den Farbraum RGB1 und T2 die Matrix für den Farbraum RGB2 ist. Eine Ableitung dieser Formeln finden Sie unter Charles Poynton, Digital Video and HDTV Algorithms and Interfaces (Morgan Kaufmann, 2003).Diese Enumeration entspricht der DXVA_VideoPrimaries-Enumeration , die in DXVA 1.0 verwendet wird.
Wenn Sie die IMFMediaType-Schnittstelle verwenden, um das Videoformat zu beschreiben, werden die Farbvorwahlen im attribut MF_MT_VIDEO_PRIMARIES angegeben.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Kopfzeile | dxva2api.h |