DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA-Struktur (dxvahd.h)
Gibt den Farbraum für einen DXVA-HD-Eingabestream (Microsoft DirectX Video Acceleration High Definition) an.
Syntax
typedef struct _DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA {
union {
struct {
UINT Type : 1;
UINT RGB_Range : 1;
UINT YCbCr_Matrix : 1;
UINT YCbCr_xvYCC : 1;
UINT Reserved : 28;
};
UINT Value;
};
} DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA;
Member
Type
Gibt an, ob der Eingabestream Video oder Grafiken enthält. Das Gerät kann die Verarbeitung basierend auf dem Typ optimieren. Der Standardwert für den Zustand ist 0 (Video).
Wert | Bedeutung |
---|---|
|
Video. |
|
Graphics. |
RGB_Range
Gibt den RGB-Farbbereich an. Der Standardwert für den Zustand ist 0 (vollständiger Bereich).
Wert | Bedeutung |
---|---|
|
Vollständiger Bereich (0-255). |
|
Begrenzter Bereich (16-235). |
YCbCr_Matrix
Gibt die YCbCr-Übertragungsmatrix an. Der Standardwert ist 0 (BT.601).
Wert | Bedeutung |
---|---|
|
ITU-R BT.601. |
|
ITU-R BT.709. |
YCbCr_xvYCC
Gibt an, ob der Eingabedatenstrom konventionelles YCbCr oder erweitertes YCbCr (xvYCC) verwendet. Der Standardwert für den Zustand ist 0 (herkömmlicher YCbCr).
Wert | Bedeutung |
---|---|
|
Konventioneller YCbCr. |
|
Erweiterter YCbCr (xvYCC). |
Reserved
Value
Hinweise
Der RGB_Range-Member gilt für RGB-Eingaben, während die YCbCr_Matrix - und YCbCr_xvYCC-Member für yuv-Eingaben (YCbCr) gelten.
In einigen Situationen kann das Gerät eine Zwischenfarbkonvertierung für den Eingabedatenstrom durchführen. Wenn ja, werden die Flags verwendet, die für beide Farbräume gelten. Angenommen, das Gerät konvertiert von RGB in YCbCr. Wenn das RGB_Range-Member 0 und der YCbCr_Matrix Member 1 ist, konvertiert das Gerät von RGB-Vollbereich in BT.709 YCbCr.
Wenn das Gerät xvYCC unterstützt, wird das DXVAHD_DEVICE_CAPS_xvYCC-Funktionsflag im DeviceCaps-Member der DXVAHD_VPDEVCAPS-Struktur zurückgegeben. Andernfalls ignoriert das Gerät den Wert von YCbCr_xvYCC und behandelt alle YCbCr-Eingaben wie herkömmliche YCbCr. Rufen Sie zum Abrufen der Funktionen des Geräts IDXVAHD_Device::GetVideoProcessorDeviceCaps auf.
Beispiele
HRESULT DXVAHD_SetInputColorSpace(
IDXVAHD_VideoProcessor *pVP,
UINT stream,
BOOL bPlayback, // TRUE = playback, FALSE = video processing
UINT RGB_Range, // 0 = 0-255, 1 = 16-235
UINT YCbCr_Matrix, // 0 = BT.601, 1 = BT.709
UINT YCbCr_xvYCC // 0 = Conventional YCbCr, 1 = xvYCC
)
{
DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA data =
{
bPlayback ? 0 : 1,
RGB_Range ? 1 : 0,
YCbCr_Matrix ? 1 : 0,
YCbCr_xvYCC ? 1 : 0
};
HRESULT hr = pVP->SetVideoProcessStreamState(
stream,
DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE,
sizeof(data),
&data
);
return hr;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Kopfzeile | dxvahd.h |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für