•        4

osc.js is a library for reading and writing Open Sound Control messages in JavaScript. It works in both Node.js and in a web browser. There are several other OSC libraries available for JavaScript. However, most depend on Node.js-specific APIs. This means that they can't be run in a browser or on web-only platforms such as Chrome OS. osc.js uses only cross-platform APIs (TypedArrays and DataView), ensuring that it can run in any modern JavaScript environment.




Related Projects


A VST plugin that bridges VST data to the Open Sound Control networked domain. The plugin supports OSC scheduling and parameter control. The OscVstBridge can be used as a OSC to MIDI converter as well as a MIDI to OSC converter by using a VST host.

UnityOSC - Open Sound Control (OSC) C# classes interface for the Unity3d game engine

Based on Bespoke Open Sound Control Library by Paul Varcholik (pvarchol@bespokesoftware.org). Licensed under MIT license. Copy the src/Editor folder contents to the corresponding Editor/ folder of your Unity project. The rest can go to your e.g. Assets/ folder of the same project.

party-mode - An experimental music visualizer using d3.js and the web audio api.

a somewhat-technical overview===========================Using the web audio api, I can get an array of numbers which corresponds to the waveform of the sound an html5 audio element is producing. There's a [good tutorial](http://www.developphp.com/view.php?tid=1348) on how to do this. Then, using `requestAnimationFrame` (with a little [frame limiting](http://codetheory.in/controlling-the-frame-rate-with-requestanimationframe/) for performance reasons) I'm updating that array as the music change


DSSI is an audio plugin API for software instruments (soft synths) and effects. It is based on the LADSPA plugin API, the ALSA sequencer event types, and OSC (Open Sound Control) communications with custom GUIs.

.NET Gadgeteer Projects from Digital Interaction

Digital Interaction Group develops Microsoft .NET Gadgeteer modules, code and example projects.

SoundManager2 - A JavaScript Sound API supporting MP3, MPEG4 and HTML5 audio + RTMP, providing reliable cross-browser/platform audio control in as little as 12 KB

By wrapping and extending HTML5 and Flash Audio APIs, SoundManager 2 brings reliable cross-platform audio to JavaScript.An Ant build file defines the tasks for compiling JS and SWF components, useful if you make changes to the SM2 source and want to recompile. Google's Closure Compiler is used for the JS. AS2 compilation is done by MTASC, and AS3 is handled by Adobe's Open Source Flex SDK (mxmlc) compiler. Refer to build.xml for compiler downloads and path definitions.

supercollider - An audio server, programming language, and IDE for sound synthesis and algorithmic composition

SuperCollider is a platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound. It is free and open source software available for Windows, macOS, and Linux. SuperCollider was developed by James McCartney and originally released in 1996. In 2002, he generously released it as free software under the GNU General Public License. It is now maintained and developed by an active and enthusiastic community.

p5.js-sound - p5.sound brings the Processing approach to Web Audio and p5.js. Demos:

p5.sound brings the Processing approach to Web Audio as an addon for p5.js. Functionality includes audio input, playback, manipulation, effects, recording, sequencing, analysis and synthesis. The library is designed to be used in tandem with p5.js.This version of the library is updated most frequently. A stable version comes with p5.js. Here's the Change Log.


LusidOSC is an open initiative to define and support a layer for unique spatial input devices using Open Sound Control. LusidOSC cleanly connects spatial interfaces with user-level applications via a simple, extendable OSC protocol.

PortAudio - Cross-platform Audio I/O Library

PortAudio is a free, cross-platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms. It provides a very simple API for recording and/or playing sound using a simple callback function or a blocking read/write interface. Example programs are included that play sine waves, process audio input (guitar fuzz), record and playback audio, list available audio devices, etc.

chuck - ChucK Music Programming Language

what is it? : ChucK is a programming language for real-time sound synthesis and music creation. It is open-source and freely available on MacOS X, Windows, and Linux. ChucK presents a unique time-based, concurrent programming model that's precise and expressive (we call this strongly-timed), dynamic control rates, and the ability to add and modify code on-the-fly. In addition, ChucK supports MIDI, OpenSoundControl, HID device, and multi-channel audio. It's fun and easy to learn, and offers composers, researchers, and performers a powerful programming tool for building and experimenting with complex audio synthesis/analysis programs, and real-time interactive music.


A lightweight library to handle the sending and receiving of messages according to the Open Sound Control (OSC) protocol.


Braun is an application for visualising Open Sound Control (OSC) data on a scrolling graph.

Flocking - Flocking - Creative audio synthesis for the Web

Flocking is a JavaScript audio synthesis framework designed for artists and musicians who are building creative and experimental Web-based sound projects. It supports Firefox, Chrome, Safari, and Node.js on Mac OS X, Windows, Linux, iOS, and Android. Unlike comparable tools, Flocking is declarative. Its goal is to promote a uniquely community-minded approach to instrument design and composition. In Flocking, unit generators and synths are specified as JSON, making it easy to save, share, and manipulate your synthesis algorithms. Send your synths via Ajax, save them for later using HTML5 local data storage, or algorithmically produce new instruments on the fly.

Ardour - Digital Audio Workstation

Ardour is a hard disk recorder and digital audio workstation application. It supports unlimited audio tracks and buses. Its features include Non-destructive, non-linear editing with unlimited undo, and anything-to-anywhere signal routing. It supports Standard file formats BWF, WAV, WAV64, AIFF, CAF and Windows VST plugins. Ardour can be used as an audio mastering environment. Its integration with JACK makes it possible to use mastering tools such as JAMin to process the audio data.

LMMS - Cross-platform music production software

LMMS is a free cross-platform software which allows you to produce music with your computer. This covers creating melodies and beats, synthesizing and mixing sounds and arranging samples. You can have fun with your MIDI keyboard and much more – all in a user-friendly and modern interface. Furthermore LMMS comes with many ready-to-use instrument and effect plugins, presets and samples.


A complete (server and client, UDP and TCP transport), easy to use OSC (OpenSound-Control) library, featuring OO (C++) design, platform independence, type-safety, exception-handling and documentation (doxygen). Example clients and servers.

Mixxx - DJ software

Mixxx is Free DJ software that gives you everything you need to perform live DJ mixes. It integrates the tools DJs need to perform creative live mixes with digital music files.

web-audio-school - An intro to the Web Audio API by a series of self-guided workshops.

An intro to the Web Audio API by a series of self-guided workshops. We will primarily focus on using the Web Audio API for music, but the concepts here could be applied to game sound and other creative uses.

SoundManager - Simple sound and music player class for playing audio on Mac and iPhone

Simple sound and music player class for playing audio on Mac and iPhone