- java.lang.Object
-
- javax.sound.sampled.spi.FormatConversionProvider
-
public abstract class FormatConversionProviderextends Object
格式转换提供程序提供从一种或多种输入格式到一种或多种输出格式的格式转换服务。 转换器包括编码和/或解码音频数据的编解码器,以及转码器等。格式转换器提供用于确定支持什么转换以及用于获得可以从其读取转换数据的音频流的方法。源格式表示将被转换的传入音频数据的格式。
目标格式表示经处理的转换后的音频数据的格式。 这是可以从其中一个
getAudioInputStream
方法返回的流中读取的数据格式。- 从以下版本开始:
- 1.3
-
-
构造方法摘要
构造方法 构造器 描述 FormatConversionProvider()
-
方法摘要
所有方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 abstract AudioInputStream
getAudioInputStream(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
从给定的音频输入流获得具有指定编码的音频输入流。abstract AudioInputStream
getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream)
从给定的音频输入流获得具有指定格式的音频输入流。abstract AudioFormat.Encoding[]
getSourceEncodings()
获取此提供程序提供格式转换服务的源格式编码集。abstract AudioFormat.Encoding[]
getTargetEncodings()
获得此提供程序提供格式转换服务的目标格式编码集。abstract AudioFormat.Encoding[]
getTargetEncodings(AudioFormat sourceFormat)
获得给定特定源格式的格式转换器支持的目标格式编码集。abstract AudioFormat[]
getTargetFormats(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
使用格式转换器支持的编码获得目标格式集。boolean
isConversionSupported(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
指示格式转换器是否支持从特定格式转换为特定编码。boolean
isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat)
指示格式转换器是否支持从另一种格式转换为一种特定格式。boolean
isSourceEncodingSupported(AudioFormat.Encoding sourceEncoding)
指示格式转换器是否支持从指定的源格式编码进行转换。boolean
isTargetEncodingSupported(AudioFormat.Encoding targetEncoding)
指示格式转换器是否支持转换为指定的目标格式编码。
-
-
-
方法详细信息
-
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
- 如果sourceEncoding
是null
-
isTargetEncodingSupported
public boolean isTargetEncodingSupported(AudioFormat.Encoding targetEncoding)
指示格式转换器是否支持转换为指定的目标格式编码。- 参数
-
targetEncoding
- 查询支持的目标格式编码 - 结果
-
true
如果支持编码),否则为false
- 异常
-
NullPointerException
- 如果targetEncoding
是null
-
getTargetEncodings
public abstract AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
获得给定特定源格式的格式转换器支持的目标格式编码集。 如果此源格式不支持目标格式编码,则返回长度为0的数组。- 参数
-
sourceFormat
- 传入数据的格式 - 结果
- 支持的目标格式编码数组
- 异常
-
NullPointerException
- 如果sourceFormat
是null
-
isConversionSupported
public boolean isConversionSupported(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
指示格式转换器是否支持从特定格式转换为特定编码。- 参数
-
targetEncoding
- 输出数据的所需编码 -
sourceFormat
- 传入数据的格式 - 结果
-
true
如果支持转换,否则为false
- 异常
-
NullPointerException
- 如果targetEncoding
或sourceFormat
是null
-
getTargetFormats
public abstract AudioFormat[] getTargetFormats(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
使用格式转换器支持的编码获得目标格式集。 如果此源格式不支持具有指定编码的目标格式,则返回长度为0的数组。- 参数
-
targetEncoding
- 处理后所需的流编码 -
sourceFormat
- 传入数据的格式 - 结果
- 支持的目标格式数组
- 异常
-
NullPointerException
- 如果targetEncoding
或sourceFormat
是null
-
isConversionSupported
public boolean isConversionSupported(AudioFormat targetFormat, AudioFormat sourceFormat)
指示格式转换器是否支持从另一种格式转换为一种特定格式。- 参数
-
targetFormat
- 所需的传出数据格式 -
sourceFormat
- 传入数据的格式 - 结果
-
true
如果支持转换,否则为false
- 异常
-
NullPointerException
- 如果targetFormat
或sourceFormat
是null
-
getAudioInputStream
public abstract AudioInputStream getAudioInputStream(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
从给定的音频输入流获得具有指定编码的音频输入流。- 参数
-
targetEncoding
- 处理后所需的流编码 -
sourceStream
- 应从中读取要处理的数据的流 - 结果
- 可以读取具有指定目标编码的已处理数据的流
- 异常
-
IllegalArgumentException
- 如果不支持提供的格式组合 -
NullPointerException
- 如果targetEncoding
或sourceStream
是null
-
getAudioInputStream
public abstract AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream)
从给定的音频输入流获得具有指定格式的音频输入流。- 参数
-
targetFormat
- 处理后流的所需数据格式 -
sourceStream
- 应从中读取要处理的数据的流 - 结果
- 可以读取具有指定格式的已处理数据的流
- 异常
-
IllegalArgumentException
- 如果不支持提供的格式组合 -
NullPointerException
- iftargetFormat
orsourceStream
arenull
-
-