Sobre el proyecto

EffectsHost es un host de efectos de audio VST3 basado en .NET que aprovecha NPlug y el ecosistema ktsu. Simplifica la creación de efectos DSP al permitir que los desarrolladores implementen una única clase de C# a través de la interfaz `IAudioEffect`, mientras que el shell del host gestiona automáticamente los parámetros, la automatización, la persistencia del estado y la interfaz de usuario. Los componentes clave incluyen: - EffectsHost.Core: Proporciona la abstracción del efecto, incluyendo `IAudioEffect`, `EffectParameter` y `EffectBlock`. - EffectsHost.Effects: Contiene implementaciones concretas de efectos como `GainEffect` y `DelayEffect`. - EffectsHost.Plugin: Gestiona el shell de NPlug, el `AudioEngine` en tiempo real, el editor Dear ImGui embebido y la E/S de archivos `.vstpreset`. - EffectsHost.Test: Incluye pruebas unitarias de DSP y pruebas de resistencia sin asignaciones para la ruta de callback de audio. El proyecto enfatiza la seguridad en tiempo real, asegurando que el hilo de audio evite asignaciones, bloqueos, esperas o E/S. Utiliza `ktsu.Invoker` para cambios de parámetros de la interfaz de usuario al audio sin bloqueos y buffers circulares SPSC libres de bloqueos de `ktsu.Containers` para la telemetría de audio a la interfaz de usuario. Además, utiliza una `DelayLine` consciente de denormales para evitar picos de CPU durante las colas de retroalimentación. El editor está construido con Dear ImGui, presentando paneles temáticos, perillas con corrección de taper y medidores de dB L/R con retención de pico. Soporta acoplamiento embebido en Windows y ventanas flotantes en macOS y Linux.