- java.lang.Object
-
- javax.sound.sampled.Line.Info
-
- javax.sound.sampled.DataLine.Info
-
- Enclosing interface:
- DataLine
public static class DataLine.Info extends Line.Info
除了从其超类继承的类信息,DataLine.Info
还提供了特定于数据行的附加信息。 此信息包括:- 数据线支持的音频格式
- 其内部缓冲区的最小和最大大小
Line.Info
知道类其描述了线,一个DataLine.Info
对象可以描述DataLine
子接口如SourceDataLine
,TargetDataLine
,和Clip
。 您可以查询混合器中的任何类型的行,将适当的DataLine.Info
实例作为参数传递给诸如Mixer.getLine(Line.Info)
之类的方法。- 从以下版本开始:
- 1.3
- 另请参见:
-
Line.Info
-
-
构造方法摘要
构造方法 Constructor 描述 Info(Class<?> lineClass, AudioFormat format)
根据指定的信息构建数据行的信息对象,其中包含单个音频格式。Info(Class<?> lineClass, AudioFormat[] formats, int minBufferSize, int maxBufferSize)
根据指定的信息构建数据行的信息对象,其中包括一组支持的音频格式和缓冲区大小的范围。Info(Class<?> lineClass, AudioFormat format, int bufferSize)
从指定的信息构建数据行的信息对象,其中包含单个音频格式和所需的缓冲区大小。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 AudioFormat[]
getFormats()
获取数据线支持的一组音频格式。int
getMaxBufferSize()
获取数据线支持的最大缓冲区大小。int
getMinBufferSize()
获取数据线支持的最小缓冲区大小。boolean
isFormatSupported(AudioFormat format)
指示此数据线是否支持特定的音频格式。boolean
matches(Line.Info info)
确定指定的信息对象是否与此匹配。String
toString()
获取数据行信息的文本描述。-
Methods inherited from class javax.sound.sampled.Line.Info
getLineClass
-
-
-
-
构造方法详细信息
-
Info
public Info(Class<?> lineClass, AudioFormat[] formats, int minBufferSize, int maxBufferSize)
根据指定的信息构建数据行的信息对象,其中包括一组支持的音频格式和缓冲区大小的范围。 当返回有关支持的行的信息时,此构造函数通常由混合器实现使用。- 参数
-
lineClass
- 由info对象描述的数据行的类 -
formats
- 支持的格式集 -
minBufferSize
- 数据线支持的最小缓冲区大小(以字节为单位) -
maxBufferSize
- 数据线支持的最大缓冲区大小(以字节为单位)
-
Info
public Info(Class<?> lineClass, AudioFormat format, int bufferSize)
从指定的信息构建数据行的信息对象,其中包含单个音频格式和所需的缓冲区大小。 该构造函数通常由应用程序用于描述所需的行。- 参数
-
lineClass
- 由info对象描述的数据行的类 -
format
- 所需格式 -
bufferSize
- 所需的缓冲区大小(以字节为单位)
-
Info
public Info(Class<?> lineClass, AudioFormat format)
根据指定的信息构建数据行的信息对象,其中包含单个音频格式。 该构造函数通常由应用程序用于描述所需的行。- 参数
-
lineClass
- 由info对象描述的数据行的类 -
format
- 所需格式
-
-
方法详细信息
-
getFormats
public AudioFormat[] getFormats()
获取数据线支持的一组音频格式。 需要注意的是isFormatSupported(AudioFormat)
可能返回true
为从返回的集中缺少某些附加格式getFormats()
。 反之亦然:isFormatSupported(AudioFormat)
保证为true
返回的所有格式返回getFormats()
。如果该字段不适用于格式,或者如果该格式支持该字段的广泛值,则AudioFormat实例中的某些字段可以设置为
NOT_SPECIFIED
。 例如,支持多达64个通道的多通道设备可以将此方法返回的AudioFormat
实例中的通道字段设置为NOT_SPECIFIED
。- 结果
- 一组支持的音频格式
- 另请参见:
-
isFormatSupported(AudioFormat)
-
isFormatSupported
public boolean isFormatSupported(AudioFormat format)
指示此数据线是否支持特定的音频格式。 如果指定的格式匹配任何受支持的格式,则此方法的默认实现方法只返回true
。- 参数
-
format
- 查询支持的音频格式 - 结果
-
true
如果格式支持,否则false
- 另请参见:
-
getFormats()
,AudioFormat.matches(javax.sound.sampled.AudioFormat)
-
getMinBufferSize
public int getMinBufferSize()
获取数据线支持的最小缓冲区大小。- 结果
-
最小缓冲区大小(以字节为单位),或
AudioSystem.NOT_SPECIFIED
-
getMaxBufferSize
public int getMaxBufferSize()
获取数据线支持的最大缓冲区大小。- 结果
-
最大缓冲区大小(以字节为单位),或
AudioSystem.NOT_SPECIFIED
-
matches
public boolean matches(Line.Info info)
确定指定的信息对象是否与此匹配。 要匹配,必须满足超类匹配要求。 此外,此对象的最小缓冲区大小必须至少与指定对象的最小缓冲区大小一样大,因此其最大缓冲区大小必须与指定对象的最大缓冲区大小一样大,并且其所有格式必须与对象支持的格式相匹配指定。
-
-