An actually useful piano roll / sequencer view

A mostly-keyboard UX PoC/experiment

   

This uses a 32 key "virtual keyboard" based on US-International key layout. [z] maps to C2, [q] maps to C3, [i] maps to C4.

 s d   g h j
z x c v b n m
 2 3   5 6 7
q w e r t y u
 9 0   =
i o p [ ]

Input options

How is this different from every other piano roll/sequencer?

Let's prefix this by saying that I own FL Studio, Presonus Studio One, Renoise, Ableton Live, Sonar Pro, and Reaper. While I'm of course not the deepest of experts on any single one of those, In the same way that a programmer can work in several IDEs and code editors and see where everything's failing, I work in all these DAW and see the failing of each of their piano roll/sequencer views, because that's the view I live in (rather than recording to audio). While you would expect each DAW to optimize for "getting what the user wants to play, recorded, and as fast as possible with as few operations as necessary", none of them even actually do this. The DAW that comes closest is Renoise, which is basically Tracker software for the modern era, with all of the same features that any other DAW comes with these days. But even it has fairly odd limitations. So, what's my beef, and how does this PoC address them?

Record when I start playing

When in piano roll/sequencer view, you want to create music. Sure, it's helpful to hear sounds when you press keys, but what you want is to press keys, and have those be recorded, at the length you need. That's the whole point of opening music software in the first place: to get music to happen.

This PoC addresses that by letting you play around with keys until you have something that sounds good, at which point you shouldn't need to "arm" tracks, and manually trigger record/stop transport functions: you're already on the track you intend to record, and the fact that you are means you want to record something. By all means, support full-song playback while recording, because that's bloody useful, but don't make that be the only way to record when the user is on a piano roll/sequencer view: holding your keys down for long enough should just trigger a recording.

Doing so in this PoC at around the length of a quarter note at 120BPM will engage recording mode, with a BPM ticker so you can keep pace while playing. And then when you stop playing, recording will stop, too. At worst, you now record "too much", but: undo/deleting what you didn't want is infinitely preferable to not having what you did want.

Why can't I move the scrubber?

Moving the scrubber around in effectively anything that isn't Renoise requires weird hot keys, or even the mouse. When you're focussed on a piano roll/sequencer, arrow keys should just work.

Arpeggiation is kind of essential

An arpeggio line should be as easy as saying "k, until I stay it isn't, every key I press takes up X beats" after which you should be able to just run through the notes you need to have played in arpeggiated fashion. That toggle should be simple, and immediate.

In this PoC, [shift]-[1] through [shift]-[8] turn on arpeggiation at a note length corresponding to as many beats as the number you type. Type the same thing again, or [shift]-[0], to turn that back off. This isn't rocket-science.

What am I playing here?

Having to actually play the song just hear the current step's note stack makes no sense. Of course, people should be able to start playing from wherever the scrubber is right now, but they should also have a dedicated key for playing just the current step when in a piano roll/sequencer view. This PoC uses [enter]/[return].

Related, when placing a new note in a cluster of notes, audio software should not play "that single note", it should play everything in that step. It might emphasise the note being played, but really it should just "show" you what you'll hear at that step, not leave you guessing at whether or not that new note works with the ones already there.