Bagikan melalui


struktur DXVAHD_STREAM_DATA (dxvahd.h)

Berisi data per aliran untuk metode IDXVAHD_VideoProcessor::VideoProcessBltHD .

Sintaks

typedef struct _DXVAHD_STREAM_DATA {
  BOOL              Enable;
  UINT              OutputIndex;
  UINT              InputFrameOrField;
  UINT              PastFrames;
  UINT              FutureFrames;
  IDirect3DSurface9 **ppPastSurfaces;
  IDirect3DSurface9 *pInputSurface;
  IDirect3DSurface9 **ppFutureSurfaces;
} DXVAHD_STREAM_DATA;

Anggota

Enable

Menentukan apakah aliran input ini diaktifkan. Jika nilainya TRUE, metode VideoProcessBltHD memadukan aliran ini ke permukaan output. Jika tidak, aliran tidak di-blit. Jumlah maksimum aliran yang dapat diaktifkan pada satu waktu diberikan di anggota MaxInputStreams dari struktur DXVAHD_VPDEVCAPS .

OutputIndex

Nomor indeks berbasis nol dari bingkai output. Lihat Keterangan.

InputFrameOrField

Nomor indeks berbasis nol dari bingkai atau bidang input. Lihat Keterangan.

PastFrames

Jumlah bingkai referensi sebelumnya. Nilai ini harus kurang dari atau sama dengan nilai anggota PastFrames dari struktur DXVAHD_VPCAPS .

FutureFrames

Jumlah bingkai referensi di masa mendatang. Nilai ini harus kurang dari atau sama dengan nilai anggota FutureFrames dari struktur DXVAHD_VPCAPS .

ppPastSurfaces

Penunjuk ke array penunjuk IDirect3DSurface9 , yang dialokasikan oleh pemanggil. Array ini berisi bingkai referensi sebelumnya untuk operasi pemrosesan video. Jumlah elemen dalam array sama dengan nilai anggota PastFrames .

pInputSurface

Penunjuk ke antarmuka IDirect3DSurface9 dari permukaan Microsoft Direct3D yang berisi bingkai input saat ini.

ppFutureSurfaces

Penunjuk ke array penunjuk IDirect3DSurface9 , yang dialokasikan oleh pemanggil. Array ini berisi bingkai referensi di masa mendatang untuk operasi pemrosesan video. Jumlah elemen dalam array sama dengan nilai anggota FutureFrames .

Keterangan

Permukaan Input

Permukaan Direct3D harus dialokasikan di kumpulan memori yang ditentukan oleh anggota InputPool dari struktur DXVAHD_VPDEVCAPS . Jenis permukaan berikut dapat digunakan: Bingkai referensi masa lalu dan mendatang harus ditempatkan dalam array dalam urutan temporal, dari yang terlama hingga terbaru. Misalnya, jika T adalah bingkai input saat ini, array akan diurutkan sebagai berikut:
  • ppPastSurfaces: { ..., T-3, T-2, T-1 }
  • ppInputSurface: T
  • ppFutureSurfaces: { T+1, T+2, T+3, ... }
Struktur DXVAHD_VPCAPS menentukan jumlah bingkai referensi yang diperlukan untuk mendapatkan kualitas deinterlacing terbaik. Jika aplikasi menyediakan lebih sedikit bingkai referensi, perangkat akan kembali ke algoritma deinterlacing yang lebih sederhana. Jika tidak ada bingkai referensi yang disediakan, perangkat dapat menggunakan deinterlacing bob. Berikut adalah beberapa kasus di mana aplikasi mungkin menyediakan lebih sedikit bingkai referensi:
  • Di awal atau akhir urutan video
  • Dengan input progresif
  • Selama transisi antara input progresif dan interlaced
  • Untuk sub-aliran yang tidak memerlukan kualitas deinterlacing tinggi
  • Saat menjatuhkan bingkai

Indeks Input dan Output

Anggota OutputIndex dan InputFrameOrField digunakan untuk menghubungkan bingkai input atau bidang dengan bingkai output. Nilai anggota OutputIndex adalah siklik dan diatur ulang ke nol setelah setiap siklus.

Berikut adalah beberapa contoh pola:

  • Video progresif pada tingkat normal. Setiap bingkai input menghasilkan satu bingkai output.
    • Indeks output: 0, 0, 0, 0, ...
    • Indeks input: 0, 1, 2, 3, ...
  • Video terjalin pada tingkat normal. Setiap bingkai yang terjalin (dua bidang) menghasilkan dua bingkai output.
    • Indeks output: 0, 1, 0, 1, ...
    • Indeks input: 0, 1, 2, 3, ...
  • Video progresif pada laju output 2/1. Setiap bingkai input menghasilkan satu bingkai output.
    • Indeks output: 0, 1, 0, 1, ...
    • Indeks input: 0, 1, 2, 3, ...
  • Video terjalin pada laju output 1/2. Setiap bingkai yang terjalin menghasilkan satu bingkai output. (Dua bidang dipadukan untuk membuat satu bingkai.)
    • Indeks output: 0, 0, 0, 0, ...
    • Indeks input: 0, 2, 4, 6, ...

Persyaratan

   
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

DXVA-HD

Struktur Video Direct3D

Struktur Media Foundation