Remove an errant early-out check
[dsound-openal.git] / README.md
blob710887dab918a9e5601e52588850ea43a7cfbdd8
1 # DSOAL
3 This project is for a DirectSound DLL replacement. It implements the
4 DirectSound interfaces by translating the calls to OpenAL, and fools
5 applications into thinking there is a hardware accelerated sound device. EAX is
6 also implemented (up to version 4) by using OpenAL's EAX extension, allowing
7 for environmental reverb with sound obstruction and occlusion effects.
9 Effectively, this allows DirectSound applications to enable their DirectSound3D
10 acceleration path, and turn on EAX. The actual processing is being done by
11 OpenAL with no hardware acceleration requirement, allowing it to work on
12 systems where audio acceleration is not otherwise available.
14 Or more succinctly: it enables DirectSound3D surround sound and EAX for systems
15 without the requisite hardware.
18 ## Source Code
20 To build the source, you will need [CMake](https://cmake.org/) 2.6 or newer.
21 You can either use the CMake GUI, specifying the directories for the source and
22 where the build files should go, or using one of the command-line programs, for
23 example by first making sure to be in an empty directory where the build files
24 will go (such as the provided build/ sub-directory) and running cmake with the
25 path to the source.
27 Once successfully built, it should have created dsound.dll.
30 ## Usage
32 Once built, copy dsound.dll to the same location as the desired application's
33 executable. You must also provide an OpenAL DLL in the same location, named as
34 dsoal-aldrv.dll, or else the DLL will fail to work. Some applications may need
35 to be configured to use DirectSound3D acceleration and EAX, but it otherwise
36 goes to work the next time the application is run.
38 Source releases and Windows binaries for OpenAL Soft are
39 available at its [homepage](https://openal-soft.org/).
40 Instructions are also provided there.
42 ### Environment Variables
43 The following environment variables can be set:
44 - `DSOAL_LOGLEVEL`:
45   - Values: Integer, range `0-3`
46   - Description: Set the verbosity of DSOAL logging. Level 3 enables logging of API traces. By default, a log level of `1` is used to report errors only.
47 - `DSOAL_LOGFILE`:
48   - Values: String
49   - Description: Path to a file that will be created/overwritten by DSOAL on each execution. All logging will be redirected to that file. If unset, logging it written to the process's `stderr` output.