Generador de texturas sonoras (MVP) basado en granular synthesis (OLA Hann) con limpieza HPF/LPF, reverb opcional y export a WAV 24-bit / 48 kHz.
Incluye un núcleo MGI (Motor Generativo Iterativo): operador iterativo con ancla (\alpha), restricciones (C), proyección (\Pi_C) y control activo (backtracking sobre (\alpha)) para estabilidad (headroom + energía + huella estadística).
Subes un audio corto (p.ej. 10s) y el motor genera una textura más larga manteniendo coherencia timbral (sin clicks ni cortes perceptibles en pruebas).
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements-lite.txt
streamlit run src/app.py./run.sh- Instala Python 3.11+
- Doble clic en
run_windows.bat - Abre
http://localhost:8501
Para evitar builds pesados, usa requirements-lite.txt.
- Opción simple: renombra
requirements-lite.txtarequirements.txtpara el deploy.
texturas_sonoras/
src/
app.py # UI Streamlit
dsp.py # DSP (filtros, granular, reverb, export)
mgi/ # núcleo MGI (Φ, d, C, Π_C, operador activo)
metrics.py # Φ(x), d(x,y), RMS, peak, crest
constraints.py # C, violation(), project() (Π_C)
operator.py # evolve_active() (backtracking + Π_C)
docs/
STATE.md # estado actual + tareas
ARCHITECTURE.md # arquitectura actual/objetivo
WORKLOG.md # bitácora mínima por sesión
OPERATOR.md # definición canónica del operador MGI
tests/
test_determinism.py # reproducibilidad granular
test_gpu_smoke.py # smoke test CUDA
test_mgi.py # tests del núcleo MGI
scripts/
loop_test.py # test manual de loop seamless
requirements-lite.txt
requirements.txt
pyproject.toml
- Lee
docs/STATE.md(qué funciona, qué falta, qué probar) - Escribe 5 líneas por sesión en
docs/WORKLOG.md - Registra cambios en
CHANGELOG.md
Copyright © 2025–2026 Andrés Mahecha.
(Plan: licencia dual más adelante: open-source limitado + comercial.)