所有类


javax.sound.sampled
接口 Mixer

所有超级接口:
Line

public interface Mixer
   
   
   
   
   
extends Line

混频器是一个具有一行或多行的音频设备。不需要将它设计用于混合音频信号。实际混合音频的混频器具有多个输入(源)行和至少一个输出(目标)行。前者常常是实现 SourceDataLine 的类的实例,后者是实现 TargetDataLine 的类的实例。Port 对象不是源行就是目标行。通过将其某些源行作为实现 Clip 接口的对象的实例,混频器可以接受事先录制的环绕声音作为输入。

通过 Line 接口(该接口由 Mixer 扩展)的方法,混频器可以提供对该混频器而言全局可用的控件集。例如,该混频器可以有一个主音量控件。这些全局控件与属于该混频器的每个单行的控件明显不同。

有些混频器(特别是那些具有内部数字混音功能的混频器)可能通过实现 DataLine 接口提供其他功能。

混频器可以支持其行的同步。当启动或停止同步组中的一行时,该组中的其他行自动与明显受影响的行同时启动或停止。

从以下版本开始:
1.3

嵌套类摘要
static class Mixer.Info
          Mixer.Info 类表示关于音频混频器的信息,包括产品的名称、版本和供应商,以及文本描述。
 
方法摘要
 Line getLine(Line.Info info)
          获得可供使用并且与指定 Line.Info 对象中的描述匹配的行。
 int getMaxLines(Line.Info info)
          获得可以在此混频器上同时打开的所请求类型的行的最大近似数。
 Mixer.Info getMixerInfo()
          获得关于此混频器的信息,包括产品名称、版本、供应商,等等。
 Line.Info[] getSourceLineInfo()
          获得关于此混频器支持的源行集合的信息。
 Line.Info[] getSourceLineInfo(Line.Info info)
          获得关于此混频器支持的特定类型源行的信息。
 Line[] getSourceLines()
          获得当前对此混频器打开的所有源行的集合。
 Line.Info[] getTargetLineInfo()
          获得关于此混频器支持的目标行集合的信息。
 Line.Info[] getTargetLineInfo(Line.Info info)
          获得关于此混频器支持的特定类型目标行的信息。
 Line[] getTargetLines()
          获得当前从此混频器打开的所有目标行的集合。
 boolean isLineSupported(Line.Info info)
          指示混频器是否支持与指定 Line.Info 对象匹配的一行(或多行)。
 boolean isSynchronizationSupported(Line[] lines, boolean maintainSync)
          报告此混频器是否支持指定行集合的同步。
 void synchronize(Line[] lines, boolean maintainSync)
          同步两个或多个行。
 void unsynchronize(Line[] lines)
          释放指定行的同步。
 
从接口 javax.sound.sampled.Line 继承的方法
addLineListener, close, getControl, getControls, getLineInfo, isControlSupported, isOpen, open, removeLineListener
 

方法详细信息

getMixerInfo

Mixer.Info getMixerInfo()
获得关于此混频器的信息,包括产品名称、版本、供应商,等等。

返回:
描述此混频器的混频器信息对象
另请参见:
Mixer.Info

getSourceLineInfo

Line.Info[] getSourceLineInfo()
获得关于此混频器支持的源行集合的信息。有些源行可能只在此混频器打开时可用。

返回:
表示此混频器的源行的 Line.Info 对象数组。如果不支持任何源行,则返回一个长度为 0 的数组。

getTargetLineInfo

Line.Info[] getTargetLineInfo()
获得关于此混频器支持的目标行集合的信息。有些目标行可能只在此混频器打开时可用。

返回:
表示此混频器的目标行的 Line.Info 对象数组。如果不支持任何目标行,则返回一个长度为 0 的数组。

getSourceLineInfo

Line.Info[] getSourceLineInfo(Line.Info info)
获得关于此混频器支持的特定类型源行的信息。有些源行可能只在此混频器打开时可用。

参数:
info - 描述其信息被查询的那些行的 Line.Info 对象
返回:
描述与所请求类型匹配的源行的 Line.Info 对象数组。如果不支持任何匹配源行,则返回一个长度为 0 的数组。

getTargetLineInfo

Line.Info[] getTargetLineInfo(Line.Info info)
获得关于此混频器支持的特定类型目标行的信息。有些目标行可能只在此混频器打开时可用。

参数:
info - 描述查询其信息的行的 Line.Info 对象
返回:
描述与所请求类型匹配的目标行的 Line.Info 对象数组。如果不支持任何匹配的目标行,则返一个回长度为 0 的数组。

isLineSupported

boolean isLineSupported(Line.Info info)
指示混频器是否支持与指定 Line.Info 对象匹配的一行(或多行)。有些行可能只在此混频器打开时受支持。

参数:
info - 描述查询其是否受支持的行
返回:
如果至少支持一个匹配行,则返回 true;否则返回 false

getLine

Line getLine(Line.Info info)
             throws LineUnavailableException
获得可供使用并且与指定 Line.Info 对象中的描述匹配的行。

如果请求某一 DataLine,且 infoDataLine.Info 的实例(至少指定一个完全限定的音频格式),则将使用最后一种格式作为所返回 DataLine 的默认格式。

参数:
info - 描述所需的行
抛出:
LineUnavailableException - 如果由于资源限制而使匹配行不可用
IllegalArgumentException - 如果此 mixer 不支持与描述匹配的所有行
SecurityException - 如果由于安全限制而使匹配行不可用

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部