Skip to content

tinelix/OpenDSE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

112 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open Digital Sound Engine

FOSS cross-platform audio library and API for Windows and Linux, including legacy systems.

Current status: Public Alpha Testing, WIP

Main Features

  • LPCM 8 and 16-bit samples playback
    supports local uncompressed RIFF/WAV files only yet

  • Lightweight in use
    depending on the OS, OpenDSE consumes on average from 400 kB to 2 MB of RAM and up to 5% of the CPU load

  • Multiple audio frontends
    supports WASAPIv2 and WaveOut for Windows and ALSA for Linux

  • Backward compatibility
    Windows NT 3.1* or above, Linux 2.4 with ALSA 0.9.1** or above is required

  • RMS value for each frame
    allows developers to create simple sound visualizations

* if the library is compiled in Microsoft Visual C++ 2.0
** tested in SUSE Linux 8.1

Building

Windows

Minimal target: Windows NT 3.1 with Microsoft Visual C++ 2.0

To use OpenDSE in Microsoft Visual C++, run the BAT script in the VS Command Prompt profile:

cd [OpenDSE root]\build
make

...and then use OpenDSE.lib from out/bin in your projects to import OpenDSE.

Note

  1. Windows NT 4.0 and below do not support interactive variable input. To build with debug symbols on these systems, specify the following arguments to the script:
make vc2 y
  1. 16-bit Windows versions is not supported.

Linux

Mininal target: GCC 3.2 with glibc 2.0 and libasound2 0.9.1+

To use OpenDSE in GCC, you need to follow several steps:

  1. Install the libasound2 development package from your distribution:
# Ubuntu / Debian
sudo apt-get install libasound2-dev
# openSUSE / SUSE Linux
sudo zypper install alsa-devel # or install from YaST2
# Arch/Artix Linux
sudo pacman -S alsa-lib
# Gentoo Linux
sudo emerge media-libs/alsa-lib

...or build it yourself;

  1. Run the Shell script in your terminal:
cd [OpenDSE root]/build
chmod +x ./make.sh                        # if the *.sh script does not run
./make.sh --prefix /usr/local/lib
  1. Use libopendse.a from out/bin in your projects to import OpenDSE.

Note

For extended support of legacy Linux distributions, a special flag --enable-legacy-support is provided, as well as --enable-debug for building the library with debug symbols.

Using OpenDSE in your own programs

Use the opendse.h C/C++ header file from include directory, after copying all the necessary header files to the root of your project.

License

OpenDSE licensed under BSD 3-Clause License.

Absolutely free and accessible to everyone: FOSS developers, businesses, and hobbyists, which is something BASS with an alternative implementation certainly cannot boast.

About

Open Digital Sound Engine, specially designed for the OpenDSS

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors