Metode IMiniportWaveRTStreamNotification::AllocateBufferWithNotification (portcls.h)
Metode ini AllocateAudioBufferWithNotification
mengalokasikan buffer siklik untuk data audio saat Anda ingin menerapkan pemberitahuan peristiwa berbasis DMA. Jika Anda tidak menginginkan pemberitahuan peristiwa, Anda harus menggunakan IMiniportWaveRTStream::AllocateAudioBuffer.
Sintaks
NTSTATUS AllocateBufferWithNotification(
[in] ULONG NotificationCount,
[in] ULONG RequestedSize,
[out] PMDL *AudioBufferMdl,
[out] ULONG *ActualSize,
[out] ULONG *OffsetFromFirstPage,
[out] MEMORY_CACHING_TYPE *CacheType
);
Parameter
[in] NotificationCount
Menentukan jumlah pemberitahuan yang diinginkan per siklus buffer. Nilai yang valid adalah 1 atau 2, di mana 1 menunjukkan satu pemberitahuan di akhir buffer siklik dan 2 menunjukkan dua pemberitahuan per siklus buffer, satu di titik tengah buffer dan satu di akhir.
[in] RequestedSize
Menentukan ukuran yang diminta, dalam byte, dari buffer audio.
[out] AudioBufferMdl
Penunjuk output untuk daftar deskriptor memori (MDL) yang menjelaskan buffer audio. Parameter ini menunjuk ke variabel pointer yang dialokasikan pemanggil tempat metode menulis pointer ke MDL.
[out] ActualSize
Penunjuk output untuk ukuran aktual, dalam byte, dari buffer yang dialokasikan. Parameter ini menunjuk ke variabel ULONG tempat metode menulis nilai ukuran.
[out] OffsetFromFirstPage
Penunjuk output untuk offset (dalam byte) buffer, dari awal halaman pertama di MDL. Parameter ini menunjuk ke variabel ULONG yang dialokasikan pemanggil tempat metode menulis nilai offset.
[out] CacheType
Menentukan jenis penembolokan yang diminta klien untuk buffer audio. Parameter ini adalah nilai enumerasi MEMORY_CACHING_TYPE
Nilai kembali
AllocateBufferWithNotification
mengembalikan STATUS_SUCCESS jika panggilan berhasil. Jika tidak, metode mengembalikan kode status kesalahan yang sesuai. Tabel berikut ini memperlihatkan beberapa kemungkinan kode status kesalahan.
Menampilkan kode | Deskripsi |
---|---|
|
Driver tidak mendukung kombinasi atribut buffer yang ditentukan. |
|
Tidak tersedia cukup memori untuk mengalokasikan buffer. |
|
Perangkat belum siap. |
Keterangan
AllocateBufferWithNotification
metode untuk mengalokasikan buffer siklik yang nantinya dapat dipetakan driver port ke ruang alamat virtual klien. AllocateBufferWithNotification
beroperasi dengan cara yang mirip dengan IMiniportWaveRTStream::AllocateAudioBuffer. Selain itu, AllocateBufferWithNotification
mengidentifikasi driver port WaveRT bahwa pemberitahuan peristiwa berbasis DMA diinginkan, dan menentukan berapa banyak pemberitahuan per siklus buffer siklik yang diperlukan.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan sistem operasi Windows yang lebih baru. |
Target Platform | Universal |
Header | portcls.h |
IRQL | Tingkat pasif. |
Lihat juga
IMiniportWaveRTStream::AllocateAudioBuffer
IMiniportWaveRTStreamNotification
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