Module  java.desktop
软件包  javax.sound.sampled

Class DataLine.Info

  • Enclosing interface:
    DataLine


    public static class DataLine.Info
    extends Line.Info
    除了从其超类继承的类信息, DataLine.Info还提供了特定于数据行的附加信息。 此信息包括:
    • 数据线支持的音频格式
    • 其内部缓冲区的最小和最大大小
    因为一个Line.Info知道类其描述了线,一个DataLine.Info对象可以描述DataLine子接口如SourceDataLineTargetDataLine ,和Clip 您可以查询混合器中的任何类型的行,将适当的DataLine.Info实例作为参数传递给诸如Mixer.getLine(Line.Info)之类的方法。
    从以下版本开始:
    1.3
    另请参见:
    Line.Info
    • 构造方法详细信息

      • 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)
        确定指定的信息对象是否与此匹配。 要匹配,必须满足超类匹配要求。 此外,此对象的最小缓冲区大小必须至少与指定对象的最小缓冲区大小一样大,因此其最大缓冲区大小必须与指定对象的最大缓冲区大小一样大,并且其所有格式必须与对象支持的格式相匹配指定。
        重写:
        matchesLine.Info
        参数
        info - 正在比较的信息对象
        结果
        true如果此对象与指定的对象匹配,否则为 false
      • toString

        public String toString​()
        获取数据行信息的文本描述。
        重写:
        toStringLine.Info
        结果
        a string description