WaveCyclic Miniport Driver
Importante L'uso di WavePci non è più consigliato, invece usare WaverRT.
Un driver miniport WaveCyclic gestisce le funzioni dipendenti dall'hardware di un dispositivo wave-rendering o wave-capture che usa un buffer ciclico per i dati audio. Il buffer ciclico è in genere un singolo blocco di memoria fisica contigua e può trovarsi in un'area di memoria scelta dal driver. Un dispositivo con una delle limitazioni seguenti deve fornire un driver miniport WaveCyclic anziché un driver miniport WavePci:
Il dispositivo non dispone dell'hardware DMA.
L'hardware DMA del dispositivo può accedere ai dati solo in un buffer che occupa un singolo blocco di memoria fisica contigua.
L'hardware DMA del dispositivo non è in grado di accedere ai dati in tutte le aree della memoria fisica.
Un driver miniport WaveCyclic deve implementare due interfacce:
L'interfaccia miniport supporta l'inizializzazione del driver miniport e la creazione del flusso.
L'interfaccia del flusso gestisce un flusso d'onda ed espone la maggior parte delle funzionalità del driver miniport.
L'interfaccia miniport, IMiniportWaveCyclic, eredita i metodi nell'interfaccia IMiniport . IMiniportWaveCyclic offre i metodi aggiuntivi seguenti:
Inizializza l'oggetto miniport.
IMiniportWaveCyclic::NewStream
Crea un nuovo oggetto flusso.
L'interfaccia di flusso IMiniportWaveCyclicStream eredita i metodi nell'interfaccia IUnknown . IMiniportWaveCyclicStream offre i metodi aggiuntivi seguenti:
IMiniportWaveCyclicStream::GetPosition
Ottiene la posizione corrente del dispositivo nel flusso d'onda.
IMiniportWaveCyclicStream::NormalizePhysicalPosition
Converte un valore di posizione del buffer fisico in un valore basato sul tempo.
IMiniportWaveCyclicStream::SetFormat
Imposta il formato dei dati del flusso d'onda.
IMiniportWaveCyclicStream::SetNotificationFreq
Imposta la frequenza con cui si verificano gli interrupt di notifica.
IMiniportWaveCyclicStream::SetState
Imposta lo stato del flusso d'onda.
IMiniportWaveCyclicStream::Silence
Copia il silenzio in un buffer.