com.sun.media.sound
Class SoftMixingMixer

java.lang.Object
  extended by com.sun.media.sound.SoftMixingMixer
All Implemented Interfaces:
javax.sound.sampled.Line, javax.sound.sampled.Mixer

public class SoftMixingMixer
extends java.lang.Object
implements javax.sound.sampled.Mixer

Software audio mixer

Author:
Karl Helgason

Constructor Summary
SoftMixingMixer()
           
 
Method Summary
 void addLineListener(javax.sound.sampled.LineListener listener)
           
 void close()
           
 javax.sound.sampled.Control getControl(javax.sound.sampled.Control.Type control)
           
 javax.sound.sampled.Control[] getControls()
           
 javax.sound.sampled.AudioFormat getFormat()
           
 long getLatency()
           
 javax.sound.sampled.Line getLine(javax.sound.sampled.Line.Info info)
           
 javax.sound.sampled.Line.Info getLineInfo()
           
 int getMaxLines(javax.sound.sampled.Line.Info info)
           
 javax.sound.sampled.Mixer.Info getMixerInfo()
           
 javax.sound.sampled.Line.Info[] getSourceLineInfo()
           
 javax.sound.sampled.Line.Info[] getSourceLineInfo(javax.sound.sampled.Line.Info info)
           
 javax.sound.sampled.Line[] getSourceLines()
           
 javax.sound.sampled.Line.Info[] getTargetLineInfo()
           
 javax.sound.sampled.Line.Info[] getTargetLineInfo(javax.sound.sampled.Line.Info info)
           
 javax.sound.sampled.Line[] getTargetLines()
           
 boolean isControlSupported(javax.sound.sampled.Control.Type control)
           
 boolean isLineSupported(javax.sound.sampled.Line.Info info)
           
 boolean isOpen()
           
 boolean isSynchronizationSupported(javax.sound.sampled.Line[] lines, boolean maintainSync)
           
 void open()
           
 void open(javax.sound.sampled.SourceDataLine line)
           
 javax.sound.sampled.AudioInputStream openStream(javax.sound.sampled.AudioFormat targetFormat)
           
 void removeLineListener(javax.sound.sampled.LineListener listener)
           
 void synchronize(javax.sound.sampled.Line[] lines, boolean maintainSync)
           
 void unsynchronize(javax.sound.sampled.Line[] lines)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SoftMixingMixer

public SoftMixingMixer()
Method Detail

getLine

public javax.sound.sampled.Line getLine(javax.sound.sampled.Line.Info info)
                                 throws javax.sound.sampled.LineUnavailableException
Specified by:
getLine in interface javax.sound.sampled.Mixer
Throws:
javax.sound.sampled.LineUnavailableException

getMaxLines

public int getMaxLines(javax.sound.sampled.Line.Info info)
Specified by:
getMaxLines in interface javax.sound.sampled.Mixer

getMixerInfo

public javax.sound.sampled.Mixer.Info getMixerInfo()
Specified by:
getMixerInfo in interface javax.sound.sampled.Mixer

getSourceLineInfo

public javax.sound.sampled.Line.Info[] getSourceLineInfo()
Specified by:
getSourceLineInfo in interface javax.sound.sampled.Mixer

getSourceLineInfo

public javax.sound.sampled.Line.Info[] getSourceLineInfo(javax.sound.sampled.Line.Info info)
Specified by:
getSourceLineInfo in interface javax.sound.sampled.Mixer

getSourceLines

public javax.sound.sampled.Line[] getSourceLines()
Specified by:
getSourceLines in interface javax.sound.sampled.Mixer

getTargetLineInfo

public javax.sound.sampled.Line.Info[] getTargetLineInfo()
Specified by:
getTargetLineInfo in interface javax.sound.sampled.Mixer

getTargetLineInfo

public javax.sound.sampled.Line.Info[] getTargetLineInfo(javax.sound.sampled.Line.Info info)
Specified by:
getTargetLineInfo in interface javax.sound.sampled.Mixer

getTargetLines

public javax.sound.sampled.Line[] getTargetLines()
Specified by:
getTargetLines in interface javax.sound.sampled.Mixer

isLineSupported

public boolean isLineSupported(javax.sound.sampled.Line.Info info)
Specified by:
isLineSupported in interface javax.sound.sampled.Mixer

isSynchronizationSupported

public boolean isSynchronizationSupported(javax.sound.sampled.Line[] lines,
                                          boolean maintainSync)
Specified by:
isSynchronizationSupported in interface javax.sound.sampled.Mixer

synchronize

public void synchronize(javax.sound.sampled.Line[] lines,
                        boolean maintainSync)
Specified by:
synchronize in interface javax.sound.sampled.Mixer

unsynchronize

public void unsynchronize(javax.sound.sampled.Line[] lines)
Specified by:
unsynchronize in interface javax.sound.sampled.Mixer

addLineListener

public void addLineListener(javax.sound.sampled.LineListener listener)
Specified by:
addLineListener in interface javax.sound.sampled.Line

close

public void close()
Specified by:
close in interface javax.sound.sampled.Line

getControl

public javax.sound.sampled.Control getControl(javax.sound.sampled.Control.Type control)
Specified by:
getControl in interface javax.sound.sampled.Line

getControls

public javax.sound.sampled.Control[] getControls()
Specified by:
getControls in interface javax.sound.sampled.Line

getLineInfo

public javax.sound.sampled.Line.Info getLineInfo()
Specified by:
getLineInfo in interface javax.sound.sampled.Line

isControlSupported

public boolean isControlSupported(javax.sound.sampled.Control.Type control)
Specified by:
isControlSupported in interface javax.sound.sampled.Line

isOpen

public boolean isOpen()
Specified by:
isOpen in interface javax.sound.sampled.Line

open

public void open()
          throws javax.sound.sampled.LineUnavailableException
Specified by:
open in interface javax.sound.sampled.Line
Throws:
javax.sound.sampled.LineUnavailableException

open

public void open(javax.sound.sampled.SourceDataLine line)
          throws javax.sound.sampled.LineUnavailableException
Throws:
javax.sound.sampled.LineUnavailableException

openStream

public javax.sound.sampled.AudioInputStream openStream(javax.sound.sampled.AudioFormat targetFormat)
                                                throws javax.sound.sampled.LineUnavailableException
Throws:
javax.sound.sampled.LineUnavailableException

removeLineListener

public void removeLineListener(javax.sound.sampled.LineListener listener)
Specified by:
removeLineListener in interface javax.sound.sampled.Line

getLatency

public long getLatency()

getFormat

public javax.sound.sampled.AudioFormat getFormat()