Jump to content


Photo

The Api Wishlist Thread


  • Please log in to reply
199 replies to this topic

#101 re.dread

re.dread

    Advanced Member

  • Normal Members
  • PipPipPip
  • 97 posts

Posted 20 December 2011 - 00:19

Dunno if it has been suggested before, but:

Imho a vb:button should trigger the same notifiers when clicked as when midi mapped and hit, and also provide visual feedback for midi action by default.
It's rather unlikely that a button is supposed to do different things when clicked as when triggerd by midi.
(atm one has to setup a notifier for the button being pressed, and the same once again for the midi mapping, while visual feedback has to be coded manually (and the button might not even be accesible at the construction time of the midi mapping) .. correct me if i'm wrong).

also:

Improve "midi_mapping" API stuff.
[...]
I would like to see something like (smarter function names/implementations welcome!):

-- Dump mapping
-- Outputs: nil, "CH1|E-3", whatever the user has mapped.

BIG +1
cheers

#102 mxb

mxb

    Big Super GrandMasta Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 703 posts
  • Gender:Male

Posted 20 December 2011 - 13:15

I would like to see something like (smarter function names/implementations welcome!):

-- Dump mapping
-- Outputs: nil, "CH1|E-3", whatever the user has mapped.

renoise.tool():get_midi_mapping(midi_mapping_name)
  -> [table, string?]


I can see this being useful.

If a midi mappable function is not mapped the function would return nil

If it is mapped however, it would return the following table:

midi_map.map_mode = ENUM (Renoise.Midi_Map[.Trigger, .Gate, .Value, .Absolute7bit, .RelativeSignedBit, .RelativeSignedBit2, .RelativeBinOffset, .RelativeTwosComplement])
midi_map.min = 0..1
midi_map.max = 0..1
midi_map.channel = 1..16
midi_map.note = 0..128
midi_map.cc_number = 0..128

Thoughts?
  • Conner_Bw likes this
Is a footer a sweater for feet?

#103 tris

tris

    Advanced Member

  • Normal Members
  • PipPipPip
  • 89 posts
  • Gender:Male
  • Location:Brighton, UK
  • Interests:Noises and open source

Posted 27 December 2011 - 13:09

"Keep/Mute" API switch for #send and #Multisend .. (the other parameters can be called from the api but not keep/mute states :)


and indeed any other parameters that we can't set for devices currently.

I've just written a script that adds lots of #sends to my set and would like very much for them all to be set to "keep source" after they've been created.

sadly this still looks like a manual fiddle to do this.....

oh actually i just realized i can work round this nastily with device presets! but my request still stands.

Cheers,
t

#104 esaruoho

esaruoho

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2532 posts
  • Gender:Male
  • Location:Kontula, Helsinki, Finland
  • Interests:// Free Energy // Cymatics // Sound visualization // Sustainable energy production // Apple devices // Tesla Motors //

Posted 04 January 2012 - 22:34

"Instrument Settings -Tab -like control for Disk Browser".

Proposal:
renoise.app().window.active_upper_frame.tab = DISK_BROWSER_SONG
renoise.app().window.active_upper_frame.tab = DISK_BROWSER_DSPCHAIN
renoise.app().window.active_upper_frame.tab = DISK_BROWSER_INSTRUMENT
renoise.app().window.active_upper_frame.tab = DISK_BROWSER_SAMPLE
renoise.app().window.active_upper_frame.tab = DISK_BROWSER_THEME

| lackluster Website | lackluster on bandcamp | lackluster on facebooklackluster on soundcloud | esaruoho on twitter |

esaruoho@gmail.comesaruoho on reddit | esaruoho on ello | 

| OS X 10.11 El Capitan | Mac Book Pro 2.66 GHz Intel Core 2 Duo / 8GB 1067 MHz DDR3 |

| Latent Impulse Tracker/Scream Tracker 3/Schism Tracker <-> Renoise fanatic |

More API functions, please! ;)

#105 re.dread

re.dread

    Advanced Member

  • Normal Members
  • PipPipPip
  • 97 posts

Posted 07 January 2012 - 16:09

Can i have access to the FileName of a sample? :)
<Sample>
          <Name>Kick-003</Name>
          <FileName>//File:/usr/local/share/renoise-2.7.2/Samples/Kicks/Kick-003.flac</FileName>
..like:
-- File name.
renoise.song().instruments[].samples[].file_name
-> [read-only, string]


#106 kazakore

kazakore

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6140 posts
  • Gender:Male

Posted 07 January 2012 - 18:24

Can i have access to the FileName of a sample? :)

