Domanda

Sto creando una semplice applicazione MIDI in C # con una href="http://code.google.com/p/midi-dot-net/" libreria fonte aperto che permette all'utente di specificare un canale, il passo e la velocità e aggiungerli ad un orologio. Questo orologio può quindi riprodurre tutte le note nella sequenza che sono stati aggiunti.

Tutto funziona alla grande e ora sono nel processo di creazione di una versione di Java dell'applicazione, l'unico problema che sembra essere avendo è che non riesco a trovare qualche tutorial semplice o spiegazione di come il sistema di orologio funziona entro MIDI Java.

Fa exist Orologio in Java solido quadro o si tratta di qualcosa che dovrà attuare me stesso?

Grazie!

È stato utile?

Soluzione

E 'passato molto tempo da quando ho toccato la roba Java Mezzogiorno, ma in generale, per la costruzione di programmazione MIDI, è necessario effettuare le seguenti operazioni.

import javax.sound.midi; Assumendo:

  1. È necessario creare un oggetto Sequencer:

    Sequence seq = new Sequence(Squence.PPQ, 500000);
    
  2. Successivamente, è necessario creare un oggetto Track (uno per canale o uno per tutto, tocca a voi):

    Track track = seq.createTrack();
    
  3. Ora, è possibile aggiungere gli eventi ad esso:

    track.add(new MidiEvent(new ShortMessage(ShortMessage.NOTE_ON, 0, 60, 127), 0));
    track.add(new MidiEvent(new ShortMessage(ShortMessage.NOTE_OFF, 0, 60, 127), 1000));
    //etc.
    
  4. Una volta terminato questo, si può quindi riprodurre il Sequence come normale!

Controlla la documentazione qui: http://download.oracle.com/javase/7/docs/api/index.html?javax/sound/midi/MidiSystem.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top