New Tool (3.0): Midi Convert


(MiDinkiDi) #101

PS: As for the MIDI export options, one highly useful option in the MIDI export settings would be to merge all data assigned to MIDI channel 10 ( = GM drums) on to a single track of the exported MIDI file. “Merge all channel 10 data on a single track”? Or something like that …

As for Renoise itself, I’d also like to see a bit more coherent approach to things in the sampler MIDI out section, such as MIDI panning, MIDI out gain, modwheel. The gain structure is also something that could be of consideration. zTracker servers as a pretty good example here, imho … And of course GM chorus & reverb (really basic CC stuff under General MIDI standards …).


(EatMe) #102

:clownstep:/>

Midi Convert Tool

This tool will put “MIDI Export…” in the “Tools” menu.

Trotch on.

This is a very handy tool.
I would like to have an option to change the instruments programs (sounds) in the exported MIDI file .mid

Is it possible for you to maybe make the tool

1=have a look at instruments (e.g. set it to general midi program number from instrument)

or

2=ask for a GM program number per written instrument in the exported MIDI file

because I still want to set the instruments sound (GM program) in the midi file.

Thank you Conner.


(Conner_Bw) #103

Unfortunately, I’m not motivated to maintain this tool anymore.

Pull requests welcome.


(EatMe) #104

Unfortunately, I’m not motivated to maintain this tool anymore.

Pull requests welcome.

That’s a pity… Thank you however for all the work done so far. Please win the lottery so you can have valid snacks to get motivated.


(danoise) #105

A small update has arrived:

https://www.renoise.com/tools/midi-convert

0.95
- Adds support for MIDI-CC Commands

This works for the MIDI CC pattern command, so any M0 xxyy style commands are now exported too.

As usual: if you should encounter an issue, this is the place for reporting it.

Thanks goes to reaby (who did the coding)


(Laffik) #106

Great tool. Useful for moving tunes between DAWs. Thanks for making it. :slight_smile:


(clairobscur) #107

Hello,

I am having errors trying to export a track. After enabling scripting as told in message #60, I get the following message:

*** .\export.lua:246: attempt to index field ‘?’ (a nil value)
*** stack traceback:
*** .\export.lua:246: in function ‘export_build_data’
*** .\export.lua:590: in function ‘export_build’
*** .\export.lua:582: in function ‘export_procedure’
*** main.lua:48: in function main.lua:46

I am using Renoise 3.1 and MIDI Export 0.95. It’s the first time I encounter a problem. Deleting a certain number of (random) tracks allows the export.

Thanks for your help !


(danoise) #108

I am having errors trying to export a track.

Hi, I guess there’s something specific in the song that makes this happen.

Since I’m the one maintaining this tool - could I somehow get to take a look at the song (.xrns)? Better than trying to guess what the problem might be.

You can send me a PM if you don’t feel like sharing it with everyone. Also, you can choose Edit > Delete All Instruments to make it smaller / even more secret :ph34r:


(clairobscur) #109

PM sent, thanks!


(danoise) #110

A new version has arrived. Download it from the tool page.

Thanks to @clairobscur for sharing his project with me. It would have been much harder to fix this issue without it.

What’s new in v0.96

- Proper support for Renoise LPB commands 
- Allow MIDI-CC Commands without accompanying note
- Allow notes spanning multiple patterns

The MidiConvert tool has now got ‘proper’ LPB support - which, while only tested with a few different files, seems to do the job.

Previously, changing the LPB during a song could wreak havoc on the exported MIDI - the implementation was basically flawed.

Also, the tool should now be a bit more friendly towards ‘standalone’ MIDI CC commands (without an accompanying note), and pattern-spanning notes.

Enjoy!


com.Renoise.MidiConvert with pitchbend and LPB support
(clairobscur) #111

A new version has arrived. Download it from the tool page.

Thanks to @clairobscur for sharing his project with me. It would have been much harder to fix this issue without it.

Yay ! :slight_smile: I am very grateful to danoise for fixing the issues ! Thanks a lot !

As he suggested, I am posting my request for an extra feature : it would be very useful to be able to export just one track (or a selection of tracks) to MID. Maybe with an option in the Track context menu ?


