javax.sound.sampled

Interface Mixer

public interface Mixer extends Line

A Mixer is a Line which itself holds multiple lines.

Since: 1.3

Nested Class Summary
static classMixer.Info
An Info object describes a mixer.
Method Summary
LinegetLine(Line.Info info)
Return a Line associated with this Mixer, given its description.
intgetMaxLines(Line.Info info)
Return the number of lines matching this description.
Mixer.InfogetMixerInfo()
Return an Info object describing this Mixer.
Line.Info[]getSourceLineInfo()
Return an array of Info objects describing all the source lines available in this Mixer.
Line.Info[]getSourceLineInfo(Line.Info info)
Return an array of Info objects describing all the source lines available in this Mixer, which match the provided decsription.
Line[]getSourceLines()
Return an array of all the source lines available in this Mixer.
Line.Info[]getTargetLineInfo()
Return an array of Info objects describing all the target lines available in this Mixer.
Line.Info[]getTargetLineInfo(Line.Info info)
Return an array of Info objects describing all the target lines available in this Mixer, which match the provided decsription.
Line[]getTargetLines()
Return an array of all the target lines available in this Mixer.
booleanisLineSupported(Line.Info info)
Return true if a Line matching the given description is supported by this Mixer, false otherwise.
booleanisSynchronizationSupported(Line[] lines, boolean sync)
Return true if this Mixer supports synchronization of the given set of lines.
voidsynchronize(Line[] lines, boolean sync)
Start synchronization on the given set of lines.
voidunsynchronize(Line[] lines)
Stop synchronization for the given set of lines.

Method Detail

getLine

public Line getLine(Line.Info info)
Return a Line associated with this Mixer, given its description.

Parameters: info the description of the line to find

Returns: the corresponding Line

Throws: LineUnavailableException if no Line matching the description exists in this Mixer

getMaxLines

public int getMaxLines(Line.Info info)
Return the number of lines matching this description.

Parameters: info the description of the lines to find.

getMixerInfo

public Mixer.Info getMixerInfo()
Return an Info object describing this Mixer.

getSourceLineInfo

public Line.Info[] getSourceLineInfo()
Return an array of Info objects describing all the source lines available in this Mixer.

getSourceLineInfo

public Line.Info[] getSourceLineInfo(Line.Info info)
Return an array of Info objects describing all the source lines available in this Mixer, which match the provided decsription.

Parameters: info the description of the source lines to find

getSourceLines

public Line[] getSourceLines()
Return an array of all the source lines available in this Mixer.

getTargetLineInfo

public Line.Info[] getTargetLineInfo()
Return an array of Info objects describing all the target lines available in this Mixer.

getTargetLineInfo

public Line.Info[] getTargetLineInfo(Line.Info info)
Return an array of Info objects describing all the target lines available in this Mixer, which match the provided decsription.

Parameters: info the description of the target lines to find

getTargetLines

public Line[] getTargetLines()
Return an array of all the target lines available in this Mixer.

isLineSupported

public boolean isLineSupported(Line.Info info)
Return true if a Line matching the given description is supported by this Mixer, false otherwise.

Parameters: info the description of the line to find

isSynchronizationSupported

public boolean isSynchronizationSupported(Line[] lines, boolean sync)
Return true if this Mixer supports synchronization of the given set of lines.

Parameters: lines the lines to check sync true if the synchronization must be accurate at all times

synchronize

public void synchronize(Line[] lines, boolean sync)
Start synchronization on the given set of lines.

Parameters: lines the lines to synchronize, or null for all the lines sync true if the synchronization must be accurate at all times

Throws: IllegalArgumentException if the lines cannot be synchronized

unsynchronize

public void unsynchronize(Line[] lines)
Stop synchronization for the given set of lines.

Parameters: lines the lines to unsynchronize, or null for all the lines