Consolidate deck manipulation handling
Route the three 1-to-1 deck manipulation data streams (CD/vinyl time code, controller wheels, waveform dragging) to one entity (per virtual deck) that evaluates these data and has sole responsibility for effecting the manipulations. In other words, the current Scratch* COs (as well as Jog and Wheel, etc.) will be routed through this entity instead of operating directly on the deck. The vinyl control subsystem currently has the best response, so we will use its processing subsystem as the basis for this new entity.
Also make use of time stamps from sources that send them for better response.
Blueprint information
- Status:
- Not started
- Approver:
- Mixxx Release Managers
- Priority:
- Medium
- Drafter:
- Mixxx Development Team
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Not started
- Milestone target:
- None
- Started by
- Completed by
Related branches
Related bugs
Bug #1157570: Controller scratch: fast oszilating speed, bad sound at rate = 1 | New |
Bug #1157573: Respect the Midi timestamp when scratching | Confirmed |
Sprints
Whiteboard
In preliminary discussions with RJ, a PID controller is a more flexible/
Each input source would register itself with this handler including the parameters it needs to tweak for correct operation, then the handler would affect the deck speed for each output audio frame based on the inputs (and previously-supplied parameters) from each source.
I (Sean) took a quick look at PositionScratch
Work Items
Work items:
Discuss details, get approval from the PID code writers (RJ, Daniel): TODO
Implementation: TODO
Dependency tree
* Blueprints in grey have been implemented.