Skip to content
/ JUCE Public
forked from juce-framework/JUCE

The JUCE cross-platform C++ framework, WASM/AudioWorklet version

Notifications You must be signed in to change notification settings

jariseon/JUCE

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JUCE 5 (WebAssembly/AudioWorklet version)

This repo ports the DSP subsection of JUCE library to WebAssembly (WASM). The port enables JUCE plugins to run in web browsers as Web Audio API AudioWorklets. Precompiled static WASM bitcode library (juce-audioworklet.bc) and its build configuration (Makefile and juce_lib.cpp) are here

The port is bundled into two commits. The first one contains modifications to existing JUCE files (mostly just #ifdefs), while the second one contains build configuration, Web Audio Module (WAM) wrapper code and some dummy overrides for functionality that is unsupported in WASM and AudioWorklet environments (threads and high resolution timer). Porting was surprisingly straight forward.

usage

please see this example

license

This WASM version of JUCE uses juce_audio_basics, juce_core and juce_events modules, which are permissively licensed under ISC license. It also uses limited functionality from juce_audio_processors and juce_audio_plugin_client modules, which are under JUCE license. Please see the original JUCE [repo] (https://github.com/WeAreROLI/JUCE) for more licensing info.

About

The JUCE cross-platform C++ framework, WASM/AudioWorklet version

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 69.9%
  • C 17.7%
  • Objective-C 6.3%
  • Objective-C++ 3.1%
  • Java 1.2%
  • CMake 1.0%
  • Other 0.8%