-
-
Notifications
You must be signed in to change notification settings - Fork 86
Open
Labels
Description
In order to create custom devices and keep the boot time to a minimum, we should have a system that allows the studio to dynamically load devices even from external sources (which need to run in a secure sandbox to prevent crashes).
A device consists of many different components, that need to be loaded and flushed into the system:
- Schema - Defines the data structure (may not be necessary)
- Box - Auto-generated runtime class from schema
- Adapter - Wraps parameters for mappings, automation, and UI binding
- Processor - DSP logic that processes audio
- Editor - UI component with controls
- Manual - User-facing documentation for the device
Edge Cases
- Device versioning / migration
- Managing a secure sandbox to avoid studio crashes, if the device panics
- UI restrictions (fixed height, custom menus)
Iteration 1
- Load stock devices dynamically
Iteration 2
- Setup an openDAW Device SDK repository that allows injecting new devices into the studio
Reactions are currently unavailable