DirectSound подступается к звуковому оборудованию через hardware-abstraction layer (HAL) - интерфейс, который осуществляется драйвером аудио устрйоства. DirectSound HAL предоставляет следующий возможности:
Драйвер устройства не выполняет программной эмуляции; он просто сообщает возможности оборудования DirectSound и передает запросы DirectSound к аппаратуре. Если аппаратура не может выполнить запрошенную операцию, драйвер устройства генерирует отчет об ошибке и DirectSound эмулирует эту операцию. Ваше приложение может использовать DirectSound, если runtime-библиотеки DirectX присутствуют на компьютере пользователя. Если звуковое оборудование не имеет установленного драйвера DirectSound, DirectSound использует свой hardware-emulation layer (HEL), включающий в себя использование Windows Multimedia Waveform-Audio функций (waveIn, waveOut). Большинство функций DirectSound будет доступно через использование HEL, но конечно аппаратное ускорение не будет доступно. DirectSound автоматически использует аппаратное звуковое ускорение, вкдючающее в себя аппаратное микширование и аппаратная память под звуковые буфера. Вашему приложению не надо специально указывать об использовании аппаратного ускорения. Если же все-таки вам надо проверить возможность такового, вы можете получить от DirectSound в период выполнения полную информацию о доступных возможностях звуковой карты, а затем использовать свои определенные процедуры для наилучшего использования каких-либо специфических функций карты. Вы даже можете указать какие звуковые буфера должны использовать аппаратное ускорение. |
>>> Реклама <<< |