Conventional notation software often struggles to turn real MIDI performances into usable scores. ScoreCleaner applies artificial intelligence to the problem...
While the typical bedroom-based music producer probably doesn't have very much need for music notation software, it's a big deal in other parts of the industry, encompassing everyone from professional copyists and typesetters creating scores for publication, through composers and arrangers generating instrumental parts for recording sessions, to almost anyone who is involved in music education.
There's quite a disparity, as you'd expect, between the sophistication of industry standards like Sibelius and Finale, low-cost and open-source packages, and the typical notation editors built into some recording packages. And yet most notation software works on the same principles, either requiring you to painstakingly enter note data using some kind of 'step time' technique, or generating a score from a real-time performance played to a click track. The former usually demands a pretty firm grasp of music theory from the off — you've got to know how to notate what's in your head — and the latter can fall over when presented with anything much more than simple single-line melodies or chordal parts, and even then, the results can look really clumsy to the experienced eye.
ScoreCleaner, by Swedish company DoReMIR, aims to provide another way forward. It attempts to transcribe MIDI performances the way a human transcriber would. That includes accurate, musician-friendly and 'clean' notation of rhythm, and intelligent handling of multi-voice contrapuntal and keyboard-based textures.
For musicians looking to notate fast — even those without Western musical theory chops — ScoreCleaner promises to be a faithful amanuensis. Even for those already versed in notation, and perhaps already owning another notation package, it seems to offer advantages in the speed at which complex scores can be produced. Notation is a massively complex business at the best of times, though, so how does ScoreCleaner get on in with it?
Getting music into ScoreCleaner is remarkably straightforward. After launching the application, you can simply begin to play on your MIDI controller: no click track is required, and you don't have to provide any information about time signature, key or tempo. What you play is notated in real time in ScoreCleaner's Listener window as what's called a Snippet, with notes appearing on a single stave in a basic, illustrative fashion. Incidentally, it's also possible to open a MIDI file, instead of playing, to create a Snippet. Whichever approach you take, to turn a Snippet into a proper score you double-click it, whereupon a few seconds of processing takes place before a new Song window appears, containing conventional notation of your performance.
That's not the end of the story, though, as a fair degree of editing of Songs is possible. First of all, there are commands for fixing any basic transcription errors, including changing time signature and choosing where downbeats occur in the bar, and the 'beat density' (the note value chosen to notate the underlying pulse). Then come various ways to correct pitch, rhythm and note duration, including 'playing in' corrections or using the mouse and modifier keys. Also present are facilities to control the way ScoreCleaner has interpreted and notated any independent voices in the music — one of the most challenging aspects of transcription and notation in general. You can also add to a Song by overdubbing new voices or staves, or increase the length by dragging new or existing snippets directly into the Song window. Chord symbols and lyrics can be typed in too.
Finally, Songs can be printed directly from ScoreCleaner, and a number of options exist for saving your work. Both Songs and Snippets can be saved for working on at a later time, or exported as MIDI files. You can also choose to export a Song in MusicXML format for subsequent editing in a more powerful, dedicated notation application.
So that's the theory — now for the practice. I began with single-line melodies, and the results were immediately impressive. I played in a tune with four beats in a bar and a bit of syncopation. ScoreCleaner actually notated it in a 3/4 time signature, but it only took a quick click on the Time Numerator menu-bar button to fix that.
Next, I tried a strongly swung melody, and despite the lack of click track or other rhythmic guide, ScoreCleaner miraculously got the pick-up bar exactly right, notating the whole thing accurately in triplets. Dedicated Triple Time and Swing menu-bar buttons instantly gave me two more additional, alternative notations of the same thing. (Incidentally, I happen to think that 'Triple Time' is incorrectly labelled. 'Compound Time' would be more accurate.)
Upping the stakes a little, I played an instrumental line with a two-part texture — again, no click track — and once more the results were excellent, notated on two treble staves, and needing only a small beat-density tweak to yield a perfectly notated score.
So far, so good, but what about something more challenging? Typical pop and rock piano parts can feel simple enough to play, but they can be devilishly hard to notate. They'll frequently contain several independent voices that come and go inconsistently, and have plenty of syncopation to boot. The typical pop piano accompaniment part I noodled around with, shown in the main screenshot for this review, came out really well. There isn't a transcription engine I know of — certainly not in Sibelius or Finale — that could do what ScoreCleaner achieves here. It's clean, coherent and consistent, and about the only criticism you can level at it is that G-major was chosen for the key signature when D-major is more accurate. Switching to Voice mode shows how ScoreCleaner interpreted the independent moving parts in the texture; only the spurious, short-lived Voice 1 is really incorrect, and the Show Regions function allows that to be quickly merged into Voice 2 with a simple mouse drag.
Most other tests were also very successful, with ScoreCleaner correctly identifying jazz-piano chord and melody texture, and shrugging off irregular time signatures as if they were no different to straight 4/4 — which, to the software, they probably aren't! For really complex stuff, you can overdub into a new voice, on a new stave if necessary, working directly in the Song window, and effectively building up a transcription in layers. Similarly, if what's in your head contains obvious changes of texture, tempo or time signature, it's better to record separate snippets for each section and then combine them into one single song. The important thing is that there are ways of working for those occasions when you exceed ScoreCleaner's capabilities to get things right first time.
When the transcription process does go wrong, though, it has a habit of going spectacularly wrong. The screen labelled 'Misfire' shows what ScoreCleaner made of a simple 4/4 pop-style ditty played at a consistent pulse and with chords spread between the hands and the melody squeezed in on top: not pretty, and more importantly, not usable. Playing the same music but with the Listener's Click Track feature enabled gave a far more acceptable and really quite respectable result. It mightn't be the ideal notation, with some notes being allocated to the wrong stave, but it's not far off either.
At first sight, you'd be forgiven for thinking that ScoreCleaner had no score editing facilities, as apart from the global parameters in the Song window's title bar there appears to be nothing on offer. There's certainly not the flotilla of palettes and screenful of menus associated with most notation software. In fact, virtually everything is done with mouse techniques, modifier keys, and a few keystrokes, with the odd right-click contextual menu command thrown in. A floating Help window updates according to what you're doing, to remind you of the editing techniques available.
This approach is good for making small tweaks to Songs that are already nearly correct: you can work fast and fluently, dragging notes to change their pitch or position in the beat, for example, or Alt-dragging to change duration. Any larger structural changes can leave you at a dead end, though. Actions that would be straightforward in other notation applications, such as deleting, duplicating or adding a bar or two, or splitting a single-stave transcription on to two or more staves, can leave the ScoreCleaner user utterly confounded. There usually is a way to achieve most things, but you might have to think way outside the box to discover it, and for some jobs it won't be quick. ScoreCleaner's developers tell me that some intuitive editing features, such as more direct control over staves and instrumental parts — not to mention copy and paste — are coming to the next version of the application, due within a month or so.
I've mentioned multi-voice editing already, and this is elegantly done. To add to that, chord symbols (though not guitar fret symbols or tab) can be added above individual staves, and lyrics below. It's good to see this, but the implementation is not perfect. Collisions with notes can occur if they extend above or below the stave by more than a few ledger lines. Also, while lyrics quite rightly cause note spacing to grow wider when necessary, at times words inexplicably disappear.
In the version of the application I tested, there was no way to add dynamics, slurs, articulation, ornamentation or repeats. But, again, all of these are promised for the next version, along with brackets for grouping staves, some basic page-layout control using system breaks, and even a step-time note-input method directly in the Song window. Even further into the future lies transcription from audio, not just MIDI, plus automatic chord analysis, guitar chord symbols and percussion notation. DoReMir say they're not aiming to take on Finale or Sibelius, in the sense of creating a publishing platform, and instead are aiming to keep ScoreCleaner as simple as possible while still providing useful flexibility. That's a difficult balance to strike, and personally I'd love to see support for transposing instruments and extraction of individual parts being added somewhere down the line.
It's fair to say that, right now, ScoreCleaner is the most sophisticated MIDI transcription software out there. With simple single-line melodies (which, let's face it, even a typical DAW's scoring editor can manage well), it offers advantages in speed and ease of use. For typical two-hand keyboard textures, I know of nothing than can touch it, and that includes the big-money notation applications. I can see ScoreCleaner being of particular use to music educators, to arrangers working in the studio, and to owners of Finale and Sibelius who need a better 'front end' for keyboard transcription. In general, people who need to transcribe complex pieces fast will be able to do in five minutes with ScoreCleaner what could take an hour with a conventional notation package. It's also going to be very useful for musical collaborators, acting as a sort of go-between for musicians with vastly different backgrounds and training.
There's plenty of room for improvement still, particularly in score editing and layout. The forthcoming update that promises so much in these areas is badly needed, and should make ScoreCleaner a more rounded product that you could use completely independently of a more sophisticated notation application for most day-to-day scoring jobs. I really hope DoReMir can improve overall stability, too, as the version I tested was not really up to scratch in that respect.
Ultimately though, ScoreCleaner is already a powerful transcription and scoring tool. It shows great promise for the future and is seemingly backed by a passionate and dedicated development team. The technology that lies behind it, recognising and representing the infinite complexity of musical structures and patterns, must be mind-bogglingly complex — and yet the application isn't the slightest bit intimidating, and positively invites prolonged use. Bravo!
I came to greatly admire ScoreCleaner's capabilities while reviewing it, but I would not be doing my job if I didn't also mention how generally unstable it was as an application, at least in the version I tested. First efforts barely lasted more than a minute or two before unrecoverable hangs occurred. That problem was traced to ScoreCleaner using the Mac's software GM Synth as a sound source — though exactly why that caused the hangs was never established. Even after I switched to an external MIDI sound module, hangs and crashes continued to occur, albeit slightly less often, and most often when switching between Song and Listener windows.
DoReMir have been, to their credit, up-front about some lingering bugs, and over a few weeks of testing, there were two incremental releases of the application. Generally I also sense an active and optimistic development effort here, and I'd say there's a good chance the problems I experienced could be a thing of the past in future versions of the application.