Developing Music Systems on the JVM with Pink and Score
summary
Pink and Score are Clojure libraries that run on the JVM: Pink: audio engine on JVM builds single‑threaded, block‑based (default 64‑sample) audio graphs with audio functions, control functions and a lock‑free event queue; demos show MIDI keyboard instruments, FM/additive/subtractive patches, ping‑pong delay and a graceful note‑off using a dynamic done flag so removals don’t click. Score is a data‑first note model that maps lists of events (priority‑queued, duration handled outside the engine) to interchangeable instruments: Score: data-first musical notation.
AI-written summary · about
chapters (26)
- 0:00Introduction
- 0:53What are Pink and Score
- 3:40Processing Models
- 5:07Creating an Audio Engine
- 6:52Pink Breakdown
- 8:55Main Processing Thread
- 11:49Max Matthews
- 12:21Block Diagrams
- 13:08Fanning in and Out
- 14:05Unit Generator
- 14:19Unit Generator Implementation
- 15:49Generator Macro
- 16:38Code
- 17:50Virtual Device Manager
- 20:06Signal Flow
- 21:32Advanced Example
- 22:58Dynamic Variables
- 24:46Audio Function
- 26:37Additive sentences
- 27:39Node
- 30:58Events
- 32:05Adding Audio Events
- 32:41Event Queues
- 34:11Generic Lists
- 37:06Quick Sounds
- 39:08Conclusion
related talks
45mConcerto for Java & AI - Building Production-Ready LLM Applications
17mClojure, Sound, and Wearable Tech
01h 01mPolyglot Programming in the JVM
59mHarmonikit
01h 15mEffective Programs - 10 Years of Clojure
31mScientific Computing with Clojure
36mLearning Clojure and ClojureScript by playing a card game
29mJava Performance Testing for Everyone
