Newsgroup: it.comp.java
Titolo: javax.sound, qualcuno può aiutarmi?

Innanzi tutto grazie per l'attenzione.
Quello che dovrei fare è inviare ad una interfaccia MIDI (trattasi di 
una ET4 USB regolarmente riconosciuta da Mac OS X) dotata di 4 porte 
MIDI OUT e 2 porte MIDI IN degli eventi MIDI (pitch e velocity). 
Sapresti dirmi quali funzioni dovrei utilizzare? Sto leggendo la 
documentazione sul sito ma non riesco a venirne fuori. Qualunque tipo di 
aiuto è ben accetto...
Grazie mille!

Will ha scritto:

Ti ho risposto di là :-).
Ma è meglio che continuiamo qui, mi sembra più attinente.
Delvy

 Ma è meglio che continuiamo qui, mi sembra più attinente.
Si hai ragione
 > Dando un rapido sguardo all'API ti posso dire che forse è necessario
 > usare MidiDevice che dovrebbe rappresentare un devise midi qualsiasi, 
 > tra i quali una porta midi.
 > Il problema è che l'interfaccia MidiDevice è implementata solo da
 > Synthesizer e Sequencer, ma ma nessuna classe che potrebbe far
 > riferimento alla porta.
 > BIsogna studiarsi tutti i metodi delle clasi per vedere se c'è
 > qualcosa tipo setMidiPort(...).
Esattamente. A dire il vero ci sarebbero "transmitter" e "receiver" che 
ho provato ad utilizzare ma senza risultato.
 > Il problema potrebbe essere quello di far capire a java che tu hai
 > svariate porte midi disponibili.
 > Purtroppo non ho esperienza diretta con javax.sound.midi, quindi non
 > ti posso aiutare più di tanto.
Il vero problema (che mi fa tanto pensare che javax.suond non si del 
tutto adatto al mio scopo) è che dai tanti esempi visti (come quelli 
riportati su questo sito: 
http://www.jsresources.org/
 , sopratutto 
quelli di MIDI Input/Output) java non riesce a vedere la presenza di 
porte MIDI, ma sono di sequencer e synthetizer. In questo codice: 
http://www.jsresources.org/examples/MidiPlayer.html
 che dovrebbe 
riconoscere, tra l'altro, tutte le "periferiche" MIDI presenti non esce 
nulla riguardo alla MIDI interface.
 > Una buona possibità potrebbe essere cercare delle librerie che
 > gestiscano le porte midi.
Infatti...tra l'altro ho scritto una mail alla emagic (che ora fa parte 
di Apple) per chiedere spiegazioni ma sinceramente non mi aspetto gran chè.
Cmq grazie mille per tutte le informazioni che mi hai dato! Sei stato 
gentilissimo!

 gentilissimo!
Di nulla, ad avere il tempo ti avrei aiutato di più.
Anche perchè la cosa mi interessa.
Possiedo una Motu USB con 4 Midi In e 4 Midi Out e non mi dispiacerebbe 
sviluppare qualche cosa di divertente che sfruttasse le potenzialità del 
midi, non solo a livello musicale.
Se scopri qualche cosa mi farebbe piacere condividere la tua esperienza.
Delvy

 Se scopri qualche cosa mi farebbe piacere condividere la tua esperienza.
Certamente! Vediamo se mi rispondono quelli del supporto emagic e ti 
faccio sapere.
Ciao!

 Se scopri qualche cosa mi farebbe piacere condividere la tua esperienza.
Caro Delvy qualcosa ho scoperto. Non so se ti può interessare (non ho 
capito che sistema utilizzi, se Win o Mac OS) ma per Mac OS le api per i 
driver di periferiche audio, tra cui anche la mia interfaccia MT4, sono 
disponibili nel pacchetto CoreAudio 
(
http://developer.apple.com/audio/coreaudio.html
). L'unico problema è 
che tutti gli esempi di CoreAudio che ho trovato sono scritti in C++ o 
in Objective-C, mentre il mio piccolo programma l'avevo fatto in Java e 
questo complica parecchio le cose...
Cmq se ho altri aggiornamenti li posto qui :)

Will ha scritto:

Bhe, si effettivamente sono una serie di driver per comunicare con 
l'hardware Apple, compresi quelli Java:
http://developer.apple.com/documentation/Java/
Quindi si perde in portatilità.
Continuo ad indagare.
Delvy

 Delvy
Potrebbe interessarti questo:
http://java.sun.com/j2se/1.5.0/docs/guide/sound/programmer_guide/contents.html
leggiti il capitolo 9. Soprattutto la sezione che spiega come ottenere 
l'elenco dei Device midi installati.
Delvy

 l'elenco dei Device midi installati.
Ok ci dò subito un'occhiata ;)

 Se scopri qualche cosa mi farebbe piacere condividere la tua esperienza.
Ecco: 
http://www.cems.uwe.ac.uk/~lrlang/plumstone/
Questa libreria permettere di controllare i dispositivi MIDI in java.
;)