Posts Processing proMIDI
Post
Cancel

Processing proMIDI

processingでMIDIデータの送受信を行いたい場合、proMIDIを使う。

proMIDI
http://creativecomputing.cc/p5libs/promidi/

import方法
zipファイルを解凍してprocessingのlibrariesフォルダへ置き、processingメニューのSketchからimport libraryでpromidiを選択する。あるいは、./codeフォルダを作成し解凍したファイルを置く。

input,output機器一覧を表示するサンプル
[java]
import promidi.*;

MidiIO midiIO;

void setup(){
midiIO = MidiIO.getInstance(this);
println(“printPorts of midiIO”);
midiIO.printDevices();
println();

/*

  • Does the same like printDevices by
  • printing the input and output devices
    */
    println(“printDevices recoded 1”);
    midiIO.printInputDevices();
    midiIO.printOutputDevices();
    println(“««««< »»»»»»»»»»>”);
    println();

/*

  • Does the same like printDevices by iterating
  • over the devices and print out their names
    */
    println(“printDevices recoded 2”);
    println(“« inputs: »»»»»»»»»»»”);
    for(int i = 0; i < midiIO.numberOfInputDevices();i++){ println(“input “+nf(i,2)+”: “+midiIO.getInputDeviceName(i)); } println(“« outputs: »»»»»»»»»»>”);
    for(int i = 0; i < midiIO.numberOfOutputDevices();i++){ println(“output “+nf(i,2)+”: “+midiIO.getOutputDeviceName(i)); } println(“««««< »»»»»»»»»»>”);
    }

[/java]

MacにAkaiのLPK25を接続して実行した結果は以下。
[java]
printPorts of midiIO
« inputs: »»»»»»»»»»»»»»»>
input 0 : LPK25
« outputs: »»»»»»»»»»»»»»»>
output 0 : LPK25
output 1 : Java Sound Synthesizer
«»»»»> »»»»»»»»»»»»»»»>

printDevices recoded 1
« inputs: »»»»»»»»»»»»»»»>
input 0 : LPK25
« outputs: »»»»»»»»»»»»»»»>
output 0 : LPK25
output 1 : Java Sound Synthesizer
««««< »»»»»»»»»»>

printDevices recoded 2
« inputs: »»»»»»»»»»»
input 00: LPK25
« outputs: »»»»»»»»»»>
output 00: LPK25
output 01: Java Sound Synthesizer
««««< »»»»»»»»»»>
[/java]