Bagikan melalui


enumerasi D3D12_VIDEO_DECODE_TIER (d3d12video.h)

Menentukan tingkat pendekodean dekoder video perangkat keras, yang menentukan format tekstur dan buffer yang ditentukan aplikasi yang diperlukan.

Sintaks

typedef enum D3D12_VIDEO_DECODE_TIER {
  D3D12_VIDEO_DECODE_TIER_NOT_SUPPORTED,
  D3D12_VIDEO_DECODE_TIER_1,
  D3D12_VIDEO_DECODE_TIER_2,
  D3D12_VIDEO_DECODE_TIER_3
} ;

Konstanta

 
D3D12_VIDEO_DECODE_TIER_NOT_SUPPORTED
Pendekodean video tidak didukung.
D3D12_VIDEO_DECODE_TIER_1
Di tingkat 1, dekoder perangkat keras mengharuskan aplikasi mengalokasikan tekstur referensi sebagai array tekstur. Ini untuk mengakomodasi persyaratan perangkat keras bahwa tekstur "dekat" di ruang alamat karena perangkat keras tidak mendukung penunjuk ukuran penuh untuk setiap buffer gambar individu. Sebaliknya memiliki satu pointer dan offset bit yang lebih terbatas. Untuk informasi selengkapnya tentang array tekstur, lihat Pengenalan Tekstur di Direct3D 11.

Jika perangkat keras decoder memerlukan tata letak memori unik yang tidak didukung untuk operasi pada mesin lain atau operasi video yang berbeda, dekoder dapat mengatur bendera konfigurasi D3D12_VIDEO_DECODE_CONFIGURATION_FLAG_REFERENCE_ONLY_ALLOCATIONS_REQUIRED dalam struktur D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT saat dikueri untuk dukungan profil. Bendera ini menunjukkan bahwa aplikasi harus mengalokasikan referensi dengan bendera D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY . Aplikasi harus menggunakan struktur D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS untuk mengatur output khusus referensi jika output diperlukan sebagai bingkai referensi di masa mendatang. Bingkai output yang diteruskan ke ID3D12VideoCommandList::D ecodeFrame adalah sumber daya D3D12 yang dapat dikonsumsi oleh bagian lain dari alur dan tidak boleh memiliki bendera D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY.

#### Persyaratan Tingkat 1 untuk buffer input terkompresi
- Semua irisan untuk bingkai tertentu harus ditempatkan secara berurutan dan harus berdekatan, yaitu tidak boleh ada celah di antara irisan. Buffer kontrol ipotong harus menentukan parameter offset dan ukuran yang memenuhi persyaratan ini.
- Irisan pertama harus dimulai pada batas 128 Byte. Offset yang diatur dalam struktur D3D12_VIDEO_DECODE_COMPRESSED_BITSTREAM harus kelipatan 128 Byte.
- Decoding didukung dari buffer yang dialokasikan dengan D3D12_MEMORY_POOL_L0. Ini selalu merupakan memori sistem, tetapi masih buffer D3D12.
- Decoding didukung dari buffer yang dialokasikan dengan D3D12_MEMORY_POOL_L1, kumpulan default, termasuk yang dialokasikan dengan D3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE.
D3D12_VIDEO_DECODE_TIER_2
Dalam dekode tingkat 2, tekstur dapat direferensikan sebagai array tekstur atau sebagai array sumber daya 2D tekstur terpisah (setiap sumber daya memiliki ukuran array 1). Ini lebih fleksibel untuk pemanggil dan penting dalam skenario di mana resolusi sering berubah seperti dalam video streaming, karena array tekstur hanya dapat dialokasikan dan dibatalkan alokasinya sebagai satu unit, tetapi sumber daya 2D tekstur terpisah dapat dialokasikan dan dialokasikan secara individual.

Jika perangkat keras dekode memerlukan format pemetakan unik yang tidak didukung untuk operasi pada mesin lain atau operasi video yang berbeda, dekoder dapat mengatur bendera konfigurasi D3D12_VIDEO_DECODE_CONFIGURATION_FLAG_REFERENCE_ONLY_ALLOCATIONS_REQUIRED dalam struktur D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT saat dikueri untuk dukungan profil. Bendera ini menunjukkan bahwa aplikasi harus mengalokasikan referensi dengan bendera D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY . Aplikasi harus menggunakan struktur D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS untuk mengatur output referensi hanya jika output diperlukan sebagai bingkai referensi di masa mendatang. Bingkai output yang diteruskan ke ID3D12VideoCommandList::D ecodeFrame adalah sumber daya D3D12 yang dapat dikonsumsi oleh bagian lain dari alur dan tidak boleh memiliki bendera D3D12_RESOURCE_FLAG_VIDEO_DECODE_REFERENCE_ONLY.

Persyaratan #### Tingkat 2 untuk buffer input terkompresi

Persyaratan ini identik dengan persyaratan tingkat 1.

- Semua irisan untuk bingkai tertentu harus ditempatkan secara berurutan dan harus berdekatan, yaitu tidak boleh ada celah di antara irisan. Buffer kontrol ipotong harus menentukan parameter offset dan ukuran yang memenuhi persyaratan ini.
- Irisan pertama harus dimulai pada batas 128 Byte. Offset yang diatur dalam struktur D3D12_VIDEO_DECODE_COMPRESSED_BITSTREAM harus kelipatan 128 Byte.
- Decoding didukung dari buffer yang dialokasikan dengan D3D12_MEMORY_POOL_L0. Ini selalu merupakan memori sistem, tetapi masih buffer D3D12.
- Decoding didukung dari buffer yang dialokasikan dengan D3D12_MEMORY_POOL_L1, kumpulan default, termasuk yang dialokasikan dengan D3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE.
-
D3D12_VIDEO_DECODE_TIER_3
Bidang ini dicadangkan.

Persyaratan

Persyaratan Nilai
Header d3d12video.h