GSoC 2021 - Smart Tempos - Improving Static and Dynamic Tempo in MuseScore 4
Hello! I’m Sidharth and I will be working with MuseScore during this summer as part of this year’s Google Summer of Code. My project, ‘Smart Tempo in MuseScore’ aims to primarily improve the existing tempo notation system, with a secondary focus on improving tempo playback.
Smart Tempos
In MuseScore 3, the tempo notations are treated at their core as text elements and are editable in their entirety. This makes it incredibly hard to input metronome markings, or change the note value in an existing marking (from say a crotchet to a dotted crotchet) without replacing the marking with a new one. This also means that playback is invariably tied to the BPM as indicated by the crotchet and when the score is exported, the tempo is always converted to a crotchet beats per second. My project aims to solve both of these problems by effectively decoupling the text and the metronome marking. The new solution will also enable users to input a wider variety of more complex markings, such as triplets or tied notes that are not possible with MuseScore 3. Currently, the user has to add three separate tempo elements in order to notate a marking such as (Allegro (♩ = 120) (♩. = ♩)). In contrast, this would be possible using a single tempo element with the new system.
The other part of my project hopes to achieve (or at least lay the foundation of) one of the most requested features in MuseScore - Dynamic Tempo Changes (e.g. “rit.” and “accel.”). While a plugin does exist to provide this feature in MuseScore 3, I hope to be able to provide this feature natively and add tempo resets to accompany it too! This would go a long way in improving playback. The inclusion of these features should provide users with a much better experience in notating tempo, while allowing finer control over tempo during playback too!
I'm thankful to both MuseScore and Google for this opportunity and I’m really looking forward to working with my mentor Niek van den Berg, as well as Casper, Tantacrul, and the wider community over the summer!
Comments
Many thanks. Looking forward to v4!