gioser

tawasuyu/brahman

Rust 534TOML 203Markdown 58JSON 197690 Definiciones

⎇ main crates/modules/takiy/SDD.md Markdown · 43 líneas · 1.7 KB Historia crudo

feat(takiy): takiy-core — teoría musical + modelo de partitura 639381fd9 · sergio ·

1# modules/takiy/ — Composición musical asistida
2
3**Propósito.** Herramienta de composición: un modelo de partitura sobre
4teoría musical, con asistencia por IA y síntesis de audio. El núcleo es
5agnóstico — el tiempo se mide en pulsos, no en segundos, y no conoce ni
6audio ni UI.
7
8## Crates
9
10| crate         | tipo | rol                                                          |
11| ------------- | ---- | ------------------------------------------------------------ |
12| `takiy-core`  | lib  | `Pitch`/`PitchClass`, `Scale`, `Chord`/`ChordQuality`, `Score`/`Track`/`ScoreNote` |
13
14## Modelo
15
16```text
17  PitchClass + octava ──► Pitch (MIDI, frecuencia ET A4=440)
18        │
19   Scale (raíz + patrón)   Chord (raíz + cualidad)
20        │
21   ScoreNote (pulso, duración, velocidad) ──► Track ──► Score (tempo)
22```
23
24- **Altura**: número MIDI interno; clase, octava y frecuencia se derivan.
25- **Tiempo en pulsos**: una partitura es independiente del tempo hasta
26  reproducirla (`Score::duration_seconds` aplica el bpm).
27- **Transposición atómica**: si una nota se saldría del rango MIDI, la
28  pista entera no se altera.
29
30## Dependencias
31
32- `takiy-core` ← sólo `serde`. `#![forbid(unsafe_code)]`, determinista.
33
34## Estado
35
36`takiy-core` implementado y verde (24 tests). **Pendiente** (requieren
37infra pesada, no verificables en modo desatendido):
38
39| crate pendiente | rol                                            |
40| --------------- | ---------------------------------------------- |
41| `takiy-synth`   | síntesis de audio (`fundsp`)                   |
42| `takiy-ai`      | asistencia de composición (`ort`, instancia)   |
43| `takiy-canvas`  | piano-roll / partitura visual                  |

SDD.md

modules/takiy/ — Composición musical asistida

Propósito. Herramienta de composición: un modelo de partitura sobre teoría musical, con asistencia por IA y síntesis de audio. El núcleo es agnóstico — el tiempo se mide en pulsos, no en segundos, y no conoce ni audio ni UI.

Crates

cratetiporol
takiy-corelibPitch/PitchClass, Scale, Chord/ChordQuality, Score/Track/ScoreNote

Modelo

  PitchClass + octava ──► Pitch (MIDI, frecuencia ET A4=440)
        │
   Scale (raíz + patrón)   Chord (raíz + cualidad)
        │
   ScoreNote (pulso, duración, velocidad) ──► Track ──► Score (tempo)

Dependencias

Estado

takiy-core implementado y verde (24 tests). Pendiente (requieren infra pesada, no verificables en modo desatendido):

crate pendienterol
takiy-synthsíntesis de audio (fundsp)
takiy-aiasistencia de composición (ort, instancia)
takiy-canvaspiano-roll / partitura visual