struktur DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA (dxvahd.h)
Menentukan ruang warna untuk aliran input Microsoft DirectX Video Acceleration High Definition (DXVA-HD).
Sintaks
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;
Anggota
Type
Menentukan apakah aliran input berisi video atau grafik. Perangkat dapat mengoptimalkan pemrosesan berdasarkan jenisnya. Nilai status default adalah 0 (video).
Nilai | Makna |
---|---|
|
Video. |
|
Grafis. |
RGB_Range
Menentukan rentang warna RGB. Nilai status default adalah 0 (rentang penuh).
Nilai | Makna |
---|---|
|
Rentang penuh (0-255). |
|
Rentang terbatas (16-235). |
YCbCr_Matrix
Menentukan matriks transfer YCbCr. Nilai status default adalah 0 (BT.601).
Nilai | Makna |
---|---|
|
ITU-R BT.601. |
|
ITU-R BT.709. |
YCbCr_xvYCC
Menentukan apakah aliran input menggunakan YCbCr konvensional atau YCbCr (xvYCC) yang diperluas. Nilai status default adalah 0 (YCbCr konvensional).
Nilai | Makna |
---|---|
|
YCbCr Konvensional. |
|
Extended YCbCr (xvYCC). |
Reserved
Value
Keterangan
Anggota RGB_Range berlaku untuk input RGB, sementara anggota YCbCr_Matrix dan YCbCr_xvYCC berlaku untuk input YCbCr (YUV).
Dalam beberapa situasi, perangkat mungkin melakukan konversi warna perantara pada aliran input. Jika demikian, ia menggunakan bendera yang berlaku untuk kedua spasi warna. Misalnya, perangkat mengonversi dari RGB ke YCbCr. Jika anggota RGB_Range adalah 0 dan anggota YCbCr_Matrix adalah 1, perangkat akan mengonversi dari RGB rentang penuh ke BT.709 YCbCr.
Jika perangkat mendukung xvYCC, perangkat mengembalikan bendera kemampuan DXVAHD_DEVICE_CAPS_xvYCC di anggota DeviceCaps dari struktur DXVAHD_VPDEVCAPS . Jika tidak, perangkat mengabaikan nilai YCbCr_xvYCC dan memperlakukan semua input YCbCr sebagai YCbCr konvensional. Untuk mendapatkan kemampuan perangkat, panggil IDXVAHD_Device::GetVideoProcessorDeviceCaps.
Contoh
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;
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 7 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 R2 [hanya aplikasi desktop] |
Header | dxvahd.h |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk