kmatheussen / radium

A graphical music editor. A next generation tracker.
http://users.notam02.no/~kjetism/radium/
GNU General Public License v2.0
852 stars 37 forks source link

Sequencer: Changing length of sequencer block: Start/stop playing inside the block, and automatic looping. #1049

Open kmatheussen opened 7 years ago

kmatheussen commented 7 years ago

Copied from @Lydkraft (#781):

  1. Block looping. Obviously. Would allow working with blocks that have a small number of lines per block without the need to manually copy stuff around 1000 times. (Common in standard sequencers, so expect people to expect this from Radium as well. A temporary "infinite loop" would already immensely help in a lot of cases.)

Also note: With the ability to go full polyrhythm now (different block lengths/lines) this would make it also easy to change length of blocks on the fly to find the best "polyrhythm" block length without having to move all copied blocks around and lining them up again against each other each time when the length is changed...)

  1. Ability to shorten the block in the sequencer per dragging the endpoint. Would allow making the essential pauses very easily on an arrangement. Something like that would be very useful. (Also super-common in standard sequencers. Probably will also be requested pretty quickly.)
kmatheussen commented 7 years ago

I guess these are important also because it feels like something you should be able to do, and people might get frustrated trying (and failing) to do it.

Lykdraft commented 5 years ago

Better/easier idea for point 2: "shorten blocks in sequencer". Use a "Mask" Handle. (That might just make the "masked part of the block darker and not really shorten it. The mask would then just mute all tracks of the block at the masked part... Might be much easier to realize and would have the same effect as shorten the actual block.

Best, tL.

kmatheussen commented 5 years ago

You can already simulate changing start and end positions of seqblocks by using seqblock volume automation. I think that's better than using track mute.

The problem with changing start and end positions for editor seqblocks is that there's lots of code in the scheduler that must be extended, which can be quite hairy. It's something that will be done after V6.

On Sun, Feb 24, 2019 at 4:36 AM Lykdraft notifications@github.com wrote:

Better/easier idea for point 2: "shorten blocks in sequencer". Use a "Mask" Handle. (That might just make the "masked part of the block darker and not really shorten it. The mask would then just mute all tracks of the block. Might be much easier to realize and would have the same effect as shorten the actual block.

Best, tL.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1049#issuecomment-466730616, or mute the thread https://github.com/notifications/unsubscribe-auth/ABF9p0-Tp4D4EcC8Sv_FrLFq_S8EZS8uks5vQgjCgaJpZM4OfLEd .

Lykdraft commented 5 years ago

Okay I'll check this out. I hope you can snap the "Volume Automation" to subpositions on the grid, otherwise this probably isn't a good option at all. (i.e.: Way too fiddly to hit exactly 1/2 beat before start of next bar. ) Given the fact that #937 is still open, I don't think that its easy to deal with this for exact off's. But I'll test it out.

kmatheussen commented 5 years ago

Everything snaps to grid when grid is enabled.

937 has actually been implemented for a very long time. I forgot

that there was a ticket for it. But right now it's not there. It was disabled in 5.9.34, I think, since the whole grid painting was redone. But it should be put back soon.

On Sun, Feb 24, 2019 at 5:16 PM Lykdraft notifications@github.com wrote:

Okay I'll check this out. I hope you can snap the "Volume Automation" to subpositions on the grid, otherwise this probably isn't a good option at all. (i.e.: Way too fiddly to hit exactly 1/2 beat before start of next bar. ) Given the fact that #937 https://github.com/kmatheussen/radium/issues/937 is still open, I don't think that its easy to deal with this for exact off's. But I'll test it out.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1049#issuecomment-466790684, or mute the thread https://github.com/notifications/unsubscribe-auth/ABF9p_l2nr2E4QpPyDL5gNCnXBWyiFpVks5vQrrHgaJpZM4OfLEd .

Lykdraft commented 5 years ago

I see. By the way: Where is the "Seqblock Volume Automation"?

kmatheussen commented 5 years ago

Right click seqblock and enable the "Volume Automation" checkbox.

On Sun, Feb 24, 2019 at 5:31 PM Lykdraft notifications@github.com wrote:

I see. By the way: Where is the "Seqblock Volume Automation"?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

Lykdraft commented 5 years ago

Alright thanks.

kmatheussen commented 5 years ago

It's very convenient to use seqblock automation for this if you deselect "Glide to next node" on the first node. Then you only need two nodes. The first node you set at 0.0dB, and the second node you set at -Inf dB.

On Sun, Feb 24, 2019 at 5:38 PM Lykdraft notifications@github.com wrote:

Alright thanks.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1049#issuecomment-466792550, or mute the thread https://github.com/notifications/unsubscribe-auth/ABF9p7fkFBp7nyv36ut9SFYCwewe9ZuDks5vQr_5gaJpZM4OfLEd .

Lykdraft commented 5 years ago

Oh yeah indeed. This is easy.

kmatheussen commented 5 years ago

No, sorry, volume before the first node is set to the value of the first node. So you need three nodes, where the first node is also non-gliding and set to 0dB Still very convenient though.

On Sun, Feb 24, 2019 at 5:40 PM Kjetil Matheussen k.s.matheussen@gmail.com wrote:

It's very convenient to use seqblock automation for this if you deselect "Glide to next node" on the first node. Then you only need two nodes. The first node you set at 0.0dB, and the second node you set at -Inf dB.

On Sun, Feb 24, 2019 at 5:38 PM Lykdraft notifications@github.com wrote:

Alright thanks.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/kmatheussen/radium/issues/1049#issuecomment-466792550, or mute the thread https://github.com/notifications/unsubscribe-auth/ABF9p7fkFBp7nyv36ut9SFYCwewe9ZuDks5vQr_5gaJpZM4OfLEd .

Lykdraft commented 5 years ago

To add to this: Another idea would be to have the white "X"'s also available in on the blocks themselves in the sequencer on a per-grid-division setting.

I.e.: So that you could click on a part of the block (depending on grid size, or beat division) and mute a part of the block. (with a white "X" showing where the block is muted.)

This would tie in pretty nicely with the design and also would eliminate the need to tackle the option for custom block length.

Maybe worth a thought.

yust1n commented 8 months ago

Shorten a block can be done with Editor Edit/Block/Split. Just move to the place you want to split in the editor. Since there is no concat ( yet ? ) best would be to duplicate that block in the sequencer first. Alt+Up and Alt+Down can also be used to shorten or enlarge a block.