mirror of
https://github.com/storytold/soundcraft.git
synced 2026-10-26 11:36:51 -06:00
* Progress docs to the craftrules standard; full re-measure against Pro Tools 2026.4.1 Stage: alpha. Menu breadth 482/512 (94.1%, measured), feature breadth ~70%, ready for real work ~40%; ~350-570 agent-hours to beta, ~950-1,450 to full parity, calibrated on this repo's PR history. - ROADMAP.md rewritten: stage banner, two numbers, dimension/feature/language tables - docs/target-app-parity.md: authoritative assessment (area table moved from ROADMAP) - docs/gaps.md: 22 ranked gaps with evidence and estimates - docs/roadmap.md: milestones, current focus, beta plan - docs/ui-, file-format-, hardware-, plugin-, localization-parity.md: new checklists - docs/parity.md -> docs/parity-checklist.md (generated by cargo xtask parity) - architecture.md: video, vst3-host, au-host crates; device I/O limits Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Stage: pre-alpha under the core-workflow gate Add the alpha gate to docs/roadmap.md: interface recording at a chosen buffer size, MIDI recording, and session interchange with Pro Tools fail, so the stage moves from alpha to pre-alpha (~5 points and ~110-180 agent-hours to alpha). Mark the alpha blockers in docs/gaps.md; update ROADMAP.md, target-app-parity.md and README. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Add mainstream-practitioner and essentials-user readiness numbers Mainstream practitioner ~36% (weekly-area depth 50.6% x 0.90 interaction x 0.92 stability x 0.85 file exchange) and essentials user ~57% (core-feature depth 72.4% x 0.90 launch/stability x 0.90 discoverability x 0.97 files), with written weights, discounts and GitHub user evidence. Full ready-for-real-work checked against its written dimension weights (40.6%); unchanged at ~40%, stage unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Readiness by audience: hours to ~95% for full, mainstream and essentials Full ~40% / 950-1,450 h, mainstream ~36% / 380-600 h, essentials ~57% / 110-200 h, calibrated on this repo's PR history. The full number is already an additive weighted sum over the written dimension table; method unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
4.2 KiB
4.2 KiB
Hardware parity
Last reviewed: 2026-10-10 · Last updated: 2026-10-10 · Change: major (first hardware audit against Pro Tools 2026.4.1) · Target: Avid Pro Tools Ultimate 2026.4.1
A DAW is judged by how it drives audio interfaces, MIDI gear, control surfaces and sync. This is
SoundCraft's weakest dimension. Ours is measured from crates/playback (cpal) and the absence of
any MIDI-device or control-surface code; Pro Tools' from its documentation and Setup menus.
Hardware: ~12 % ready (estimated). Performance: ~35 % (estimated; nothing benchmarked against Pro Tools). Remaining ≈ 110–180 h for hardware, 40–70 h for performance.
Legend: ✅ works · 🟡 partial · ❌ missing.
Audio interfaces
| Feature | Pro Tools (macOS / Windows) | SoundCraft macOS | Windows | Linux | FreeBSD | Web |
|---|---|---|---|---|---|---|
| Driver API | Core Audio / ASIO | 🟡 Core Audio via cpal | 🟡 WASAPI shared via cpal; no ASIO | 🟡 ALSA/Pulse via cpal; no JACK | 🟡 cpal (ALSA layer) | 🟡 Web Audio |
| Choose playback device | ✅ Playback Engine | ❌ default output only | ❌ | ❌ | ❌ | ❌ |
| Choose input device | ✅ | ❌ default input only (#42) | ❌ | ❌ | ❌ | ❌ |
| Buffer size (32–2048) | ✅ | ❌ fixed 512-sample mix block | ❌ | ❌ | ❌ | ❌ |
| Duplex stream on one clock | ✅ | ❌ separate input/output streams | ❌ | ❌ | ❌ | ❌ |
| Hardware I/O mapping (I/O Setup to physical channels) | ✅ | 🟡 multichannel output in order; no per-channel map | 🟡 | 🟡 | 🟡 | ❌ |
| Low-latency monitoring | ✅ | ❌ (options.low_latency_monitoring is a stored flag) |
❌ | ❌ | ❌ | ❌ |
| Latency reporting and record offset compensation | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Sample rate follows the session; resample when it can't | ✅ (switches device) | 🟡 resamples (input pitch bug fixed, #28) | 🟡 | 🟡 | 🟡 | 🟡 |
| Avid HDX / HD Native DSP, Hybrid Engine DSP mode | ✅ | ❌ (out of reach: Avid hardware) | ❌ | ❌ | ❌ | ❌ |
| Disk allocation / record to disk | ✅ | ❌ recording into RAM (PR #84) | ❌ | ❌ | ❌ | ❌ |
MIDI
| Feature | Pro Tools | SoundCraft (all platforms) |
|---|---|---|
| MIDI input devices (keyboards, pads) | ✅ | ❌ no MIDI device layer at all (setup.midi_input_devices stores names) |
| MIDI output to external gear | ✅ | ❌ |
| MIDI Thru, input filter | ✅ | ❌ (stored flags only) |
| MIDI Beat Clock out, MTC generate/chase | ✅ | ❌ |
| MIDI learn / controller mapping | ✅ (via surfaces and plug-in maps) | ❌ |
| Virtual MIDI keyboard | ✅ (MIDI Keyboard window) | 🟡 window exists, no live audition path |
Control surfaces
| Feature | Pro Tools | SoundCraft |
|---|---|---|
| EUCON (S1/S3/S4/S6, Dock, Control app) | ✅ | ❌ Avid-proprietary SDK; owner decision |
| HUI | ✅ | ❌ |
| Mackie Control Universal | ✅ (via HUI emulation and personalities) | ❌ |
| Generic MIDI controller personalities | ✅ | ❌ |
Sync and video hardware
| Feature | Pro Tools | SoundCraft |
|---|---|---|
| LTC / MTC chase, 9-pin machine control | ✅ (Ultimate) | ❌ |
| Word clock / video reference awareness | ✅ via interface | ❌ |
| Video output to a second display or video card | ✅ | ❌ (video window only) |
| Satellite linking of systems | ✅ | ❌ |
Performance
| Feature | Pro Tools | SoundCraft | Evidence |
|---|---|---|---|
| Parallel mixing across cores | ✅ | ✅ | soundcraft-mix renders independent strips in parallel (rayon) |
| Plugin delay compensation | ✅ | ✅ | |
| Disk streaming of long sources | ✅ | ❌ | Whole files decoded into the SourcePool |
| Track count (Ultimate: 2,048 voices) | ✅ | unmeasured | No benchmark exists; add cargo xtask bench |
| Real-time audio thread discipline | ✅ | ✅ | No blocking/allocation in steady state, audio-thread-aware logger |
| Freeze / commit to save CPU | ✅ | 🟡 | track.commit renders; track.freeze only sets a flag (no CPU saved) |
| GPU-accelerated UI | — | ✅ (wgpu/glow via eframe) | llvmpipe X11 issue #107 |
Revision history
| Date | Change | Summary |
|---|---|---|
| 2026-10-10 | major | Created: audit of audio interface, MIDI, control-surface, sync and performance support against Pro Tools 2026.4.1 |