diff --git a/index.xml b/index.xml index 459d1495e..0e6d1dc9f 100644 --- a/index.xml +++ b/index.xml @@ -1,5 +1,5 @@ - + @@ -13873,20 +13873,34 @@ Made by Mordi, Jan 2016]]> {\pard \ql \f0 \sa180 \li0 \fi0 REAPER's step input tool uses the MIDI control path. While it has some advantages, one of the main issue you may have encountered is that when step inputing, MIDI events will not go through the input FX chain of the track you're working on. If you are performing MIDI processing there (like channel routing, note transposition, note dropping, velocity processing, etc), everything will be ignored because REAPER does not use the result of the FX input chain, but the raw MIDI note events. This leads to strange behaviours, e.g. the MIDI editor piano roll not being in coherency with the input notes (so what you see on the piano roll is not what you'll get), but worse, you will not get the same result as if you were recording.\par} {\pard \ql \f0 \sa180 \li0 \fi0 To address this, One Small Step installs a JSFX at the end of the track input chain to watch for note events AFTER they've been processed by the FX input chain, and performs the patching of the MIDI item by itself.\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Install Notes\par} -{\pard \ql \f0 \sa180 \li0 \fi0 This script also needs the JS_ReaScriptAPI api by Julian Sander and the ReaImGui library by Christian Fillion to work. Please install them alongside (OSS will remind you to do so anyway). A restart of Reaper is needed after install.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 This script also needs the JS_ReaScriptAPI api by Julian Sader and the ReaImGui library by Christian Fillion to work. Please install them alongside (OSS will remind you to do so anyway). A restart of Reaper is needed after install.\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Reaper forum thread\par} {\pard \ql \f0 \sa180 \li0 \fi0 The official discussion thread is located here : https://forum.cockos.com/showthread.php?t=288076\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 How to use\par} {\pard \ql \f0 \sa180 \li0 \fi0 Launch the action called 'OneSmallStep' (other actions are provided but we'll get on this later). You should now see OSS's main dialog - One Small Step is active (it is active as long as this dialog is visible). At the top of it, the name of the target MIDI track / item / take will be displayed if there's one eligible that matches your current selection. It is important to note that the track should be armed for record (OSS will give you an indication if you forgot to arm the recording) and the MIDI source should be chosen (exactly like you would when recording). If everyhing's ready, a red circle will glow, meaning that in this configuration, OneSmallStep is able to do its job (listen to MIDI events, and step input/patch the current MIDI item).\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Input modes\par} {\pard \ql \f0 \sa180 \li0 \fi0 You can then select your input mode between Keyboard / Sustain Pedal / Action. For each Input Mode, two triggers may be used to validate notes and rests : the sustain pedal and the 'OneSmallStep Commit' Action, to which you may consider giving a shortcut. Inserting held notes and/or rests depends on the chosen mode. You can use the tooltip by hovering over each mode's button as a reminder of their role.\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Keyboard\par} -{\pard \ql \f0 \sa180 \li0 \fi0 Notes are added to the MIDI item at the current position, when the keys are released. Rests can also be inserted in this mode, by calling the 'OneSmallStep Commit' action or pressing the sustain pedal.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Keyboard Release (Grope Mode)\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Notes are added to the MIDI item at the current position, when the keys are released.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Suitable for inputing notes at a low pace, correcting things by ear, especially for chords. This mode is error tolerant, but tends to aggregate and skip notes easily when playing fast.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 This is pretty much the same as Reaper's default step input mode.\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The sustain pedal advances (=inserts rests)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The Commit action advances (=inserts rests)\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Keyboard Press (Fast Mode)\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Notes are added on keyboard key press events.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Suitable for inputing notes at a high pace. It is not error tolerant (you get what you play), but will only aggregate chords if keys are pressed simultaneously.\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The sustain pedal advances (=inserts rests)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The Commit action advances (=inserts rests)\sa180\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Sustain Pedal\par} -{\pard \ql \f0 \sa180 \li0 \fi0 Hold keys on your MIDI controller, then press the sustain pedal to validate them. This is convenient when playing with chords for example. In this mode, the 'OneSmallStep Commit' action will behave like the sustain pedal.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Hold some keyboard keys, and then press the sustain pedal to validate and add notes.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Useful when testing chords.\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The sustain pedal commits held notes (or advances)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The Commit action commits held notes (or advances)\sa180\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Action\par} -{\pard \ql \f0 \sa180 \li0 \fi0 It's the same thing as with the sustain pedal, except that held notes are validated with the REAPER action. In this mode, the sustain pedal will only insert rests.\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Note length\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Hold some keyboard keys, and then call the Commit action from Reaper to validate and add notes.\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The sustain pedal advances (=inserts rests)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab The Commit action commits held notes (or advances)\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Note length parameter source\par} {\pard \ql \f0 \sa180 \li0 \fi0 Three sources for determining the input note length are proposed.\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 One Small Step\par} {\pard \ql \f0 \sa180 \li0 \fi0 Note length parameters are global and configured in OSS, with the buttons aside.\par} @@ -13894,7 +13908,9 @@ Made by Mordi, Jan 2016]]> {\pard \ql \f0 \sa180 \li0 \fi0 One Small Step will use the grid parameters of the project to determine the length of the notes to insert\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 MIDI Item's conf\par} {\pard \ql \f0 \sa180 \li0 \fi0 One Small Step will use the note parameters specific to the edited MIDI item to determine the length of the notes to insert. Those parameters are located at the bottom of the MIDI Editor (the combo boxes right of the 'Notes' label).\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Other actions\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Step input playback\par} +{\pard \ql \f0 \sa180 \li0 \fi0 One Small Step provides a convenient playback widget, which is a way to ear what you've just written, without losing the position of the edit cursor, so that you can work faster. The playback button will replay the last N measures (N is settable, and the result is rounded to the start of the matching measure). You can chose Mk instead of a number of measures, and instead, the start point will be the 'OSS Playback' marker (if it is set, else, only the current measure will be played as when N=0). You can set/remove it using the marker button on the right.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Other Reaper actions\par} {\pard \ql \f0 \sa180 \li0 \fi0 To speed up your flow, multiple actions are provided to quickly change OSS parameters, so that you can assign shortcuts to them. Those are the "Change note len", "Decrease/Increase note len", "Change note len modifier", "Change note len param source" actions, whose names should be self explanatory. The "Cleanup helper JSFXs" is here for cleaniness, to remove the Helper JSFXs that are installed automatically on the input FX chain of your tracks when OSS is running (it could have been done automatically when closing the tool, but it adds an entry in the undo stack, which is annoying, and I don't have a solution for this yet).\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Calling One Small Step from a Reaper toolbar button\par} {\pard \ql \f0 \sa180 \li0 \fi0 The most logical way to summon OSS is to create a togglable toolbar button in Reaper by assigning it the 'talagan_OneSmallStep.lua' action. OSS handles the color of the button dependending on its state. However, the first time you try to close OSS by re-clicking the toolbar button, Reaper will ask if you want to open another instance of OSS or terminate the current one. Tick 'remember my answer for this script' and click 'Terminate Instances'. Now, the button should be fully togglable.\par} @@ -13904,7 +13920,7 @@ Made by Mordi, Jan 2016]]> {\pard \ql \f0 \sa180 \li0 \fi0 This tool takes a lot of inspiration in tenfour's "tenfour-step" scripts. Epic hail to tenfour for opening the way !\par} } ]]> - https://stash.reaper.fm/48161/One%20Small%20Step%200.1.png + https://stash.reaper.fm/48222/OSS%200.9.1.png @@ -14032,6 +14048,58 @@ Made by Mordi, Jan 2016]]> https://github.com/ReaTeam/ReaScripts/raw/d1f1b8a5e3daf9b4da04aa22ae31a64a899751b9/MIDI%20Editor/talagan_OneSmallStep/toolbar_icons/toolbar_one_small_step.png https://github.com/ReaTeam/ReaScripts/raw/d1f1b8a5e3daf9b4da04aa22ae31a64a899751b9/MIDI%20Editor/talagan_OneSmallStep/toolbar_icons/toolbar_one_small_step_cleanup.png + + + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20param%20source.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20param%20source.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20param%20source.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20modifier.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20modifier.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20modifier.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20modifier.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len%20modifier.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Increase%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Decrease%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Change%20note%20len.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Cleanup%20helper%20JSFXs.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep%20Commit.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/classes/KeyPressActivityManager.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/classes/KeyReleaseActivityManager.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/input_mode_action.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/input_mode_keyboard_press.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/input_mode_keyboard_release.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/input_mode_pedal.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/marker.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1_16.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1_2.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1_32.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1_4.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1_64.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_1_8.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_dotted.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_len_mode_igrid.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_len_mode_oss.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_len_mode_pgrid.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_modified.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_triplet.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/note_tuplet.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/images/playback.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/talagan_OneSmallStep%20Engine%20lib.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/talagan_OneSmallStep%20Helper%20lib.lua + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/One%20Small%20Step%20Helper.jsfx + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/toolbar_icons/toolbar_one_small_step.png + https://github.com/ReaTeam/ReaScripts/raw/22bad174a79379e9a9664935098013bcdf4e3a98/MIDI%20Editor/talagan_OneSmallStep/toolbar_icons/toolbar_one_small_step_cleanup.png +