The ability to render from the command line

Apologies if this is possible already, I couldn’t find anything.

Ideally there would be command line parameters for all options in the render dialog, an option to dismiss any popups regarding missing/buggy VST, a super low priority option, and the option to run one or several LUA scripts/tools before the rendering happens.

Personally, I would mostly use it for a script that watches a folder and automatically renders any xrns that get saved, or just something I can run manually that renders any .xrns files that are newer than the respective rendered .wav, but maybe it could also be interesting to create .xrns files programmatically and then render those?

1 Like

more power to the people !! +1

1 Like

Bumping this up. Looking around there doesn’t seem to be an easy way render in batch via a CLI. It would be nice to be able to batch over working songs to have auto-render out so that it’s easier to simply play something on a device or such that doesn’t support XNRS;

For instance, I keep a big list of working songs on Dropbox - when I’m not at my workstation but wanting to review what I’m working on a mobile device (or platform without XNRS playback ability). I have to be sure to render out a .wav -> convert to .mp3 (to save space on Dropbox); It becomes too much of an involved effort every time & would help workflow.

Something like renoise.exe filename.xnrs --type=mp3|wav even if MP3 output wasn’t an option works as can always use ffmpeg for that.

I think you could write a LUA tool running inside Renoise (GUI), which would load/render songs one by one within a directory recursively. Also there is such a tool:

https://www.renoise.com/tools/batch-render

1 Like

Using tools within Renoise is one thing, using renoise is a CLI tool yet another.

The best (i.e. the most complicated and fun to program) way to do something similar with a tool would probably involve running a Renoise instance as some kind of “server” ( https://github.com/renoise/xrnx/blob/master/Documentation/Renoise.Socket.API.lua ) that listens for commands via GET/POST requests and batches them (since it can’t render two songs at the same time). It would render those to files, and maybe allow requesting those via GET, too.

But what if there is a popup because of a missing plugin etc.? Can tools handle that?

Renoise only runs with the GUI AFAIK. I don’t think Taktik will change this, because you can batch render using a tool. But who knows.

Well, the tool is 9 years old, we could update it or make one. But I agree that as a core Renoise feature there’s just way too little interest in it to justify it.

But a way to load a Renoise song from LUA while suppressing (or just “clicking OK on”) any and all errors, that still would be sweet for something like this. I mean, no fun making a batch tool if you can’t throw hundreds of things at it without knowing for sure if it will run all the way through or not, right?

Maybe the tool still works, the API did not change that much. Did you try the auto update?

Well personally I want to do it from the File manager anyway, so I haven’t tried it. I’m totally willing to try something small that listens on a port and kicks off rendering that way, though. Just don’t know when :stuck_out_tongue:

Well then, bad luck for you.