Skip to main content
Csound is a highly portable audio programming language that runs on a wide variety of platforms, from desktop computers to mobile devices and embedded systems.

Desktop platforms

macOS, Linux, and Windows support with full features

Web assembly

Run Csound in the browser using WebAssembly

iOS

Native iOS framework for iPhone and iPad

Android

Android library with JNI and Java interface

Embedded platforms

Bela, Daisy, and other embedded hardware

Platform comparison

PlatformAudio I/OMIDIReal-timeBuild system
macOSCoreAudio, JACKCoreMIDIYesCMake
LinuxALSA, JACK, PulseAudioALSA, PortMIDIYesCMake
WindowsPortAudioPortMIDIYesCMake + vcpkg
WebAssemblyWeb Audio APIWeb MIDI APIYesCMake + Emscripten
iOSCoreAudioCoreMIDIYesCMake + Xcode
AndroidOpenSL ESAndroid MIDIYesNDK + CMake
BelaBela audioBela MIDIYesCMake (cross-compile)
DaisyDaisy audio-YesCMake (cross-compile)

Requirements

All platforms require:
  • CMake: Build system (cmake.org)
  • C compiler: Complete C development toolchain
  • Flex and Bison: For the Csound parser (bison 3.8+, flex 2.6+)
Optional components:
  • C++ compiler: For some components
  • libsndfile: For soundfile I/O (can be disabled with USE_LIBSNDFILE=0)
  • Git: For cloning and syncing with the latest source

Common build options

These CMake options work across all platforms:
# Custom installation location
-DCMAKE_INSTALL_PREFIX=/path/to/install

# Disable libsndfile
-DUSE_LIBSNDFILE=0

# Disable libsamplerate
-DUSE_LIBSAMPLERATE=0

# Build plugins as separate libraries
-DBUILD_PLUGINS=1

# Use custom CMake configuration
-DCUSTOM_CMAKE=custom.cmake
View all available options:
cmake -LAH

Source code

Csound source code is available on GitHub:
git clone https://github.com/csound/csound.git
Build instructions for each platform can be found in the platform-specific pages.