<Sample>
          <Name>Kick-003</Name>
          <FileName>//File:/usr/local/share/renoise-2.7.2/Samples/Kicks/Kick-003.flac</FileName>
..like:
-- File name.
renoise.song().instruments[].samples[].file_name
-> [read-only, string]


As Samples are stored inside the Song, not separately and pointed to, there is no location information for it to give you like in the above example.

#107 re.dread

re.dread

    Advanced Member

  • Normal Members
  • PipPipPip
  • 97 posts

Posted 07 January 2012 - 18:40

As Samples are stored inside the Song, not separately and pointed to, there is no location information for it to give you like in the above example.

Mmm, samples are indeed saved with the song, but the original sample location is stored with them in the Song.xml .. the xml snippet is actually just copy & pasted from an existing Song.xml.

#108 kazakore

kazakore

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6140 posts
  • Gender:Male

Posted 07 January 2012 - 19:03

Mmm, samples are indeed saved with the song, but the original sample location is stored with them in the Song.xml .. the xml snippet is actually just copy & pasted from an existing Song.xml.


Thanks for teaching me something new, I didn't know that. Lends some support to esaruoho's request of being able to navigate to the correct folder when a file is loaded by drag and dropping being maybe possible somewhere down the line.

#109 esaruoho

esaruoho

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2532 posts
  • Gender:Male
  • Location:Kontula, Helsinki, Finland
  • Interests:// Free Energy // Cymatics // Sound visualization // Sustainable energy production // Apple devices // Tesla Motors //

Posted 07 January 2012 - 19:04

Thanks for teaching me something new, I didn't know that. Lends some support to esaruoho's request of being able to navigate to the correct folder when a file is loaded by drag and dropping being maybe possible somewhere down the line.


no matter what you think of my points, they're still points.

| lackluster Website | lackluster on bandcamp | lackluster on facebooklackluster on soundcloud | esaruoho on twitter |

esaruoho@gmail.comesaruoho on reddit | esaruoho on ello | 

| OS X 10.11 El Capitan | Mac Book Pro 2.66 GHz Intel Core 2 Duo / 8GB 1067 MHz DDR3 |

| Latent Impulse Tracker/Scream Tracker 3/Schism Tracker <-> Renoise fanatic |

More API functions, please! ;)

#110 kazakore

kazakore

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6140 posts
  • Gender:Male

Posted 07 January 2012 - 19:07

no matter what you think of my points, they're still points.


And I lend you my support to many of them.

#111 esaruoho

esaruoho

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2532 posts
  • Gender:Male
  • Location:Kontula, Helsinki, Finland
  • Interests:// Free Energy // Cymatics // Sound visualization // Sustainable energy production // Apple devices // Tesla Motors //

Posted 07 January 2012 - 19:12

And I lend you my support to many of them.


this one (being able to refresh disk browser to "current sample" folder, read from song.xml) would mean that Renoise could be a really rather nice replacement for soundforge (at least for some processing and some sample cutting + conversion), for osx. a 50euro tracker + wave editor. i wouldn't mind that, me :) )

hmm, now i forget what else he proposed it could be used for. (ReDread)

| lackluster Website | lackluster on bandcamp | lackluster on facebooklackluster on soundcloud | esaruoho on twitter |

esaruoho@gmail.comesaruoho on reddit | esaruoho on ello | 

| OS X 10.11 El Capitan | Mac Book Pro 2.66 GHz Intel Core 2 Duo / 8GB 1067 MHz DDR3 |

| Latent Impulse Tracker/Scream Tracker 3/Schism Tracker <-> Renoise fanatic |

More API functions, please! ;)

#112 re.dread

re.dread

    Advanced Member

  • Normal Members
  • PipPipPip
  • 97 posts

Posted 07 January 2012 - 19:45

