Friday, August 12, 2011

Suggestions for Improving MuseScore

Note: I originally started this post in February, but got busy with my study abroad and forgot about it.  This is mostly based on MuseScore 1.0 and some complaints may have been long fixed in the development branch.

Since I discovered MuseScore last year, I've been back in the digital composition world. In the before times, I used Finale PrintMusic, but when I got my own computer, I couldn't take the program with me, being a Mac and the program for my family's PC, so I took my .mus files and sat on them, hoping to use them again someday. Eventually I found Muse and the earlier betas of MuseScore and did not enjoy using them that much because they crashed all the time on Mac OS. I came back the the program about 6 months later and was impressed at how it actually worked this time. I've been using it since then to write new music, re-imagine music I made under Finale, and arrange music.
After using it fairly heavily this past year, I have a long list of tips and suggestions for future development and users that I hope will be found to be constructive. I know I should submit all these to the bug tracker and/or feature request forums, but I'm a college student short on time, so here they shall reside until I can get time to atomize this long list into separate posts.

Although nothing can compare to LilyPond when it comes to printing music in a high-quality manner, MuseScore has impressed me, even more so than Finale. Without more exposition, here are the suggestions for you to browse and enjoy.

Protip: save your scores in a Dropbox folder for backup, versions, and syncing. It's saved me from more than one crash "recovery" that went wrong.
  • Keys should default to change all staves (except un-pitched percussion) when put in the score, like a time signature, maybe hold shift while applying a key signature to make it for one staff or selected staves only.
    • Speaking of time signatures, why not allow independent time signatures like LilyPond? I saw that this was to be fixed in 2.0
  • Improved addition of parts—tempi and rehearsal marks should always be at the top of the score, even if a part (piccolo usually) is added on top of the existing topmost staff.
  • Better playback
    • Implementing dynamics hairpins
    • Control accelerando and ritardando
    • Articulations would be a plus.
  • Better transpose window: less scrolling for transpose by interval, add a diatonic transposition
    • Will be addressed in later post
  • Auto-expand the drum pallet when working on a percussive staff, maybe develop a way to enter drums easily with the computer keyboard
  • Add an easy way to edit instruments.XML/share it across OS's Fixed with Dropbox or a shared data partition.
  • Any chance at figuring out Finale importing? Probably not, but that sure would be nice.
  • Auto-scale the score when adding new parts or suggest a different paper configuration if the staves are too small or it is really empty.  This is especially useful when trying to customize a score for a large ensemble.
  • Adding brackets and accolades gets really weird after adding instruments.  For example, the first bracket may or may not decide to line up flat against the start of the system.  Sometimes, adding an accolade to a subset of staves in a bracket gives a conflict of the accolade and bracket.
  • Percussion-specific things:
    • More percussion sounds, specifically include the TimGM6withDL as a default soundfont with support for the instruments in the stock instruments.xml file. More percussion sounds in general would be nice, maybe as an add-on soundfont for those of us who need it, although I suspect this is outside the realm of MuseScore
    • Ability to switch staves to percussion and back at will (useful for writing for multi-percussion parts and for percussive effects on other instruments)
    • For mallet percussion, a tremolo on a chord should be treated as multiple rapid arpeggios, not just a repetition of the chord—if you do this, you'll be ahead of Finale in one area
    • Single-tick tremolos on percussion notes should be treated as two notes in the space of one for playback
  • Less necessity of having the cursor perfectly placed over the note for editing, this is especially annoying when trying to delete staccato dots.  I don't want to have to zoom to 400% to move those little things.  Maybe have a clear articulations function for a note or selection
  • Keep dynamics and hairpins together I'm not really sure what I meant by this I think what I meant is that the dynamics should be at the same level as the hairpins that meet them by default, especially if an auto-layout is implemented
  • Auto-select the endpoint of a hairpin when created, like a slur.  It's surprisingly rare that I actually want my crescendo to go all the way to the barline.
  • Playback of grace notes Works, could be improved, especially if grace notes are on the first note or are of short duration
  • Movable tabs
  • Scroll bars in the page preview, so I can tell how long the music is
  • A scroll view, where the pages don't matter and you can focus just on the music.  Integrating the mixer to the left side of the screen to start each instrument would be great.
  • Keep the pages scrolling in the preview during playback of long scores
  • Better mac integration—maybe use a full-screen app for Lion?
  • Detection of conflicts between default keyboard short-cuts and shortcuts used by other things would be nice to know of when starting the program (may be impossible)
  • Use window previews in Windows 7 to select which score tab and maybe some basic playback functionality, like IE9 and Opera have when you have multiple tabs open
  • Ability to extend a bracket upwards with a handle
  • More forgiving dragging of ornaments onto notes, see the point about not needing laser precision to hit the note head.
  • More consistency in keeping a dragged element close to the mouse pointer
  • Have "smart" articulations and get rid of the different up/down choices in Articulations and Ornaments pallet, with the up/down orientation being a property of the articulation or ornament
  • Snap dynamics and whatnot to sensible positions once an anchor note has been selected, maybe with some sort of "optimize score" option to line up the dynamics, hairpins, and slurs for final publication
  • Refresh screen (redraw) to get rid of text that has been deleted but refuses to depart from the screen.
  • Clean up-score button needed I'm not quite sure what I meant by this, but it would be quite nice to have a button to remove all articulations, dynamics, and the like from a note or selection of notes.
  • Easier grace note entry 
  • Transfer hairpins and dynamics when copying. It's annoying having to delete the old stuff after the notes are gone.
  • Integrate the info displayed on the play panel into the various toolbars. 
  • I think I'll write a separate post (or an update) about UI improvements.  I don't feel like opening Photoshop right now to make mock-ups
  • Have the dynamics palette appear if you press the shortcut on a note, then disappear and leave the note selected after clicking on the desired dynamic
  • The Mixer window ought to fit everything with no horizontal scrolling when it is called
As I said, a second part of this post will be up (sometime soon) with images and comments on them.

1 comment:

  1. Love most all of the suggestions. As for Finale importing, open the file you want in Finale and export it to MusicXML format, which MuseScore WILL open. I've done this more than once to keep from having to re-enter an entire piece.