brickworks/examples
2023-06-20 15:12:45 +02:00
..
common new bwpp_svf, fxpp_svf + free mem, stronger, cleaner vst3 and web wrappers 2023-06-19 15:26:21 +02:00
fx_ap1 added x0 to reset_state in bw_{lp1,ap1,hp1,hs1,ls1,mm1}, adjusted bw_phaser and examples 2023-04-19 08:33:18 +02:00
fx_ap2 added initial value to bw_{ap2,hs2,ls2,mm2,notch,peak,svf,wah} 2023-03-23 14:03:27 +01:00
fx_balance fix fx_balance example stereo on web 2023-02-14 14:15:15 +01:00
fx_bitcrush fixed unused parameter warnings 2023-04-02 21:54:17 +02:00
fx_chorus updated mem_req/set in bw_{delay,comb,chorus,reverb} and fxs + more reverb work 2023-06-02 10:50:42 +02:00
fx_clip new bw_clip and fx_clip 2023-04-26 01:48:01 +02:00
fx_comb updated mem_req/set in bw_{delay,comb,chorus,reverb} and fxs + more reverb work 2023-06-02 10:50:42 +02:00
fx_comp added missing daisy seed examples 2023-02-16 14:38:12 +01:00
fx_delay updated mem_req/set in bw_{delay,comb,chorus,reverb} and fxs + more reverb work 2023-06-02 10:50:42 +02:00
fx_dist beginning of bw_dist and fx_dist + fix bw_peak doc and bw_fuzz init 2023-04-26 03:21:20 +02:00
fx_drive fixed bw_drive, new example fx_drive 2023-05-10 11:16:38 +02:00
fx_eq_3band added initial value to bw_{ap2,hs2,ls2,mm2,notch,peak,svf,wah} 2023-03-23 14:03:27 +01:00
fx_flanger updated mem_req/set in bw_{delay,comb,chorus,reverb} and fxs + more reverb work 2023-06-02 10:50:42 +02:00
fx_fuzz hello bw_fuzz and fx_fuzz 2023-04-25 12:01:54 +02:00
fx_hp1 added x0 to reset_state in bw_{lp1,ap1,hp1,hs1,ls1,mm1}, adjusted bw_phaser and examples 2023-04-19 08:33:18 +02:00
fx_hs1 added x0 to reset_state in bw_{lp1,ap1,hp1,hs1,ls1,mm1}, adjusted bw_phaser and examples 2023-04-19 08:33:18 +02:00
fx_lp1 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fx_ls1 added x0 to reset_state in bw_{lp1,ap1,hp1,hs1,ls1,mm1}, adjusted bw_phaser and examples 2023-04-19 08:33:18 +02:00
fx_mm1 added x0 to reset_state in bw_{lp1,ap1,hp1,hs1,ls1,mm1}, adjusted bw_phaser and examples 2023-04-19 08:33:18 +02:00
fx_mm2 added initial value to bw_{ap2,hs2,ls2,mm2,notch,peak,svf,wah} 2023-03-23 14:03:27 +01:00
fx_noise_gate some daisy seed fx examples + fixes (in examples) 2023-02-07 11:01:04 +01:00
fx_notch added initial value to bw_{ap2,hs2,ls2,mm2,notch,peak,svf,wah} 2023-03-23 14:03:27 +01:00
fx_pan some daisy seed fx examples + fixes (in examples) 2023-02-07 11:01:04 +01:00
fx_phaser bw_trem fix doc + rename param + new bw_/fx_phaser tentative 2023-02-27 12:30:40 +01:00
fx_reverb fx_reverb done 2023-06-02 14:13:29 +02:00
fx_satur fix bw_src_int + use it in fx_satur 2023-03-14 16:46:13 +01:00
fx_svf a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fx_trem bw_trem fix doc + rename param + new bw_/fx_phaser tentative 2023-02-27 12:30:40 +01:00
fx_vibrato fix fx_vibrato 2023-06-14 12:19:40 +02:00
fx_wah some daisy seed fx examples + fixes (in examples) 2023-02-07 11:01:04 +01:00
fxpp_ap1 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_ap2 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_eq_3band welcome bwpp_peak and fxpp_eq_3band 2023-06-19 18:40:00 +02:00
fxpp_hp1 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_hs1 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_lp1 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_ls1 a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_notch new bwpp_{notch,wah} + examples 2023-06-20 15:12:45 +02:00
fxpp_svf a bunch of c++ wrappers and fxpp examples + new fx_lp1 2023-06-19 17:41:52 +02:00
fxpp_wah new bwpp_{notch,wah} + examples 2023-06-20 15:12:45 +02:00
synth_mono change bw_env_gen gate api, no unison in bw_voice_alloc, started synth_poly 2023-06-06 16:17:47 +02:00
synth_poly synth_poly done 2023-06-08 10:43:18 +02:00
synth_simple change bw_env_gen gate api, no unison in bw_voice_alloc, started synth_poly 2023-06-06 16:17:47 +02:00
README.md fix typo 2023-02-20 18:12:17 +01:00

Examples

Each subfolder contains an example application, except the common folder, which contains common code for all examples.

In order to build an example just cd to *example*/*platofrm* and use the following platform-specific instructions.

Building for any platform requires a recent enough version of GNU Make installed.

VST3

Prerequisites

Windows (via MSYS2/Mingw-w64), macOS, and Linux OSes are supported. Building tested with GCC, probably also works with Clang.

You also need to download the VST3 SDK and place it in the same folder as the Brickworks folder, or otherwise edit common/vst3/vst3.mk and change the VST3_SDK_DIR variable to point to the correct directory.

Build

In order to build just type make. You'll find the resulting VST3 directory in build/example.vst3.

Installation

If all went fine, you can install for the current user (i.e., into the user VST3 folder) by invoking make install-user.

On macOS and Linux you can also install for all users (i.e., into the system VST3 folder) by make install.

Web

Prerequisites

You need Clang with WebAssembly target support and OpenSSL installed.

Build

In order to build just type make. You'll find the resulting output directory in build/web.

Running

The output files need to be served over HTTPS. A self-signed certificate is generated in the output directory (hence the OpenSSL requirement) to make it possible to run an HTTPS-enabled web server, e.g. http-server -S, directly on/from the output folder.

Daisy Seed

Prerequisites

Building and firmware upload was only tested on Linux. You need arm-none-eabi-gcc (for building) and dfu-util (for firmware upload) installed.

You also need to clone libDaisy, cd to it, and run make. You should either place it in the same folder as the Brickworks folder, or otherwise edit common/daisy-seed/daisy-seed.mk and change the LIBDAISY_DIR variable to point to the correct directory.

Build

In order to build just type make. You'll find the resulting output files in build.

Firmware upload

To upload the firmware:

  1. branch the board to the uploading machine via USB;
  2. put the board in DFU mode by pressing BOOT, then RESET, then letting go of RESET and then of BOOT;
  3. type make program-dfu.

Effect examples report output parameter values and CPU usage statistics via USB serial. You can read the output by, e.g., screen /dev/ttyACM0.

Thanks

Thanks to Mads Kjeldgaard for publishing instructions to build for the Daisy Seed and uploading the firmware.