Metode IDirectXVideoProcessor::VideoProcessBlt (dxva2api.h)
Melakukan operasi proses video pada satu atau beberapa sampel input dan menulis hasilnya ke permukaan Direct3D9.
Sintaks
HRESULT VideoProcessBlt(
[in] IDirect3DSurface9 *pRenderTarget,
[in] const DXVA2_VideoProcessBltParams *pBltParams,
[in] const DXVA2_VideoSample *pSamples,
[in] UINT NumSamples,
[out] HANDLE *pHandleComplete
);
Parameter
[in] pRenderTarget
Penunjuk ke antarmuka IDirect3DSurface9 dari permukaan Direct3D. Output dari operasi pemrosesan video akan ditulis ke permukaan ini. Permukaan mungkin salah satu dari jenis berikut:
- Permukaan yang dibuat dengan memanggil IDirectXVideoAccelerationService::CreateSurface dengan bendera DXVA2_VideoProcessRenderTarget . Anda juga dapat menggunakan bendera DXVA2_VideoSoftwareRenderTarget , tetapi hanya ketika GUID perangkat DXVA2_VideoProcSoftwareDevice (perangkat pemrosesan video perangkat lunak).
- Permukaan yang dibuat dari perangkat Direct3D dengan bendera penggunaan D3DUSAGE_RENDERTARGET .
- Rantai pertukaran Direct3D.
[in] pBltParams
Penunjuk ke struktur DXVA2_VideoProcessBltParams yang menjelaskan operasi pemrosesan video yang akan dilakukan.
[in] pSamples
Penunjuk ke array struktur DXVA2_VideoSample yang berisi sampel input. Harus ada setidaknya satu elemen dalam array.
Jumlah maksimum sampel input diberikan oleh MAX_DEINTERLACE_SURFACES konstanta, yang ditentukan dalam file header dxva2api.h.
[in] NumSamples
Jumlah elemen dalam array pSamples .
[out] pHandleComplete
Dipesan; atur ke NULL.
Mengembalikan nilai
Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Metode berhasil. |
|
Kesalahan pengandar internal. |
|
Argumen tidak valid. |
Keterangan
Ketika metode kembali, operasi mungkin tidak selesai.
Jika metode mengembalikan E_INVALIDARG, periksa hal berikut:
- Jumlah sampel input (NumSamples) harus kurang dari atau sama dengan MAX_DEINTERLACE_SURFACES.
- Permukaan Direct3D harus menjadi target yang valid untuk VideoProcessBlt. Lihat deskripsi parameter pRT untuk detailnya.
- Waktu presentasi (TargetFrame) yang diberikan dalam pBltParams harus cocok dengan waktu mulai dan berakhir untuk gambar saat ini dari aliran utama. Secara khusus, harus kurang dari waktu akhir dan lebih besar dari atau sama dengan waktu mulai. Perhatikan bahwa sampel pertama dalam pSamples mungkin bukan gambar saat ini, jika array pSamples berisi gambar referensi mundur. Untuk informasi selengkapnya, lihat Input Urutan Sampel.
- Persegi panjang target (TargetRect) yang diberikan dalam pBltParams tidak boleh lebih besar dari permukaan tujuan (pRT).
- Ukuran konstriksi (ConstrictionSize) yang diberikan dalam pBltParams tidak boleh kurang dari nol atau lebih besar dari persegi target.
- Komponen alfa warna latar belakang harus opqaue.
- Nilai ProcAmp yang diberikan dalam pBltParams harus valid. Untuk pengaturan ProcAmp apa pun yang didukung oleh driver, nilai-nilai ini harus berada dalam rentang yang dikembalikan oleh metode IDirectXVideoProcessor::GetProcAmpRange .
- Filter kebisingan dan detail yang diberikan dalam pBltParams harus valid. Untuk filter apa pun yang didukung oleh driver, nilai-nilai ini harus berada dalam rentang yang dikembalikan oleh metode IDirectXVideoProcessor::GetFilterPropertyRange .
- Nilai alfa yang diberikan dalam pBltParams harus dalam rentang [0...1] inklusif.
- Untuk setiap sampel input yang diberikan dalam pSamples:
- Waktu mulai tidak boleh lebih besar dari waktu akhir.
- Penunjuk IDirect3DSurface9 yang valid harus disediakan.
- Persegi panjang sumber tidak boleh lebih besar dari permukaan input.
- Persegi panjang tujuan tidak boleh lebih besar dari permukaan tujuan.
- Alfa planar harus berada dalam rentang [0...1] inklusif.
- Untuk semua persegi panjang (sumber, tujuan, dan target), persegi tidak dapat dibalik (kiri > kanan atau atas > bawah) atau memiliki nilai negatif.
Persyaratan
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | dxva2api.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