Skip to content

Improve preview responsiveness and audio playback stability - #1103

Merged
jonoomph merged 15 commits into
developfrom
improve-preview-responsiveness
Oct 6, 2026
Merged

jonoomph merged 15 commits into
developfrom
improve-preview-responsiveness

Conversation

@jonoomph

@jonoomph jonoomph commented Oct 5, 2026 •

Copy link
Copy Markdown
Member

Improve preview startup, seeking, and audio continuity while making playback shutdown and reader changes safer.

Changes

  • Responsive caching: Cancel obsolete work promptly, preserve useful cached frames, and resume caching for the latest request.
  • Adaptive pre-roll: Adjust buffering to frame generation time and cache capacity. Recover missing frames without discarding the cached frames after them.
  • Clean audio after seeking: Discard stale audio after seeks or transport changes; safely retain and release audio sources across stop and restart.
  • Safer reader changes: Drain work before replacing readers and wake stopped render workers to avoid hangs and unsafe lifetime changes.
  • Test and licensing cleanup: Add missing copyright headers, remove the new Markdown writeup, and address static-analysis findings in tests and benchmark helpers.

Validation

  • Added regression tests and reproducible pre-roll benchmarks.
  • Passed 45 focused native tests after cleanup. Reader-handoff Memcheck, the library/bindings rebuild, and Python import also passed.
  • REUSE passes: All 418 library files have copyright and license information.
  • Still outstanding: Cross-platform and physical audio-device reconnect testing. Validation so far is local Linux.

Build notes and companion PR

  • Test together with openshot-qt #6172: Faster edits, Properties dock positioning, and optimized trim/razor previews.

@jonoomph

jonoomph commented Oct 5, 2026

Copy link
Copy Markdown
Member Author

@jonoomph
jonoomph merged commit 983c847 into develop Oct 6, 2026
7 of 11 checks passed
@jonoomph
jonoomph deleted the improve-preview-responsiveness branch October 6, 2026 15:44
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.

1 participant