PIANO ROLL integrated in Pattern Editor! A Advanced Pattern Editor

Since 2002 there have been many proposals to integrate an Piano Roll.Today, 14 years later,Renoise already have version 3.1and do not have integrated a Piano Roll.I do not need a piano roll. But there are many people upset about this issue.

I’ve been thinking about this topic for over half a year, and I’ve asked myself how to fix it without breaking the essence of Renoise.

Background and premises:

  1. First birth a piano roll horizontal is a mistake. This idea is excluded.
  2. Renoise is not yet able to classify the notes.The focus is on the Pattern Editor. “Pattern Editor is silly”.
  3. Is required an association between track and range of notes of an instrument, referente: the piano. To be complete 10/8 = 120 notes.
  4. A track have 12 notes.
  5. Graphic limitations.
  6. Harnessing of the colors.

With this in mind, there is only one real limitation involves the following capacity:

The pattern editor is able to sort notes in columns.To do so, the focus can be on a single track.Renoise is capable of sounding thousands of tracks.However, each track currently only has 12 columns, which can be associated with 12 notes, 1 octave.

If each track had 120 columns associated with each note, and Renoise is able to sort notes in each column to play live (or not play live), he would be able to support a piano roll.

Renoise currently builds the notes to the left of the track, and use a second or third column to not superimpose notes, in a compact form.With the creation of a function of descompress notes and other notes compaction would be all sorted to create a pianoroll and integrate, and retain all the functions of Renoise, intact.

Therefore, the first objective would be the classification of the notes within a track.

6729 01-RENOISE-PIANO-ROLL-MODE-1.png

This screenshot shows the classification of notes on a single track, with the capacity of 120 notes.Above, inside the track, a virtual piano is integrated. Each key holds wide the width of each column. Each octave is marked graphically for visual ease.

This " MODE 1"shows at least 3 octaves of notes. All is a track. Each note length is marked with color backgroundThe duration is marked with OFF value.This in essence is already a piano roll. This is possible by taking advantage of the graphical interface.This Mode 1 intends to occupy the entire screen width. The pattern Editor is intelligent.The composer writes a note and the Pattern Editor automatically put into place within the row (a file, 120 notes).

6730 02-RENOISE-PIANO-ROLL-MODE-2&3.png

The " MODE 2" is compact. Show only 1 octave (or 12 or 1+12+1 notes).It’s like Mode 1,but leaves room for other tracks within the screen.

The " MODE 3" is a pure Piano Roll.Basically shows graphically the Mode 2 or Mode 1 expanded if desired, but only with vertical rectangles.These boxes represent the beginning and the end of the note, nothing more.With the mouse drag would be possible, and even extend / trim each note.

What is it good for?

You can compose with your piano midi or your keyboard USB. The pattern editor classifies the notes within the track, regardless of the instrument used. Use the Mode 3 forto visually understand how does your musical composition.You can use the mouse to insert notes, drag, and lengthen the duration.

These three modes are activated through a top icon, called " Piano Mode" (In the screenshots it is located up on the left.):

  • If the “Piano Mode” is off, Renoise functions as in version 3.1, the Pattern Editor accumulating notes in the same column in a compact manner.
  • If the “Piano Mode” is on, the Pattern Editor is intelligent, and sorts the notes in columns, enabling the selected tracks with 120 notes and incorporating the virtual piano.

