0-30% (Baixo) → Modo Jônico (Dó Maior) C D E F G A B
Consonante, estável
30-50% (Moderado) → Modo Dórico (Ré menor) D E F G A B C
Tensão moderada, jazzy
50-70% (Alto) → Modo Frígio (Mi menor) E F G A B C D
Tenso, espanhol, dramático
70-100% (Crítico) → Modo Lócrio (Si dim) B C D E F G A
Dissonante, instável
Alta adoção (>70%) → Notas frequentes, 16ths
Média adoção (40-70%) → Notas moderadas, 8ths
Baixa adoção (<40%) → Notas esparsas, quarters
Hype alto (>70%) → 160-180 BPM (frenético)
Hype médio (40-70%) → 120-140 BPM (energético)
Hype baixo (<40%) → 80-100 BPM (calmo)
Investment alto → ff (fortissimo) velocity 100-127
Investment médio → mf (mezzo-forte) velocity 70-90
Investment baixo → p (piano) velocity 40-60
Network forte (>70%) → Acordes completos (tríades + 7ª)
Network médio (40-70%) → Tríades simples
Network fraco (<40%) → Notas isoladas, power chords
Feedback positivo (>0.6) → Arpejos ascendentes
Feedback equilibrado → Ostinato estável
Feedback negativo (<0.4) → Arpejos descendentes, decrescendo
Divergência alta (>50%) → Intervalos de 2ª menor, trítono
Divergência média → Intervalos de 6ª, 7ª
Divergência baixa (<20%) → Consonâncias (3ª, 5ª, 8ª)
Estilo: Bossa Nova / Smooth Jazz
- Tempo: 100 BPM
- Modo: Jônico (Maior)
- Ritmo: 4/4 swing, sincopado
- Instrumentos: Piano, bass, brushes
- Feeling: Relaxado, confiante
Estilo: Funk / Fusion
- Tempo: 120 BPM
- Modo: Dórico / Mixolídio
- Ritmo: Sincopado, groove
- Instrumentos: Synth, bass slap, drums
- Feeling: Energético, mas controlado
Estilo: Rock Progressivo / Math Rock
- Tempo: 140-160 BPM, mudanças de compasso
- Modo: Frígio / Eólio
- Ritmo: 7/8, 5/4, síncopes complexas
- Instrumentos: Guitar distortion, complex drums
- Feeling: Tenso, imprevisível
Estilo: Avant-garde / Noise / Breakcore
- Tempo: 180+ BPM ou caótico
- Modo: Lócrio / Clusters cromáticos
- Ritmo: Irregular, glitches, breaks
- Instrumentos: Distorção, samples quebrados
- Feeling: Caos, colapso iminente
NOTES = {
'C': 261.63, # Dó
'D': 293.66, # Ré
'E': 329.63, # Mi
'F': 349.23, # Fá
'G': 392.00, # Sol
'A': 440.00, # Lá (diapasão)
'B': 493.88 # Si
}
MODES = {
'ionian': [0, 2, 4, 5, 7, 9, 11], # Maior
'dorian': [0, 2, 3, 5, 7, 9, 10], # Menor jazz
'phrygian': [0, 1, 3, 5, 7, 8, 10], # Espanhol
'locrian': [0, 1, 3, 5, 6, 8, 10] # Diminuto
}
Adoção → Attack
adoption_high: attack=0.01s (rápido)
adoption_low: attack=0.5s (lento)
Hype → Decay
hype_high: decay=0.05s (curto)
hype_low: decay=0.3s (longo)
Investment → Sustain Level
investment_high: sustain=0.9 (forte)
investment_low: sustain=0.3 (fraco)
Network → Release
network_high: release=1.0s (reverb longo)
network_low: release=0.1s (seco)
Kick: |X---|X---|X---|X---|
Snare: |----X---|----X---|
Hi-hat: |X-X-X-X-X-X-X-X-|
Feeling: Groovy, 4/4 straight
Kick: |X--X|-X--|X--X|X---|
Snare: |----X-|--X----|X-|
Hi-hat: |X-XX-X-XX-X-XX--|
Feeling: Sincopado, variações
Kick: |X-X-|X-XX|-X-X|XX--|
Snare: |--X-|-X--X|--X-|X-X|
Hi-hat: |XXXXXXXXXXXX| (16ths)
Feeling: Tenso, rápido, irregular
Kick: |XXXX|X-XX|XXX-|XXXX| (caótico)
Snare: |X-XX|-XXX|X-X-|XXXX|
Hi-hat: Glitches, breaks, randomness
Feeling: Colapso, caos
I - IV - V - I (C - F - G - C)
ii - V - I (Dm - G - C)
Progressões estáveis, resoluções claras
ii - V - I - vi (Dm - G - C - Am)
I - iii - vi - IV (C - Em - Am - F)
Mais variações, modal interchange
i - bVII - bVI - V (Cm - Bb - Ab - G)
#iv° - V - i (F#dim - G - Cm)
Modulações súbitas, acordes diminutos
Clusters cromáticos
Politonalidade
Sem centro tonal definido
Cada ponto no tempo = 1 nota/acorde
Movimento temporal = Melodia/progressão
Crescimento: Pitch ascendente
Queda: Pitch descendente
Volatilidade: Intervalos grandes
Estabilidade: Pequenas variações
Nov 2022: Bubble 15% → C4, modo maior, 100 BPM
Jan 2023: Bubble 45% → E4, modo dórico, 140 BPM (peak hype)
Abr 2023: Bubble 35% → D4, volta ao dórico, 130 BPM
Nov 2024: Bubble 32% → D4, estável, 120 BPM
Melodia resultante:
C4 → E4 → D4 → D4
(subida rápida, leve queda, estabilização)
// Bubble Index → Waveform
bubble_low: 'sine' // suave
bubble_moderate: 'triangle' // médio
bubble_high: 'sawtooth' // áspero
bubble_critical: 'square' // distorcido
// Adoção → Filter Cutoff
adoption * 5000 // 0-5000 Hz
// Hype → LFO Rate
hype * 10 // 0-10 Hz modulação
// Investment → Reverb
investment * 5 // 0-5 segundos decay
// Network → Delay Feedback
network * 0.7 // 0-0.7 feedback
// Divergência → Distortion
divergence * 100 // 0-100% drive
Seção A (16 bars): Estado atual
Seção B (8 bars): Desenvolvimento/variação
Seção A' (16 bars): Retorno com variação
Total: 40 bars ≈ 1-2 minutos
Layer 1: Bass (Investment)
Layer 2: Harmony (Network)
Layer 3: Melody (Adoption + Hype)
Layer 4: Rhythm (Feedback)
Layer 5: Texture (Divergence)
A(t) = (p+q)e^((p+q)t) / (1+(q/p)e^((p+q)t))
Curva S → Movimento melódico:
- Início: Notas graves, lentas
- Crescimento: Pitch sobe, accelerando
- Saturação: Notas agudas, estabiliza
Gartner Hype → Dinâmica
Peak → fff (muito forte)
Trough → p (piano)
Plateau → mf (mezzo-forte)
Metcalfe Network → Polifonia
N(A) = A^1.5
Mais rede = mais vozes simultâneas
A=0.2 → 1 voz
A=0.5 → 2-3 vozes
A=0.8 → 4-6 vozes (orquestra!)
Frontend: Tone.js (Web Audio API wrapper)
Backend: Python MIDI generation (mido)
Formats: MIDI export, WAV render, real-time
1. Fetch bubble data
2. Map to musical parameters
3. Generate score/sequence
4. Render audio (Tone.js)
5. Play + visualize
6. Export MIDI/WAV
---
Próximo: Implementação em código com Tone.js + player interativo!