(danoise) #112

It would be very useful to be able to export just one track (or a selection of tracks) to MID.

Agreed - it really wouldn’t be hard to add additional “scopes”.

While testing the tool I also missed the ability to make a selection in the pattern sequence and export only that part.


#113

Hey guys (and girls), I tried this tool wich seems very useful but doesn’t work here.

When I start to convert I have this message:

‘C:\Users-------\AppData\Roaming\Renoise\V3.1.1\Scripts\Tools\com.renoise.MidiConvert.xrnx\main.lua’ failed in one of its notifiers.
The notifier will be disabled to prevent further errors.

Please contact the author (Dac Chartrand, Marvin Tjon, Bjorn Nesby, reaby) for assistance…

Unknown Lua interpreter error occurred!

I use the latest version tho.


#114

I think exeq if you maybe post a link to the xrns you are trying to export to midi (and any other special instructions) would be helpful for people to try to recreate the error?


#115

Thanks for your reply 4tey.
I tried to export many CC within the song, wich obvioulsy was the data that brought the error message. It was the first time I used this tools so I just didn’t think about it but after trying to export just few notes, it worked well.

The types of data were some hardware controlling midi data, so with this kind of structure:

M0 F8 51 39

M0 C7 48 52

If you are interested I can share the xrns files but my issue is resovled.


#116

Smashing, but if you could drop a link to the xrns (not necessarily for me btw.) The reason I think it maybe important is because of the error that you got:

Unknown Lua interpreter error occurred!

That is probably a slightly deeper internal lua error, so possibly @danoise (Bjorn) or anyone else writing tools would maybe be interested for reference and debugging purposes. That is all I was thinking :slight_smile:

The other thing probably worth mentioning is if you have any other tools installed, and what those tools are.


(ffx) #117

FYI, I added some stuff for the export part, it should add the following:

  • correct lpb
  • midi pitchbend support
  • sequence slot mute support
  • sequence slot mute -> note off support

Somehow my text editor messed up indenting…


(ffx) #118

Hi,

since Bitwig still not yet supports midi pitchbend import :badteeth:, the below export.lua version now also writes the midi pitchbend to midi cc #20, so you can then copy-paste it to a newly created midi pitchbend automation lane within Bitwig. Keep in mind that Bitwig interpolates (draws lines in between) the pitchbend automation points, while Renoise doesn’t interpolate pitchbend written to the pattern.

If I would repeat the last pitchbend value before a new one while the automation creation, you would get a similar if not worse (not really wanted) stepping midi pitchbend as in Renoise. In other words, you still need to correct the pitchbend automation by hand afterwards, flattening out all unwanted interpolation. If you have a better idea how to handle this, please let me know :slight_smile:

export.lua.zip

Btw. I cannot attach zip files here…


(ffx) #119

Here is a new version of export.lua. All new features:

  • midi control device automation support -> MIDI CC 21 - 31 (max. 10 parameters)
  • instr. automation device support -> MIDI CC 103 - 113 (max. 10 parameters)
  • pattern midi pitchbend
  • pattern midi pitchbend -> MIDI CC 20 (for DAWs not supporting pitchbend import…)
  • pattern channel aftertouch -> MIDI CC 102
  • sequence slot mute support
  • sequence slot mute -> note off support
  • corrected LPB

You can copy the automation from the imported MIDI CC lane to the correct VSTi’s automation lane then. Try to end all notes with note-off somewhere at least. You also can use a following muted slot.

Keep in mind the following limitations:

  • Only use one instrument per track, if you use midi control / instr. automation devices
  • Always use only one midi control device and one instr. automation device per instrument
  • Put the devices always onto the track where the instrument plays
  • Max. 10 automated parameters in automation devices, position doesn’t matter

export-midi-automation.lua.zip


(danoise) #120

Is probably just a question of the tool running as a separate process (coroutine). This prevents the tool from timing out and showing those annoying dialog boxes, but has the side effect of not providing much information when something goes wrong.

The main.lua can easily be modified. Change this line

COROUTINE_MODE = true

into this:

COROUTINE_MODE = false

Save and restart.