MIDI-OX User Forum (http://www.midiox.com/cgi-bin/yabb/YaBB.pl)
MIDI-OX >> Scripting Questions >> Scripting for multisampling hardware purpose..
(Message started by: grymmjack on Apr 19th, 2006, 2:18pm)

Title: Scripting for multisampling hardware purpose..
Post by grymmjack on Apr 19th, 2006, 2:18pm
I have a Roland XP-60. I'm interested in trying to create a script using MIDIOx to extract the samples from it. Here's how it should work:

* MIDIOx is setup to communicate successfully already with the XP-60.

I need to automate this:

(begin psuedocode):

Code:
velocities = array(32,64,96,127);

for (program_num=0; program_num<127; program_num++)
{
     midiox.program_change(program_num);
     for(octave=1; octave<7; octave++)
     {
           for(note=1; note<12; note++)
           {
                 midiox.set.note_duration(1000);
                 for(velocity=1; velocity<4; velocity++)
                 {
                       midiox.set.velocity(velocities[velocity]);
                       midiox.noteon(octave*note);
                       midiox.noteoff();
                 }
           }
     }
}


(end pseudocode)

Is this something doable by midiox? I have tried synthcatcher by arcdev noise industries, and it works, but it only does 1 octave at a time and only 1 velocity at a time and requires manual changes each go around. I'd prefer to use MIDIox to automate the communication with the XP-60 and just hit record in Tracktion recording the output.

Anyone know? Thanks!

Title: Re: Scripting for multisampling hardware purpose..
Post by grymmjack on Apr 19th, 2006, 4:53pm
It's done.

MIDIOx and VB2005 are my heroes:

http://www.funklabs.org/share/sampledumper.gif

Download it here:
http://www.funklabs.org/share/sampledumper.zip

Need .NET framework and MIDI Ox. :)

Title: Re: Scripting for multisampling hardware purpose..
Post by Jamie OConnell on Apr 20th, 2006, 10:43am
Looks pretty cool!  Nice job.

Title: Re: Scripting for multisampling hardware purpose..
Post by grymmjack on Apr 20th, 2006, 11:22am

on 04/20/06 at 10:43:47, Jamie OConnell wrote:
Looks pretty cool!  Nice job.


Thanks! Only thing I need to figure out is how to safely destroy the MIDIOx instance and detach from it. As it stands now, I can't interrupt it once it's started and the only way to stop it is to close MIDIOx of course the program throws an exception at that point ;)

I hacked this together using VB and have no formal VB training besides tinkering.

I would be glad to provide the sourcecode and let you improve it if you wanted to ;)

I tried to look at the ArpOx example to figure out how to safely detach/destroy but it's a bit over my head.



MIDI-OX User Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.