Vital
Loading...
Searching...
No Matches
vocal_tract.h
Go to the documentation of this file.
1#pragma once
2
3#include "processor_router.h"
4#include "circular_queue.h"
5#include "synth_constants.h"
6
7namespace vital {
8
31 class VocalTract : public ProcessorRouter {
32 public:
34 enum {
41 };
42
46 VocalTract();
47
51 virtual ~VocalTract();
52
53 Processor* clone() const override { return new VocalTract(*this); }
54
60 void reset(poly_mask reset_mask) override;
61
65 void hardReset() override;
66
72 virtual void process(int num_samples) override;
73
82 virtual void processWithInput(const poly_float* audio_in, int num_samples) override;
83
84 private:
85 JUCE_LEAK_DETECTOR(VocalTract)
86 };
87} // namespace vital
Base class for all signal-processing units in Vital.
Definition processor.h:212
A specialized Processor that manages a directed graph of Processors and ensures correct processing or...
Definition processor_router.h:34
A model of a vocal tract for generating vowel-like formants and vocal articulations.
Definition vocal_tract.h:31
void hardReset() override
Performs a hard reset of all internal states, returning to default values.
Definition vocal_tract.cpp:28
virtual void processWithInput(const poly_float *audio_in, int num_samples) override
Processes a given input buffer through the vocal tract model.
Definition vocal_tract.cpp:46
VocalTract()
Constructs a VocalTract processor.
Definition vocal_tract.cpp:8
virtual void process(int num_samples) override
Processes audio with the given number of samples using the already connected input.
Definition vocal_tract.cpp:36
void reset(poly_mask reset_mask) override
Resets internal states for specific voices indicated by the reset mask.
Definition vocal_tract.cpp:21
virtual ~VocalTract()
Destructor.
Definition vocal_tract.cpp:14
Processor * clone() const override
Creates a copy of this ProcessorRouter.
Definition vocal_tract.h:53
@ kTongueHeight
Controls the vertical (height) position of the virtual tongue.
Definition vocal_tract.h:39
@ kAudio
The input audio signal.
Definition vocal_tract.h:35
@ kNumInputs
Definition vocal_tract.h:40
@ kBlend
Blend control for articulations.
Definition vocal_tract.h:37
@ kTonguePosition
Controls the virtual tongue's forward/backward position.
Definition vocal_tract.h:38
@ kReset
Reset signal to clear internal states.
Definition vocal_tract.h:36
Contains classes and functions used within the Vital synthesizer framework.
Declares the ProcessorRouter class, which manages a graph of Processors and their dependencies.
Represents a vector of floating-point values using SIMD instructions.
Definition poly_values.h:600
Represents a vector of integer values using SIMD instructions.
Definition poly_values.h:56