Драйвер порта WaveCyclic

Важный Использование WaveCyclic больше не рекомендуется, вместо этого используйте WaverRT.

Драйвер порта WaveCyclic управляет воспроизведением или записью потока волн с помощью звукового устройства на основе DMA, обрабатывающего звуковые данные в циклическом буфере. Это устройство является аппаратной функцией на звуковом адаптере. Как правило, адаптер является частью встроенного набора микросхем на материнской плате или подключен к звуковой карте, которая подключается к слоту PCI или ISA на материнской плате. Драйвер адаптера предоставляет соответствующий объект минипорт драйвера WaveCyclic, который связывается с объектом драйвера порта WaveCyclic для формирования волнового фильтра, способного захватывать или воспроизводить волновой поток.

Драйвер порта WaveCyclic предоставляет интерфейс IPortWaveCyclic драйверу мини-порта. IPortWaveCyclic наследует методы в базовом интерфейсе IPort. IPortWaveCyclic предоставляет следующие дополнительные методы:

IPortWaveCyclic::NewMasterDmaChannel

Создает новый главный объект канала DMA для звукового устройства со встроенным контроллером DMA.

IPortWaveCyclic::NewSlaveDmaChannel

Создает новый подчиненный объект канала DMA для звукового устройства без встроенного контроллера DMA.

IPortWaveCyclic::Notify

Уведомляет драйвер порта о том, что контроллер DMA продвинулся к новой позиции в звуковом потоке.

Объекты порта WaveCyclic и минипорта драйвера взаимодействуют друг с другом с помощью соответствующих интерфейсов IPortWaveCyclic и IMiniportWaveCyclic . Кроме того, драйвер портов взаимодействует с объектами потока драйвера минипорта через эти интерфейсы IMiniportWaveCyclicStream.