Old 12-24-2023, 12:33 PM   #1
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default McSequencer - Step Sequencer for REAPER

Here is a step sequencer for REAPER I have been working on for the past few months.
It uses MIDI items and RS5K as well as pattern items to achieve a pattern-based workflow.
Drag one or more sounds onto the step sequencer window to add them. Left-click drag on the steps inserts notes. Right-click drag deletes them.

Version 1.1:
Now available in ReaPack! Import my repo here: https://github.com/Arthur-McArthur/R...ster/index.xml
Changelog:

-- Visual overhaul: I moved over to using .png images instead of native ImGui widgets. This results in massive CPU performance increases at the expense of easy themeability and a small GPU hit.
-- Most of the colors in the theme editor no longer will change the colors in the script, themes will now need to be edited via the provided Affinity Designer and knobman files.
-- There are a few remaining native widgets which will be eventually converted over. Support for higher resolutions will be added as well.
-- Added waveform display, click on it (or press q) to preview the selected sound(s)
-- Vertical spacing between sequencer rows has been reduced to allow for more consistent input. Mouse drags will now always affect sequencer buttons
-- Shift-arrow keys up and down will select multiple tracks
-- Shifted notes will now wrap around to the start of the item
-- Fixed off-grid notes not being editable in velocity sliders with left-click drag
-- Mouse cursor will be hidden when dragging over a knob and will reappear at the drag start location when the mouse is released (thanks BirdBird!)
-- Increased smoothness of left-click drag in velocity sliders
-- Escape key will now close the script
-- Fixed bug with non-pattern items being truncated when opening McSequencer
-- Fixed bug with using arrow keys up and down to select tracks
-- Fixed bug with using alt-arrow keys up and down to reorder tracks. it works best within a single parent folder. tracks will now reorder while mainting their depth



You select one or more tracks and copy and paste the data between them. The play position can be changed by clicking on the steps in the Patterns SEQ row. Control clicking it sets the loop points to the current pattern.

Velocity sliders: left click drag to set, right-click drag to draw linear ramps. Use mousewheel while right-click dragging to create curves.

Many thanks go to cfillon for ReaImGui and the 60fps ReaScript mod

This is a free script, I'm going to keep building out this version into a fully featured basic step sequencer. I will eventually release a paid version with more advanced features. In the meantime, if you would like to support development, you can do so at https://ko-fi.com/arthurmcarthur

Last edited by Arthur McArthur; 01-22-2024 at 01:06 PM.
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 12:34 PM   #2
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

reserved
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 12:35 PM   #3
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

reserved2
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 02:27 PM   #4
dahya
Human being with feelings
 
Join Date: Oct 2019
Posts: 232
Default

Omg Arthur, that looks amazing, thanks so much for sharing !!
dahya is offline   Reply With Quote
Old 12-24-2023, 02:28 PM   #5
strachupl
Human being with feelings
 
strachupl's Avatar
 
Join Date: Jan 2013
Posts: 650
Default

wow
This looks awesome!
__________________
Love is patient and kind; love does not envy or boast; it is not arrogant or rude.
It does not insist on its own way; it is not irritable or resentful;
it does not rejoice at wrongdoing, but rejoices with the truth. Corinthians 13:4-6
strachupl is offline   Reply With Quote
Old 12-24-2023, 02:29 PM   #6
User41
Human being with feelings
 
Join Date: Aug 2020
Posts: 243
Default

Np

Last edited by User41; 01-01-2024 at 09:20 AM.
User41 is offline   Reply With Quote
Old 12-24-2023, 02:32 PM   #7
Suzuki
Human being with feelings
 
Suzuki's Avatar
 
Join Date: Jul 2022
Location: Japan
Posts: 810
Default

Yaaaaaay! Finally!!!!! Congratulations on the release!!
Suzuki is offline   Reply With Quote
Old 12-24-2023, 02:39 PM   #8
Wallaby
Human being with feelings
 
Wallaby's Avatar
 
Join Date: Jul 2021
Location: Swiss Zürich
Posts: 842
Default

I would like to try out but how to instal ?
I moved one folder into Effects and the other into user-plugins.
Reaper doesn't show new plugin.
and there is a lot rest from the zip folder,
is this even supposed to work on mac ?
Wallaby is offline   Reply With Quote
Old 12-24-2023, 02:43 PM   #9
Suzuki
Human being with feelings
 
Suzuki's Avatar
 
Join Date: Jul 2022
Location: Japan
Posts: 810
Default

Quote:
Originally Posted by User41 View Post
I put the dll file in user plugins but it won't show up in my js fx list.

Do I also need to do something with the .lua file?

Thank you for this btw!
Quote:
Originally Posted by Wallaby View Post
I would like to try out but how to instal ?
I moved one folder into Effects and the other into user-plugins.
Reaper doesn't show new plugin.
and there is a lot rest from the zip folder,
is this even supposed to work on mac ?
Load ArthurMcArthur_McSequencer.lua from action list and run it.


EDIT:
It returns error.
Code:
...-McArthur\McSequencer 1.0\ArthurMcArthur_McSequencer.lua:4263: bad argument #3 to 'ImGui_PushStyleColor' (number expected, got table)
Suzuki is offline   Reply With Quote
Old 12-24-2023, 02:58 PM   #10
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,827
Default

Quote:
Originally Posted by Suzuki View Post
EDIT:
It returns error.
Code:
...-McArthur\McSequencer 1.0\ArthurMcArthur_McSequencer.lua:4263: bad argument #3 to 'ImGui_PushStyleColor' (number expected, got table)
Yes and after i get this:


But I'm super excited to try it, looks sooo good!
Vagelis is offline   Reply With Quote
Old 12-24-2023, 03:11 PM   #11
Wallaby
Human being with feelings
 
Wallaby's Avatar
 
Join Date: Jul 2021
Location: Swiss Zürich
Posts: 842
Default error

Only this error :
...Downloads/McSequencer 1.0/ArthurMcArthur_McSequencer.lua:4263: bad argument #3 to 'ImGui_PushStyleColor' (number expected, got table)
Wallaby is offline   Reply With Quote
Old 12-24-2023, 03:17 PM   #12
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

Sorry for the error, try the new version in the first post.

Installation instructions added there as well.
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 03:35 PM   #13
Uchmania
Human being with feelings
 
Join Date: Dec 2020
Posts: 24
Default Fantastic script

lovely script. what theme are you using?
Uchmania is offline   Reply With Quote
Old 12-24-2023, 03:52 PM   #14
Wallaby
Human being with feelings
 
Wallaby's Avatar
 
Join Date: Jul 2021
Location: Swiss Zürich
Posts: 842
Default

Still error :
...wnloads/McSequencer 1.0.1/ArthurMcArthur_McSequencer.lua:4263: bad argument #3 to 'ImGui_PushStyleColor' (number expected, got table)

added instructions not found

The Reaper theme in use is iLogic 2
Wallaby is offline   Reply With Quote
Old 12-24-2023, 04:02 PM   #15
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

Instructions are at the bottom of the first post in this thread. I can't reproduce the error on Windows, I'll check on Mac when I get a minute.

Thanks Uchmania, the theme is a custom one I've been making for use with the step sequencer (still WIP.)
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 04:03 PM   #16
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,827
Default

Nice script indeed thank you!
When switching patterns, could it highlight the selected pattern?
Vagelis is offline   Reply With Quote
Old 12-24-2023, 05:30 PM   #17
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,900
Default

oh nice ! Thx for sharing !



Such script would definitly benefit from a reapack release, as the updates can be regular :P


Let us know if you need help set up a repo.


Cheers !
X-Raym is offline   Reply With Quote
Old 12-24-2023, 06:20 PM   #18
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

Quote:
Originally Posted by Vagelis View Post
Nice script indeed thank you!
When switching patterns, could it highlight the selected pattern?
Thanks Vagelis, do you mean select the Pattern Item in arrange view? What should it do if there are more than one instance of the same pattern item? What's the use case for this?
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 06:21 PM   #19
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

Quote:
Originally Posted by X-Raym View Post
oh nice ! Thx for sharing !



Such script would definitly benefit from a reapack release, as the updates can be regular :P


Let us know if you need help set up a repo.


Cheers !
Much appreciated X-Raym, I'll message on Discord to ask some reapack related questions.
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 06:22 PM   #20
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

Quote:
Originally Posted by Wallaby View Post
Still error :
...wnloads/McSequencer 1.0.1/ArthurMcArthur_McSequencer.lua:4263: bad argument #3 to 'ImGui_PushStyleColor' (number expected, got table)

added instructions not found

The Reaper theme in use is iLogic 2
Tested on Mac now, should be working. Updated zip in the first post. Can you give it a try and let me know?
Arthur McArthur is offline   Reply With Quote
Old 12-24-2023, 08:17 PM   #21
User41
Human being with feelings
 
Join Date: Aug 2020
Posts: 243
Default

Updated file and instructions works great. Thank you. Easiest REAPER sequencer I've ever used (sorry Sower).
User41 is offline   Reply With Quote
Old 12-24-2023, 10:57 PM   #22
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,032
Default

Thanks for sharing friend. Will test it hopefully soon.
TonE is offline   Reply With Quote
Old 12-25-2023, 12:51 AM   #23
strachupl
Human being with feelings
 
strachupl's Avatar
 
Join Date: Jan 2013
Posts: 650
Default

I've play with it for 30 minutes. Fun and stable. I thought there could be option to clone existing pattern.
__________________
Love is patient and kind; love does not envy or boast; it is not arrogant or rude.
It does not insist on its own way; it is not irritable or resentful;
it does not rejoice at wrongdoing, but rejoices with the truth. Corinthians 13:4-6
strachupl is offline   Reply With Quote
Old 12-25-2023, 03:16 AM   #24
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,827
Default

Quote:
Originally Posted by Arthur McArthur View Post
Thanks Vagelis, do you mean select the Pattern Item in arrange view? What should it do if there are more than one instance of the same pattern item? What's the use case for this?
Hi Arthur I meant to select or move the edit cursor to the pattern item In Pattern Seqs track. I think this would be useful to know at which part of the timeline we're drawing our sequences when switching between them. Thought I didn't know there can be multiple instances of patterns. What's this use case?

Also, is it possible to draw multiple sequences on the same item instead of another track? Like to choose the notes we want to draw on the same item.

Another thing that I would like to see in the future as an option but it's a bit different approach, is to create the patterns internally in the sequencer and listen to them without adding to the arrange view, similar to FL. then it would be great to drag n drop the patterns on the arrange where we want to.
EDIT: But I guess this could be somehow possible with subprojects?

Keep up the good work!

Last edited by Vagelis; 12-25-2023 at 03:32 AM.
Vagelis is offline   Reply With Quote
Old 12-25-2023, 04:20 AM   #25
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,032
Default

I like looping a region where I want to work (or fill something), then all going there. No need for later deciding where to place something. I am already there.
TonE is offline   Reply With Quote
Old 12-25-2023, 09:27 AM   #26
AndreiMir
Human being with feelings
 
Join Date: Mar 2022
Posts: 48
Default

Quote:
Originally Posted by Arthur McArthur View Post
Tested on Mac now, should be working. Updated zip in the first post. Can you give it a try and let me know?
Is it possible to make ReaSamplOmatic appear in the container and not in the folder, so as not to clog the project with tracks?
AndreiMir is offline   Reply With Quote
Old 12-26-2023, 02:47 AM   #27
J Reverb
Human being with feelings
 
Join Date: Jul 2009
Posts: 1,071
Default

Firstly thank you for this awesome script Loads of fun !
Qq. What is the 60fps mod doing ? Is that just a graphics improvement or is that processing the script faster as a whole ? Just curious as to why this has been implemented.
Many thanks and happy holidays.
J.
J Reverb is offline   Reply With Quote
Old 12-26-2023, 08:47 AM   #28
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

Quote:
Originally Posted by Vagelis View Post
Hi Arthur I meant to select or move the edit cursor to the pattern item In Pattern Seqs track. I think this would be useful to know at which part of the timeline we're drawing our sequences when switching between them. Thought I didn't know there can be multiple instances of patterns. What's this use case?
You can copy and duplicate patterns in the arrange view to have them occur multiple times. Currently you can click on the blocks on the Patterns SEQ row to move the edit cursor to that position within the pattern item. Control click sets the loop to the first instance of the whole pattern. Pressing "1" will set the edit cursor to the start of the loop.

Quote:
Originally Posted by Vagelis View Post
Also, is it possible to draw multiple sequences on the same item instead of another track? Like to choose the notes we want to draw on the same item.
I'm not sure what you mean by this.

Quote:
Originally Posted by J Reverb View Post
Firstly thank you for this awesome script Loads of fun !
Qq. What is the 60fps mod doing ? Is that just a graphics improvement or is that processing the script faster as a whole ? Just curious as to why this has been implemented.
Many thanks and happy holidays.
J.
Thanks J, happy holidays to you as well. The 60fps mod doubles the defer rate of all ReaScripts, increasing the FPS up to 60 (for some reason some people get even higher). It could technically result in errors but myself and many others keep it in our UserPlugins all the time with no issues.
Arthur McArthur is offline   Reply With Quote
Old 12-26-2023, 11:02 AM   #29
J Reverb
Human being with feelings
 
Join Date: Jul 2009
Posts: 1,071
Default

Quote:
The 60fps mod doubles the defer rate of all ReaScripts, increasing the FPS up to 60 (for some reason some people get even higher). It could technically result in errors but myself and many others keep it in our UserPlugins all the time with no issues.
Thanks for explaining that is really good news !

I guess this improves performance and timing dramatically when working with midi/getparam. Glad I stumbled on this looking forward to seeing how this project develops. I mean it's fantastic already !
Best,
J.
J Reverb is offline   Reply With Quote
Old 12-26-2023, 12:48 PM   #30
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,900
Default

@J Reverb
This extension is I think based on what made by cfillion (not credited).



https://forums.cockos.com/showpost.p...8&postcount=61


It is also avalaible on other platform on cfillion server (this pack has just the dll).



I'm not sure this pack this into this extension is optimum, as this as a way broader consequence than just this script.
X-Raym is offline   Reply With Quote
Old 12-28-2023, 11:44 AM   #31
todd_r
Human being with feelings
 
todd_r's Avatar
 
Join Date: Nov 2006
Posts: 858
Default

Quote:
Originally Posted by Arthur McArthur View Post
Here is a step sequencer for REAPER I have been working on for the past few months...
This looks amazing! Going to give it a try asap

Quote:
Originally Posted by X-Raym View Post
@J Reverb
This extension is I think based on what made by cfillion (not credited).
Just for clarity, I believe you mean just the 60fps extension and not McSequencer itself
todd_r is offline   Reply With Quote
Old 12-28-2023, 12:29 PM   #32
vidalsh
Human being with feelings
 
Join Date: Nov 2008
Location: madrid/spain
Posts: 1,043
Default

Super sequencer. That´s only will needs one installer/uninstaller from reapack
vidalsh is online now   Reply With Quote
Old 12-28-2023, 01:35 PM   #33
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,900
Default

@todd_r
McSequencer is not an extension but a script, so yes, I am was referring to the reaper60fps dll packed into the archive. This is an extension.
X-Raym is offline   Reply With Quote
Old 12-28-2023, 01:51 PM   #34
Arthur McArthur
Human being with feelings
 
Arthur McArthur's Avatar
 
Join Date: Sep 2016
Location: Toronto
Posts: 749
Default

1.0.3 released:

-added "Duplicate all to new pattern" and "Duplicate selected to new pattern", access it by right clicking the New Pattern button
-right click the pattern length slider to set it to commonly used lengths
-right click the pattern select slider to show a menu with all of the patterns
-added a thank you note to cfillon for the 60fps ReaScript extension dll.

Arthur McArthur is offline   Reply With Quote
Old 12-28-2023, 10:19 PM   #35
fmL
Human being with feelings
 
Join Date: Aug 2022
Posts: 213
Default

some nice new scripts being worked on to end the year!
__________________
❑❑❑
fmL is offline   Reply With Quote
Old 12-30-2023, 11:59 AM   #36
gxray
Human being with feelings
 
Join Date: Dec 2020
Location: Miami, FL USA
Posts: 396
Default

Holy smokes, this rocks!
__________________
Seasoned codemonkey
Dunno a thing about making music (here to learn!)
gxray is offline   Reply With Quote
Old 12-31-2023, 06:44 AM   #37
Cosmic
Human being with feelings
 
Cosmic's Avatar
 
Join Date: Jul 2010
Location: Online
Posts: 4,896
Default

This looks pretty exciting I look forward to trying it out!

Great work man,thanks!
__________________
it aint worth a bop,if it dont got that pop
Cosmic is offline   Reply With Quote
Old 12-31-2023, 11:58 AM   #38
manthosdm
Human being with feelings
 
Join Date: Sep 2020
Location: Corfu, Greece
Posts: 39
Default

This is a Sower of the next level Thanks so much for the script! And the implementation of the rs5k is phenomenal!

Any chance to add rolls to the steps? Would help so much for genres like trap and drill!

Have a great year Arthur
manthosdm is offline   Reply With Quote
Old 12-31-2023, 07:43 PM   #39
PitchSlap
Human being with feelings
 
PitchSlap's Avatar
 
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,795
Default

Quote:
Originally Posted by X-Raym View Post
oh nice ! Thx for sharing !
Such script would definitly benefit from a reapack release, as the updates can be regular :P
Let us know if you need help set up a repo.
Cheers !
Agreed. Looks great!
I'll probably hold off for a ReaPack release so I don't have to follow the thread closely and manually update.

A few thoughts/ideas:
I found it hard to follow such long LICEcaps so apologies if some of this can already be done (Tip: open image in new tab, open video in new tab to have playback/speed controls.)

-Option to randomize the steps on a track or create a full random pattern would be super useful, especially if we could select a step range to randomize. That way if you can keep parts you like and iteratively randomize parts you don't. Perhaps a modifier key could be used for creating [slight] variations of the existing steps/pattern.

-Shift steps +/- 1. This keeps the same steps, just offsets the starting point. Step 1 becomes 2, the final step becomes step 1...

-An option to copy the existing pattern when changing the step length. For example, if a 16 step pattern is changed to 32 steps the first 16 steps would be duplicated in the last 16 rather than creating empty steps.

-Saving/loading presets (kit only or kit + patterns.) I guess we could use Track Templates w/ items, but built-in would be far more user-friendly. One way might be a McSequencer Track Templates sub-folder the script can read/write to.

-It's really cool how the sequencer populates items on the timeline, but what about the opposite?
Say you have an existing MIDI drum loop, you could click "Import item from arrange" which would add a new sequencer track for each pitch and snap the notes to the nearest step value. If we saved "kits" mapped to GM endless existing MIDI can become a starting point.

-If the Time Resolution setting doesn't already do this, being able to multiply/divide the number of steps in a pattern so each represents a larger/smaller note value (16th notes become 32nd etc.) would be helpful.
The best step-sequencers I know would always double the tempo to have twice as many steps which allowing for much more unique and intricate patterns.
Another way to do it is a tempo setting that is synced to the project by default, but can be set independently. Aside from making half-time/double-time patterns easy, we could play around with uneven multiples (i.e. 100bpm project, 150bpm sequencer.)

Anyway, thanks for the script, just thought I'd throw a few ideas out there in case any of them resonate...
__________________
FRs: v5 Media Explorer Requests, Global Quantization, Session View
Win10 Pro 64-bit, Reaper 6(x64), AMD 3950x, Aorus X570 Master, 64GB DDR4 3600, PowerColor Red Devil 5700XT, EVO 970 2TB, 10TB HD, Define R6

Last edited by PitchSlap; 12-31-2023 at 09:01 PM.
PitchSlap is offline   Reply With Quote
Old 01-01-2024, 09:20 AM   #40
User41
Human being with feelings
 
Join Date: Aug 2020
Posts: 243
Default

Quote:
Originally Posted by PitchSlap View Post
A few thoughts/ideas:

-Option to randomize the steps on a track or create a full random pattern would be super useful, especially if we could select a step range to randomize. That way if you can keep parts you like and iteratively randomize parts you don't. Perhaps a modifier key could be used for creating [slight] variations of the existing steps/pattern.
+1

This would be a game changer for my workflow.
User41 is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 01:11 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.