GSoC 2020: Albums, Week -1, Check in

Posted 4 months ago

A quiet week

This week I have no flashy video to show you since most of my time was spent on improving the code quality and becoming familiar with some useful MuseScore classes. Hopefully, the work done this week will enable me to make some pretty big strides next week :-)

What progress was made this week?

This week I focused my efforts on improving the existing code (rewriting and adding comments) and fixing bugs/crashes. That includes fixing various crashes related to enabling/disabling scores, improvements to the save/load album functionality.
In addition to that, I started working on improving the Layout of scores in album mode and I created a simple mtest (albumIO test) for the album manager (used for automated testing).

Where am I going from here?

This is the list of items that I want to tackle in the following week:
- Changes to Score/MasterScore/Movements classes.
- Work on the Layout some more (there are multiple problems, e.g. big scores are not drawn in their entirety).
- Album Playback in Album Mode (for very simple albums with only one instrument).
- Save album, remember the last folder.
- Complete the albumIO mtest.
- Try out the option of having an Album that contains both Scores and other Albums.
- Bug/crash fixes (there is a very important bug related to adding movements to a score)
- More comments and improvements to the code quality (I will also need to change to the new coding style).

My main focus will be deciding what to do with the MasterScore, Score and Movements classes. Unfortunately, their purpose is not well defined. I will update you in a separate blog post about my findings and ideas for those.

More information about the use cases of Albums

FreshDrPepper kindly asked me to point out some possible use cases for this new feature and this is the time to answer.

So, here we go:
- Ability to make changes to multiple scores in an album. For example, you could change the text style of all scores in the album at once, or maybe add a new instrument to all scores. I could not hope to think, let alone implement all the useful mass changes that there could be but I will lay out the foundation for future improvement and additions.
- One important ability of the old Album Manager (as Joachim Schmitz pointed out) is that it produced smaller PDF files than joining the PDF files of every single score with a 3rd party application. In addition to that, printing 100 scores from an album will be way easier than printing each score separately.
- You will have the ability to join 2 (or more scores) into a single one. Ideally, there will also be the option to split that joined score back into its parts.

These are only some of the abilities that the Album Manager brings. I've already heard some quite exciting suggestions which I will talk about as time goes by.