View Issue Details

IDProjectCategoryView StatusLast Update
0000727OpenMPTFeature Requestpublic2020-06-28 05:52
ReporterBlacklight Assigned To 
Status newResolutionopen 
Platformx64OSWindowsOS Version7
Product VersionOpenMPT / libopenmpt 0.2-beta15 (upgrade first) 
Summary0000727: Request: Piano Roll Editor

I know it would be redundant, but I think it would be nice for a future release to have a piano roll editor tab to work from as well as the regular tracker screen. Sometimes, piano roll makes things a lot easier to work with than hex numbers. I got my start working with both types of trackers, and I most often used trackers like Modedit and Soundclub back in the day. It's a shame that there's no really no trackers that offer that choice of piano roll interface anymore. Adding a piano roll tab similar to what Modedit or Soundclub had as a choice for track editing would really make this tracker stand out from the competition and would also make it less intimidating in appearance to newbies.

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)




2015-11-30 20:59

reporter   ~0002196

Last edited: 2015-12-01 23:33

Having something like this added to OpenMPT might help to make Tracker Modules a mainstream format again, due to Piano Roll UIs making OpenMPT more accessible to a wider user base.



2015-12-06 02:17

reporter   ~0002200

Last edited: 2015-12-06 02:18

I completely agree. Most computers are now running 64 bit OS's now and that means that we've lost the ability to run Soundclub. The only other tracker which has a piano roll editor that I know of is Renoise, but the implementation they went with of it feels clunky. Sound Club and Modedit did it best with simple clicking on the screen and stretching to add the notes which just snapped to the grid. Click on each note to edit the note parameters. Very simple and effective. And reading the roll from the left to right like you do in those programs is a LOT less clunky feeling than dealing with the noted dropping from top to bottom like in Renoise as well.

Adding a left to right scrolling piano roll would make a huge difference in attracting new potential content creators who would have originally have been intimidated by looking at streams of dropping hex numbers.

Ryan Albano

Ryan Albano

2015-12-06 02:54

reporter   ~0002201

I agree with what you said about the hex numbers. There should be an option for using regular numbers (like in every other DAW I know)--I find hex very counter-intuitive and counter-productive.

Saga Musix

Saga Musix

2015-12-06 20:40

administrator   ~0002202

Last edited: 2018-05-08 21:23

might help to make Tracker Modules a mainstream format again

Good God, the last thing I need OpenMPT to be is "popular" and "mainstream". I am doing this in my spare time and I don't want the mainstream mass to take over my spare time with questions and bug reports.
Also, there is no "again", trackers were never mainstream to begin with.

And reading the roll from the left to right like you do in those programs is a LOT less clunky feeling than dealing with the noted dropping from top to bottom like in Renoise as well.

That is entirely subjective.

There should be an option for using regular numbers (like in every other DAW I know)

Every other DAW does not use pattern commands. Hex is used for convenience because you can fit values up to 255 into two letters instead of one. You migh have noticed that OpenMPT already uses decimal ("regular" as you call it) numbers in any other place, including places that also exist in non-tracker DAWs.

No matter how fancy a piano roll might be - it won't happen anytime soon.

Ryan Albano

Ryan Albano

2015-12-06 22:49

reporter   ~0002203

I still think plain numbers are better. Besides, values could go all the way to 999 (which can be used in many places such as high tempo for more precision).
The only thing convenient with hex is saving one tiny column of space. Other than that, I end up spending much more time writing out hex values and still mess them up, even after using MPT for years. I can imagine it's an even bigger problem for new users. If I have to use an extra column for digits, I don't mind. Display resolutions are pretty big now.
Anyway, my biggest concern is adding volume ramp-down control on instruments. I'd rather you do that first.

Saga Musix

Saga Musix

2015-12-06 23:06

administrator   ~0002204

Last edited: 2018-05-08 21:23

Besides, values could go all the way to 999

Which won't work with most of the existing commands anyway. And what's easier to memorize - "values F0 to FF are fine slides, values E0 to EF are extra-fine slides" or "values 240 to 255 are fine slides, values 224 to 239 are extra-fine slides"? Or "the first nibble sets the on-time of tremor, the second nibble sets the off-time" compared to "tremor parameter modulo 16 is on-time, tremor parameter divided by 16 and rounded down is off-time"? "SCx means note cut at tick x. SDx means note delay for x ticks", etc. See, many of these effect commands simply only work in hexadecimal. Certainly you could re-invent them all and come up with new command letters outside the alphabetical range (because 26 commands will no longer suffice because you will have to split up multi-commands like D, E, F, S, ...), but at that point you will just have to rewrite so much of OpenMPT itself that you could just as well create an entirely new tracker. Yes, there is a lot of legacy in OpenMPT, but it's not possible to "just" replace it with something different.

