模块  java.desktop

Class FormatConversionProvider


  • public abstract class FormatConversionProvider
    extends Object
    格式转换提供程序提供从一种或多种输入格式到一种或多种输出格式的格式转换服务。 转换器包括编码和/或解码音频数据的编解码器,以及转码器等。格式转换器提供用于确定支持什么转换以及用于获得可以从其读取转换数据的音频流的方法。

    源格式表示将被转换的传入音频数据的格式。

    目标格式表示经处理的转换后的音频数据的格式。 这是可以从其中一个getAudioInputStream方法返回的流中读取的数据格式。

    从以下版本开始:
    1.3
    • 构造方法详细信息

      • FormatConversionProvider

        public FormatConversionProvider()
    • 方法详细信息

      • getSourceEncodings

        public abstract AudioFormat.Encoding[] getSourceEncodings()
        获取此提供程序提供格式转换服务的源格式编码集。
        结果
        源格式编码数组。 如果由于某种原因提供程序未提供任何转换服务,则返回长度为0的数组。
      • getTargetEncodings

        public abstract AudioFormat.Encoding[] getTargetEncodings()
        获得此提供程序提供格式转换服务的目标格式编码集。
        结果
        目标格式编码数组。 如果由于某种原因提供程序未提供任何转换服务,则返回长度为0的数组。
      • isSourceEncodingSupported

        public boolean isSourceEncodingSupported​(AudioFormat.Encoding sourceEncoding)
        指示格式转换器是否支持从指定的源格式编码进行转换。
        参数
        sourceEncoding - 查询支持的源格式编码
        结果
        true如果支持编码,否则为 false
        异常
        NullPointerException - 如果 sourceEncodingnull
      • isTargetEncodingSupported

        public boolean isTargetEncodingSupported​(AudioFormat.Encoding targetEncoding)
        指示格式转换器是否支持转换为指定的目标格式编码。
        参数
        targetEncoding - 查询支持的目标格式编码
        结果
        true如果支持编码),否则为 false
        异常
        NullPointerException - 如果 targetEncodingnull
      • getTargetEncodings

        public abstract AudioFormat.Encoding[] getTargetEncodings​(AudioFormat sourceFormat)
        获得给定特定源格式的格式转换器支持的目标格式编码集。 如果此源格式不支持目标格式编码,则返回长度为0的数组。
        参数
        sourceFormat - 传入数据的格式
        结果
        支持的目标格式编码数组
        异常
        NullPointerException - 如果 sourceFormatnull
      • isConversionSupported

        public boolean isConversionSupported​(AudioFormat.Encoding targetEncoding,
                                             AudioFormat sourceFormat)
        指示格式转换器是否支持从特定格式转换为特定编码。
        参数
        targetEncoding - 输出数据的所需编码
        sourceFormat - 传入数据的格式
        结果
        true如果支持转换,否则为 false
        异常
        NullPointerException - 如果 targetEncodingsourceFormatnull
      • getTargetFormats

        public abstract AudioFormat[] getTargetFormats​(AudioFormat.Encoding targetEncoding,
                                                       AudioFormat sourceFormat)
        使用格式转换器支持的编码获得目标格式集。 如果此源格式不支持具有指定编码的目标格式,则返回长度为0的数组。
        参数
        targetEncoding - 处理后所需的流编码
        sourceFormat - 传入数据的格式
        结果
        支持的目标格式数组
        异常
        NullPointerException - 如果 targetEncodingsourceFormatnull
      • isConversionSupported

        public boolean isConversionSupported​(AudioFormat targetFormat,
                                             AudioFormat sourceFormat)
        指示格式转换器是否支持从另一种格式转换为一种特定格式。
        参数
        targetFormat - 所需的传出数据格式
        sourceFormat - 传入数据的格式
        结果
        true如果支持转换,否则为 false
        异常
        NullPointerException - 如果 targetFormatsourceFormatnull
      • getAudioInputStream

        public abstract AudioInputStream getAudioInputStream​(AudioFormat.Encoding targetEncoding,
                                                             AudioInputStream sourceStream)
        从给定的音频输入流获得具有指定编码的音频输入流。
        参数
        targetEncoding - 处理后所需的流编码
        sourceStream - 应从中读取要处理的数据的流
        结果
        可以读取具有指定目标编码的已处理数据的流
        异常
        IllegalArgumentException - 如果不支持提供的格式组合
        NullPointerException - 如果 targetEncodingsourceStreamnull
      • getAudioInputStream

        public abstract AudioInputStream getAudioInputStream​(AudioFormat targetFormat,
                                                             AudioInputStream sourceStream)
        从给定的音频输入流获得具有指定格式的音频输入流。
        参数
        targetFormat - 处理后流的所需数据格式
        sourceStream - 应从中读取要处理的数据的流
        结果
        可以读取具有指定格式的已处理数据的流
        异常
        IllegalArgumentException - 如果不支持提供的格式组合
        NullPointerException - if targetFormat or sourceStream are null