Ideas 2014

Updated 1 year ago

Your proposal

We strongly believe that the best proposal for you is the one you'll do. If you have any suggestions, come on IRC channel #musescore on freenode.net, or contact us on the developer mailing list.

Also check ideas from previous years: http://musescore.org/en/developers-handbook/google-summer-code

Accessibility for Visually Impaired Musicians

Blind musicians wishing to create scores in standard notation currently have very few options, since most notation software is not designed with accessibility in mind. It can also be difficult for blind or visually impaired musicians to obtain scores in Braille or other "accessible" formats (large print editions, electronic formats that read scores aloud, etc). MuseScore could be a revolutionary tool in the community of blind musicians if it were enhanced to address these concerns.

Some of the areas that need work:

  • Making all menus, dialogs, and windows keyboard and screen-reader friendly
  • Adding full keyboard control for score navigation, including the ability to traverse all score elements rather than just notes and rests
  • Enhance status line display or add new window, with screenreader support, to provide meaningful feedback during navigation
  • Making all score editing operations performable via keyboard
  • Improving automatic layout facilities to reduce need for a sighted user to identify places where manual adjustments are needed
  • Extending MusicXML export as necessary to better support automated MusicXML-Braille converters
  • Plugins or other automation for export to Braille or other accessible formats (via MusicXML using existing tools)

Some of these are relatively easy, others much more difficult. The whole job is very big, but implementing even portions of this could change the lives of many blind musicians.

For more on this topic, see the Accessible Music Notation Project site, and the MuseScore Accessibility document in particular.

Difficulty: Easy to Hard
Skills: C++/Qt
Possible mentor: Marc Sabatella

Better support of Guitar Pro import

Guitar Pro is a very popular software to create tablature. There are a lot of Guitar Pro files on the web. MuseScore 2.0 will be able to create tablature and has minimal support for Guitar Pro 3, 4 and 5 files. There is no support for Guitar Pro 6 format.
Importing these file formats will make available hundreds of thousands arrangements to MuseScore users. They would be able to play and edit them. No other free and open source tool support the 4 formats.

Some of the areas that need work:

Difficulty: Easy to Medium
Skills: C++/Qt
Possible mentor: Nicolas Froment (@lasconic) / Maurizio A. Gavioli (@Miwarre)

Virtual singer

Several users requested a virtual singer in MuseScore. This feature would make MuseScore sing the lyrics in a score. It's useful for singers in choir who likes to rehearse with actual synthesized lyrics.

There are several specialized (open source) software projects and libraries which do "sing synthesis".

An external tool that could process a MIDI or MusicXML file created by MuseScore and make an audio file would be good for singers to practise along.

Difficulty: Hard
Skills: C++/Qt
Possible mentor: Nicolas Froment (@lasconic)

Proofing tools for lyrics: spellcheck and hyphenation

Hyphenation is really simple in Spanish (and might be a good starting point), but it is really hyphenation checking in English that is the most valuable (since very few English speakers know how to hyphenate in English).

Hyphenation for lyrics (in English) isn't straight forward. There are plenty of hyphenation algorithms used in desktop publishing and LaTeX but they don't work for lyrics since they disallow one-letter syllables (which is the right choice for end-of-line hyphens but not correct for lyric hyphens, which divide every syllable regardless of letter length). A solution could be to to look up the hyphenation of every word in an English dictionary.

Spell checking lyrics also takes some work beyond simply hooking up a spellchecker. For example "ed-i-tor-in-chief" should pass spellcheck as "editor-in-chief". You have to preserve some hyphens and drop others before the spellchecker recognizes the word.

Ideally these proofing tools would mark up the score directly (with zig-zag underlines, etc.)

Difficulty: Medium
Skills: C++/Qt
Possible mentor: David Bolton

More flexible selection facility

MuseScore currently allows you to select regions and then copy, cut, paste, or delete the contents of that selection. However, the user has no control over which elements within the region are affected. So you cannot choose to copy only the notes but not the lyrics, or only the dynamics, hairpins, and breath markings but not the notes, etc. Other programs provide dialog boxes that allow you to control which element types are affected by operations on that selection. MuseScore could be extended to do this as well.

Difficulty: Easy
Skills: C++/Qt
Possible mentor: Marc Sabatella

Alternate notation styles for specified ranges

MuseScore currently provides a plugin to convert an existing passage into slash notation, but this approach is limited in a number of ways. MuseScore also allows you to specific the transposition for a staff, or to make a staff invisible, or specify the number of staff lines, but these properties are global for the staff throughout the score.

What is desired is to be able to select a region and then specify an alternate notation style for that region - slash notation, a different transposition, different number of staff lines, etc. This involves both defining a UI and mechanism for specifying what you want, as well as actually implementing native support for slash notation and perhaps other notation styles.

Difficulty: Easy to Medium
Skills: C++/Qt
Possible mentor: Marc Sabatella