Overview of Anira core classes and structures
mainAnira provides several key components to integrate real-time audio processing with machine learning models:
anira::InferenceHandler: The primary interface for interacting with the library. It manages audio processing and inference for the real-time thread, offloading the actual inference to a thread pool and updating real-time thread buffers with the processed audio.anira::InferenceConfig: A configuration structure used to define model specifics (e.g., input/output shape, maximum inference time). This must be provided when constructing anInferenceHandler.anira::PrePostProcessor: A class used to define processing steps that occur before and after inference. You can use the default implementation or inherit from this class to implement custom logic.anira::HostConfig: A structure used to define host-level settings, specifically buffer size and sample rate.anira::ContextConfig(Optional): A configuration structure that defines global behavior across all Anira instances. This includes thread pool settings (number of threads andanira::WaitStrategy) and the globalanira::LogLevelfor Anira and its backends.