I can imagine it's an even bigger problem for new users

Doesn't matter if you're new or not, what matters is the mindset. However your comments sound like you're not even trying very hard to get into this mindset.

If I have to use an extra column for digits, I don't mind. Display resolutions are pretty big now.

Ther are enough users who are still stuck with resolutions as tiny as 1024x600, and we will keep supporting them.

Ryan Albano

Ryan Albano

2015-12-08 03:21

reporter   ~0002210

True. Some effects need hex as it stands, though you could (and probably should) just add separate parameters for those functions.
In particular, I find the fine and extra-fine portamento in the same effect as the regular portamento a bad idea. When I use fine porta, I often need the full range like with normal porta. But because its not there, I have to end up using regular porta anyway and the 'tweak' ends up taking 2 rows!



2015-12-11 21:24

reporter   ~0002218

A piano roll editor would be great, but that's from the world of sequencing, where most of the sound generation was from MIDI instruments. And MIDI is simplistic enough that you could use blocks (dashes) to indicate the note-on and note-off times, and the length it would be playing.
But sound generation with samples is not so simplistic. There should be something more graphic that text editing for sure, but I don't know if a piano roll editor is what's called for, unless it were really souped up to show how to process the sample.
Just for one example, if you commanded a playback offset for the sample, the piano roll editor would not be able to show the playback offset; it would not indicate how the playback is -- well, played back. You would have to show for looping of different types, resampling commands, portamento, etc.
While I'm a big fan of the piano-roll editor, it would only be useful with external MIDI instruments and VSTi's. Which are strictly ADD-ONS to MPT's capabilities, not the main function. The whole point of trackers is sample control, and a piano roll editor would not be a big leap in track composition.

I would much rather see a "waveform roll" editor, but then that's what a DAW does. And as primitive and logical as text editing is for music generation, it may be the only way to do what we do.



2017-06-07 01:45

reporter   ~0003050

I cant imagine how a piano view should work in modplug?
from left to right? piano from up to down? Channel by channel or all at once?
maybe a simple solution would be to just use a pianoroll app, nowdays you can find them on google play for smartphones

The "Waveform Roll" Editor in the other hand sounds very interesting
i imagine the waveform of each channel displayed in the channel it self
maybe with some nice decent and customable 3d like in propellerheads recycle tool (or what ever is modern)

So a user can place a note with an instrument that has a long attack phase or even begins with silence or uses offset effecs and then she/he can see where the offset starts or ends by looking at the waveform in the channel
in the other hand it is questionable why we have ears?

Saga Musix

Saga Musix

2017-06-07 10:40

administrator   ~0003054

I cant imagine how a piano view should work in modplug?

Maybe have a look at VersaTracker which is incidentally one of the first Windows Trackers together with ModPlug, but it never left alpha stage, so it's mostly unusuable. But curiously it does have a piano roll editor. The biggest problem I still see is what to do with all the information that cannot be represented on the piano roll, such as effects.



2017-06-08 11:44

reporter   ~0003059

Mostly piano rolls are rolling from left to right
at the left side is mostly some kind of piano keys display
at the right the notes represented as some kind of blocks
in some sequencers the blocks are short or long as the note should be
if there are some blocks in the pianoroll representing some sampletriggerpoints, why not to write Instrument number, Volume command, and Effect command on each block in the pianoroll and there where the block ends optionaly a note off event.
maybe the whole thing is better representet as it is now without pianoroll.
I my self do not often use VST stuff but maybe with some plugins a pianoroll would make more sence than just for tracking
But how to put 333 VST Parameters into one Pianoroll?
In FL they have a Pianoroll, at the top is a dropdown where you can select Volume, Pan, Effect 1- XY, below the pianoroll is some kind of envelope
When you click a parameter in the upper dropdown box its parameter gets displayes in the envelope view below the pianoroll.
Maybe this is what FL users dream of?
I think it would be a bad idea any way.
ModPlug it self is a good teacher as it is now, and with a pianoroll and all fancy stuff it will may turn into an other mouse clicking adventure game... thats what i think.



