// AUTOGENERATED — do not edit. Source: schemas/modes/sound_analysis_midi.json. Run `bun run codegen/generate.ts` to regenerate. #ifndef NISPS_GENERATED_SOUND_ANALYSIS_MIDI_SCHEMA_HPP #define NISPS_GENERATED_SOUND_ANALYSIS_MIDI_SCHEMA_HPP #include "schema_types.hpp" #include "../../ml/mlp.hpp" namespace nisps::modes::generated { inline constexpr std::string_view kSoundAnalysisMidiModeId = "sound_analysis_midi"; inline constexpr std::string_view kSoundAnalysisMidiEngineId = "thru"; inline constexpr std::array kSoundAnalysisMidiInputChannels = {{ "audio_pitch", "audio_aperiodicity", "audio_energy", "audio_attack", "audio_brightness", "audio_energy_crude", "joy_x", "joy_y", "joy_z", "joy_w", }}; inline constexpr std::array kSoundAnalysisMidiHiddenLayers = {{ 10u, 10u, 14u, }}; inline constexpr MLConfig kSoundAnalysisMidiMLConfig = { 10u, 8u, 0.6f, 1.0f, 1000u, }; inline constexpr std::size_t kSoundAnalysisMidiParamCount = 8u; inline constexpr std::array kSoundAnalysisMidiParams = {{ Param{ "midi_cc0", "MIDI CC 0", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc1", "MIDI CC 1", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc2", "MIDI CC 2", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc3", "MIDI CC 3", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc4", "MIDI CC 4", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc5", "MIDI CC 5", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc6", "MIDI CC 6", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, Param{ "midi_cc7", "MIDI CC 7", 0.0f, 1.0f, 0.5f, Curve::linear, "midi", }, }}; inline constexpr std::size_t kSoundAnalysisMidiVoiceSpaceCount = 0u; inline constexpr std::array kSoundAnalysisMidiVoiceSpaces = {}; inline constexpr UIConfig kSoundAnalysisMidiUI = { PrimaryInput::AudioIn, false, false, }; using SoundAnalysisMidiMLP = ::nisps::ml::MLP; inline constexpr ::nisps::ParamSchema kSoundAnalysisMidiSchema = { kSoundAnalysisMidiModeId, kSoundAnalysisMidiEngineId, std::span(kSoundAnalysisMidiInputChannels), kSoundAnalysisMidiMLConfig.input_size, std::span(kSoundAnalysisMidiHiddenLayers), kSoundAnalysisMidiMLConfig.output_size, kSoundAnalysisMidiMLConfig.default_spread, kSoundAnalysisMidiMLConfig.default_learning_rate, kSoundAnalysisMidiMLConfig.default_max_iterations, std::span(kSoundAnalysisMidiParams), std::span(kSoundAnalysisMidiVoiceSpaces), kSoundAnalysisMidiUI, }; } // namespace nisps::modes::generated #endif // NISPS_GENERATED_SOUND_ANALYSIS_MIDI_SCHEMA_HPP