Sobre o projeto

audio-engine-core é uma camada de processamento de áudio agnóstica a aplicações, projetada para players de música de alta qualidade e aplicações de áudio em tempo real. Ela implementa uma cadeia de processamento composta por Decode → Resample → Loudness → DSP → Analyze → Stream, separando deliberadamente o processamento de áudio da UI, da saída do dispositivo e do gerenciamento da biblioteca de mídia. Principais recursos técnicos incluem: - Segurança em Tempo Real: Usa snapshots atômicos de parâmetros livres de bloqueio baseados em geração para evitar alocação de heap, bloqueios e I/O dentro do callback de áudio. - Qualidade e Medição de Áudio: Inclui validação objetiva para loudness EBU R128, detecção de true-peak e desempenho do resampler (THD+N e atenuação de alias). - Capacidades de DSP: Fornece um EQ IIR biquad de 10 bandas, EQ FIR linear/minimum-phase, convolução FFT, crossfeed Bauer, saturação oversampled e limitação de true-peak. - Reamostragem: Suporta tanto um backend nativo SoX VHQ (via libsoxr) quanto um backend puro-Rust (via rubato). - Gerenciamento de Loudness: Separa a análise offline EBU R128 da aplicação atômica de ganho em tempo real. - Renderização Offline: Suporta renderização compensada de latência com políticas configuráveis de cauda de efeito. A biblioteca é construída sobre o Symphonia para decodificação e fornece uma API `PlaybackPipeline` para fácil integração em callbacks de áudio.