This suggestion comes from another user (‘vicktech’) who got in touch with me, so I’m just expressing the details on their behalf…
Right now we have the ‘Play current line’ function (mapped to the Return key by default) which lets us step through a pattern row-by-row and hear whatever notes exist on that row. Very useful indeed for previewing what we’ve done without needing to play the whole pattern in realtime.
It would be nice if we could combine this functionality with manual note entry, so that as notes are entered into the pattern we would not only hear the new note we just laid down, but also any other notes that exist on that entire pattern row (obviously taking into account muted tracks and such). This would help to create some more interesting live feedback as we experiment with our patterns. My memory is a little hazy, but I believe this was possible with various other trackers in the past?
Similarly, this could also apply to pattern commands, so that we would get instant feedback as we edited command values. I can imagine this being very useful for editing things like retrigger, for example, so that as we edit the speed from E02 to E03 to E04 on a certain note, we would immediately get to hear the effect played back at each different speed to understand what those values actually represent.
It would kill two birds with one stone, by giving the instant feedback of the ‘play current line’ feature while we are actually composing/editing the pattern itself.
Obviously this would be an optional feature that could be toggled on/off as-needed, probably with a nice, easily accessible icon sitting at the bottom of the pattern editor.
With any kind of big change in behaviour like this, it goes without saying that it should be optional. I would never expect to simply replace existing methods or force people to work in a way they didn’t want to.
Sorry, I forgot to mention this. Only whatever is under the pattern row marker at that time would be played, therefore skipped rows would simply not be heard. Probably doesn’t need too much advanced handling here, just keep it simple.
I suppose there could be some minor issues with note-offs and things like that if they are positioned in the “inbetween” steps, which might sound a bit weird if they are skipped, but the existing ‘play current line’ behaviour doesn’t really take this stuff into account either, so I’m not sure if this is something to worry about too much.
00 C-0400 .. --- ..
01 OFF .. --- ..
02 --- .. D#400 ..
03 --- .. OFF ..
Let’s say that I move the cursor to row 00 and ‘play current line’, then I move the cursor to row 02 and ‘play current line’. I will now have the C-4 and D#4 notes playing ‘stuck’ in their sustain phase, because the note OFF’s were never actually triggered. I’ve gotten used to that behaviour now and I’m quite happy with it, so I can’t see a problem with this note entry suggestion behaving in exactly the same way.
As a side note, I know this one has been mentioned before somewhere, but it would be nice if ‘Play current line’ could also take into account the edit step value. Maybe another key binding could exist for ‘Play current line with edit step’, something like that.
@dblue: you may kick me for not reading through to the last line of your post. also, your point about newly implemented behaviour (which is a variation on existing behaviour) always being optional, is taken.
The poor-man’s version of what I am thinking would be to simply play all notes between the previous cursor position to the current one.
I think that the intention for this feature is to hear whatever notes would be playing when your newly entered note(s) play, i.e. Renoise really ought to search backwards through the track to determine which notes would be playing. Even better, force Autoseek where possible, to ensure loops are synced.
A brute-force version of this would entail pre-rendering all the way back from the earliest of the most recent notes in all tracks, right through to just before the current note, then doing realtime rendering as normal and outputting that. This would essentially Autoseek even VSTi’s. A limit of how many previous seconds of audio to pre-render at a maximum would make implementation feasible.
When you press key and insert a note, the whole row’s content is played by activating play routine.
If you release key before quant is played, autoscroll happens to the next row, according to the row-step.
If you continue to hold key, play rotinue is continued, and you hear all notes consequently.
When you release key, the note-mute can be inserted either automaticly or by key.
When you release key, play routine is stopped and program waits for your next action.
If you insert one note after another - one note can automaticly mute previous note.
You can insert silence as well, for seamless going through pattern.
Silence is sound too. When musician gets it - he(or she) is one step closer to the professional.
This is how it supposed to work.
This approach combines launching of many routines simultaneously and stopping them also, and my require sophisticated programming methods.
There can be idea of making track-play like midi sequencing, when overlapping notes do not mute each other.
Also speed and sounding control with supporting slowing sound effects, and sound generally, without changing frequency, is too advanced for current hardware and software customs.
What we try to achieve is ease of writing music.
And it is very good, especially for tracker music, because for drums+solo+bass pattern it is exactly what needed.
There are two common ways of writting music: experimenting with pattern, and “from mind to pattern” way.
In both of them requested feature will be the most natural and thus helpful as it just always musted be.
There also are many reality shifting ideas I have, but they require specially designed hardware, computers, and totally new way of programming.
@vicktech: i read your comment three times and don’t really understand it. i re-read it because of martyfmelb’s comment, as he obviously understood it. maybe he can explain. i suppose that because English is not your first language, you have trouble expressing yourself?
After reading vicktech’s proposal directly, I find that he is proposing an edit-mode with the audible feedback of the current record function; a sort of hybrid “best of both worlds”.
If you hold a key (note) down, the song plays normally or at a slowed rate. - When you release the note, a note-off is inserted; then the song pauses. - There is the ability to insert silence, e.g. hold down Del. The song plays as you do this, too.
It’s a really organic way of editing the music, giving you a realtime feeling even though you’re editing at your own pace. Edit-step becomes more like quantize.
(I’d also propose the ability to bring down the volume of all the other tracks playing, so I can hear what I’m entering more clearly. As a result, you’d sort of have a continuum between how we currently edit and this new playback-enhanced way.)
Where the proposal gets tricky is navigating upwards, or skipping downwards (without ‘entering silence’).
I think vicktech’s expanded idea is a little too much.
Every time I use renoise I step through a pattern with [enter] and editstep 1, entering new notes as I go.
It would be MEGA to combine the behaviour of the enter key with the new note entry. Pretty simple, doesn’t have to be any more complex than that.