Bagikan melalui


struktur DXVADDI_DECODEBUFFERDESC (d3dumddi.h)

Struktur DXVADDI_DECODEBUFFERDESC menjelaskan buffer yang saat ini diteruskan dari dekoder host ke akselerator.

Sintaks

typedef struct _DXVADDI_DECODEBUFFERDESC {
  [in] HANDLE            hBuffer;
  [in] D3DDDIFORMAT      CompressedBufferType;
  [in] UINT              BufferIndex;
  [in] UINT              DataOffset;
  [in] UINT              DataSize;
  [in] UINT              FirstMBaddress;
  [in] UINT              NumMBsInBuffer;
  [in] UINT              Width;
  [in] UINT              Height;
  [in] UINT              Stride;
  [in] UINT              ReservedBits;
  [in] DXVADDI_PVP_HW_IV *pCipherCounter;
} DXVADDI_DECODEBUFFERDESC;

Anggota

[in] hBuffer

Handel ke buffer.

[in] CompressedBufferType

Nilai yang diketik D3DDDIFORMAT yang menunjukkan format piksel buffer.

[in] BufferIndex

Dicadangkan. Jangan gunakan anggota ini. Untuk informasi lebih lanjut, lihat bagian Keterangan.

[in] DataOffset

Offset data yang relevan dari awal buffer, dalam byte. Penggunaan anggota ini saat ini dibatasi untuk nilai nol.

[in] DataSize

Jumlah data yang relevan dalam buffer, dalam byte. Lokasi byte terakhir konten dalam buffer adalah nilai DataOffset ditambah nilai DataSize dikurangi 1.

[in] FirstMBaddress

Alamat blok makro blok makro pertama dalam buffer yang diteruskan ke akselerator. Alamat blok makro diberikan dalam urutan pemindaian raster. Alamat ditentukan oleh anggota struktur DXVA_PictureParameters . Tabel berikut ini memperlihatkan contoh alamat blok makro.

Blok makro Alamat
Kiri atas Nol
Kanan atas wPicWidthInMBminus1 dari DXVA_PictureParameters.
Kiri bawah wPicHeightInMBminus1 x (wPicWidthInMBminus1+1). Anggota DXVA_PictureParameters.
Kanan bawah (wPicHeightInMBminus1+1) x (wPicWidthInMBminus1+1)-1. Anggota DXVA_PictureParame

Anggota FirstMBaddress harus nol jika buffer data adalah salah satu jenis berikut: parameter pendekodean gambar, matriks kuantisasi terbalik, kontrol potongan, data bitstream, AYUV, IA44/AI44, DPXD, Sorotan, dan DCCMD.

Jika buffer data adalah buffer data blok perbedaan residu, FirstMBaddress harus memiliki nilai yang sama seperti untuk buffer perintah kontrol makroblok yang sesuai.

[in] NumMBsInBuffer

Jumlah blokir makro data dalam buffer, termasuk makroblock yang dilewati. Anggota ini harus nol jika buffer data adalah salah satu jenis berikut: parameter pendekodean gambar, matriks kuantisasi terbalik, AYUV, IA44/AI44, DPXD, Sorotan, atau DCCMD.

Nilai untuk NumMBsInBuffer bergantung pada jenis buffer data yang sedang digunakan, seperti yang diperlihatkan dalam tabel berikut.

Jenis buffer Nilai NumMBsInBuffer
Perintah kontrol macroblock Jumlah semua nilai untuk MBskipsFollowing, ditambahkan ke jumlah perintah kontrol makroblock dalam buffer perintah kontrol makroblok.
Blok perbedaan residu Nilai yang sama seperti untuk buffer perintah kontrol makroblok yang sesuai.
Perintah kontrol iringan Nilai anggota wNumberMBsInSlice dari struktur DXVA_SliceInfo dalam buffer kontrol ilis.
Aliran bit Nilai yang sama seperti untuk buffer perintah kontrol ilis yang sesuai.

[in] Width

Dicadangkan. Jangan gunakan anggota ini. Untuk informasi lebih lanjut, lihat bagian Keterangan.

[in] Height

Dicadangkan. Jangan gunakan anggota ini. Untuk informasi lebih lanjut, lihat bagian Keterangan.

[in] Stride

Dicadangkan. Jangan gunakan anggota ini. Untuk informasi lebih lanjut, lihat bagian Keterangan.

[in] ReservedBits

Bit cadangan yang digunakan untuk pengemasan dan penyelarasan. Anggota ini harus nol.

[in] pCipherCounter

Penunjuk ke struktur DXVADDI_PVP_HW_IV yang berisi nilai jalur video (PVP) yang dilindungi 128-bit.

Keterangan

Array struktur DXVADDI_DECODEBUFFERDESC disebut sebagai daftar deskripsi buffer. Ketika satu set buffer dikirim dari dekoder host ke akselerator perangkat keras, daftar deskripsi buffer dikirim untuk menjelaskan buffer. Daftar deskripsi buffer berisi satu struktur DXVADDI_DECODEBUFFERDESC untuk setiap buffer dalam set ini. Daftar deskripsi buffer dimulai dengan struktur DXVADDI_DECODEBUFFERDESC untuk buffer pertama dari jenis pertama, diikuti oleh struktur DXVADDI_DECODEBUFFERDESC untuk buffer berikutnya dengan jenis yang sama, dan sebagainya. Daftar deskripsi buffer kemudian dilanjutkan dengan struktur DXVADDI_DECODEBUFFERDESC untuk buffer pertama dari jenis berikutnya, dan sebagainya. Seluruh daftar ini terkandung dalam struktur D3DDDIARG_DECODEEXECUTE .

Karena Microsoft DirectX Video Acceleration (VA) versi 2.0 menggunakan permukaan Microsoft Direct3D daripada permukaan privat yang digunakan DirectX VA 1.0, driver tampilan mode pengguna memperoleh nilai untuk indeks, lebar, tinggi, dan langkah dari jenis buffer terkompresi yang diberikan daripada dari nilai di anggota BufferIndex, Lebar, Tinggi, dan Stride . Bahkan, runtime Microsoft Direct3D menetapkan anggota ini ke nol.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows.
Header d3dumddi.h (termasuk D3dumddi.h)

Lihat juga

D3DDDIARG_DECODEEXECUTE

DXVADDI_PVP_HW_IV

DXVA_PictureParameters

DXVA_SliceInfo