639381fd94
Pitch MIDI (clase/octava/frecuencia ET A4=440), Scale (raíz + patrón de semitonos: mayor, menor natural, pentatónica), Chord (7 cualidades, voicing, nombres) y un Score multipista con tempo: ScoreNote en pulsos, Track con inserción ordenada y transposición atómica. 24 tests. Agnóstico de síntesis y UI, #![forbid(unsafe_code)]. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
27 lines
951 B
Rust
27 lines
951 B
Rust
//! `takiy-core` — teoría musical y modelo de partitura.
|
|
//!
|
|
//! La base agnóstica de takiy (composición musical asistida): nada de
|
|
//! síntesis de audio, nada de IA, nada de UI — sólo los tipos puros que
|
|
//! todo lo demás comparte.
|
|
//!
|
|
//! - [`pitch`] — alturas MIDI, clases de altura, frecuencias.
|
|
//! - [`scale`] — escalas como raíz + patrón de semitonos.
|
|
//! - [`chord`] — acordes como raíz + cualidad armónica.
|
|
//! - [`score`] — `ScoreNote`, `Track` y un `Score` multipista con tempo.
|
|
//!
|
|
//! El tiempo se mide en pulsos: una partitura es independiente del tempo
|
|
//! hasta reproducirla. La síntesis (`takiy-synth`) y la asistencia por
|
|
//! IA (`takiy-ai`) se construyen encima sin tocar este crate.
|
|
|
|
#![forbid(unsafe_code)]
|
|
|
|
pub mod chord;
|
|
pub mod pitch;
|
|
pub mod scale;
|
|
pub mod score;
|
|
|
|
pub use chord::{Chord, ChordQuality};
|
|
pub use pitch::{Pitch, PitchClass};
|
|
pub use scale::Scale;
|
|
pub use score::{Score, ScoreNote, Track};
|