A whole new MIDI-Only Entry program.... ?

• Aug 4, 2011 - 19:47

This idea isn't a feature to add to MuseScore, it should probably be a stand-alone program.

We often get the question "Why can't I just play on my MIDI board and get a perfect score right out of the computer? The rub, of course, is getting the durations right. Perhaps something could be done using a two step process, and two kinds of data.

Step one, you'd play on the MIDI board, and the computer would record the pitches and their actual real time durations.

Step two, the computer displays the staff with key signature and time signature, but no bar lines, and instead of notes, the horizontal axis is a scalable time line, and on the lines and spaces, there are horizontal blue lines corresponding to the duration that each key was held down. Rests (all keys up) would appear on the time line scale itself. For multiple voices, maybe click select the raw timeline bars, and change their color?

With the mouse, you can move a full height vertical cursor to any point on the time line, or with the arrow keys, you can move it to the start of the next or previous duration. Then, with the number keys, you can assign a duration to all the notes that are active at that point on the time line, making a chord.

You'd start at the start of the first duration, and if it's a chord, arrow to the right until you have the cursor selecting all its notes. Give it a duration, and the cursor snaps to the start of the next available duration. When you've done a bar's worth, it puts in a bar line.

In order to interrupt what you're doing and continue later, this would need its own special working file format, containing both the raw timeline data and the finished notation, so you could save a work in progress file. When it's done, you'd be able to save it as a regular MuseScore file, and take it to MuseScore for all the polishing it' going to need.

-- J.S.


Comments

I think this is an interesting idea to explore but in a standalone program. I was thinking of using the Processing language (www.processing.org) to capture MIDI events and display them on the screen in a piano-roll style format.

What you are capturing are Note on and Note off events, and maybe velocity depending on your keyboard.
Those would be stored with a time stamp.

Other things to consider in such a program are determining the tempo of the piece (assuming it is
played at a constant tempo. Maybe your program would allow you to draw the length of the bar line
and how many beats you have in the bar. Next you would have to quantize the notes - rounding up the
durations to the nearest whole note/half note/eighth note....

Have you explored using a program such as Reaper (www.reaper.fm) for MIDI recording, quantize the
notes then export the MIDI and load into Musescore?

Charles

Actually, durations are but one of many problems. What about when notes start, if you you are not perfectly in sync with the metronome? What about spelling of accidentals? What about situations where you are essentially playing mulitple voices? What about determining which notes go into which staff for piano music?

These are all hard provlems that are not completely solvable, which is why the real time MIDI entry in most programs is next to useless for anything but the most simplistic of music. But I'd that could be because no one has thought to treat these as important enough problems tp solve, given that real time MIDI entry is not the primary purpose of most programs. So I'd agree a standalone program that made it a goal to solve those problems as well as possibile would be an inreresting research problem. I wouldn't be at all surprised to find some grad student somewhere having prorotyped something in this area.

In reply to by Marc Sabatella

Accidentals, enharmonic notes, voices, tied notes, ... the list goes on!

I think the MIDI capture program could be useful for capturing an initial "sketch" of a MIDI performance but the next step of creating a score requires a person with music theory/arranging experience to make the arrangement. It could be a MIDI "sketchpad".

Charles

In reply to by Marc Sabatella

The idea is a two step capture and cleanup process. In the hybrid staff/piano roll format, you'd be able to click and drag all the bar lines and beat marks to align one point with the played data, then scale the rest of the time line to get things close -- sort of adjusting the rate of the metronome after the fact. After the large scale manipulations, you'd go through tweaking the position of individual bars and beats, then tweaking individual note endpoints.

After conversion to regular musical notation, you'd have to go through spelling accidentals and flipping things to the correct staff. The quick play and capture pass gets you the pitches in the right order. The cleanup pass puts in all the rest.

To play with the kind of mechanical precision it would take to get a score straight out of the computer is neither humanly possible nor musically desireable -- If anyone could do it, they'd sound just like a MuseScore playback. So, this kind of capture the pitches and edit the results thing is about as close as we could expect to get.

-- J.S.

In reply to by John Sprung

You could use a program like Reaper or Cubase to record the MIDI performance, edit the notes in the piano roll view, and perform a certain amount of quantization, then export a MIDI file. Use Musescore to import the MIDI then continue the editing. I am not sure what other features are needed in the cleanup process.

I would use such a process to transcribe melodies from listening to a song or recording, mainly to capture the rhythm.

Your thoughts?

Charles

Do you still have an unanswered question? Please log in first to post your question.