I didn't propose anything yet, but i'm trying to write a sort of drum sampler interface atm which should be able to save and load "kits" song independently and the only thing missing is the sample location. (I tried to read the Song.xml manually today, but having an hard time to do the unzipping).
/off_topic (:

#113 kazakore

kazakore

    Probably More God or Borg Than Human Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6140 posts
  • Gender:Male

Posted 07 January 2012 - 19:50

this one (being able to refresh disk browser to "current sample" folder, read from song.xml) would mean that Renoise could be a really rather nice replacement for soundforge (at least for some processing and some sample cutting + conversion), for osx. a 50euro tracker + wave editor. i wouldn't mind that, me :) )

hmm, now i forget what else he proposed it could be used for. (ReDread)


You'd still need to be able to write to the Disk Op's current location. Or is that already possible? For a private script you might be able to do it writing and recalling on of the view presets as a workaround if it's not?... (Guessing here, not actually looking at the LUA pages.)

#114 joule

joule

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 1488 posts
  • Gender:Not Telling
  • Location:Sweden
  • Interests:music, philosophy, engineering

Posted 30 January 2012 - 14:06

I couldn't find a request on this:

Viewbuilder really lacks a select list element. This is usable in a lot of circumstances where it's much prettier than a dropdown box. It could also optionally support multiple selections by the standard control key method.

Typical usages:
* A standard way of showing and selecting presets in a preference dialogue.
* Best way of showing/selecting search results (e g as a realtime filter from a normal searchbox).
  • Cas likes this

#115 Beatslaughter

Beatslaughter

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2293 posts
  • Gender:Male
  • Location:Berlin, Germany
  • Interests:Music, Blu-ray, PC Games

Posted 04 February 2012 - 12:01

Any reason to not have a os.copy() function in the library? We can move, delete files etc. but a simple copy function is missing.

#116 grymmjack

grymmjack

    Super Advanced Member

  • Normal Members
  • PipPipPipPip
  • 148 posts
  • Gender:Male
  • Location:Detroit
  • Interests:reading, drawing, graphic design, programming, sound design, electronic music, guitar

Posted 09 February 2012 - 03:57

As Samples are stored inside the Song, not separately and pointed to, there is no location information for it to give you like in the above example.


This would be helpful and open up io calls to do all kinds of fun stuff :)
Soundgasm | DesignerMonkey | G+ | Soundcloud | spotify:user:grymmjack

#117 grymmjack

grymmjack

    Super Advanced Member

  • Normal Members
  • PipPipPipPip
  • 148 posts
  • Gender:Male
  • Location:Detroit
  • Interests:reading, drawing, graphic design, programming, sound design, electronic music, guitar

Posted 09 February 2012 - 04:05

I would really like some way to open a web browser in platform agnostic way to a destination URL (file, or otherwise). I can see creating some things that output HTML/CSS/JavaScript dynamically based on the song itself when the tool is run (introspection, etc.)

I know I can do this with exec or alike, but I'm not sure linux/windows/mac, etc. If renoise could wrap that for us and do the heavy lifting on platform juggling to open a browser via protocol handler or whatever association the user has and just allow us to point to a file on disk or a URL that would be very helpful.

long the lines of the web request, it would be very cool to have some kind of web-view in the viewbuilder, where we could embed code into it. In this way we could use all the power of the web within our tools, including interfaces, and so on perhaps.
Soundgasm | DesignerMonkey | G+ | Soundcloud | spotify:user:grymmjack

#118 Cas

Cas

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 1719 posts
  • Gender:Male

Posted 05 April 2012 - 11:11

  • send device mute/keep mode
  • disable a device => autominimize (have to 'observe' whole mixer)
  • lfos custom 'envelope'
  • save a tool's prefs with a song

music: SoundCloud drumkits: WizzKit no. 01 (thread), 02 (thread), 03 (thread), 04
tutorials: Beat Creators, Drum Synthesis examples
tools: download@box, info@blog, fork@git, discuss@forum
___________

BCF2000, LP S, MPK, nPad2, nKtrl2, NI KA6, Vortex, SP-404SX

Renoise, NI Reaktor


#119 Cornbeast

Cornbeast

    Super Advanced Member

  • Normal Members
  • PipPipPipPip
  • 179 posts

Posted 12 April 2012 - 13:41

  • save a tool's prefs with a song

+ 1!

Just like with VSTi:s you want to continue where you were last time when you saved the song

Edited by Cornbeast, 12 April 2012 - 13:41.

  • tris likes this

#120 esaruoho

esaruoho

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 2532 posts
  • Gender:Male
  • Location:Kontula, Helsinki, Finland
  • Interests:// Free Energy // Cymatics // Sound visualization // Sustainable energy production // Apple devices // Tesla Motors //

Posted 13 April 2012 - 23:04

i dont know what to call this, but:
"method of detecting whether renoise is in rewire slave mode or not in rewire mode at all" (= would enable one to set master track to "bus 1/2" mode automatically, during loading old songs during a gig)

| lackluster Website | lackluster on bandcamp | lackluster on facebooklackluster on soundcloud | esaruoho on twitter |

esaruoho@gmail.comesaruoho on reddit | esaruoho on ello | 

| OS X 10.11 El Capitan | Mac Book Pro 2.66 GHz Intel Core 2 Duo / 8GB 1067 MHz DDR3 |

| Latent Impulse Tracker/Scream Tracker 3/Schism Tracker <-> Renoise fanatic |

More API functions, please! ;)

#121 Cas

