Time estimates for whole pieces and selected sections
If a piece is loaded up to MusicScore.com and then played, times are shown at the top, indicating the total time and the time remaiining.
It would be very useful to know - even roughly - how much time a whole piece is likely to take, and also the time for sections of a piece when using the MuseScore program. Some composers and performers might find this very helpful.
I can get a fairly good idea of this by exporting pieces and sections to an audio file - mp3 will do - and then looking at the timing of the audio file, but I believe this could be estimated reasonably accurately by a process running within the MuseScore program. This could - or at least might - be a lot quicker than the audio export method.
Of course there might be other times of interest, such as the time from the beginning to a given point, or the times of each individual movement or variation in a more complex piece, but once a mechanism for basic timing has been developed it should be relatively easy to adapt it for different scenarios.
Comments
The play panel just does that.
Open a score, open the play panel, move the play panel's slider to the end, check the time shown above it
In reply to The play pannel just does… by Jojo-Schmitz
Thanks - I didn't know that - though that doesn't cope with all the situations I envisage.
For time from a given point to the end:
Open Play panel - takes (say) 3 seconds.
Locate point in score to start from - takes (say) 3 seconds. Note actually have to start playing - space bar - in order to get the time in the Play panel to update.
Find time to end in Play panel - takes 3 seonds
Subtract to get time from start point to end. 2 seconds - so in 11 seconds have the time from a given point to the end, plus also the time to the first marked point from the start as a by product.
For a section between two marks:
Locate first point in score - say 3 seconds - as in previous example will have to start playing to update the Play panel time.
Locate second point in score - again say 3 seconds.
Subtract - allow 2 seconds. Total interaction time about 8 seconds.
For large works the interaction time could be considerably longer depending on which timings required.
Something in the score panel directly as a visual read out could be much simpler and quicker for the end user.
In reply to Thanks - though that doesn't… by dave2020X
This sort of facility has been proposed and discussed a few times (#298421: Time marker, and https://musescore.org/en/node/285412 for example). However, no one has yet found a way of implementing it that takes account of repeats and jumps easily.
In reply to This sort of facility has… by SteveBlower
Well few things are perfect. Getting a result without taking into account repeats might be OK, and it would also be possible to unroll repeats which seems to work quite quickly.
I noticed though that unrolling the repeats generates another working copy - but it could still be better - and also quicker than - nothing - or anything else in the short term.
I agree that making a more comprehensive timing facility might be harder to implement, though probably not impossible.
For a more accurate result something equivalent to selecting the section to measure, then generating an audio file, then extracting the timings would work - though often there wouldn't actually be any need to generat audio or do all the things which I sometimes do in order to find section timings.
In reply to Well few things are perfect… by dave2020X
"something equivalent to selecting the section to measure". That is the crux of the problem: how to specify the section to measure. How to arrange it so that the user can specify a start that is (say) the second measure of a repeated section on the second time it is played and an end that is two measures before a To Coda but on the first time that measure is played, or all the other permutations that can occur with repeats and jumps. I expect that that the calculation of the timing would be easy, it is the user interface that is difficult.
In reply to Thanks - though that doesn't… by dave2020X
Part of the difficulty with the range select information thing is that you somehow should probably specify at which repeat and/or before/after which jump(s) you want for both the start and endpoints there.
In reply to The play pannel just does… by Jojo-Schmitz
[oops]
In reply to The play pannel just does… by Jojo-Schmitz
Re Jojo-Schmitz • Apr 12, 2021 - 13:43
The play panel just does that.
Open a score, open the play panel, move the play panel's slider to the end, check the time shown above it
Is this total time available via the plugin API in MS3?
In reply to Is this total time available… by yonah_ag
I don't think so
In reply to I don't think so by Jojo-Schmitz
I've rechecked the API documentation and it looks like this value may be available in curScore.duration as this matches the play panel for several scores which I have compared. This could prove very useful.