The Api Wishlist Thread

EDIT: OOPS:

3373:renoise.song().transport.record_parameter_mode

already exists.

“Toggle Record to Envelopes/Pattern”

control over toggling this:
Screenshot 2024-09-10 at 7.33.24

  • Read OS Resolution (width / height) (for better resizing Dialogs)

  • Add Scrollbar features to LUA GUI API

Currently, it seems difficult to properly display information when a large amount of information may be displayed in a dialog.

please pretty please add

API function for setting Cursor to Sub Column (Panning, Delay, Volume, Sample FX, Instrument, Note)

renoise.song().selected_sub_column_index

this would allow me to jump to current note column’s specific sub_column.

Load Track Device Chain should allow for not overwriting current TrackDSP content, instead appending

renoise.app():load_track_device_chain(filename) 
  -> [boolean]

when triggering this, currently, it overwrites what’s there!

Slice: Automatically insert markers

  • Enable/Disable the Slice Marker Tool
  • Automatically insert markers

This is the same content as clicking here.
image

Example of use

The following routine, which is performed when creating a drum set by slicing drum phrases, etc., is executed by key bind.

  1. Enable the Slice Marker Tool
  2. Automatically insert markers
  3. Disable the Slice Marker Tool

Apply the following to the first slice source:

  • Loop set: Percussion
    4. Beatsync: Enable
    5. Mode: Percussion
    6. Loop: Forward
    7. Mute Group: Group1
    8. Playback: Autoseek

  • Loop set: Texture
    4. Beatsync: Enable
    5. Mode: Texture
    6. Loop: Forward
    7. Mute Group: Group1
    8. Playback: Autoseek

Apply the following to all sliced samples (other than the first slice source):

  1. Beatsync: Disable
  2. Trigger: One-Shot
  3. Playback: Autofade

Example of API Expression

renoise.song().selected_sample.slice_marker_tool_enabled = true
renoise.song().selected_sample.slice_marker_tool_enabled = false
renoise.song().selected_sample:slice_transient_detect()
renoise.song().selected_sample.slice_transient_detection_percentage = 0.5

Play Current Line

The Play Current Line has great potential.
This is a rather unique feature that Renoise has.
I have not heard of it in other DAWs.
In that sense, I would even say it is a selling point of Renoise.

Example of use

Hand crank music box playback

It would be interesting to have the following key bindings and MIDI Map to enable semi-manual playback like a hand-cranked music box.

Play Current Line (2nd)

  1. Play Current Line
  2. Go to Next Line

Play Previous Line

  1. Go to Previous Line
  2. Play Current Line

This is intended for use, for example

  • Assigning the mouse wheel to output any key bindings by input device remapping software
  • Operate with a MIDI knob on a rotary encoder

Furthermore, this kind of functionality can be implemented.
This is like assigning playback of a specified line to a MIDI keyboard or MPC-type pad.

This will be a unique way of playing, somewhere between a sampler and a sequencer, and will offer a new way of musical expression with Renoise.

However, it seems that without an API, some parts of the system will not work as expected, like this.

Please consider implementing this API.


Get the path of the currently selected file in the disk browser

Example of use

After correcting a sample with a misaligned loop seam, it would be useful to be able to render it immediately to the file under selection in the Disk Browser.

However, the current V3.4.4 does not seem to be able to implement this as there is no API to get the path of the currently selected file in the disk browser.
In addition, please consider implementing the following APIs.

  • which file is selected in disk browser
  • which folder are you in
  • is disk browser focused
  • which tab in disk browser are you in

config.xml definable stuff moved to API control

    <RecordSyncMode>Pattern</RecordSyncMode>
    <RecordCreateNewInstrument>false</RecordCreateNewInstrument>
    <RecordPrehear>false</RecordPrehear>
    <RecordDry>false</RecordDry>
    <RecordInputChannel>-1</RecordInputChannel>
    <RecordInputChannelMode>L+R</RecordInputChannelMode>
    <RecordExtraInputLatency>0</RecordExtraInputLatency>
    <RecordCompensateLatency>true</RecordCompensateLatency>
    <MetronomeVolume>0.707945764</MetronomeVolume>

if this is too much, then please pretty please make “RecordCreateNewInstrument” & “RecordSyncMode” API configurable

Enable/disable multiple switch elements (buttons/checkboxes/etc.) by mouse dragging

In Groovebox’s operation system, it is often the case that a series of buttons are stroked with a finger to enable or disable them all together.
It would be useful if such operation could be performed by some expression.

Example of use


Activate Keyzones > Drum Kit

This puts the key zones of the pre-recorded sample into drum kit format.

The reason why this simple API is important is that setting different samples to the same instrument is a very primitive need for a sampler.

In other words, unfortunately, the current V3.4.4 Renoise does not provide the simple yet powerful legacy workflow in 1980s hip-hop of the SP-12, MPC60, etc. in an intuitive way.
Most operators will forget what they were trying to do while using the mouse to navigate the myriad branches of complexity.
I believe that it would be easier to attract people from the vast hip-hop culture to Renoise as customers if they existed in an easy-to-use form in Renoise’s standard functionality, but I would be happy if you would consider making them API’s first.

Example of use

1 Like