The " Piano Mode" only need two more functions to be well integrated:

  1. A button to compact the notes in few columns inside the track.When enabled, the piano mode disappears (corresponds to the operation of version 3.1).
  2. A button to unpack and sort notes in the 120 columns inside the track.When enabled, the piano mode appears. (it is in line to order and to work with piano roll)
  • These buttons can be placed on top of the track.
  • Of course, each column within the track in the "Piano Mode"will automatically have written the name of the corresponding note (C0…C-4, C#4, D-4…B-9)
  • Do you want to repeat some notes in the same row?No problem,modify the note up on some columns (example 3x C-4: modify C#4 and D-4 to C-4…). Therefore, note the columns can be changed.
  • Finally and safety, each track will have a padlock locking. Activated, you can not change anything of the track, only copy.

Finally, the virtual piano in track and the mouse is useful:

  1. With it you can play the virtual piano with the mouse when the Pattern Editor does not have activated the “Edit Mode”…
  2. With the Edit Mode activated, the virtual piano write the note with the mouse inside the track, in the corresponding row and in the corresponding note column.
  3. Besides the right mouse button could be associated to include the OFF value in Pattern Editor (With the left write the note, with the right write the OFF value).

All this will help the beginner to compose people, also to be ordained and to better understand the music.

Contemplate the isolated end result of piano roll.Turn your head 90 degrees to appreciate. :slight_smile:

6731 03-RENOISE-PIANO-ROLL-EXAMPLE.png

Enjoy!

1 Like

A screenshot extendend of the head of each track, with details:

6733 04-RENOISE-PIANO-ROLL-MODE-2&3-DETAIL.png

Though I really appreciate this precise work to describe a possible piano roll, I find the base concept in general the pure horror. Why you need to order the notes into columns? Except it’s in line with the key on the piano, it is a visual overview killer and a gui space killer, too. Also this place-in-line doesn’t help at all any more if there are many notes or notes far away from the piano visualization.

Also, imo, it doesn’t even help beginners. They are moreover confused by the visualization of a piano roll, at least I have seen this so many times with colleagues starting with music making.

I like the way of displaying blocks you visualized. This should be an option for normal tracks, instead note-offs, because it really improves visual overview, so at the end, you will work faster. And it already would feel a bit like a piano roll. Transposition of notes could be possible by holding down mouse on the note and moving left or right, so just like in a piano roll, only that the note doesn’t move at our, but transposes. And the notes could be autosorted by notenumber in the columns.

What about a kind of popup piano roll: you move the cursor to a row and as long as pressing a hot key, a popup piano roll showing the current notes in the row…? Or maybe using caps lock, so you also can use the piano roll to edit/enter notes.

What helps in a piano roll at the end, is that you can see RELATIVE SPACE/STEPS between the notes. It doesn’t need to be in-a-column with a piano key that is maybe already million pixels away.

Please rethink this, what really helps you when using a piano roll.

EDIT:
Please have a look here for a better understanding :
https://forum.renoise.com/t/piano-roll-integrated-in-pattern-editor-a-advanced-pattern-editor/46102

The only ** popups currently are plugin editors for obvious reasons. So I’m unsure if the first willingly introduced ** popup will be good.

Wasting space is the definition of a piano-roll. It’s about wasting space only. Yet, the octave setting mitigates this and one would not have to scroll for different octaves. IMO Rauls concept is near perfect, because it introduces as few changes as possible, and by that user options are fine-grained and no second area of interest is created.

** = overlapping <- kinda important to mention :wink:

Since automation is horizontal, a piano roll could be, too, for consistency reasons. It could also sit down at the bottom in an extra tab and reflect the content of the current track per pattern, just as the automation does. Then people can choose to use it or not and do everything in the pattern editor…again, just as with the automation.

The only thing that might need to change for this to work is the arbitrary 12 column limitation…

Since automation is horizontal, a piano roll could be, too, for consistency reasons. It could also sit down at the bottom in an extra tab and reflect the content of the current track per pattern, just as the automation does. Then people can choose to use it or not and do everything in the pattern editor…again, just as with the automation.

The only thing that might need to change for this to work is the arbitrary 12 column limitation…

I’m not really an advocate for a piano-roll in Renoise, I just want something that works, whatever it is. But I wonder if the Renoise devs will create a “second thing”. On the one hand they would be able please everyone who likes to refer to “tracking”, on the other hand they would have to create this reflection code, and create a thing that would take a big amount of partly duplicated code to get where other piano-roll DAWs are.

Not really a fan of it, simply too many views in vertical to switch around. If there ever is one i’d prefer the horizontal versions just like almost every other DAW has. Note names print a lot easier on notes than vertical, width (height) of a note block is much more condensed. Vertical i’m not really able to see as much info than in a horizontal version, even with zooming a widescreen monitor makes working horizontal much more comfortable. I wouldn’t mind optional note length visualization in the pattern editor as blocks though. Especially with longer audio files spanning over multiple patterns this can be quite helpful spotting where things are played.

Why you need to order the notes into columns? Except it’s in line with the key on the piano, it is a visual overview killer

That’s piano roll. And NO: In terms of visual overview over the notes / the music (like they will be played with piano keys) this kind of view is an advantage! maybe not vertically because vertical space is limited? … but that’s the idea : pattern note columns will be transformed into the single piano roll like note lines. also with thoughts about the (maybe) simplicity of implementation I like the idea.

I hope I have explained well so that everyone understands.This serves as a supplement. This means that the composer can use Renoise exactly as version 3.1. Therefore everything he says FFX makes no sense.Use Piano Mode when necessary.

All need Renoise for all this work is to sort automatically notes in columns within a track, assigning 120 notes column. This is the equivalent of using 10 tracks with 12 columns of note, but more orderly and consistent. Not a problem at all.With two functions more stacking and retrieval of notes, it would be all done.This is where the programming work is.

You can compose without a piano mode, like v3.1,notes stacked in a left column, two or three for not overlap.

Activating the “Mode Piano”, besides, you have the “Mode 3”.Which could show 10/8 in a single plane.I made a screenshot with a single octave.I made only a screenshot with a single octave in Mode 3.Imagine all octaves in Mode 3.In addition, it is not a waste of space at all, quite the opposite. It is an integrated tool composition.I know this is hard to see, for being “new”.Actually it is not, but seeing him in pictures, surprised.

Do you ask why they want the notes ordered in columns? Uff…

To clarify, the Piano Mode has three Modes of vision: Mode 1, Mode 2 (Compact) y Mode 3 (Piano Roll).

If all this, the composer does not have a clear notion of what is happening, combined with Matrix Editor. The problem no longer would Renoise, but of the composer and his mind.

I know that this idea is very large.I’ve imagined working, and it would be beastly.Moreover, people who used Renoise and neverthe Piano Roll, it would be very useful.It is a tool not only for beginners but also for advanced composers.Also, I think it would be not really difficult to program. This respects Renoise 3.1 and all its essence.

Raul, that’s some excellent sketching. It really makes you think about the implementation not as an abstract idea but in almost concrete terms. Good job!

Do you want to repeat some notes in the same row?No problem,modify the note up on some columns (example 3x C-4: modify C#4 and D-4 to C-4…).

This, is a real problem (challenge) for any piano-roll implementation, I have never seen an implementation that changed the shape of the piano (“multiplying keys”) in order to fit more notes of the same pitch. Rather, the usual answer is to stack them on top of each other (which has the disadvantage of making selections very finicky…).

Perhaps it’s more “tracker” to just do what you suggest, but it’s definitely something to consider. Many songs have drum tracks that are more or less composed from C-4 notes throughout (different samples but in the same track). Obviously a standard DAW doesn’t have this freedom, as it’s dictated by the limitations of a pianoroll.

That said, piano-roll or not, I agree that note-length visualization is a key feature: it’s one of the most confusing things for newcomers, not immediately being clear that a note is triggered and that it can continue playing without a note-off. However, even such a tiny feature might open the door to more complexity. For example, often I am triggering short samples and don’t care about writing note-offs. Should the actual length then be visualized somehow? Strictly speaking, the note is still “open”, even when it’s not actually playing any more.

That said, piano-roll or not, I agree that note-length visualization is a key feature: it’s one of the most confusing things for newcomers, not immediately being clear that a note is triggered and that it can continue playing without a note-off. However, even such a tiny feature might open the door to more complexity. For example, often I am triggering short samples and don’t care about writing note-offs. Should the actual length then be visualized somehow? Strictly speaking, the note is still “open”, even when it’s not actually playing any more.

Danoise. I love the end of your comment.As I have argued, if the note is open, graphically it is not closed. In other words, the elongated boxes are created only if there is an OFF value.Renoise ask to guess where it ends a note is impossible.Strictly speaking, the rectangles are created from the OFF value. To be an OFF value meets the above note immediate. If there is OFF, a background rectangle does not appear.If the note is still ringing open and they must be guided ear. There’s no more.

In the end, the piano roll, and all this is a visual aid.You better understand music, but also a powerful tool.In another forum post, I warned of the possibility to copy and paste countless value OFF. I do not understand.Fill the screen with Offs.it is assumed that a note can only be associated with a single OFF.At bottom, this would imply an intelligent Pattern Editor, or more advanced. And for this, it is best to help the graphical interface, colors, displaying octaves, etc …

Strictly speaking, the rectangles are created from the OFF value.In the Piano Roll, if you lengthen a note that has no OFF with the mouse, you automatically create a OFF value underneath (or click the right mouse button more below)…

I see two dealbreaking issues with implementing a piano roll into the standard tracker view as suggested.

  1. The usability of a piano roll is very limited if you cannot zoom. When working in a piano roll, you will generally optimize the visibility by zooming.

  2. Clear visibility in a piano roll is quite dependant on notes having a border. (border: 1px #000)

In other words, the elongated boxes are created only if there is an OFF value.

Oh, that makes perfect sense. Makes it really easy to determine if something is to be considered a oneshot or sustained note.

If this got implemented, I might even be persuaded to clean up my patterns a bit more as those stray OFF notes would be much easier to pick out :slight_smile:

But then, sometimes it actually makes sense to add OFFs in non-obvious places. For example when working on a looped segment of the song - then, you could want to place the OFF above the note and not below it (I know, this is totally an edge case, and not something the visualization should even attempt to bother with).

Raul, that’s some excellent sketching. It really makes you think about the implementation not as an abstract idea but in almost concrete terms. Good job!

This, is a real problem (challenge) for any piano-roll implementation, I have never seen an implementation that changed the shape of the piano (“multiplying keys”) in order to fit more notes of the same pitch. Rather, the usual answer is to stack them on top of each other (which has the disadvantage of making selections very finicky…).

Perhaps it’s more “tracker” to just do what you suggest, but it’s definitely something to consider. Many songs have drum tracks that are more or less composed from C-4 notes throughout (different samples but in the same track). Obviously a standard DAW doesn’t have this freedom, as it’s dictated by the limitations of a pianoroll.

This was a dilemma for me.But I thought. Renoise is a tracker.Why limit each column to a single note?It could be a column where you can change the base note in specific cases. In this case it could go brand graphically above of the column.

Upon reflection, it could even be a function of doubling the note column to avoid disappearing columns of note.The track might have more than 120 columns of note (120 columns note more columns duplicate additional).If you play live duplicating a note, automatically column note would be doubled, with the same header.Something like that. It would be a great solution.

I see two dealbreaking issues with implementing a piano roll into the standard tracker view as suggested.

  1. The usability of a piano roll is very limited if you cannot zoom. When working in a piano roll, you will generally optimize the visibility by zooming.

  2. Clear visibility in a piano roll is quite dependant on notes having a border. (border: 1px #000)

  1. The Pattern Editoralready can extend vertically and horizontally. I could see the biggest roll piano.Where there is a real challenge it is in the jump betweenpatterns.The mouse is a good ally here.
  2. These are graphical issues. It depends on the design.What I’ve done is a diagram of what could be.It could be improved.

I’ll say A+ for presentation and well thought-through project! I’m not a fan of piano-roll, but I like this lateral thinking of using what you have to achieve something you want.

One down side (not that it matters these days much) is that the files would get unnecessary big with all these tracks and rows, or no? Or maybe not since they are in “Excel-format”.

This, is a real problem (challenge) for any piano-roll implementation, I have never seen an implementation that changed the shape of the piano (“multiplying keys”) in order to fit more notes of the same pitch. Rather, the usual answer is to stack them on top of each other (which has the disadvantage of making selections very finicky…).
Perhaps it’s more “tracker” to just do what you suggest, but it’s definitely something to consider. Many songs have drum tracks that are more or less composed from C-4 notes throughout (different samples but in the same track). Obviously a standard DAW doesn’t have this freedom, as it’s dictated by the limitations of a pianoroll.

Actually, the reason that is not convenient in a piano roll is because it doesn’t make any sense :slight_smile: If you actually play an instrument (e.g. a piano), you can only play the same note once (at the same time). And why would you do otherwise when sequencing an instrument? C-4 Techno in Renoise you say? That, in my opinion, is actually a horrible practice! Just like not commenting your source code, using different instruments with a single drum sample seems like a great and quick way to accomplish something while you are doing it, but not so great anymore when you look at it again after half a year :slight_smile:

Oh, that makes perfect sense. Makes it really easy to determine if something is to be considered a oneshot or sustained note.

If this got implemented, I might even be persuaded to clean up my patterns a bit more as those stray OFF notes would be much easier to pick out :slight_smile:
But then, sometimes it actually makes sense to add OFFs in non-obvious places. For example when working on a looped segment of the song - then, you could want to place the OFF above the note and not below it (I know, this is totally an edge case, and not something the visualization should even attempt to bother with).

No no no! That doesn’t make perfect sense at all! Sustained notes that do not have a note-off will need a box for as long as they run. And if that is through the whole song, then so be it. If you do not visualize EXACTLY what is going on with the notes, then you will still need to have a closer look and inspect everything in detail to figure out what is meant, which would be ironic, because that is exactly the thing you want to fix with note blocks in the first place :slight_smile:

No no no! That doesn’t make perfect sense at all! Sustained notes that do not have a note-off will need a box for as long as they run.

Imagine a standard DAW where you drag an audio clip to the timeline. You see the sample visualized as a waveform, easy-peasy.

Now, in Renoise, if the note was sustained (looped waveform, whatever), I would expect what you describe, but with a one-shot I wouldn’t.

Trouble is of course, we don’t have a distinction between “audio” and “midi” - but that’s exactly what I propose: a visual clue about what is actually going on.

As for C-4 techno, are you trying to ignore how the software is being used? :badteeth:

So to do both what fladd and danoise want, Renoise would do this?..

When drawing a note:

If note has OFF inside view: Draw box until OFF

If note has no OFF inside view: Draw box until bottom of view

On input, when a note is entered:

2a) Determine if there is a row that is the definitive end of audibility of the note (that is, the instrument is no plug-in, the instrument doesn’t loop, etc)

2b) If such a row exists: Renoise automatically places a OFF right behind it

Actually, the reason that is not convenient in a piano roll is because it doesn’t make any sense :slight_smile: If you actually play an instrument (e.g. a piano), you can only play the same note once (at the same time). And why would you do otherwise when sequencing an instrument? C-4 Techno in Renoise you say? That, in my opinion, is actually a horrible practice! Just like not commenting your source code, using different instruments with a single drum sample seems like a great and quick way to accomplish something while you are doing it, but not so great anymore when you look at it again after half a year :slight_smile:

This translates to a closed mind.A real instrument does not play a note while repeatedly, twice, or three (at the same time).But at level of software, it does not have to be this limitation, much less in a tracker.Do not use if you prefer.Renoise can support aspects that are limited by the real instruments. Also!

No no no! That doesn’t make perfect sense at all! Sustained notes that do not have a note-off will need a box for as long as they run. And if that is through the whole song, then so be it. If you do not visualize EXACTLY what is going on with the notes, then you will still need to have a closer look and inspect everything in detail to figure out what is meant, which would be ironic, because that is exactly the thing you want to fix with note blocks in the first place :slight_smile:

Marking only the notes that are OFF, it helps to order, and also to locate the notes that have no OFF, regardless of whether they are open or silenced alone, because the sample length is short.

A simple example: a bass drum the sound of the sample occupies 5 rows.No need to add a value OFF.Is it necessary that the rectangle occupies the 5 rows? For that, Renoise has to analyze the point where the sample ends to colorize the rectangle, before playing it.Really the user does not need to cut this note. Therefore, you do not need a visual aid.You will find every the notes without OFF at a glance.

What happens between patterns?The simplest graphic form, is that when there is an OFF value, it generates a background rectangle with the note immediately above, although it is above 3 Patterns.Currently it does not work so, if there is an OFF two patterns above, it is ignored.

Moreover, if there is a long effect, a delay, echo…, the sound of the sample still ringing several rows more, after the value OFF.There will also be to use the hearing to understand what happens.

All this would be analyzed to find the best solution involving few CPU resources.