2017-06-12 01:35

reporter   ~0003073

What I'm proposing with the piano roll isn't to switch over the entire interface to piano roll. I enjoy the current way of doing things. What I would like, however would be the option to USE a piano roll when I want to for various tasks. There are certain tasks that piano rolls just make easier to visualize. Things like note length, and such. It's just another helpful tool. I pretty much grew up using mod trackers like "MODEDIT" which was entirely piano roll. You could look at the effects easily by hovering the cursor over the notes so that wasn't a problem for me.
But replacing the current interface isn't what I'm proposing. I would like to be able to switch back and forth between the two variations for different types of editing.



2018-05-08 21:04

reporter   ~0003520

I understand - this would be an extra tab, a "lightweight" note view, that purely shows note positions and lengths for the currently selected track (with maybe a track selector as a dropdown), and the ability to adjust the note position and length by dragging them with the mouse.

Then you switch back to the existing tabs to adjust effects etc.

But I understand the project is free and being done in free time, so Saga Musix would have to implement features how he sees fit, and maybe this is considered out of scope.

I'm no expert but the few songs I've made I got by no problem by playing live with my keyboard, then refining, rather than adding notes manually from the get go.

But I found this post because I was fiddling with another tracker (PxTone) and I was thinking a piano roll interface might help creatively.

But perhaps this can be achieved by using some other music software to draft up your melodies, chords etc. then export to MIDI, import that into OpenMPT and refine from there. Of course you can't go backwards but it would just be a way of mocking things up in a more visually musically friendly way, before getting down into the details.



2018-05-08 21:17

reporter   ~0003521

Other points I just thought of:

  • Someone could get the code and implement the feature themselves.
  • The concept is not contradictory to the way a tracker works - is a "mod" style tracker (but for FM synthesis) and has a piano roll viewer. You can see it in the screenshots on the front page. Although they charge for theirs and probably could afford to work on the software more :)
Saga Musix

Saga Musix

2018-05-08 21:22

administrator   ~0003522

Someone could get the code and implement the feature themselves.

As you can see from this discussion, noone has done that in the last three years (or last 14 years for that matter), and it's unlikely to happen unless a new full-time developer decides to join the team. This is all but a small modification that can be done in a week or even month, and requires a lot of work in the internals that few people are willing to do.

Although they charge for theirs and probably could afford to work on the software more :)

FMComposer being non-free would be new to me. It's released under the GPL.

