OpenAL

OpenAL Soft是OpenAL 3D音频API 的一个软件实现。OpenAL提供了在虚拟3D环境中播放音频的功能。 ( OpenAL Soft is a software implementation of OpenAL, a 3D audio API. OpenAL provides capabilities for playing audio in a virtual 3D environment. )

  • Owner: kcat/openal-soft
  • Platform:
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

OpenAL Soft 是 OpenAL 3D 音频API的LGPL许可,跨平台软件实现。 它是从开源的Windows版本,最初从 openal.org 的SVN存储库(现已停止)分叉。OpenAL提供了在虚拟3D环境中播放音频的功能。 距离衰减,多普勒频移和定向声发射器是API处理的特征之一。 更高级的效果,包括空气吸收,遮挡和环境混响,可通过EFX扩展。 它还便于流音频,多通道缓冲区和音频捕获。

此库是对已弃用的OpenAL示例实现(SI)的兼容更新/替换。 最初的想法是分叉旧的Windows版本,尝试加速ALSA版本。 ALSA,OSS,DirectSound,PulseAudio,MMDevAPI,CoreAudio,Solaris,QSA,SoundIO,OpenSL,WinMM等软件混合代码最终被修改为跨平台, PortAudio,“Null”输出和.wav写器。

OpenAL Soft的代码已经改进,支持单声道,立体声,4声道,5.1,6.1,7.1,HRTF和B格式输出。 OpenAL Soft不支持Vorbis和MP3扩展,但是这些都被视为不推荐使用。 但它支持一些较新的扩展,如AL_EXT_FLOAT32和AL_EXT_MCFORMATS用于多通道和浮点格式,以及ALC_EXT_EFX用于环境音频效果等。

Overview

Name With Ownerkcat/openal-soft
Primary LanguageC++
Program languageC (Language Count: 3)
Platform
License:Other
Release Count38
Last Release Namemakemhr (Posted on )
First Release Nameopenal-soft-1.0.38 (Posted on )
Created At2014-08-24 09:13:17
Pushed At2024-04-27 01:59:38
Last Commit At2024-04-26 18:30:10
Stargazers Count2k
Watchers Count87
Fork Count509
Commits Count9.2k
Has Issues Enabled
Issues Count763
Issue Open Count201
Pull Requests Count153
Pull Requests Open Count8
Pull Requests Close Count63
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

OpenAL soft

master branch CI status : Build Status Windows Build Status

OpenAL Soft is an LGPL-licensed, cross-platform, software implementation of the OpenAL 3D audio API. It's forked from the open-sourced Windows version available originally from openal.org's SVN repository (now defunct).
OpenAL provides capabilities for playing audio in a virtual 3D environment. Distance attenuation, doppler shift, and directional sound emitters are among the features handled by the API. More advanced effects, including air absorption, occlusion, and environmental reverb, are available through the EFX extension. It also facilitates streaming audio, multi-channel buffers, and audio capture.

More information is available on the official website

Source Install

To install OpenAL Soft, use your favorite shell to go into the build/
directory, and run:

cmake ..

Assuming configuration went well, you can then build it, typically using GNU
Make (KDevelop, MSVC, and others are possible depending on your system setup
and CMake configuration).

Please Note: Double check that the appropriate backends were detected. Often,
complaints of no sound, crashing, and missing devices can be solved by making
sure the correct backends are being used. CMake's output will identify which
backends were enabled.

For most systems, you will likely want to make sure ALSA, OSS, and PulseAudio
were detected (if your target system uses them). For Windows, make sure
DirectSound was detected.

Utilities

The source package comes with an informational utility, openal-info, and is
built by default. It prints out information provided by the ALC and AL sub-
systems, including discovered devices, version information, and extensions.

Configuration

OpenAL Soft can be configured on a per-user and per-system basis. This allows
users and sysadmins to control information provided to applications, as well
as application-agnostic behavior of the library. See alsoftrc.sample for
available settings.

Acknowledgements

Special thanks go to:

  • Creative Labs for the original source code this is based off of.
  • Christopher Fitzgerald for the current reverb effect implementation, and
    helping with the low-pass and HRTF filters.
  • Christian Borss for the 3D panning code previous versions used as a base.
  • Ben Davis for the idea behind a previous version of the click-removal code.
  • Richard Furse for helping with my understanding of Ambisonics that is used by
    the various parts of the library.
To the top