Renoise api questions

please explain where does Helpers:readFile come from?
and Helpers:stringToBase64

What’s the default Windows zip file path? I guess there also is “zip” installed???

If you don’t want to rely on any extra binaries, then you can use the tar command from Windows 10 onwards, there is also other ways but require Powershell to be installed and could fail if not available. Tar works from everywhere, no need for a path. Tar works for Zip too.

1 Like

Aaah nice, thx

Is there a good example for Song.pattern_iterator:note_columns_in_song(true) ?

I don’t get how I should iterate then over all notes of all tracks and patterns…

Here is a small example:

local rs = renoise.song()
-- true indicates only visible columns will be parsed
local iterator = rs.pattern_iterator:note_columns_in_song(true) 
    
for col, pos in iterator do
 -- position in the song
 print("Pattern: " .. col.pattern .. " Track: " .. col.track .. " Line: " .. col.line .. " Column: " .. col.column)
 -- do something with the values
 print(pos.note_string .. " " .. pos.instrument_string)
end

“pos” contains all the values listed here: NoteColumn - Renoise Scripting

1 Like

For everything else read the scripting guide:

https://renoise.github.io/xrnx/guide/index.html

And let us know if something is missing there or needs an update.

1 Like

Well, tar does not seem to able to create actual PK/zip archives though. But that’s what I need.

Really annoying to have to rely on system installed zippy tools. Windows sucks, not providing the standard zip tool as default…

Any idea which compressor tool is installed per default under Windows and can create zip/PK archives?

Any chance to actually integrate the Renoise internal zippy, making it available for lua?

1 Like

Ah thx, -acvf seems to work. That’s nice, so I can use the same command on each of the three OSes.

What’s the play volume/velocity value if it is completely missing? Is it then 127? Is there a default velocity per instrument?

It’s always 127.

1 Like

Export partly works, some bugs still, but I can now load the dawproject into S1, and Redux is playing the Renoise instruments :slight_smile:

But my abstraction generator uses the Song.pattern_iterator:note_columns_in_song(true) function… Does it only iterate over the used patterns, but not the sequence? Is there an iterator which actually iterates over the song sequence?

Mh, so I guess you can’t use that iterator, if you also want to take into account the actual sequenced notes. You would have to save the result per pattern, and then … omg

But it does iterate over the song sequence (used patterns). This can easily be checked with

for pos, obj in renoise.song().pattern_iterator:note_columns_in_song(true) do
  rprint(pos)
end

on a one-track song with a “pattern-hole” in the sequence.

The output is:

[…]
[column] => 1
[line] => 62
[pattern] => 1
[track] => 1
[column] => 1
[line] => 63
[pattern] => 1
[track] => 1
[column] => 1
[line] => 64
[pattern] => 1
[track] => 1
[column] => 1
[line] => 1
[pattern] => 4 <---- switching to correct pattern, e g according to sequencer
[track] => 1
[column] => 1
[line] => 2
[pattern] => 4
[track] => 1

[…]

Hm, then I seem to implemented something wrong. Here is an export:
amiga-crystalhammer.dawproject.pdf (182.2 KB)
REMOVE “.PDF” after downloading.

Loads into Studio One 7.21, but not the VST2 and not the AudioUnit on the master track. However VST3s and Redux load fine :slight_smile:

In Bitwig, no plugin at all loads. I guess Bitwig is buggy?

Also can’t find the problem for AU and VST2 load fails…

Here is the original XRNS:
crystalhammer test.xrns (64.5 KB)

Note abstraction layer:

That seems somewhat unlikely given that Bitwig created DAWproject.

I am afraid that I need to read out the original VST2 plugin identifier, which Renoise displays here as “Unique ID”:

Is there a way to access this id via the lua api?

It seems to be not available in the active_preset_data (under PluginIdentifier)…

That’s an interesting question. Renoise seems to always identify VST2 plugins by name, even in the database.

1 Like