musescore / musescore/MuseScore

Add an option to disable auto-save during playback

Open
#17,328 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Your idea

Add an option that allows to disable the auto-save while the score is playing. The auto-save can be resume when the playback is paused again.

Problem to be solved

The auto-save feature causes the playback indicator (that vertical bar sweeping over the score) to hang until the save is over. I noticed when I tried to record a playback of a score that's longer than 3 minutes and every time the visuals where "disturbed" by the bar hanging for a few seconds. Took a while to figure the auto-save was the problem.

So I disabled the feature for the recording, but it took several attempts to nail the recording, and the prospect of forgetting to re-enable auto-save is scary. I'd rather have an option to temporarily disable the saving while the playback is running.

Prior art

No response

Additional context

Maybe one can also fix the cause of the thread interaction that's causing the hang to manifest in the first place. Maybe some "save to file" call is accidentally put on the main/render thread instead of a background thread (if there's such a thing in MS, idk).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the auto-save behavior during score playback and how playback pause and resume are handled; the issue names no files or tests. Done means playback can temporarily suppress auto-save, saving resumes when playback is paused, and the playback indicator no longer hangs during the disabled period.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.