shoogle's blog

GSoC 2016 - Work Product - Semi-Realtime MIDI

7 years ago • 3 comments

This page lists all of the changes to MuseScore's code that were completed as part of the Semi-Realtime MIDI project to improve note entry in MuseScore. The project was part of Google Summer of Code 2016.

More information about the project is available at the following locations:

Code changes

Merged code changes

These commits have be merged into MuseScore's main code repository and are available in the Nightly Builds:

Read more

GSoC 2016 - Week 13 - Voices and Rhythms

7 years ago • 0 comments

This was my 13th and final week working on note entry with MuseScore for Google Summer of Code. This week I improved the rhythm simplification algorithm and added the ability to enter more than one voice at a time in Real-time mode.

This week’s summary:

  • Rhythmic groupings at the sub-beat level
  • Separation of Real-time input into multiple voices

Still to do:

  • Fix bugs with voice separation
  • Submit GSoC Work Product

Rhythmic grouping at the sub-beat level

I extended the grouping

Read more

GSoC 2016 - Week 12 - Rhythmic durations

7 years ago • 6 comments

This was my 12th week working on note entry with MuseScore for Google Summer of Code. This week I improved the ability to simplify tied notes to indicate rhythms.

This week’s summary:

  • Rhythmic durations
  • Menu command to re-tie notes (e.g. after a time signature change)

Still to do:

  • Voice extraction
  • Test user feedback

Rhythmic durations

Standard practise in music notation is split notes when they cross over a stressed beat, in much the same way as beams are split to

Read more

GSoC 2016 - Week 11 - Automatic Real-time & PortMidi

7 years ago • 16 comments

This was my 11th week working on note entry with MuseScore for Google Summer of Code. Most of this week was spent making small improvements here and there and solving a few issues with automatic real-time mode.

This week’s summary:

  • Workaround for PortMidi bug on Windows and Mac
  • Metronome unit tests
  • Instant note entry in automatic Real-time mode

Still to do:

  • New rhythm simplification and voice extraction implementation
  • Delayed preview for automatic real-time
  • Test user feedback

PortMidi

PortMidi is a

Read more

GSoC 2016 - Week 10 - Raw input timings

7 years ago • 6 comments

This was my 10th week working on note entry with MuseScore for Google Summer of Code. This week I started work on a new way of storing and handling user input internally that should result in more accurate notation.

This week’s summary:

  • Started new internal representation of user input:
    1. Storing of raw input times
    2. Adjust times to cope with tempo changes
    3. Convert to ticks and quantise to beat

Still to do:

  • Instant note entry in automatic Real-time mode
  • Test user
Read more

GSoC 2016 - Week 9 - Call for test users

7 years ago • 0 comments

This was my ninth week working on note entry with MuseScore for Google Summer of Code. This week I put the finishing touches to the second pull request, which represented a significant restructuring of my work from earlier in the project.

This week’s summary:

  • Improvements to real-time metronome
    • Different volumes for stressed and unstressed beats
    • Generalised implementation works for playback and for note entry

Still to do:

  • New implementation of rhythm simplification and voice extraction
  • Test user feedback

Metronome

The

Read more

GSoC 2016 - Week 8 - Performance and Preferences

7 years ago • 12 comments

This was my eighth week working on note entry with MuseScore for Google Summer of Code. I made rapid progress implementing a working proof of concept early in the project. For the past couple of weeks I have been going back over my previous work, improving the structure and performance of the code, and giving users more control over note entry via additional options and preferences.

This week’s summary:

  • Improvements to Automatic Real-time note entry mode:
    • Improved performance
    • Auto-advance triggered
Read more

GSoC 2016 - Week 7 - Submitting the code

8 years ago • 0 comments

This was my seventh week working on note entry with MuseScore for Google Summer of Code. Last week submitted a pull request containing the first part of my code to prepare the user interface for the new note entry modes. This week I prepared a second pull request to implement the new modes.

This week’s summary:

  • Basic implementation of each new note entry mode
  • Further improvements to the UI

Still to do:

  • Improve performance of auto mode
  • More sophisticated algorithm
Read more

GSoC 2016 - Week 6 - Improving the User Interface

8 years ago • 8 comments

This was my sixth week working on note entry with MuseScore for Google Summer of Code. In previous weeks I made good progress with the underlying algorithms for the new note entry modes, but I had yet to submit anything for inclusion in MuseScore's main code repository. This week I went back over my work from the previous weeks, tidying and improving the code in preparation for the first pull request.

This week’s summary:

  • ToolButtonMenu
  • Menu styles

Still to do:

Read more

GSoC 2016 - Week 5 - Voice separation & rhythmical ties

8 years ago • 1 comment

This was my fifth week working on note entry with MuseScore for Google Summer of Code. Last week I began to separate the user’s input into different voices to make it look more like sheet music. This week I continued with that task, and took another look at simplifying note durations in an attempt to follow standard rules for the placement of any remaining ties, or when tied notes should be actually be used in favour of dotted notes, according

Read more