Coder Social home page Coder Social logo

esaruoho / org.lackluster.paketti.xrnx Goto Github PK

View Code? Open in Web Editor NEW
9.0 9.0 0.0 839 KB

Renoise tool made with LUA scripting - multiple shortcuts + midi.

Lua 100.00%
keyboard keyboardshortcuts lua lua-script macros midi midi-controller renoise shortcuts tracker tracker-music trackers workflow

org.lackluster.paketti.xrnx's People

Contributors

esaruoho avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

org.lackluster.paketti.xrnx's Issues

difficulty modifying Caps Lock function to read Phrase row index due to LUA API function not being there

There's a bit of an issue here, I'd love to write to "current row" note column in phrase editor, but there's no LUA API functions for reading "current row", like "current_phrase_row_index" or something.

As referred to here:
https://forum.renoise.com/t/writing-to-a-specific-line-index-selected-line-index-in-the-phrase/58187

https://forum.renoise.com/t/cant-find-phrase-line-index/45211

https://forum.renoise.com/t/phrase-line-index-like-selected-line-index/48637

Set Selected Sample Beatsync Line (Power of 2 immediately above/below)

(Derived from #16)

Function to double/halve the Beatsync
The way the value transitions looks like it should be the same as the function below. (512 if an upper limit setting is needed)

  • Double EditStep
  • Halve EditStep

image

screencast:

20240128-184128_screencast.mp4

Form of value transition from 13:

  • Double: 13, 26, 52, 104, 208, 416, 512
  • Halve: 13, 6, 3, 1

Switching the output destination of the current track with a key

In a workflow where you are creating tracks during a live show and want to use Output01 Left/Rightassigned to the Renoise master channel as monitor outputs and Output02 Left/Right as outputs to the main floor, it would be useful to be able to switch between them using shortcut keys.
(I am surprised that this function is not standard.)

I think the following output destinations that can be key-assigned would be sufficient.

  • Master
  • Output 01 Left/Right
  • Output 02 Left/Right
  • Output 03 Left/Right
  • Output 04 Left/Right
  • Output 05 Left/Right
  • Output 06 Left/Right
  • Output 07 Left/Right
  • Output 08 Left/Right

Screenshot:
20240216-231447_screenshot

Load samples onto the Pitchbend Instrument from the right-click menu in the “Samples” area of Renoise

From #39

Pitchbend Single Instrument Sample Load:

  1. In the "Samples" area of Renoise, select one or more samples and right-click
  2. Select a menu similar to the following
    • Pitchbend Single Instrument Sample Load
  3. Load a Pitchbend Instrument into a Single Slot
  4. Load all selected samples in Single instrument

Pitchbend Multiple Instrument Sample Load:

  1. In the "Samples" area of Renoise, select one or more samples and right-click
  2. Select a menu similar to the following
    • Pitchbend Multiple Instrument Sample Load
  3. Load a Pitchbend Instrument into Multiple Slots
  4. Load all selected samples in Multiple instrument

Jump to Previous/Next Group

I would like 2 keybinds that when pressed within the pattern matrix, pattern editor, and mixer, will select/highlight the previous or next group track if they exist. Some refer to group tracks as busses. For someone like me who has a huge default project of 240 tracks with many groups that are collapsed and expanded frequently, this would be a huge time saver. If possible, o would like the keybind to jump to the first track within the group and automatically expand said group track if it collapsed.

As for the the last question you asked on the Renoise website, yes, that is the keyboard velocity tracking I was speaking of, the one that resides in the Sampler tab, if a shortcuts existed i.e.

Enable Sampler Velocity Tracking
Disabled Sampler Velocity Tracking

Enable Sampler Velocity Tracking ALL
Disabled Sampler Velocity Tracking ALL

This would be conducive to creating instruments of one's favorite chops and samples. Thanks so much for this awesome tool

Shortcuts for loading modulation objects

  • "Modulation/Operand"
  • "Modulation/Key Tracking"
  • "Modulation/Velocity Tracking"
  • "Modulation/AHDSR"
  • "Modulation/Envelope"
  • "Modulation/Stepper"
  • "Modulation/LFO"
  • "Modulation/Fader"

Objective: Be able to load these into Volume, Panning, Pitch, Cutoff, Resonance, Drive.

Paketti Preferences having 8 slots for default paths, and shortcuts for opening them - requires API updates for opening a file dialog in a specific folder.

EDITED:
The idea about Paketti Preferences having say, 4 or 8 different slots for paths, and the user being able to open the OS dialog in those folders with a shortcut, appeals to me a great deal. I really like the idea, and want to make it reality.

Unfortunately there are API limitations for opening them, but if they are ever fixed by the devteam, i can create this. i could, in theory, do the Preferences side of it ("setting your own preferred folders") right now and then wait for the API ppl to catch up and make the "load in (userpreferencefolder.1)" a reality.

Originally posted by @esaruoho in #34 (comment)

Beatsync 0 does not set Beatsync Off

(Derived from #16)

Wouldn't it be better to set Beatsync 0 but not Beatsync Off?
Since the following works as a Toggle, I think it would be better to operate there.

  • Set Selected Sample Beatsync On/Off
  • Set Selected Sample Beatsync On/Off 1 (Repitch)
  • Set Selected Sample Beatsync On/Off 2 (Time-Stretch Percussion)
  • Set Selected Sample Beatsync On/Off 3 (Time-Stretch Texture)

DrumKit OS Loader with Pitchbend

From #34

  1. Opens a Dialog
  2. Lets you select multiple samples
  3. Press OK
  4. the Pitchbend Instrument is loaded
  5. Enable Keyzones Drum Kit
  6. Load all selected samples in one instrument

swappy-20240428_185951

"Duplicate Selection in Sample Editor to New Sample & Loop"

As far as I can understand, this is the logic involved in

isolate selection, duplicate & loop new instrument
  1. Read Sample Editor Selection
  2. Create New Instrument
  3. Select New Instrument
  4. Add new Sample Slot to Selected Instrument
  5. Copy Sample Buffer to new Sample Slot
  6. Add Forwards Loop to Sample Slot in Selected Instrument.

Casiino requests part1

I got some requests from Casiino via Renoise Forum DM, and here's what I grabbed out of what he was saying (and sorted them into checkboxes etc). ( I did ask him to post them publicly here so I could see which ones I was missing.. but.. I have too much time and he's too busy)

Done:
Global:

  • Increase / Decrease Global Tempo +5/-5
  • Increase / Decrease Keyboard Velocity +16/-16
    Sampler:
  • Set Loop Off
  • Set Loop Forward
  • Set Loop Backward
  • Set Loop Ping Pong
  • Disable Loop Exit
  • Enable Loop Exit

Selected Sample:

  • Toggle AutoFade (my addition)
  • Disable AutoFade
  • Enable AutoFade
  • Pitch +1/-1
  • Pitch +5/-5
  • Fine tune +1/-1
  • Fine tune +5/-5
  • Volume +1/-1
  • Volume +5/-5
  • Panning +1/-1
  • Panning +5/-5

Selected Sample in Instrument:

  • Set Mod None
  • Set Mod 1
  • Set Mod 2
  • Set Mod 3
  • Set Mod 4 (my addition)
  • Set Mod 5 (my addition)
  • Set Mod 6 (my addition)
  • Set Mod 7 (my addition)
  • Set Mod 8 (my addition)
  • Set FX None
  • Set FX 1
  • Set FX 2
  • Set FX 3
  • Set FX 4 (my addition)
  • Set FX 5 (my addition)
  • Set FX 6 (my addition)
  • Set FX 7 (my addition)
  • Set FX 8 (my addition)

All Samples in Instrument:

  • Set Mod None ALL
  • Set Mod 1 ALL
  • Set Mod 2 ALL
  • Set Mod 3 ALL
  • Set Mod 4 ALL (my addition)
  • Set Mod 5 ALL (my addition)
  • Set Mod 6 ALL (my addition)
  • Set Mod 7 ALL (my addition)
  • Set Mod 8 ALL (my addition)
  • Set FX None ALL
  • Set FX 1 ALL
  • Set FX 2 ALL
  • Set FX 3 ALL
  • Set FX 4 ALL (my addition)
  • Set FX 5 ALL (my addition)
  • Set FX 6 ALL (my addition)
  • Set FX 7 ALL (my addition)
  • Set FX 8 ALL (my addition)
  • Disable AutoFade ALL
  • Enable AutoFade ALL
  • Toggle AutoFade ALL (my addition)

`Beatsync On/Off 1-3` does not work as a toggle

Beatsync On but not Off (doesn't seem to work as a toggle).

Screencast:

20240427-213526_screencast.mp4

Version:
https://github.com/esaruoho/org.lackluster.Paketti.xrnx/files/15138153/org.lackluster.Paketti_V3.54.xrnx.zip

contextual move of main.lua, PakettiRecorder.lua, PakettiLoaders.lua, PakettiUtils.lua into specific places

in order to be able to create a feature list, one needs to make sure all the shortcuts + features are organized contextually.

this requires for instance main.lua contents to be moved and organized into places like PakettiImpulseTracker, PakettiPatternEditor, PakettiMixer, PakettiSamples, etc, etc. same for PakettiRecorder, PakettiLoaders, PakettiUtils.

  • Utils
  • Recorder
  • Loaders
  • main.lua redirect

Improve Note-On -> Note-Off + pitch transpose script

The current Note-On -> Note-Off + pitch transpose script is far too limited. It only works for 1 sample. No protection against if there are zero samples.

  • Wipe Note-Off Layer sample slots before starting
  • Copy all Note-On sample slots to Note-Off sample slots
  • Work something around for sliced samples
  • Protect against if Instrument has zero samples

Trim Silence Beneath Threshold

Is it possible to add a keybind in the sample editor that can delete silence beneath a db threshold. There was a tool that did this but it is no longer compatible with 3.4

Perhaps a preference setting beforehand and a keybind that can immediately activate the process.

The beginning and end of samples are where it's most important in my opinion especially when using bxx commands on samples that have huge amounts of silence after the waveform. This would be a godsend

Paketti Feature List

this is blocked by #45

so there's a need for a Feature List. There's just too much stuff. It needs to be fully organized so that once I start breaking it into animated gifs and short video clips, it'll be possible to conceive / conceptualize what exactly does Paketti do.

Paketti Preferences for overwriting KeyBindings.xml with PakettiMasterKeyBindings.xml

need a way of storing (within Paketti script) and importing the PakettiMasterKeyBindings.xml for macOS and eventually Windows.
meaning: when Paketti shortcuts are fully configured, they need to be stored within Paketti folder structure, and a way to force import (with overwriting or not) them into Renoise KeyBindings - meaning i could press two buttons and have them exist in a new install on a new computer.

There also needs to be some logic of going "do you want to overwrite the current KeyBinding (name of KeyBinding) for "key F3" or something - if that's desired. Anyway, like, a proper system of adding + overwriting KeyBindings.

Enable/Disable Velocity Tracking (per sample, and per instrument)

@icasiino
Next, the Sampler Velocity Tracking -
It seems it is possible to set the Min / Max (0...127) Velocity Tracking - and something about Clamp and Scale (Different Modes)

and also something like Mappings velocity->volume and key->pitch options. and Velocity range the mapping is triggered for. - are we specifically talking about setting Velocity Range 127...127 so no matter what, it will hit at full volume, (Disabled Velocity Tracking? would that work?) and then 0...127 for "Enabled Velocity Tracking", for either SelectedSample, or SelectedInstrument(=ALL)?

I'm wondering about the usecase of this, could you provide a XRNI example for me as a zip, you can email it to [email protected] if that helps (if you want to keep it private).

Originally posted by @esaruoho in #30 (comment)

Add sample properties key bind settings

Please consider adding a feature to allow control over sample properties.
It looks like the following:
Increase/Decrease units seem to be as per the basic GUI button, but it may be useful to add a type of adjustment unit depending on how it is used.

  • Sample Editor
    • Paketti
      • Volume Increase
      • Volume Decrease
      • Panning Increase
      • Panning Decrease
      • Transpose Increase
      • Transpose Decrease
      • Finetune Increase
      • Finetune Decrease
      • Beatsync toggle
      • Beatsync Mode to 1 Repitch
      • Beatsync Mode to 2 Time-Stretch (Percussion)
      • Beatsync Mode to 3 Time-Stretch (Texture)
      • Beatsync [T] button
      • Loop Finish
      • Mute Group None
      • Mute Group 1
      • Mute Group 2
      • Mute Group 3
      • Mute Group 4
      • Mute Group 5
      • Mute Group 6
      • Mute Group 7
      • Mute Group 8
      • Mute Group 9
      • Mute Group A
      • Mute Group B
      • Mute Group C
      • Mute Group D
      • Mute Group E
      • Mute Group F
      • Mute Group G
      • NNA Cut
      • NNA Note-Off
      • NNA Continue
      • Playback Autofade toggle
      • Playback Autoseek toggle
      • Anti-aliasing toggle
      • Quality None
      • Quality Linear
      • Quality Cubic
      • Quality Sinc

https://tutorials.renoise.com/wiki/Sampler#Sample_Properties

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.