56 lines
3.8 KiB
Markdown
56 lines
3.8 KiB
Markdown
# Known limitations and qualification boundaries
|
||
|
||
- Development version 0.1.0, Linux C99/C++17/FLTK, optional JACK. Physical-device
|
||
playback/capture, human transition listening, independent user acceptance and
|
||
long-duration device qualification are pending.
|
||
- Fixed 4/4 and constant tempo snapshots; no tempo map, loop transport, plugin
|
||
latency compensation, limiter, background streaming or multichannel mixer buses.
|
||
- Mono capture/import downmix; stereo track output. Graph ports are mono with
|
||
independent paired processing. Maximum 64 project graph nodes (256 standalone),
|
||
64 tracks, 1024 clips/automation points, 4096 scheduled notes, 256 live MIDI
|
||
events/block, 32 voices, 65536 frames/block. See API headers for exact bounds.
|
||
- WAV samples preload with the memory/format limits in AUDIO_FILES.md. Callback
|
||
overflow reports/silences; there is no CPU preemption or expensive-plugin rescue.
|
||
- Live MIDI fixed volume/pan/sustain mapping; no controller learn, capture, SMF
|
||
import, pitch bend, custom-instrument chooser or instrument timbre controls.
|
||
- Native ABI 1 graph nodes are session-only. ABI 2 state is parameter-only. LADSPA
|
||
supports the documented mono amp/inverter/sine set; no opaque state, native
|
||
editor, MIDI, true multichannel layout, latency compensation or crash isolation.
|
||
Automated LADSPA controls use run(1) and can be expensive.
|
||
- GUI loading/compilation is synchronous on the control thread. Timeline grid/
|
||
zoom/selection and graph positions are session UI state. Undo retains 32 edits
|
||
plus baseline; allocation failures are reported, not silently hidden. Media is
|
||
never removed by undo/delete. Broad screen-reader/accessibility testing is pending.
|
||
- Format v9 reads v1–v8 and uses relative local media references. External absolute
|
||
media/module paths need manual repair after relocation. Saving does not bundle
|
||
media; missing media stays referenced, missing plugins reject GUI installation.
|
||
Unknown data is rejected rather than stripped. Post-rename directory-sync errors
|
||
can report failure even though the complete new document was published.
|
||
- No autosave/session crash restoration, RF64, system service, automatic dependency
|
||
installation or public signed release. Source/binary archives are local artifacts;
|
||
binary packages require compatible system libraries. No third-party plugin or
|
||
dependency binary is bundled. Power-cut durability depends on the filesystem.
|
||
|
||
See ROADMAP.md, AUDIO_QUALITY.md, CONTROL.md, WORKFLOW.md, PROJECT_FORMAT.md,
|
||
PERFORMANCE.md, PLUGIN_HOSTING.md and RECOVERY.md for tested contracts/evidence.
|
||
|
||
- Waveform previews load synchronously on the control thread and cache at most
|
||
64 paths/1024 bins each. Reopen after external media replacement. Audio cuts
|
||
use tick resolution; GUI safety fades can create a short dip at split edges.
|
||
Time stretching, independent pitch shifting and crossfades are deferred.
|
||
|
||
- Graph folders, per-track graph routing and track templates remain deferred:
|
||
timeline and MIDI sources expose shared mixes. Layout is session-only; no
|
||
feedback cycles, plugin isolation or latency compensation are supplied.
|
||
|
||
- Stereo one-level mix buses share the 64-track limit. Nested buses, independent
|
||
bus plugin inserts, per-track aux sends and sidechains remain deferred. Track
|
||
meters are pre-bus; bus meters are pre-graph; master is post-graph. Sample peaks
|
||
and sticky clipping do not provide loudness, true-peak analysis or limiting.
|
||
|
||
- Plugin discovery is an explicit-file descriptor browser, not a directory scan.
|
||
Generic parameter dialogs own copied metadata; no native plugin editors or
|
||
custom MIDI instrument chooser. LADSPA units are unspecified. Replacement
|
||
requires the same mono audio layout and resets controls/automation. Missing
|
||
modules reject Open while retaining the current project; GUI module relink for
|
||
unopened documents is deferred. In-process plugin crashes/hangs are uncontained.
|