Murad Library
Murad LibraryREF-0382MD

Live coding musical: programas, IDEs e ambientes para fazer música escrevendo código

Catalogued
Reading
18 min read

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:

RankingFerramentaMelhor paraLinguagem/baseInstalaçãoVeredito brutal
1StrudelComeçar agora no navegadorJavaScript / Tidal-likeNenhumaMelhor porta de entrada hoje
2Sonic PiAprender live coding musical de verdadeRuby-likeFácilDidático, bonito, pronto para tocar
3TidalCyclesAlgorave, techno, IDM, padrões complexosHaskellMédia/chataPoderoso pra caramba, mas não é “fácil”
4SuperColliderSíntese sonora séria e composição algorítmicasclangMédiaBase profissional, mas exige estudo
5FoxDot / RenardoLive coding com PythonPython + SuperColliderMédiaBom se você já pensa em Python
6SardinePython moderno + MIDI/OSC/SuperColliderPythonMédiaMuito interessante para hardware e setups híbridos
7ORCASequenciamento visual, MIDI/OSC, estética hackerLinguagem esotérica em gridFácil/médiaLindo e estranho; não é synth sozinho
8MercuryIniciante que quer linguagem legívelMercuryFácil no playgroundSimples e humano, ótimo para performance legível
9GibberÁudio + visual no navegadorJavaScriptNenhumaBom para experimentar audiovisual
10ChucKControle temporal preciso e sínteseChucKMédiaExcelente, mas mais “programação musical” que algorave imediata
11EstuaryLive coding colaborativo no navegadorVárias linguagensNenhumaMuito bom para grupos/oficinas
12OvertoneClojure + SuperColliderClojureMédia/altaNerd, poderoso, menos amigável
13ExtemporeProgramação musical avançada, Lisp/SchemeScheme/xtlangAltaBrilhante, mas não é caminho de iniciante
14HydraVisuais ao vivo, não músicaJavaScript-likeNenhumaEssencial 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:

  1. Strudelhttps://strudel.cc/
  2. Mercury Playgroundhttps://mercury-playground.cc/
  3. Gibberhttps://gibber.cc/
  4. 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:

  1. TidalCycles, se você aceita Haskell e quer algorave real;
  2. SuperCollider, se você quer síntese sonora profunda;
  3. Sardine, se quer Python moderno;
  4. 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:

  1. Sonic Pi;
  2. Strudel;
  3. Estuary;
  4. 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:

  1. TidalCycles;
  2. Strudel;
  3. Sardine;
  4. FoxDot/Renardo;
  5. 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:

  1. ORCA;
  2. Sardine;
  3. ChucK;
  4. SuperCollider;
  5. 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:

  1. Strudel + Hydra;
  2. TidalCycles + Hydra;
  3. Gibber;
  4. Estuary;
  5. 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:

https://strudel.cc/

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:

https://sonic-pi.net/

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:

CaminhoEscolha
Algorave/padrões avançadosTidalCycles
Síntese sonora profundaSuperCollider
Python/live codingSardine ou FoxDot/Renardo
Hardware/MIDI/OSCORCA ou Sardine
Visual ao vivoHydra
Colaboração/oficinaEstuary

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:

  1. Strudel no navegador;
  2. Sonic Pi no desktop;
  3. Hydra no navegador;
  4. SuperCollider;
  5. TidalCycles, quando você já tiver certeza de que quer seguir esse caminho;
  6. ORCA, se quiser controlar MIDI/OSC;
  7. 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ÁudioVisualBrowserDesktopLinguagemNívelOpen source/freeObservação
StrudelSimParcial/visual feedbackSimOpcionalJavaScript/Tidal-likeIniciante-intermediárioSimMelhor início prático
Sonic PiSimNão principalNãoSimRuby-likeInicianteSimExcelente didática
TidalCyclesSimVia integraçãoNãoSimHaskellIntermediário-avançadoSimClássico da algorave
SuperColliderSimNão principalNãoSimsclangIntermediário-avançadoSimMotor/síntese séria
FoxDot/RenardoSimNão principalNãoSimPythonIntermediárioSimPython + SuperCollider
SardineSimVia OSC/MIDINãoSimPythonIntermediárioSimModerno, hardware-friendly
ORCASequencia/controlaGrid visualSim/desktopSimEsotéricaIntermediárioSimNão gera som sozinho
MercurySimNão principalSimSim/MaxMercuryInicianteSimLegível e performático
GibberSimSimSimOpcional/localJavaScriptIniciante-intermediárioSimAudiovisual no browser
ChucKSimNão principalWebChucK existeSimChucKIntermediárioSimTempo preciso
EstuarySimSimSimNão necessárioVáriasIniciante-intermediárioSimColaborativo
OvertoneSimVia libsNãoSimClojureAvançadoSimLisp/Clojure + SuperCollider
ExtemporeSimSim/possívelNãoSimScheme/xtlangAvançadoSimPesquisa/performance avançada
HydraNãoSimSimOpcionalJavaScript-likeIniciante-intermediárioSimVisual 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

Did this resonate?

Related documents