Cas

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 1719 posts
  • Gender:Male

Posted 14 May 2012 - 23:55

instrument:load_from(filename)

to load from .xrni
real simple, not sure if normally needed, i'm just trying to write a script to export .wav or .flac from my Overtuned stuff (to use in Live Simpler, I just got a free version via soundcloud). I'll look into CreateTool's zip.lua for now.

music: SoundCloud drumkits: WizzKit no. 01 (thread), 02 (thread), 03 (thread), 04
tutorials: Beat Creators, Drum Synthesis examples
tools: download@box, info@blog, fork@git, discuss@forum
___________

BCF2000, LP S, MPK, nPad2, nKtrl2, NI KA6, Vortex, SP-404SX

Renoise, NI Reaktor


#122 Cas

Cas

    Guruh Motha Fakka is Levitating and Knows Everything About Renoise Member

  • Normal Members
  • PipPipPipPipPipPipPipPipPipPipPipPipPip
  • 1719 posts
  • Gender:Male

Posted 23 May 2012 - 11:38

2 other things I could really put to use right away:

renoise.song().device_added_observable
which would give the callback function an immediate pointer to the added device
same for moved (between tracks), swapped, removed, etc

renoise.song().device_activated, renoise.song().device_deactivated
also song-global, so not just a notifier for one device.. again with a pointer to the enabled/disabled device
so one could easily make the so much sought-for "Minimize Device when Deactivated" tool

Edited by Cas, 23 May 2012 - 11:39.

music: SoundCloud drumkits: WizzKit no. 01 (thread), 02 (thread), 03 (thread), 04
tutorials: Beat Creators, Drum Synthesis examples
tools: download@box, info@blog, fork@git, discuss@forum
___________

BCF2000, LP S, MPK, nPad2, nKtrl2, NI KA6, Vortex, SP-404SX

Renoise, NI Reaktor


#123 danoise

danoise

    Probably More God or Borg Than Human Member

  • Renoise Team
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6414 posts
  • Gender:Male
  • Location:Berlin
  • Interests:wildlife + urban trekking

Posted 24 May 2012 - 23:00

Basically, we have two methods for scheduling a pattern using the API:

-- Append the sequence to the scheduled sequence list. Scheduled playback
-- positions will apply as soon as the currently playing pattern play to end.
renoise.song().transport:add_scheduled_sequence(sequence_pos)

-- Replace the scheduled sequence list with the given sequence.
renoise.song().transport:set_scheduled_sequence(sequence_pos)
But, unfortunately there are still important aspects that are missing.
Please correct me if I'm wrong, or some kind of workaround exist :-)

1.It's not possible to clear a schedule once it has been set
I imagine this could be implemented simply by calling set_scheduled_sequence with no argument,
or we could have a dedicated clear_scheduled_sequence method?

2. It's not possible to read or observe the schedule list
This is something that has been a showstopper for me on a number of occasions.
It would be nice if we could at least access/read the list, and act accordingly.
  • Djeroek and Cas like this

Tracking with Stuff. API wishlist | Soundcloud


#124 vV

vV

    God's or Borg's Chief and Ruler of All Species

  • Moderator
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 16855 posts
  • Gender:Male
  • Location:Netherlands

Posted 25 May 2012 - 21:11

*Instr. MIDI Control -> parameter[0] = linked_instrument(_observable)
*Instr. Automation -> parameter[0] = linked_plugin(_observable)
Vv....


cpu Intel Core i7-4820K @3.70GHz
chipset Intel X79 chipset
mem 32 Gb 2400Mhz
os Win 7 64-bit SP1, DirectX 11
audio ESI ESP1010e - > Driver rev:2.0.6.0
video nVidia Geforce GTX780 - > Driver rev:335.23


Renoise Official Manual

#125 danoise

danoise

    Probably More God or Borg Than Human Member

  • Renoise Team
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 6414 posts
  • Gender:Male
  • Location:Berlin
  • Interests:wildlife + urban trekking

Posted 08 June 2012 - 20:34

I am trying to do something seemingly simple here,
Ignore any changes to mute-states in the pattern matrix when tracks are being swapped

But, the thing is that the notifier for tracks is being called after the mute slots notifier!
Not sure that makes sense, so consider it a API request that the calling order is changed:
General principle: if event (foo) can cause a successive event (bar), always put foo before bar

I have found myself come up with a hackaround which works only when tracks are
deleted or inserted: basically, check the number of tracks against a memorized number,
and allow the handler to continue only if the number has changed. However, this will
not work when tracks are swapped, as the number would be the same

Tracking with Stuff. API wishlist | Soundcloud