Skip to content

Merge upstream #2174: Add prioritized render scheduling - #49

Merged
runit-xze merged 3 commits into
masterfrom
merge/pr-2174-retry
Jul 25, 2026
Merged

Merge upstream #2174: Add prioritized render scheduling#49
runit-xze merged 3 commits into
masterfrom
merge/pr-2174-retry

Conversation

@runit-xze

Copy link
Copy Markdown
Owner

Pulls in stakira/OpenUtau#2174.

Previously closed as #34. Real conflicts against openutau#2261 (XSY cross-synthesis) and openutau#2119 (Render Live Waveforms), both already on our master. Resolved by combining: RenderEngine's constructor now has both the XsyBlendCache field and the focusPart/focusTick priority params; the render loop keeps this PR's cancellation-check-first ordering while preserving the XSY blending branch; PlaybackManager resets both the live waveform cache and the focus-part/tick state on project load.

…intainer review

Based on stakira's feedback:
- Remove GetRenderInvalidations() command hook (over-complicated, never used)
- Remove RenderInvalidation.cs and RenderInvalidationTest.cs
- Revert all command changes (NoteCommands, ExpCommands, PartCommands)
- Revert DocManager, PlaybackManager, RenderEngine, Notifications changes

Keep the existing RenderPriority and phrase ordering logic intact:
- RenderPriority.cs (sorting rules)
- OrderForPlayback / OrderForPreRender in RenderEngine
- PreRenderNotification with focusPart/focusTick

Update RenderPriorityTest:
- Remove Overlaps tests (method doesn't exist in master)
- Rename methods for consistency
- Add PlaybackDistance coverage
@runit-xze
runit-xze merged commit 55da2d8 into master Jul 25, 2026
@runit-xze
runit-xze deleted the merge/pr-2174-retry branch July 25, 2026 19:40
Cherry-picked from openutau#2174: openutau#2174
Resolved real conflicts against features already on our master:
- RenderEngine.cs constructor: combined the XSY cross-synthesis blend cache (openutau#2261) with this PR's focusPart/focusTick priority params.
- RenderEngine.cs render loop: kept this PR's cancellation-check-before-unpack ordering, combined with openutau#2261's XSY blending branch (both operate on the same tuple, not mutually exclusive).
- PlaybackManager.cs: kept both state resets on LoadProjectNotification (live waveform cache clear from openutau#2119, focus-part/tick reset from this PR) since neither depends on the other.
runit-xze added a commit that referenced this pull request Jul 25, 2026
Merge upstream openutau#2174: Add prioritized render scheduling
runit-xze added a commit that referenced this pull request Jul 25, 2026
Merge upstream openutau#2174: Add prioritized render scheduling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants