|
|
|
09-22-2017, 05:38 AM
|
#121
|
Human being with feelings
Join Date: Jan 2013
Posts: 1,126
|
Hi me2beats
There already are actions for "go to region ###" and "go to marker ###" in In the action list. and I use those function a lot to navigate in projects using action markers.
But I think it would be more flexible to just have a "go to measure ###". Would it be hard to do?
|
|
|
09-22-2017, 08:07 PM
|
#122
|
Human being with feelings
Join Date: Oct 2008
Location: Right Hear
Posts: 15,618
|
me2 can you plz look at the Searcher thread? I would like to use it but get the error I have posted in that thread...
|
|
|
09-23-2017, 03:24 AM
|
#123
|
Human being with feelings
Join Date: Jul 2015
Location: Yekaterinburg, Russia
Posts: 400
|
Quote:
Originally Posted by lexaproductions
I think it would be more flexible to just have a "go to measure ###". Would it be hard to do?
|
Hi! Pls check:
Go to measure.lua
Move cursor to measure.lua
Go to measure 8.lua
Move cursor to measure 8.lua
Quote:
Originally Posted by hopi
me2 can you plz look at the Searcher thread? I would like to use it but get the error I have posted in that thread...
|
Hi!
I'll pm you soon
|
|
|
09-23-2017, 08:43 AM
|
#124
|
Human being with feelings
Join Date: Oct 2008
Location: Right Hear
Posts: 15,618
|
Thanks for the PM and for the 0.96 searcher versions... they work...
What a useful script! Great idea...
I can now so easily find other tracks in other projects and just drag and drop them from Searcher into the current project, ready to use as new track.
|
|
|
09-28-2017, 02:40 PM
|
#125
|
Human being with feelings
Join Date: Sep 2016
Location: Toronto
Posts: 744
|
Hi me2beats, 3 new requests:
go to end of project no seek
go to start of project no seek
delete small notes at the end and the beginning of midi items (a way to get rid of those tiny notes that get created when splitting a midi item in two)
|
|
|
09-29-2017, 12:28 PM
|
#126
|
Human being with feelings
Join Date: Jul 2015
Location: Yekaterinburg, Russia
Posts: 400
|
Quote:
Originally Posted by Arthur McArthur
Hi me2beats, 3 new requests:
go to end of project no seek
go to start of project no seek
delete small notes at the end and the beginning of midi items (a way to get rid of those tiny notes that get created when splitting a midi item in two)
|
Delete small notes at item edges (active take).lua
Delete small notes at item edges (MIDI Editor).lua
https://imgur.com/hkQ3rMo
Move cursor to start of project.lua
Move cursor to end of project.lua
|
|
|
10-05-2017, 02:30 PM
|
#127
|
Human being with feelings
Join Date: Sep 2016
Location: Toronto
Posts: 744
|
Thank you!
|
|
|
11-22-2017, 07:58 AM
|
#128
|
Human being with feelings
Join Date: Jan 2013
Posts: 1,126
|
Hello Sir.
I'd like to know if it would be a big job for you to rewrite this script in LUA?
Code:
// Big Tempo and Beat indicator (EEL script by Vindes)
// Right click on window -> select what items to show (and automatically save state)
// Left click on window -> cycle through formats of Time display
// Initial values
font_name = "Arial";
window_w = 300;
window_h = 150;
format = 2;
font_size = 0;
show_time = show_tempo = show_beat = 1;
show_marker = 0;
lock_to_cursor = 0;
function init(window_w, window_h)
(
get_action_context(#filename, sectionID, cmdID, mode, resolution, val);
match ("*\\%s.eel", #filename, #script_name);
HasExtState(#script_name, "window_size") ? ( GetExtState(#state_value, #script_name, "window_size") ;
match ("%ix%i@%i,%i:%i", #state_value, window_w, window_h, wx, wy, dock_state); );
gfx_init(#script_name, window_w, window_h, dock_state, wx, wy);
font_size = (window_h - 15) / 3;
gfx_setfont(1, font_name, font_size);
gfx_a = 1; gfx_r = 1; gfx_g = 1; gfx_b = 1; gfx_clear = 0x303030;
show_region = HasExtState(#script_name, "show_region");
show_marker = HasExtState(#script_name, "show_marker");
show_time = HasExtState(#script_name, "show_time");
show_tempo = HasExtState(#script_name, "show_tempo");
show_beat = HasExtState(#script_name, "show_beat");
lock_to_cursor = HasExtState(#script_name, "lock_to_cursor");
);
function run()
(
GetPlayState() == 0 || GetPlayState() == 2 || lock_to_cursor ? the_time = GetCursorPosition() : the_time = GetPlayPosition2();
line_space = font_size / 10;
line_count = 0;
gfx_y = line_space;
format_timestr_pos(the_time, #time_string, 1);
match ("%i.%i.%i", #time_string, measure, beat, fraction);
TimeMap_GetTimeSigAtTime(0, the_time, timesig_num, timesig_denom, tempo);
// Show Marker and/or Region
show_marker || show_region ? (
// EnumProjectMarkers(int idx, bool &isrgn, &pos, &rgnend, #name, int &markrgnindexnumber);
GetLastMarkerAndCurRegion(0, the_time, marker_index, region_index);
region_index >= 0 ? ( EnumProjectMarkers3(0, region_index, 1, 0, 0, #region_name, 0, region_color) ) :
( #region_name = "- no region -" ; region_color = 0x707070 ) ;
marker_index >= 0 ? ( EnumProjectMarkers3(0, marker_index, 0, 0, 0, #marker_name, 0, marker_color) ) :
( #marker_name = "- no marker -" ; marker_color = 0x707070 ) ;
show_region ? (
region_color ? (gfx_r = (region_color & 0xff) / 0xff; gfx_g = (region_color & 0xff00) / 0xff00; gfx_b = (region_color & 0xff0000) / 0xff0000) :
( gfx_r = 1; gfx_g = 1; gfx_b = 1) ;
gfx_measurestr(#region_name, str_w, str_h);
gfx_x = 0.5*(gfx_w - str_w);
gfx_printf(#region_name);
line_count += 1; gfx_y += gfx_texth + line_space;
);
show_marker ? (
gfx_measurestr(#marker_name, str_w, str_h);
marker_color ? (gfx_r = (marker_color & 0xff) / 0xff; gfx_g = (marker_color & 0xff00) / 0xff00; gfx_b = (marker_color & 0xff0000) / 0xff0000) :
( gfx_r = 1; gfx_g = 1; gfx_b = 1) ;
gfx_x = 0.5*(gfx_w - str_w);
gfx_printf(#marker_name);
line_count += 1; gfx_y += gfx_texth + line_space;
);
);
// Show Time
show_time ? (
format_timestr_pos(the_time, #time_string, format) ;
format == 2 ? sprintf (#time_string, "%u.%2u", measure, beat) ; // not sure why this is necessary - format 2 supposed to be like this
gfx_measurestr(#time_string, str_w, str_h);
gfx_r = 1; gfx_g = 1; gfx_b = 1;
gfx_x = 0.5*(gfx_w - str_w);
gfx_printf(#time_string);
line_count += 1; gfx_y += gfx_texth + line_space;
);
// Show Tempo and time signature line
show_tempo ? (
#bpm = ""; #bpm2 = " bpm 4/4 ";
#bpm += sprintf(#, "%0.1f", tempo);
strcat (#bpm2, #bpm);
gfx_measurestr(#bpm2, w_bpm, 0); // this is just to calculate how to center it
gfx_x = 0.5*(gfx_w - w_bpm);
gfx_r = 1; gfx_g = 1; gfx_b = 0.5;
gfx_printf(#bpm);
gfx_b= 1; gfx_a = 0.5;
gfx_printf(" bpm");
gfx_a = 1; gfx_r=0.5; gfx_g = 1; gfx_b = 0.5;
gfx_printf(" %i/%i", timesig_num, timesig_denom);
line_count += 1; gfx_y += gfx_texth + line_space;
);
// Show which beat we're on
show_beat ? (
gfx_x = font_size / 4 + (beat - 1) * (gfx_w - font_size) / (timesig_num - 1) ;
beat == 1 ? ( gfx_r = 1; gfx_b = 0.2; gfx_g = 0.2; gtx_a = 1) : (gfx_r = 1; gfx_b = 1; gfx_g = 1; gfx_a = 1) ;
gfx_setfont(1, font_name, font_size, 'b');
gfx_printf("%i",beat);
line_count += 1; gfx_y += gfx_texth + line_space;
);
// Use left mouse click to cycle through time formats
mouse_state == 0 && mouse_cap == 1 && mouse_x > 5 && mouse_x < gfx_w - 5 && mouse_y > 5 && mouse_y < gfx_h - 5 ? (
mouse_state = 1;
format < 5 ? format += 1 : format = 0;
);
mouse_cap == 0 ? mouse_state = 0;
// Use right mouse select which lines to show
mouse_state == 0 && mouse_cap == 2 && mouse_x > 5 && mouse_x < gfx_w - 5 && mouse_y > 5 && mouse_y < gfx_h - 5 ? (
#menu_string = "";
show_region ? strcat(#menu_string, "!Region|") : strcat(#menu_string,"Region|");
show_marker ? strcat(#menu_string, "!Marker|") : strcat(#menu_string,"Marker|");
show_time ? strcat(#menu_string, "!Time|") : strcat(#menu_string,"Time|");
show_tempo ? strcat(#menu_string, "!Tempo|") : strcat(#menu_string,"Tempo|");
show_beat ? strcat(#menu_string, "!Beat|") : strcat(#menu_string,"Beat|");
lock_to_cursor ? strcat(#menu_string, "!Lock to Edit cursor|") : strcat(#menu_string,"Lock to Edit cursor|");
menu_choice = gfx_showmenu(#menu_string);
menu_choice == 1 ? (
show_region = !show_region; show_region ? SetExtState(#script_name, "show_region", "on", 1) : DeleteExtState(#script_name,"show_region",1);
) : menu_choice == 2 ? (
show_marker = !show_marker; show_marker ? SetExtState(#script_name, "show_marker", "on", 1) : DeleteExtState(#script_name,"show_marker",1);
) : menu_choice == 3 ? (
show_time = !show_time; show_time ? SetExtState(#script_name, "show_time", "on", 1) : DeleteExtState(#script_name,"show_time",1);
) : menu_choice == 4 ? (
show_tempo = !show_tempo; show_tempo ? SetExtState(#script_name, "show_tempo", "on", 1) : DeleteExtState(#script_name,"show_tempo",1);
) : menu_choice == 5 ? (
show_beat = !show_beat; show_beat ? SetExtState(#script_name, "show_beat", "on", 1) : DeleteExtState(#script_name,"show_beat",1);
) : menu_choice == 6 ? (
lock_to_cursor = !lock_to_cursor; lock_to_cursor ? SetExtState(#script_name, "lock_to_cursor", "on", 1) : DeleteExtState(#script_name,"lock_to_cursor",1);
) : menu_choice == 7 ? (
show_time = !show_time;
) : menu_choice == 8 ? (
show_time = !show_time;
);
dock_state = gfx_dock(-1, wx, wy, ww, wh);
sprintf (#state_value, "%ix%i@%i,%i:%i", gfx_w, gfx_h, wx, wy, dock_state);
SetExtState(#script_name, "window_size", #state_value, 1);
);
mouse_cap == 0 ? mouse_state = 0;
font_size = (gfx_h - 15) / line_count;
gfx_setfont(1, font_name, font_size );
gfx_update();
gfx_getchar() >= 0 ? defer("run();");
);
init(window_w, window_h);
run();
https://forum.cockos.com/showthread.php?t=194997
I'm also trying to do these fixes to the script:
https://forum.cockos.com/showpost.ph...8&postcount=25
Thanks!
|
|
|
12-13-2017, 02:36 AM
|
#129
|
Human being with feelings
Join Date: Nov 2017
Location: Gloucestershire, UK
Posts: 223
|
Just discovered you amazing list of scripts. Many Thanks
|
|
|
12-17-2017, 09:17 PM
|
#130
|
Human being with feelings
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
|
Thanks indeed, subscribing!
|
|
|
02-15-2018, 03:52 AM
|
#131
|
Human being with feelings
Join Date: Jun 2015
Posts: 474
|
Hello me2!
I'm having a request for something that I really need but I'm currently not able to do it on my own as I'm not experienced enough. This request does need to mix a JSFX and a ReaScript together.
Before I tell you more about it I'd like to ask if you do know both languages? I heard from another scripter that he knows ReaScript but is not good enough in JSFX to create something cool there... that's the reason why I ask :-)
There is a JSFX that is (after a surely not perfect but working for me tweak) doing what I want it to do....more than less actually ;-) and then there are your Scripts to transpose Midi and Audio Tracks while directly moving the midi events in the midi items (which is what the JSFX is lacking..)
I want to take the database (Instrument Ranges) of the JSFX and the way that the transposition is working when events fall out the range and then let your script doing the real transpositions within the midi items with regards to the ranges of the instruments.
Would that be possible and would you have time and lust to do it?
Many thanks in advance
Last edited by skippertag; 02-15-2018 at 09:17 AM.
|
|
|
05-03-2018, 11:03 AM
|
#132
|
Human being with feelings
Join Date: Mar 2015
Location: India Mumbai
Posts: 816
|
If any techno\edm producer got hands on your stutter script ..that person will abandona all daws and become a slave to reaper and a your fan for life !
Your scripts are bringing surgical precision and ease to my edit workflow
many many thanks
cheers
zook
|
|
|
05-23-2018, 11:25 AM
|
#133
|
Human being with feelings
Join Date: Jul 2009
Posts: 7,571
|
Hi !
found a bug with
Script: me2beats_Set items length to 2 (stretch items).lua
and Script: me2beats_Set items length to 0.5 (stretch items).lua
I'm using them on grouped items on separate tracks but the scripts are stretch/shrinking twice.
The items get rate of 4x or 0.250x
Lokasenna said "Reaper won't let the script select the items individually because of the grouping, which the script doesn't expect, and it just goes ahead for "each" item and does its thing."
and offered to fix if necessary.
BTW, I'm using the script to quickly put sections of my video into timelapse. If it could also work with ripple editing it would save me even more time.
|
|
|
05-23-2018, 03:15 PM
|
#134
|
Human being with feelings
Join Date: Jun 2015
Posts: 685
|
Quote:
Originally Posted by zookthespook
If any techno\edm producer got hands on your stutter script ..that person will abandona all daws and become a slave to reaper and a your fan for life !
|
Wow that mousewheel stutter is way cool! thanks for letting me know and thanks to me2beats of course, awesome stuff!
|
|
|
06-12-2018, 01:48 PM
|
#135
|
Human being with feelings
Join Date: Jul 2009
Posts: 429
|
Reporting that move envelope up and down do not work as of now.
|
|
|
06-18-2018, 02:45 PM
|
#136
|
Human being with feelings
Join Date: Jul 2009
Posts: 7,571
|
Having an issue with the Select Chord under mouse script, it is often extending note lengths to the full length of the item if there is any overlapping notes.
The other thing, name your undo!
- EDIT
The problem is actually because I'm overlapping the notes and it seems that many other scripts would have the same problem here.
Solution - MIDI Editor menu - Options - ✔️ Automatically correct overlapping notes
Last edited by EpicSounds; 06-18-2018 at 03:39 PM.
|
|
|
06-19-2018, 04:10 PM
|
#137
|
Human being with feelings
Join Date: Jul 2009
Posts: 429
|
Is it possible for the insert smart track to also preserve track grouping, VCA options as the selected track?
|
|
|
06-28-2018, 03:16 PM
|
#138
|
Petit manitou
Join Date: Feb 2009
Location: Gémenos France
Posts: 7,347
|
folder for sel track
Your script to create a folder of selected tracks does not work if the tracks are scattered
|
|
|
11-08-2019, 04:48 PM
|
#139
|
Human being with feelings
Join Date: Aug 2019
Posts: 853
|
I've realised recently when using this script 'me2beats_Split notes (select right).lua' for splitting notes across multiple midi parts, it is not splitting them all, only the 'top' layer of notes (i.e whatever was last selected when you opened the multiple midi parts). The standard 'split notes' function works correctly, but I really prefer the 'select right' behaviour when splitting, it feels much more intuitive to me.
Anyone know if there's a tweak I can make to this script so it works on all selected midi parts, or if me2beats is still active on this forum?
Thanks.
|
|
|
12-03-2019, 02:14 AM
|
#140
|
Human being with feelings
Join Date: Jan 2012
Posts: 1,180
|
Select all tracks in selected track groups.lua
Hi me2beats
I use your "Select all tracks in selected track groups.lua" script regularly.
Is it easy to mod it so that it only selects the tracks in the group if that group is actually activated? This would allow turning individual groups within groups on and off and make your script's use more granular.
Many thanks
|
|
|
01-05-2020, 12:56 PM
|
#141
|
Human being with feelings
Join Date: Sep 2019
Posts: 1,134
|
All scripts which are supposed to save MIDI editor view
me2beats_Save MIDI editor view, slot 1.lua
me2beats_Save MIDI editor view, slot 2.lua
me2beats_Save MIDI editor view.lua
throw an error
Quote:
me2beats_Save MIDI editor view.lua:31: attempt to call a nil value (field 'GetTrackChunk')
|
|
|
|
03-08-2020, 12:02 PM
|
#142
|
Human being with feelings
Join Date: Mar 2017
Location: Ukraine, Kyiv
Posts: 546
|
...Copy focused FX (with automation) to selected tracks.lua:136: attempt to concatenate a nil value (global 'fx_chain_start')
How to fix this?
|
|
|
03-10-2020, 06:56 AM
|
#143
|
Human being with feelings
Join Date: Sep 2018
Location: China
Posts: 565
|
Having an issue in using:
me2beats_Copy active take envelopes.lua
me2beats_Paste envelopes to active takes of selected items.lua
If I use the copy script on an item that contains take FX, when I use the paste script, I get a wrong message.
|
|
|
04-07-2020, 11:25 AM
|
#144
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,294
|
Hey me2beats
I tried this action:
"Record - toggle wait for MIDI note"
the problem is that the first note is not being played or even count in the recording.
can this be solved?
|
|
|
10-10-2020, 08:39 PM
|
#145
|
Human being with feelings
Join Date: Aug 2019
Posts: 646
|
Greetings me2beats,
Your MIDI editing scripts are great! I use 'select odd' and 'select even' all the time.
I'm having problems with the "set MIDI velocity" script. It works, but after running it, the focus switches to the main window, and I have to click in the MIDI editing window to do switch the focus back to it.
Can you help me with this?
|
|
|
01-01-2021, 01:40 PM
|
#146
|
Human being with feelings
Join Date: May 2016
Posts: 681
|
Transpose selected track audio items or midi items notes
Hi,
Thanks for your scripts!
Is is possible to modify the script mentioned in the title so that it works like a classical sampler (do not preserve the pitch) so that when I type in -12 the sample gets one octave lower and get the double length?
Thank for a hint!
ole
|
|
|
01-07-2021, 04:58 AM
|
#147
|
Human being with feelings
Join Date: Sep 2019
Posts: 1,134
|
Quote:
Originally Posted by o_e
Hi,
Thanks for your scripts!
Is is possible to modify the script mentioned in the title so that it works like a classical sampler (do not preserve the pitch) so that when I type in -12 the sample gets one octave lower and get the double length?
Thank for a hint!
ole
|
Not a solution, but a suggestion, try these SWS extension actions
Xenakios/SWS: Resample pitch shift item one semitone down
Xenakios/SWS: Resample pitch shift item one semitone up
|
|
|
10-13-2023, 01:41 AM
|
#148
|
Human being with feelings
Join Date: Oct 2017
Location: U.K
Posts: 542
|
For the script:
Script: me2beats_Set items volume.lua
Is it possible to add an option so the script gui remembers the last inputted value? At least whilst the Reaper project is open? That would be really useful to set it to store the last volume you wanted rather than typing in each time if you are using the script on more than one item regularly.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 05:35 AM.
|