Autor/compilação: Pablo Murad + ChatGPT
Data: 2026-06-27
Tema: ferramentas para criar música, sons, sequências e performances ao vivo usando código.
1. O que é isso, afinal?
O que você viu na internet geralmente se chama live coding musical: a pessoa escreve e altera código enquanto a música está tocando. Em vez de tocar um instrumento tradicional ou manipular uma DAW visualmente, ela cria padrões, ritmos, sintetizadores, samples, efeitos e estruturas musicais por meio de linguagem de programação.
Na cena artística, isso aparece muito como algorave, uma mistura de “algorithm” + “rave”: performances em que música e às vezes visuais são gerados por algoritmos ao vivo. O código costuma ser projetado na tela, justamente para o público ver a música sendo construída.
Importante: isso não é a mesma coisa que usar Ableton, FL Studio ou Reaper. DAWs podem entrar no fluxo, mas live coding musical é outra mentalidade. Você compõe com padrões, funções, loops, transformações, probabilidades e tempo.
2. Ranking rápido: por onde começar
Se você quer testar sem sofrer, vá nesta ordem:
| Ranking | Ferramenta | Melhor para | Linguagem/base | Instalação | Veredito brutal |
|---|---|---|---|---|---|
| 1 | Strudel | Começar agora no navegador | JavaScript / Tidal-like | Nenhuma | Melhor porta de entrada hoje |
| 2 | Sonic Pi | Aprender live coding musical de verdade | Ruby-like | Fácil | Didático, bonito, pronto para tocar |
| 3 | TidalCycles | Algorave, techno, IDM, padrões complexos | Haskell | Média/chata | Poderoso pra caramba, mas não é “fácil” |
| 4 | SuperCollider | Síntese sonora séria e composição algorítmica | sclang | Média | Base profissional, mas exige estudo |
| 5 | FoxDot / Renardo | Live coding com Python | Python + SuperCollider | Média | Bom se você já pensa em Python |
| 6 | Sardine | Python moderno + MIDI/OSC/SuperCollider | Python | Média | Muito interessante para hardware e setups híbridos |
| 7 | ORCA | Sequenciamento visual, MIDI/OSC, estética hacker | Linguagem esotérica em grid | Fácil/média | Lindo e estranho; não é synth sozinho |
| 8 | Mercury | Iniciante que quer linguagem legível | Mercury | Fácil no playground | Simples e humano, ótimo para performance legível |
| 9 | Gibber | Áudio + visual no navegador | JavaScript | Nenhuma | Bom para experimentar audiovisual |
| 10 | ChucK | Controle temporal preciso e síntese | ChucK | Média | Excelente, mas mais “programação musical” que algorave imediata |
| 11 | Estuary | Live coding colaborativo no navegador | Várias linguagens | Nenhuma | Muito bom para grupos/oficinas |
| 12 | Overtone | Clojure + SuperCollider | Clojure | Média/alta | Nerd, poderoso, menos amigável |
| 13 | Extempore | Programação musical avançada, Lisp/Scheme | Scheme/xtlang | Alta | Brilhante, mas não é caminho de iniciante |
| 14 | Hydra | Visuais ao vivo, não música | JavaScript-like | Nenhuma | Essencial para VJ/live visuals, não para som sozinho |
3. Ferramentas principais
3.1 Strudel
Site: https://strudel.cc/
REPL: https://strudel.cc/
Manual do REPL: https://strudel.cc/technical-manual/repl/
Strudel é uma das melhores portas de entrada para live coding musical hoje. Ele é basicamente uma versão em JavaScript inspirada/derivada da linguagem de padrões do TidalCycles, rodando direto no navegador.
Você abre o site, escreve código, aperta play e já começa a gerar música.
Exemplo conceitual:
s("bd sd hh hh").fast(2)
Por que é bom:
- roda no navegador;
- não precisa instalar Haskell, SuperCollider, editor, dependências etc.;
- tem feedback visual;
- é ótimo para aprender padrões musicais;
- serve tanto para iniciante quanto para gente séria.
Ponto fraco:
- não tem toda a profundidade e ecossistema do TidalCycles tradicional;
- para performance pesada, você pode eventualmente querer uma instalação local ou setup mais robusto.
Use se: você quer entender rapidamente “que diabos é isso” sem configurar meio sistema operacional.
3.2 Sonic Pi
Site: https://sonic-pi.net/
Sonic Pi é provavelmente o ambiente mais amigável para aprender programação musical. Foi criado com foco educacional, mas cresceu o suficiente para ser usado em performances reais.
A linguagem lembra Ruby e é bastante legível.
Exemplo conceitual:
live_loop :beat do
sample :bd_haus
sleep 0.5
sample :sn_dolf
sleep 0.5
end
Por que é bom:
- vem com IDE própria;
- tem synths e samples prontos;
- excelente documentação;
- bom para aprender programação e música ao mesmo tempo;
- muito bom para oficinas, crianças, iniciantes e artistas.
Ponto fraco:
- menos “padrão algorave underground” que TidalCycles;
- quando você quiser controle extremamente avançado, pode bater em limites.
Use se: você quer aprender bem, sem virar refém de instalação complicada.
3.3 TidalCycles
Site: https://tidalcycles.org/
TidalCycles, ou simplesmente Tidal, é um dos nomes centrais da cena algorave. Ele é um ambiente livre/open source para live coding de padrões algorítmicos, escrito em Haskell. Normalmente usa SuperCollider/SuperDirt para gerar áudio.
Exemplo conceitual:
d1 $ sound "bd sn [hh hh] sn"
Por que é bom:
- extremamente poderoso para padrões rítmicos;
- muito usado em algorave;
- excelente para techno, IDM, breakcore, música generativa e estruturas repetitivas mutáveis;
- linguagem de padrões muito expressiva.
Ponto fraco:
- instalação pode ser chata;
- Haskell assusta quem quer só “fazer som”;
- a curva inicial é real.
Use se: você quer entrar sério no mundo algorave.
3.4 SuperCollider
Site: https://supercollider.github.io/
Docs: https://docs.supercollider.online/
SuperCollider é uma plataforma livre e open source para síntese de áudio e composição algorítmica. É usada por músicos, artistas sonoros e pesquisadores. Ela tem três partes principais: o servidor de áudio scsynth, a linguagem sclang e a IDE scide.
Exemplo conceitual:
{ SinOsc.ar(440, 0, 0.2) }.play;
Por que é bom:
- síntese sonora poderosa;
- ótimo para criar instrumentos, efeitos e sistemas generativos;
- serve de motor para várias outras ferramentas, como TidalCycles, FoxDot e Sardine;
- é sério, maduro e respeitado.
Ponto fraco:
- não é tão “instantâneo” quanto Sonic Pi ou Strudel;
- exige entender síntese, áudio e programação;
- a linguagem é própria e pode parecer estranha.
Use se: você quer controlar som profundamente, não só disparar samples.
3.5 FoxDot / Renardo
FoxDot GitHub: https://github.com/Qirky/FoxDot
FoxDot docs: https://foxdotcode.readthedocs.io/
Renardo/FoxDot fork: https://noisk8.github.io/FoxDot.io/
FoxDot é um ambiente de live coding em Python que funciona como uma camada mais amigável sobre SuperCollider. Ele vem com uma IDE própria e permite criar padrões musicais rapidamente.
Exemplo conceitual:
p1 >> pluck([0, 2, 4, 7], dur=0.25)
d1 >> play("x-o-")
Por que é bom:
- usa Python, o que é ótimo para programadores;
- mais direto que SuperCollider puro;
- bom para beats, samples, padrões e improviso;
- tem uma estética bem algorave.
Ponto fraco:
- depende de SuperCollider;
- o ecossistema teve períodos de manutenção irregular;
- hoje vale olhar também para forks/continuações como Renardo.
Use se: você gosta de Python e quer live coding musical sem entrar direto em Haskell.
3.6 Sardine
Site/docs: https://sardine.raphaelforment.fr/
GitHub: https://github.com/Bubobubobubobubo/Sardine
Sardine é uma ferramenta moderna de live coding em Python. Ela transforma Python em um instrumento musical, permitindo controlar samples, SuperCollider, MIDI, OSC e hardware externo.
Exemplo conceitual:
Pa * d('bd sn hh')
Por que é bom:
- Python moderno;
- bom para controlar hardware via MIDI/OSC;
- integra com SuperCollider/SuperDirt;
- boa opção para setups híbridos, com sintetizadores externos, controladores e software.
Ponto fraco:
- não é tão conhecido quanto Tidal/Sonic Pi;
- pode exigir mais montagem de setup;
- documentação e comunidade são menores.
Use se: você quer live coding com Python e pensa em ligar isso a hardware, MIDI, OSC, synths ou instalações.
3.7 ORCA
GitHub: https://github.com/hundredrabbits/Orca
Itch.io: https://hundredrabbits.itch.io/orca
ORCA é uma linguagem de programação esotérica em forma de grid. Cada letra é uma operação. Ele é usado para criar sequenciadores procedurais, enviando MIDI, OSC ou UDP para outros programas.
Atenção: ORCA não é um sintetizador. Ele não “faz som” sozinho no sentido tradicional. Ele controla outras coisas: Ableton, Renoise, VCV Rack, SuperCollider, synths externos etc.
Por que é bom:
- visualmente fascinante;
- excelente para sequenciamento procedural;
- combina muito bem com MIDI/OSC;
- parece um terminal cyberpunk vivo.
Ponto fraco:
- não gera áudio sozinho;
- a lógica é estranha;
- exige conectar com outro software/hardware para produzir som.
Use se: você quer uma matriz viva de comandos controlando música e máquinas.
3.8 Mercury
Docs: https://tmhglnd.github.io/mercury/docs/
Playground: https://mercury-playground.cc/
GitHub: https://github.com/tmhglnd/mercury
Mercury é uma linguagem minimalista, legível e amigável para live coding de música eletrônica algorítmica. A proposta é que o código seja compreensível para o público, não só para programadores.
Por que é bom:
- linguagem humana e limpa;
- bom para iniciantes;
- tem playground no navegador;
- pensado para performance ao vivo.
Ponto fraco:
- comunidade menor que Sonic Pi/Tidal;
- menos material disponível;
- pode ser limitado para quem quer sistemas gigantes.
Use se: você quer uma linguagem de performance musical que pareça menos “código alienígena”.
3.9 Gibber
Site: https://gibber.cc/
GitHub: https://github.com/gibber-cc/gibber
Sobre: https://charlie-roberts.com/gibber/about-gibber/
Gibber é um ambiente de live coding audiovisual que roda no navegador. Ele combina síntese musical, sequenciamento e gráficos 2D/3D/shader.
Por que é bom:
- roda no navegador;
- mistura som e imagem;
- usa JavaScript;
- bom para experimentar performance audiovisual.
Ponto fraco:
- não é tão dominante quanto Strudel ou Tidal para música;
- pode parecer um ecossistema mais específico;
- se você só quer música, talvez Strudel seja mais direto.
Use se: você quer brincar com música e visual no mesmo ambiente.
3.10 ChucK
Site: https://chuck.cs.princeton.edu/
Docs: https://chuck.stanford.edu/doc/program/
ChucK é uma linguagem de programação para síntese sonora e criação musical em tempo real. O diferencial dele é o modelo “strongly-timed”: o tempo faz parte central da linguagem.
Exemplo conceitual:
SinOsc s => dac;
440 => s.freq;
1::second => now;
Por que é bom:
- controle temporal preciso;
- síntese sonora real;
- suporta MIDI, OSC, HID e áudio multicanal;
- muito usado em educação e pesquisa.
Ponto fraco:
- menos imediatamente “club/rave”;
- parece mais programação sonora do que ferramenta de performance rápida;
- exige mentalidade mais técnica.
Use se: você quer programar som com precisão temporal e estudar música computacional seriamente.
3.11 Estuary
McMaster deployment: https://estuary.mcmaster.ca/
GitHub: https://github.com/dktr0/estuary
Estuary é uma plataforma web para colaboração e aprendizado via live coding. Ela permite experimentar som, música e visuais no navegador, inclusive com múltiplas linguagens de live coding no mesmo ambiente.
Por que é bom:
- colaborativo;
- browser-based;
- ótimo para oficinas, aulas, grupos e ensembles remotos;
- junta várias linguagens em um ambiente.
Ponto fraco:
- não é necessariamente a ferramenta mais direta para produção solo;
- depende da experiência do servidor/deployment;
- pode ser mais “laboratório coletivo” do que “instrumento pessoal principal”.
Use se: você quer fazer live coding em grupo ou ensinar/aprender coletivamente.
3.12 Overtone
Site: https://overtone.github.io/
GitHub: https://github.com/overtone/overtone
Overtone é um toolkit open source em Clojure para criar música, synths e performances, usando o motor de síntese do SuperCollider.
Por que é bom:
- Clojure é excelente para live coding;
- integração com SuperCollider;
- dá para criar synths, efeitos e geradores musicais;
- poderoso para programadores funcionais.
Ponto fraco:
- Clojure não é uma porta de entrada simples;
- menos popular hoje que Sonic Pi/Strudel/Tidal;
- setup pode desanimar.
Use se: você gosta de Lisp/Clojure e quer um ambiente musical hackeável.
3.13 Extempore
Docs: https://extemporelang.github.io/
GitHub: https://github.com/digego/extempore
Extempore é um ambiente avançado de live coding para música, áudio e programação cyber-physical. Ele mistura um interpretador Scheme com xtlang, uma linguagem Lisp-like tipada que compila via LLVM em tempo de execução.
Por que é bom:
- extremamente poderoso;
- ótimo para performance algorítmica sofisticada;
- permite alterar programas em execução;
- interessante para pesquisa, composição avançada e computação musical séria.
Ponto fraco:
- não é amigável para iniciantes;
- curva de aprendizado pesada;
- documentação e comunidade são mais nichadas.
Use se: você quer ir fundo em programação musical avançada e não tem medo de Lisp, compilação e sistemas complexos.
3.14 Hydra
Editor: https://hydra.ojack.xyz/
Docs em português: https://hydra.ojack.xyz/docs/pt/
GitHub: https://github.com/hydra-synth/hydra
Hydra não é uma ferramenta musical no sentido estrito. Ela é um sintetizador de vídeo para live coding de visuais no navegador. Mas aparece o tempo todo junto com live coding musical porque muita performance algorave combina som + visual.
Exemplo conceitual:
osc(10, 0.1, 1.2).out()
Por que é bom:
- roda no navegador;
- visual imediato;
- ótimo para VJ/live visuals;
- combina bem com Sonic Pi, Tidal, Strudel, MIDI e OSC.
Ponto fraco:
- não faz música;
- é para imagem/vídeo;
- precisa ser combinado com uma ferramenta sonora se o objetivo for performance audiovisual completa.
Use se: você quer projetar visuais vivos enquanto a música roda.
4. Ferramentas por perfil
4.1 Quero começar hoje, sem instalar nada
Use:
- Strudel — https://strudel.cc/
- Mercury Playground — https://mercury-playground.cc/
- Gibber — https://gibber.cc/
- Hydra, para visuais — https://hydra.ojack.xyz/
Veredito: comece por Strudel. Sem romantizar: é a forma menos irritante de testar live coding musical moderno.
4.2 Sou programador e quero algo poderoso
Use:
- TidalCycles, se você aceita Haskell e quer algorave real;
- SuperCollider, se você quer síntese sonora profunda;
- Sardine, se quer Python moderno;
- Extempore, se você quer ir para o lado experimental/pesquisa.
Veredito: para performance musical baseada em padrões, TidalCycles. Para som/síntese profunda, SuperCollider.
4.3 Quero ensinar ou fazer oficina
Use:
- Sonic Pi;
- Strudel;
- Estuary;
- Mercury.
Veredito: Sonic Pi ainda é excelente para ensino. Strudel ganha se você não quer instalar nada nos computadores dos alunos.
4.4 Quero fazer algorave/techno/breakcore
Use:
- TidalCycles;
- Strudel;
- Sardine;
- FoxDot/Renardo;
- ORCA controlando synths/samples.
Veredito: TidalCycles é o caminho clássico. Strudel é o caminho moderno e rápido.
4.5 Quero controlar hardware, MIDI, synths externos
Use:
- ORCA;
- Sardine;
- ChucK;
- SuperCollider;
- TidalCycles com MIDI/SuperDirt.
Veredito: ORCA é lindo para sequenciamento procedural; Sardine é mais flexível se você quer ficar em Python.
4.6 Quero som + visual
Use:
- Strudel + Hydra;
- TidalCycles + Hydra;
- Gibber;
- Estuary;
- Sonic Pi + Hydra, dependendo da versão/setup.
Veredito: para começar, Strudel + Hydra. Para performance mais séria, TidalCycles + Hydra.
5. Caminho recomendado de aprendizado
Fase 1: entender a ideia
Abra o Strudel:
Teste padrões simples de bateria, melodia e samples. Não instale nada ainda. Não caia na armadilha de passar três horas configurando Haskell antes de ouvir um kick. Isso é burrice operacional.
Objetivo desta fase:
- entender o que é padrão;
- entender repetição;
- entender transformação;
- entender que código pode ser performance.
Fase 2: aprender com ambiente amigável
Instale Sonic Pi:
Brinque com:
live_loop;sample;synth;sleep;- escalas;
- aleatoriedade;
- efeitos.
Objetivo:
- aprender estrutura musical por código;
- entender loops vivos;
- tocar algo sem depender de teoria pesada.
Fase 3: escolher especialização
Depois de brincar com Strudel e Sonic Pi, escolha um caminho:
| Caminho | Escolha |
|---|---|
| Algorave/padrões avançados | TidalCycles |
| Síntese sonora profunda | SuperCollider |
| Python/live coding | Sardine ou FoxDot/Renardo |
| Hardware/MIDI/OSC | ORCA ou Sardine |
| Visual ao vivo | Hydra |
| Colaboração/oficina | Estuary |
6. Instalação mínima sugerida
6.1 Windows
Comece com:
- Strudel no navegador;
- Sonic Pi instalado;
- Hydra no navegador.
Depois, se quiser avançar:
- SuperCollider;
- TidalCycles;
- VS Code;
- Git;
- Python 3.10+;
- ORCA.
6.2 Linux/Debian/Ubuntu
Pacotes úteis:
sudo apt update
sudo apt install git curl build-essential python3 python3-pip supercollider
Para Sonic Pi, prefira o pacote/AppImage/instrução oficial mais recente do site.
Para ferramentas web, use navegador Chromium/Chrome/Firefox moderno.
6.3 macOS
Use Homebrew para boa parte do setup:
brew install git python supercollider
Depois instale Sonic Pi pelo site oficial e use Strudel/Hydra no navegador.
7. O que eu instalaria primeiro
Para não perder tempo:
- Strudel no navegador;
- Sonic Pi no desktop;
- Hydra no navegador;
- SuperCollider;
- TidalCycles, quando você já tiver certeza de que quer seguir esse caminho;
- ORCA, se quiser controlar MIDI/OSC;
- Sardine, se quiser Python moderno.
Essa ordem evita a idiotice clássica: montar um setup gigante antes de saber se você gosta da prática.
8. Glossário rápido
Live coding
Programar ao vivo, alterando o código enquanto o sistema continua rodando.
Algorave
Performance/rave em que música e visuais são gerados ou controlados por algoritmos ao vivo.
Pattern language
Linguagem focada em criar padrões musicais: ritmos, repetições, variações, ciclos.
OSC
Open Sound Control. Protocolo usado para comunicação entre softwares musicais, visuais e dispositivos.
MIDI
Protocolo clássico para controlar instrumentos, sintetizadores, DAWs e equipamentos musicais.
SuperDirt
Motor de áudio baseado em SuperCollider usado frequentemente com TidalCycles.
REPL
Ambiente interativo onde você escreve, executa e altera código em tempo real.
Synth
Sintetizador. Pode ser hardware, software ou um instrumento criado por código.
Sample
Trecho de áudio gravado usado como material musical.
9. Tabela comparativa detalhada
| Ferramenta | Áudio | Visual | Browser | Desktop | Linguagem | Nível | Open source/free | Observação |
|---|---|---|---|---|---|---|---|---|
| Strudel | Sim | Parcial/visual feedback | Sim | Opcional | JavaScript/Tidal-like | Iniciante-intermediário | Sim | Melhor início prático |
| Sonic Pi | Sim | Não principal | Não | Sim | Ruby-like | Iniciante | Sim | Excelente didática |
| TidalCycles | Sim | Via integração | Não | Sim | Haskell | Intermediário-avançado | Sim | Clássico da algorave |
| SuperCollider | Sim | Não principal | Não | Sim | sclang | Intermediário-avançado | Sim | Motor/síntese séria |
| FoxDot/Renardo | Sim | Não principal | Não | Sim | Python | Intermediário | Sim | Python + SuperCollider |
| Sardine | Sim | Via OSC/MIDI | Não | Sim | Python | Intermediário | Sim | Moderno, hardware-friendly |
| ORCA | Sequencia/controla | Grid visual | Sim/desktop | Sim | Esotérica | Intermediário | Sim | Não gera som sozinho |
| Mercury | Sim | Não principal | Sim | Sim/Max | Mercury | Iniciante | Sim | Legível e performático |
| Gibber | Sim | Sim | Sim | Opcional/local | JavaScript | Iniciante-intermediário | Sim | Audiovisual no browser |
| ChucK | Sim | Não principal | WebChucK existe | Sim | ChucK | Intermediário | Sim | Tempo preciso |
| Estuary | Sim | Sim | Sim | Não necessário | Várias | Iniciante-intermediário | Sim | Colaborativo |
| Overtone | Sim | Via libs | Não | Sim | Clojure | Avançado | Sim | Lisp/Clojure + SuperCollider |
| Extempore | Sim | Sim/possível | Não | Sim | Scheme/xtlang | Avançado | Sim | Pesquisa/performance avançada |
| Hydra | Não | Sim | Sim | Opcional | JavaScript-like | Iniciante-intermediário | Sim | Visual live coding |
10. Minha recomendação final
Se você só quer descobrir o que é e brincar hoje:
Strudel + Sonic Pi + Hydra
Se você quer entrar sério na cena:
TidalCycles + SuperCollider + Hydra
Se você quer usar Python:
Sardine ou FoxDot/Renardo
Se você quer hardware, MIDI e visual hacker:
ORCA + algum synth/DAW/SuperCollider
Se você quer criar sons do zero e entender síntese:
SuperCollider
A resposta sem firula: comece por Strudel. Se a coisa te fisgar, instale Sonic Pi e SuperCollider. Depois escolha entre TidalCycles, Sardine ou ORCA conforme seu objetivo. Não comece pelo mais complexo só porque parece mais “profissional”. Isso só aumenta a chance de abandonar antes de fazer música.
11. Fontes consultadas
- Strudel: https://strudel.cc/
- Strudel REPL manual: https://strudel.cc/technical-manual/repl/
- Sonic Pi: https://sonic-pi.net/
- TidalCycles: https://tidalcycles.org/
- SuperCollider: https://supercollider.github.io/
- SuperCollider docs: https://docs.supercollider.online/
- FoxDot GitHub: https://github.com/Qirky/FoxDot
- FoxDot docs: https://foxdotcode.readthedocs.io/
- Sardine docs: https://sardine.raphaelforment.fr/
- Sardine GitHub: https://github.com/Bubobubobubobubo/Sardine
- ORCA GitHub: https://github.com/hundredrabbits/Orca
- ORCA Itch.io: https://hundredrabbits.itch.io/orca
- Mercury docs: https://tmhglnd.github.io/mercury/docs/
- Mercury GitHub: https://github.com/tmhglnd/mercury
- Gibber: https://gibber.cc/
- Gibber GitHub: https://github.com/gibber-cc/gibber
- ChucK: https://chuck.cs.princeton.edu/
- ChucK docs: https://chuck.stanford.edu/doc/program/
- Estuary: https://estuary.mcmaster.ca/
- Estuary GitHub: https://github.com/dktr0/estuary
- Overtone: https://overtone.github.io/
- Overtone GitHub: https://github.com/overtone/overtone
- Extempore docs: https://extemporelang.github.io/
- Extempore GitHub: https://github.com/digego/extempore
- Hydra: https://hydra.ojack.xyz/
- Hydra docs PT-BR: https://hydra.ojack.xyz/docs/pt/
- Hydra GitHub: https://github.com/hydra-synth/hydra
- TOPLAP: https://toplap.org/wiki/Main_Page
- Awesome Livecoding: https://github.com/toplap/awesome-livecoding
- Algorave: https://algorave.com/
- Algorave Brasil: https://algoravebrasil.gitlab.io/
Did this resonate?
Related documents
- 001
- 002
- 003
- 004
- 005