Add progress
This commit is contained in:
parent
8e69c26688
commit
7f6df30c9e
1 changed files with 21 additions and 21 deletions
|
|
@ -1191,34 +1191,34 @@ private:
|
|||
|
||||
## 11. Implementation Milestone Plan
|
||||
|
||||
### Milestone 1: Core PipeWire Integration ✅
|
||||
### Milestone 1: Core PipeWire Integration
|
||||
**Estimated Time:** 2-3 weeks
|
||||
- [ ] Initialize Qt6 project with CMake
|
||||
- [ ] Integrate libpipewire with `pw_thread_loop`
|
||||
- [ ] Implement node/port discovery via registry callbacks
|
||||
- [ ] Implement link creation/destruction
|
||||
- [x] Initialize Qt6 project with CMake
|
||||
- [x] Integrate libpipewire with `pw_thread_loop`
|
||||
- [x] Implement node/port discovery via registry callbacks
|
||||
- [x] Implement link creation/destruction
|
||||
- [ ] Create lock-free communication primitives (atomics, ring buffers)
|
||||
- [ ] **Acceptance Criteria:** CLI test app that lists nodes and creates a link programmatically
|
||||
- [x] **Acceptance Criteria:** CLI test app that lists nodes and creates a link programmatically
|
||||
|
||||
### Milestone 2: QtNodes Integration ✅
|
||||
### Milestone 2: QtNodes Integration
|
||||
**Estimated Time:** 2-3 weeks
|
||||
- [ ] Integrate QtNodes library (submodule or CMake package)
|
||||
- [ ] Create `AudioNodeDataModel` for PipeWire nodes
|
||||
- [ ] Map PipeWire ports to QtNodes handles
|
||||
- [x] Integrate QtNodes library (submodule or CMake package)
|
||||
- [x] Create `AudioNodeDataModel` for PipeWire nodes
|
||||
- [x] Map PipeWire ports to QtNodes handles
|
||||
- [ ] Implement connection validation
|
||||
- [ ] Create custom node widgets with embedded controls
|
||||
- [ ] **Acceptance Criteria:** Visual graph editor displays PipeWire nodes and allows dragging connections
|
||||
- [x] **Acceptance Criteria:** Visual graph editor displays PipeWire nodes and allows dragging connections
|
||||
|
||||
### Milestone 3: Real-Time Meters & Performance ✅
|
||||
### Milestone 3: Real-Time Meters & Performance
|
||||
**Estimated Time:** 1-2 weeks
|
||||
- [ ] Implement `AudioLevelMeter` with optimized QGraphicsView
|
||||
- [ ] Create 30Hz update timer with manual viewport control
|
||||
- [ ] Integrate PipeWire audio callbacks for meter data
|
||||
- [ ] Implement lock-free meter data transfer (atomics)
|
||||
- [x] Implement `AudioLevelMeter` with optimized QGraphicsView
|
||||
- [x] Create 30Hz update timer with manual viewport control
|
||||
- [x] Integrate PipeWire audio callbacks for meter data
|
||||
- [x] Implement lock-free meter data transfer (atomics)
|
||||
- [ ] Profile and optimize rendering performance
|
||||
- [ ] **Acceptance Criteria:** Smooth 30Hz meters with no GUI lag, validated with profiler
|
||||
|
||||
### Milestone 4: Virtual Devices & State Management ✅
|
||||
### Milestone 4: Virtual Devices & State Management
|
||||
**Estimated Time:** 2 weeks
|
||||
- [ ] Implement virtual sink/source creation via PipeWire adapters
|
||||
- [ ] Create `PresetManager` with JSON serialization
|
||||
|
|
@ -1227,7 +1227,7 @@ private:
|
|||
- [ ] Implement auto-reconnect for device hotplug
|
||||
- [ ] **Acceptance Criteria:** Create virtual device, save preset, restore on restart
|
||||
|
||||
### Milestone 5: Mixer View & Volume Control ✅
|
||||
### Milestone 5: Mixer View & Volume Control
|
||||
**Estimated Time:** 1-2 weeks
|
||||
- [ ] Design traditional mixer UI with faders
|
||||
- [ ] Implement volume slider with PipeWire parameter sync
|
||||
|
|
@ -1236,7 +1236,7 @@ private:
|
|||
- [ ] Implement undo/redo for volume changes
|
||||
- [ ] **Acceptance Criteria:** Mixer panel controls node volumes, changes persist in presets
|
||||
|
||||
### Milestone 6: Undo/Redo & Polish ✅
|
||||
### Milestone 6: Undo/Redo & Polish
|
||||
**Estimated Time:** 1-2 weeks
|
||||
- [ ] Integrate QUndoStack for all graph operations
|
||||
- [ ] Implement command classes for link, volume, node operations
|
||||
|
|
@ -1245,7 +1245,7 @@ private:
|
|||
- [ ] Add copy/paste/duplicate functionality
|
||||
- [ ] **Acceptance Criteria:** Full undo/redo history, keyboard shortcuts work
|
||||
|
||||
### Milestone 7: Error Handling & Edge Cases ✅
|
||||
### Milestone 7: Error Handling & Edge Cases
|
||||
**Estimated Time:** 1-2 weeks
|
||||
- [ ] Implement device unplug/replug detection
|
||||
- [ ] Handle PipeWire service restart with auto-reconnect
|
||||
|
|
@ -1254,7 +1254,7 @@ private:
|
|||
- [ ] Add error logging with structured JSON output
|
||||
- [ ] **Acceptance Criteria:** App survives device unplug and PipeWire restart without crashing
|
||||
|
||||
### Milestone 8: Final Polish & Release ✅
|
||||
### Milestone 8: Final Polish & Release
|
||||
**Estimated Time:** 1-2 weeks
|
||||
- [ ] Create application icon and desktop file
|
||||
- [ ] Implement dark/light theme support
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue