DirectSound
DirectSound (англ. direct — прямой, непосредственный, и англ. sound — звук) — программный интерфейс (API) в системе Windows для воспроизведения и записи звука. Был основан на базе звуковой карты Creative Sound Blaster 16 (1992). Входит как компонентная часть расширения DirectX.
Интерфейс DirectSound был разработан в середине 1990-х в дополнение к стандартному звуковому интерфейсу MME, главным образом для воспроизведения звуков в играх и других приложениях реального времени. Впоследствии к нему были добавлены интерфейсы DirectSoundCapture, предназначенный для записи звука, и DirectSound3D, позволяющий работать с пространственными звуками.
DirectSound имеет объектно-ориентированную структуру, во многом похожую на COM, которая наиболее удобно используется в языке C++.
Интерфейс сочетает в себе свойства как низкого уровня (приближённость непосредственно к аппаратуре (звуковому адаптеру компьютера), высокая эффективность), так и высокого (независимость от архитектуры конкретного устройства, простота и гибкость программирования).
Работая с DirectSound, программист описывает нужное ему количество источников звука, указывая свойства каждого из источников (вид звучания, его громкость, высота, пространственное положение, направление и скорость движения в DirectSound3D). Затем в любой момент любой источник может быть включён, при этом его звучание добавляется к звучанию остальных источников (звуки смешиваются). В любой момент могут быть изменены свойства источника, либо он может быть выключен.
Звуковая подсистема Windows автоматически распределяет ресурсы звуковой платы между активными источниками, стараясь использовать их наиболее эффективно и задействуя возможности аппаратного ускорения (при их наличии). При отсутствии у платы тех или иных возможностей аппаратного ускорения они эмулируются программно за счёт ресурсов центрального процессора.
Начиная с Windows Vista API DirectSound3D удален из DirectX и для старых игр предлагается использовать ПО Creative ALchemy перенаправляющее вызовы DirectSound3D и EAX в свободный API OpenAL[1]. В качестве замены всей подсистемы DirectSound Microsoft предлагал использовать XAudio2, при этом в Windows XP вызовы XAudio2 еще транслировались в DirectSound[2].
См. также[править | править код]
- DirectMusic[en]
- XAudio2
- Universal Audio Architecture[en]
- MIDI
- EAX
- OpenAL
- AMD TrueAudio
- NVIDIA VRWorks Audio
- A3D
- BASS
Примечания[править | править код]
- ↑ Creative: ALchemy — многоканальный звук в играх старого поколения (недоступная ссылка). iXBT.com. Дата обращения: 16 января 2020. Архивировано 18 мая 2013 года.
- ↑ XAudio2 (англ.) // Wikipedia. — 2018-08-14.
Ссылки[править | править код]
Для улучшения этой статьи желательно: |