Client-side DSP audio analysis and JSONG note mapper lab
Drag and drop an audio file or click to select
Supported formats: MP3, WAV, OGG, M4A
O bundle do Jsong processa o áudio nativamente em JavaScript sem APIs nativas de C/C++ usando as seguintes etapas:
1. Web Audio API decodifica o arquivo para float samples mono. 2. STFT com janela Hann (tamanho de 2048 samples, passo de 512). 3. FFT de base-2 converte o sinal do domínio do tempo para frequência. 4. Análise de fluxo espectral (Spectral Flux) para detectar Onsets. 5. Autocorrelação do envelope de transientes para estimar o BPM. 6. Mapeamento cromático (Chroma) e centroide espectral.
JSONG é um formato leve para representar faixas de notas musicais ideais para jogos rítmicos ou mapeadores de luz:
{
"bpm": 124.0,
"notes": [
{"time": 0.45, "lane": 1, "type": 0},
{"time": 0.90, "lane": 2, "type": 1},
{"time": 1.35, "lane": 2, "type": 2}
]
}
0 representa toque rápido, 1 início de nota longa (hold) e 2 o término da
nota longa.