Just let me state this once again: An accurate, always working piano roll editor is all but trivial to implement for legacy module formats (which FM Composer doesn't need to care about since it has its own format). You have to account for some many things such as pattern loops, pattern jumps, etc, and if you don't, the visual results will be inconsistent, possibly leading to a lot of confusion when trying to edit such a pattern. I'd rather have no piano roll than a buggy piano roll that doesn't cater for all those edge cases.



2018-05-08 21:41

reporter   ~0003523

Yeah I understand it could be deceptively complex. Maybe it is out of scope after all then.

I actually wondered about doing it myself, but concluded;

  • the lack of attention this feature has
  • that the hex numbers never bothered me because I rough draft using my midi keyboard, and then refine afterwards (and I'm used to seeing hex numbers enough for those tweaks to be comfortable)
  • and I think the creative approach could be experienced using the way I suggested; importing a MIDI that you made using a piano roll in another sequencer as a rough draft. Workflows like that are not uncommon in game development, 3D artists will model up a base mesh and then model in details using an entirely different interface or even a different program, and you aren't expected to work backwards.


2020-02-21 15:29

reporter   ~0004208

saga, I read this again today, contemplating it as a possibility... and I got to your exasperated "Good God, the last thing I need OpenMPT to be is "popular" and "mainstream"" and I just had to laugh man... who is to say with more popularity in modplug we wont have more programmers coming in to help you man XD.
We love you dude, and the less pressure on you the better, so dont you think a few bright a bushy tailed new programmer kids could be a good thing for you and possible with more popularity?

Saga Musix

Saga Musix

2020-02-21 15:35

administrator   ~0004209

Last edited: 2020-02-21 15:41

You greatly overestimate the number of people who want to work on obscure open-source software. I am talking from experience.

Most open-source projects, even (and in particular) the more popular ones, are heavily understaffed. Adding more users just makes them even more understaffed because there are way more users than people willing to work on code. And even if we suddenly had 10 active OpenMPT contributors - that would require completely new workflows and the current way how we work on OpenMPT would not work anymore. Which would probably make it even less fun to work on than having to support another hundred users.

But let's not fool ourselves - adding a piano roll is not going to make OpenMPT any more popular than it already is.



2020-02-22 00:48

reporter   ~0004210

I do, just pie in the sky thinking most likely. I love this software, and I have loved modplug since I was forced to move from impulse tracker because dos was just becoming too out of the way.
To back you up on that, I have told so many programmer friends of mine about open modplug, never saying anything like 'hey why dont you try doing something for this' but thoroughly hoping they might get the idea themselves. I suppose you have to have a very specific set of skills and passions to want to program for something like this... it is such a pity, but what can we do. You are right though, pianoroll wouldnt make it much more popular on its own (although it would be a notch in the belt of the kind of things people are looking for in a daw) it would certainly make modplug feel more daw like - and welcoming to new users who have only used daws before. No for a real uptick in popularity it would need advertising after the pianoroll and internal recording had been implemented. A bit of an information campaign via social media etc.



2020-02-23 02:29

reporter   ~0004211

Saga is right that a Piano Roll editor would be extremely non-trivial. All those edge cases with looping within a pattern, pattern jumps etc. And this is certainly not in the spirit of a tracker, and certainly not a high priority.

If I were to support a Piano Roll interface within OpenMPT, it wouldn't be to make it more popular, it would be for the existing demographic, another tool to aid in music making from within OpenMPT. There is a benefit to a piano roll style interface, obviously that it's visual and uses intuitive drag and drop editing, and it's great for visually drafting things up.

If a Piano Roll interface were to be made, we would need to accept it would never fully integrate into the OpenMPT system, and be ready to accept caveats such as;

  • It would not be high priority - possibly a single new volunteer, contributing just this feature and nothing else
  • It would have to stay separate and out of the way, eg. a separate tab on the Pattern view, or even a pop out window.
  • The design would have to respect that such an interface would never 100% capture the functionality of a Tracker interface:
    • Perhaps patterns can be "Piano roll" or "Tracker", and you can convert a Piano Roll pattern to a Tracker pattern, but not the other way around.
    • Songs with Piano roll patterns can only be saved in the native OpenMPT format and require "exporting" to a tracker format
Saga Musix

Saga Musix

2020-02-23 10:38

administrator   ~0004212

Last edited: 2020-02-25 09:19

While the idea of having two pattern types could simplify some things, I think it would be orthogonal to its how people would want to use it; From my point of view, you may want to have some but not all channels in piano-roll style, rather than some but not all patterns. For example you may want to have chords or melodies editable in the piano roll, but keep drums in tracker style. Maybe a first step towards that would be the ability to arrange patterns on a timeline so that more than one pattern could be played at a time (similar to Disorder Tracker), and then having different pattern types would make sense.



2020-02-24 14:10

reporter   ~0004213

Yes actually per channel would be more appropriate now that you mention it. Or yes, even layering patterns, if that were feasible.



2020-02-26 23:24

reporter   ~0004221

Wanna give out a voice too about the piano-roll; I'm gonna agree with Saga - the main tool of a tracker is the tracker, otherwise it's just another regular DAW and you'd be spending your time better using software like LMMS instead of basically "buying waterturbines for a hydropower-plant and intentionally buying a windturbine and asking the manufacturer to modify it for usage in water, which wasn't the intention when the manufacturer made it". Though it would've been fun to see a piano-roll that's more tracker-initiative, i.e. like using the vertical track-layout. But I've experimented with such stuff in excel, and it's a whole lot of details to think about that all play part in making a tracker-shaped piano-roll even to be barely useful.
It would be impressing if somebody would implement a tracker-style piano-roll in the far future though - maybe a potential project when the script-system is in place :)



2020-06-28 00:04

reporter   ~0004391

Since this has been commented on recently I thought I would add another opinion that just occurred to me to share. I dont use traditional daws, the piano roll intimidates me, and they often seem to have way more on the screen than you need at any one moment (looking at you fruity loops, ableton, not so much but confusing)... so yeah piano roll could benefit this community, it would help me get over my daw fear in little baby steps, as just one insignificant example. I have a bunch of daws but I only use modplug, because modplug is what I know and love with all my heart, but sometimes I hear a sound that another daw makes that I want and have trouble getting right in modplug so it would be extremely helpful to be more confident in the whole idea of the piano roll because of modplug. Obviously nothing I have just stated requires any urgency, or more than a casual ponder... please be kind about my technophobia, I take a very very long time to learn software. I have been tracking for 27 years, since I was 13, so making music this way is just the way I think of making music.

Alex TEHb

Alex TEHb

2020-06-28 05:52

reporter   ~0004392

I began on Spectrum (Fast tracker) and Impulse Tracker.
I could throw for a long time music on the computer, if not development OMPT. Thanks, Saga Musics! Tracker is TRACKER!!! LMMS, Fruty Loop and similar - absolutely another.
Few times recommended to beginning musicians OMPT. Unfortunately, they could not master it. Columns and a text kind them does not inspire. There is no support of multi-languages and normal ready libraries instrumets.
Is not present high-grade help in the necessary language.
All it creates difficulties for beginners.
Personally for me Roll-Piano it is convenient only in Drum-section. Therefore, I do not see in it necessity.
I not the programmer, but seem to me, for creation Piano the separate command of programmers is necessary. It is necessary not only connect its interface with an existing format, but also constantly to finish and bring changes/corrections. It will take away a lot of time and will entail inevitable bugs as it always occurs at modernisation of already working model.
As to hex-given: double mouse cliques on effect gives clear enough picture.

Issue History

Date Modified Username Field Change
2015-11-21 06:35 Blacklight New Issue
2015-11-30 20:58 Amaroq_Dricaldari Tag Attached: accessibility
2015-11-30 20:58 Amaroq_Dricaldari Tag Attached: editor
2015-11-30 20:58 Amaroq_Dricaldari Tag Attached: gui
2015-11-30 20:58 Amaroq_Dricaldari Tag Attached: piano roll
2015-11-30 20:58 Amaroq_Dricaldari Tag Attached: ui
2015-11-30 20:58 Amaroq_Dricaldari Tag Attached: user interface
2015-11-30 20:59 Amaroq_Dricaldari Note Added: 0002196
2015-12-01 23:33 Amaroq_Dricaldari Note Edited: 0002196
2015-12-06 02:17 Blacklight Note Added: 0002200
2015-12-06 02:18 Blacklight Note Edited: 0002200
2015-12-06 02:54 Ryan Albano Note Added: 0002201
2015-12-06 20:40 Saga Musix Note Added: 0002202
2015-12-06 20:40 Saga Musix Tag Detached: accessibility
2015-12-06 20:40 Saga Musix Tag Detached: editor
2015-12-06 20:40 Saga Musix Tag Detached: gui
2015-12-06 20:40 Saga Musix Tag Detached: piano roll
2015-12-06 20:40 Saga Musix Tag Detached: ui
2015-12-06 20:40 Saga Musix Tag Detached: user interface
2015-12-06 22:49 Ryan Albano Note Added: 0002203
2015-12-06 23:06 Saga Musix Note Added: 0002204
2015-12-08 03:21 Ryan Albano Note Added: 0002210
2015-12-11 21:24 harbinger Note Added: 0002218
2017-06-07 01:45 ZerroDeNull Note Added: 0003050
2017-06-07 10:40 Saga Musix Note Added: 0003054
2017-06-07 10:41 Saga Musix Priority low => none
2017-06-08 11:44 ZerroDeNull Note Added: 0003059
2017-06-12 01:35 Blacklight Note Added: 0003073
2018-05-08 21:04 Domarius Note Added: 0003520
2018-05-08 21:17 Domarius Note Added: 0003521
2018-05-08 21:22 Saga Musix Note Added: 0003522
2018-05-08 21:23 Saga Musix Note Edited: 0002204
2018-05-08 21:23 Saga Musix Note Edited: 0002202
2018-05-08 21:41 Domarius Note Added: 0003523
2020-02-21 15:29 Exhale Note Added: 0004208
2020-02-21 15:35 Saga Musix Note Added: 0004209
2020-02-21 15:41 Saga Musix Note Edited: 0004209
2020-02-22 00:48 Exhale Note Added: 0004210
2020-02-23 02:29 Domarius Note Added: 0004211
2020-02-23 10:38 Saga Musix Note Added: 0004212
2020-02-24 14:10 Domarius Note Added: 0004213
2020-02-25 09:19 Saga Musix Note Edited: 0004212
2020-02-26 23:24 ASIKWUSpulse Note Added: 0004221
2020-06-28 00:04 Exhale Note Added: 0004391
2020-06-28 05:52 Alex TEHb Note Added: 0004392