Объект буфера DirectSound представляет собой буфер с данными в формате pulse code modulation (PCM). Объект буфера используется для старта, остановки и приостановки проигрывания, а также для установки таких свойств проигрывания, как формат и частота. Главный звуковой буфер содержит звук, который пользователь услышит. Вторичные звуковые буфера содержат одиночный сэмпл или аудио поток. DirectSound автоматически создает главный буфер, оставляя на совесть приложения создание вторичных буферов. Когда звуки во вторичных буферах проигрываются, DirectSound смешивает их в главном буфере и посылает на выводящее устройство (аудиокарту). Количество вторичных буферов ограничено только вашей фантазией и мощщами компьютера, проигрывающего звук. Обычно, могут быть слышны буфера только одного приложения, активного в данный момент, потому что только одно приложение имеет доступ к одному устройству DirectSound в определенный момент времени. В зависимости от типа карты, буфера DirectDraw физически могут существовать, как RAM на звуковой карте, память wave-table, канал прямого доступа к памяти (Direct Memory Access - DMA) или виртуальный буфер (для звуковых карт построенный на основе I/O портов). Если нет возможности аппаратного создания буферов DirectSound, происходит программная эмуляция с созданием буферов в системной памяти. Несколько приложений могут создавать объекты DirectSound для одного звукового устройства. Когда фокус меняется между приложениями, аудио вывод автоматически переключается с одного потока на другой. Как результат, приложения избавлены от необходимости постоянно проигрывать и останавливать свои буфера при изменении фокуса. |
>>> Реклама <<< |