com.frinika.sequencer.gui.mixer
Class SynthWrapper
java.lang.Object
com.frinika.sequencer.gui.mixer.SynthWrapper
- All Implemented Interfaces:
- MidiRenderFactory, MidiDeviceIconProvider, javax.sound.midi.MidiDevice, javax.sound.midi.Synthesizer
public class SynthWrapper
- extends java.lang.Object
- implements javax.sound.midi.Synthesizer, MidiRenderFactory, MidiDeviceIconProvider
Synthesizer wrapper for external midi out devices. Used to intercept midi messages
and update the mixer gui (mixer sliders etc.)
- Author:
- Peter Johan Salomonsen
| Nested classes/interfaces inherited from interface javax.sound.midi.MidiDevice |
javax.sound.midi.MidiDevice.Info |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
soundBankFile
public java.lang.String soundBankFile
SynthWrapper
public SynthWrapper(ProjectContainer project,
javax.sound.midi.MidiDevice midiDevice)
- Parameters:
project - - Only neccesary if the device is a synthesizer implementing the mixer interface (NOT USED? --PJL)midiDevice -
- Throws:
javax.sound.midi.MidiUnavailableException
getAudioProcess
public uk.org.toot.audio.core.AudioProcess getAudioProcess()
- You can use this grab the output from the synth.
- Returns:
- the audio process of this synth voice.
getReceiver
public javax.sound.midi.Receiver getReceiver()
throws javax.sound.midi.MidiUnavailableException
- Specified by:
getReceiver in interface javax.sound.midi.MidiDevice
- Throws:
javax.sound.midi.MidiUnavailableException
getReceivers
public java.util.List<javax.sound.midi.Receiver> getReceivers()
- Specified by:
getReceivers in interface javax.sound.midi.MidiDevice
getTransmitter
public javax.sound.midi.Transmitter getTransmitter()
throws javax.sound.midi.MidiUnavailableException
- Specified by:
getTransmitter in interface javax.sound.midi.MidiDevice
- Throws:
javax.sound.midi.MidiUnavailableException
getTransmitters
public java.util.List<javax.sound.midi.Transmitter> getTransmitters()
- Specified by:
getTransmitters in interface javax.sound.midi.MidiDevice
getDeviceInfo
public javax.sound.midi.MidiDevice.Info getDeviceInfo()
- Specified by:
getDeviceInfo in interface javax.sound.midi.MidiDevice
open
public void open()
throws javax.sound.midi.MidiUnavailableException
- Specified by:
open in interface javax.sound.midi.MidiDevice
- Throws:
javax.sound.midi.MidiUnavailableException
close
public void close()
- Specified by:
close in interface javax.sound.midi.MidiDevice
isOpen
public boolean isOpen()
- Specified by:
isOpen in interface javax.sound.midi.MidiDevice
getMicrosecondPosition
public long getMicrosecondPosition()
- Specified by:
getMicrosecondPosition in interface javax.sound.midi.MidiDevice
getMaxReceivers
public int getMaxReceivers()
- Specified by:
getMaxReceivers in interface javax.sound.midi.MidiDevice
getMaxTransmitters
public int getMaxTransmitters()
- Specified by:
getMaxTransmitters in interface javax.sound.midi.MidiDevice
getMaxPolyphony
public int getMaxPolyphony()
- Specified by:
getMaxPolyphony in interface javax.sound.midi.Synthesizer
getLatency
public long getLatency()
- Specified by:
getLatency in interface javax.sound.midi.Synthesizer
getChannels
public javax.sound.midi.MidiChannel[] getChannels()
- Specified by:
getChannels in interface javax.sound.midi.Synthesizer
getVoiceStatus
public javax.sound.midi.VoiceStatus[] getVoiceStatus()
- Specified by:
getVoiceStatus in interface javax.sound.midi.Synthesizer
isSoundbankSupported
public boolean isSoundbankSupported(javax.sound.midi.Soundbank soundbank)
- Specified by:
isSoundbankSupported in interface javax.sound.midi.Synthesizer
loadInstrument
public boolean loadInstrument(javax.sound.midi.Instrument instrument)
- Specified by:
loadInstrument in interface javax.sound.midi.Synthesizer
unloadInstrument
public void unloadInstrument(javax.sound.midi.Instrument instrument)
- Specified by:
unloadInstrument in interface javax.sound.midi.Synthesizer
remapInstrument
public boolean remapInstrument(javax.sound.midi.Instrument from,
javax.sound.midi.Instrument to)
- Specified by:
remapInstrument in interface javax.sound.midi.Synthesizer
getDefaultSoundbank
public javax.sound.midi.Soundbank getDefaultSoundbank()
- Specified by:
getDefaultSoundbank in interface javax.sound.midi.Synthesizer
getAvailableInstruments
public javax.sound.midi.Instrument[] getAvailableInstruments()
- Specified by:
getAvailableInstruments in interface javax.sound.midi.Synthesizer
getLoadedInstruments
public javax.sound.midi.Instrument[] getLoadedInstruments()
- Specified by:
getLoadedInstruments in interface javax.sound.midi.Synthesizer
loadAllInstruments
public boolean loadAllInstruments(javax.sound.midi.Soundbank soundbank)
- Specified by:
loadAllInstruments in interface javax.sound.midi.Synthesizer
unloadAllInstruments
public void unloadAllInstruments(javax.sound.midi.Soundbank soundbank)
- Specified by:
unloadAllInstruments in interface javax.sound.midi.Synthesizer
loadInstruments
public boolean loadInstruments(javax.sound.midi.Soundbank soundbank,
javax.sound.midi.Patch[] patchList)
- Specified by:
loadInstruments in interface javax.sound.midi.Synthesizer
unloadInstruments
public void unloadInstruments(javax.sound.midi.Soundbank soundbank,
javax.sound.midi.Patch[] patchList)
- Specified by:
unloadInstruments in interface javax.sound.midi.Synthesizer
toString
public java.lang.String toString()
- Override toString to provide easy construction of GUI selectors.
- Overrides:
toString in class java.lang.Object
getRealDevice
public javax.sound.midi.MidiDevice getRealDevice()
- Returns the midiDevice that this synthwrapper is wrapping
- Returns:
setSaveReferencedData
public void setSaveReferencedData(boolean saveReferencedData)
isRenderable
public boolean isRenderable()
setRenderAudioProcess
public void setRenderAudioProcess(uk.org.toot.audio.core.AudioProcess audioprocess)
setSupressAudio
public void setSupressAudio(boolean supress_audio)
getRender
public MidiRender getRender(float samplerate,
int channels)
- Specified by:
getRender in interface MidiRenderFactory
getIcon
public javax.swing.Icon getIcon()
- Specified by:
getIcon in interface MidiDeviceIconProvider
getSoundbank
public javax.sound.midi.Soundbank getSoundbank(java.io.File file)
throws javax.sound.midi.InvalidMidiDataException,
java.io.IOException
- Throws:
javax.sound.midi.InvalidMidiDataException
java.io.IOException