Blokkily is een experimentele DAW die muziekproductie centreert rond patronen, die bewerkt kunnen worden via een tracker, piano roll of stap-grid. Het systeem ondersteunt CLAP- en VST3-plugins, SoundFonts en beschikt over ingebouwde samplers.
Kernfunctionaliteiten:
- Compositie en Arrangement: Patronen kunnen worden geplaatst op een multi-track tijdlijn. Er is een scene-launcher aanwezig voor live-performances die direct kunnen worden opgenomen in het arrangement.
- Input en Instrumenten: Het ondersteunt MIDI-controllers, isomorfe grids en microtonale stemmingen.
- Mixing en Export: De software biedt een volledige mixer met automatisering en modulatie, en maakt export mogelijk in 16-bit, 24-bit of 32-bit float WAVE.
- AI-integratie: Blokkily bevat een LLM-compositie-assistent voor het genereren van frasen en een MCP-bridge waarmee externe agents de applicatie kunnen aansturen.
Technische details: Het project is open source en valt onder de GPL-licentie vanwege het gebruik van de Rubber Band Library. Voor het bouwen van de software zijn Qt 6.5+ en diverse audio-libraries vereist. Er zijn momenteel nog beperkingen op het gebied van MIDI-clock-input, MPE-ondersteuning en geheugenbeheer bij gewarpte audioclips.
Blokkily
Bouwen en uitvoeren
Om Blokkily te bouwen en uit te voeren, heb je Qt 6.5+ nodig, samen met FluidSynth, RtAudio, RtMidi, libsndfile, libsamplerate en Rubber Band 4 (te vinden via pkg-config). Voor de verificatietests is ook een SoundFont nodig. JUCE en de CLAP-headers zijn opgenomen onder third_party/.
Build-instructies:
cmake -S . -B build -G Ninja
cmake --build build
ctest --test-dir build --output-on-failure
./build/blokkily
Het commando ./build/blokkily_cli start de headless scheduler-demo.
Licenties
- Clip warping: Maakt gebruik van de Rubber Band Library, gelicenseerd onder de GPL (versie 2 of later), tenzij er een commerciële licentie is aangeschaft bij de auteurs. Een Blokkily-binary die hiermee is gebouwd, valt daarom onder de GPL.
- Lettertypen: IBM Plex Sans en JetBrains Mono zijn gebundeld in
resources/fonts/ onder de SIL Open Font License 1.1. Het bundelen van deze lettertypen zorgt ervoor dat de layout consistent blijft op verschillende desktops.
Mogelijkheden
Bewerken en arrangeren
- Gesynchroniseerde editors: Bewerk noten en akkoorden in drie verschillende editors. Patronen ondersteunen inversies, strum, microtiming, waarschijnlijkheid (probability), ratchets, lusvoorwaarden (loop conditions) en parameter-locks. Wijzigingen zijn direct hoorbaar tijdens het afspelen zonder dat het proces gestopt hoeft te worden.
- Tijdlijn: Arrangeer benoemde patronen en audioclips op een multi-track tijdlijn, inclusief tempostappen, ramps en maatwijzigingen. De scene-launcher maakt het mogelijk om patronen live uit te voeren en deze performance op te nemen in de arrangement.
Input en Instrumenten
- Besturing: Speel en neem op met een MIDI-controller of via het piano-scherm, isomorfe grids, fretboards en akkoordpads. Stemmingen en toonladders bevatten microtonale opties. Een sessie zonder instrumenten gebruikt standaard een geïnstalleerd SoundFont, waarbij de voorkeur uitgaat naar een General MIDI-bank indien beschikbaar.
- Plugins: Laad CLAP-, VST3- en SoundFont-instrumenten, of maak gebruik van de keyed- en drum-samplers.
Mixing en Export
- Mixer: Mix met inserts, sends, returns, sidechains, hulpuitgangen (auxiliary outputs), automatisering en modulatie.
- Opname en export: Neem audio en MIDI op, resample een bus of bounce stems. Exporteer het arrangement als 16-bit, 24-bit of 32-bit float WAVE via dezelfde engine die wordt gebruikt voor afspelling. Importeer en exporteer Standard MIDI Files voor het uitwisselen van noten.
AI-integratie
- Compositie-assistent: Vraag de LLM-compositie-assistent om een frase. Je kunt het voorstel beoordelen voordat je het toepast; elke generatie is één ongedaan-stap (undo step). Een MCP-bridge stelt agents in staat om de actieve applicatie aan te sturen.
Huidige beperkingen
Blokkily is experimenteel. De volgende beperkingen zijn van toepassing:
- Comping en MIDI-clock-input zijn niet geïmplementeerd.
- MPE-ondersteuning varieert per instrumentformaat; per-noot expressie heeft geen editor.
- Grote, niet-gewarpte audioclips kunnen vanaf de schijf worden gestreamd, maar gewarpte clips en sampler-samples worden nog steeds volledig in het geheugen geladen.
- Native plugin-vensters vereisen een X11-display.
- Export rendert altijd het volledige arrangement; neem daarom eerst een launcher-performance op in het arrangement voordat je exporteert.
Voor meer details over beperkingen met betrekking tot sidechains, modulatietiming, sampler-bewerking en stems kan de limitations-referentie geraadpleegd worden.
Documentatie en ontwikkeling
De volgende documentatie is beschikbaar:
- Gebruikershandleiding: Instructies voor bewerken, arrangeren, opnemen, mixen en sneltoetsen.
- Architectuur: Informatie over het gedeelde model, de scheduler, plugin-adapters en coverage-commando's.
- Agent-besturing via MCP: Setup, tools en omgevingsvariabelen.
- LLM-compositie-assistent: Back-ends en reply-formaten.
- Verificatie: Herhaalbare BDD, integratie-, end-to-end- en screenshot-checks.
Gedragsspecificaties zijn te vinden in features/. De voltooiingsregels voor het gehele repository staan in AGENTS.md.
Blokkily is een experimentele DAW (Digital Audio Workstation) op basis van patronen. Je kunt hetzelfde patroon bewerken in een tracker, piano roll of stap-grid, om deze patronen vervolgens over meerdere tracks te arrangeren. Het ondersteunt CLAP- en VST3-plugins, SoundFont-instrumenten en ingebouwde samplers. CLAP-ondersteuning is vereist in elke build.
Blokkily
Bouwen en uitvoeren
Om Blokkily te bouwen en uit te voeren, heb je Qt 6.5+ nodig, samen met FluidSynth, RtAudio, RtMidi, libsndfile, libsamplerate en Rubber Band 4 (te vinden via pkg-config). Voor de verificatietests is ook een SoundFont nodig. JUCE en de CLAP-headers zijn opgenomen onder third_party/.
Build-instructies:
cmake -S . -B build -G Ninja
cmake --build build
ctest --test-dir build --output-on-failure
./build/blokkily
Het commando ./build/blokkily_cli start de headless scheduler-demo.
Licenties
- Clip warping: Maakt gebruik van de Rubber Band Library, gelicenseerd onder de GPL (versie 2 of later), tenzij er een commerciële licentie is aangeschaft bij de auteurs. Een Blokkily-binary die hiermee is gebouwd, valt daarom onder de GPL.
- Lettertypen: IBM Plex Sans en JetBrains Mono zijn gebundeld in
resources/fonts/ onder de SIL Open Font License 1.1. Het bundelen van deze lettertypen zorgt ervoor dat de layout consistent blijft op verschillende desktops.
Mogelijkheden
Bewerken en arrangeren
- Gesynchroniseerde editors: Bewerk noten en akkoorden in drie verschillende editors. Patronen ondersteunen inversies, strum, microtiming, waarschijnlijkheid (probability), ratchets, lusvoorwaarden (loop conditions) en parameter-locks. Wijzigingen zijn direct hoorbaar tijdens het afspelen zonder dat het proces gestopt hoeft te worden.
- Tijdlijn: Arrangeer benoemde patronen en audioclips op een multi-track tijdlijn, inclusief tempostappen, ramps en maatwijzigingen. De scene-launcher maakt het mogelijk om patronen live uit te voeren en deze performance op te nemen in de arrangement.
Input en Instrumenten
- Besturing: Speel en neem op met een MIDI-controller of via het piano-scherm, isomorfe grids, fretboards en akkoordpads. Stemmingen en toonladders bevatten microtonale opties. Een sessie zonder instrumenten gebruikt standaard een geïnstalleerd SoundFont, waarbij de voorkeur uitgaat naar een General MIDI-bank indien beschikbaar.
- Plugins: Laad CLAP-, VST3- en SoundFont-instrumenten, of maak gebruik van de keyed- en drum-samplers.
Mixing en Export
- Mixer: Mix met inserts, sends, returns, sidechains, hulpuitgangen (auxiliary outputs), automatisering en modulatie.
- Opname en export: Neem audio en MIDI op, resample een bus of bounce stems. Exporteer het arrangement als 16-bit, 24-bit of 32-bit float WAVE via dezelfde engine die wordt gebruikt voor afspelling. Importeer en exporteer Standard MIDI Files voor het uitwisselen van noten.
AI-integratie
- Compositie-assistent: Vraag de LLM-compositie-assistent om een frase. Je kunt het voorstel beoordelen voordat je het toepast; elke generatie is één ongedaan-stap (undo step). Een MCP-bridge stelt agents in staat om de actieve applicatie aan te sturen.
Huidige beperkingen
Blokkily is experimenteel. De volgende beperkingen zijn van toepassing:
- Comping en MIDI-clock-input zijn niet geïmplementeerd.
- MPE-ondersteuning varieert per instrumentformaat; per-noot expressie heeft geen editor.
- Grote, niet-gewarpte audioclips kunnen vanaf de schijf worden gestreamd, maar gewarpte clips en sampler-samples worden nog steeds volledig in het geheugen geladen.
- Native plugin-vensters vereisen een X11-display.
- Export rendert altijd het volledige arrangement; neem daarom eerst een launcher-performance op in het arrangement voordat je exporteert.
Voor meer details over beperkingen met betrekking tot sidechains, modulatietiming, sampler-bewerking en stems kan de limitations-referentie geraadpleegd worden.
Documentatie en ontwikkeling
De volgende documentatie is beschikbaar:
- Gebruikershandleiding: Instructies voor bewerken, arrangeren, opnemen, mixen en sneltoetsen.
- Architectuur: Informatie over het gedeelde model, de scheduler, plugin-adapters en coverage-commando's.
- Agent-besturing via MCP: Setup, tools en omgevingsvariabelen.
- LLM-compositie-assistent: Back-ends en reply-formaten.
- Verificatie: Herhaalbare BDD, integratie-, end-to-end- en screenshot-checks.
Gedragsspecificaties zijn te vinden in features/. De voltooiingsregels voor het gehele repository staan in AGENTS.md.