À propos du projet
EffectsHost est un hôte d'effets audio VST3 basé sur .NET qui s'appuie sur NPlug et l'écosystème ktsu. Il simplifie la création d'effets DSP en permettant aux développeurs d'implémenter une seule classe C# via l'interface `IAudioEffect`, tandis que le shell de l'hôte gère automatiquement les paramètres, l'automatisation, la persistance de l'état et l'interface utilisateur.
Les composants clés incluent :
- EffectsHost.Core : Fournit l'abstraction de l'effet, incluant `IAudioEffect`, `EffectParameter` et `EffectBlock`.
- EffectsHost.Effects : Contient des implémentations d'effets concrètes telles que `GainEffect` et `DelayEffect`.
- EffectsHost.Plugin : Gère le shell NPlug, l' `AudioEngine` en temps réel, l'éditeur Dear ImGui intégré et les E/S de fichiers `.vstpreset`.
- EffectsHost.Test : Inclut des tests unitaires DSP et des tests d'endurance sans allocation pour le chemin de rappel audio.
Le projet met l'accent sur la sécurité en temps réel, garantissant que le thread audio évite les allocations, les verrous, les blocages ou les E/S. Il utilise `ktsu.Invoker` pour les changements de paramètres non bloquants de l'interface utilisateur vers l'audio et des tampons circulaires SPSC sans verrou de `ktsu.Containers` pour la télémétrie de l'audio vers l'interface utilisateur. De plus, il utilise une `DelayLine` sensible aux dénormaux pour éviter les pics de CPU lors des queues de feedback.
L'éditeur est construit avec Dear ImGui, présentant des panneaux thématiques, des boutons rotatifs avec correction de taper et des VU-mètres dB L/R avec maintien du pic. Il prend en charge l'ancrage intégré sur Windows et les fenêtres flottantes sur macOS et Linux.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.