Java™ Platform
Standard Ed. 8
javax.sound.sampled.spi

Class FormatConversionProvider



  • public abstract class FormatConversionProvider
    extends Object
    A format conversion provider provides format conversion services from one or more input formats to one or more output formats. Converters include codecs, which encode and/or decode audio data, as well as transcoders, etc. Format converters provide methods for determining what conversions are supported and for obtaining an audio stream from which converted data can be read.

    The source format represents the format of the incoming audio data, which will be converted.

    The target format represents the format of the processed, converted audio data. This is the format of the data that can be read from the stream returned by one of the getAudioInputStream methods.

    Since:
    1.3
    • Constructor Detail

      • FormatConversionProvider

        public FormatConversionProvider()
    • Method Detail

      • getSourceEncodings

        public abstract AudioFormat.Encoding[] getSourceEncodings()
        Obtains the set of source format encodings from which format conversion services are provided by this provider.
        Returns:
        array of source format encodings. If for some reason provider does not provide any conversion services, an array of length 0 is returned.
      • getTargetEncodings

        public abstract AudioFormat.Encoding[] getTargetEncodings()
        Obtains the set of target format encodings to which format conversion services are provided by this provider.
        Returns:
        array of target format encodings. If for some reason provider does not provide any conversion services, an array of length 0 is returned.
      • isSourceEncodingSupported

        public boolean isSourceEncodingSupported(AudioFormat.Encoding sourceEncoding)
        Indicates whether the format converter supports conversion from the specified source format encoding.
        Parameters:
        sourceEncoding - the source format encoding for which support is queried
        Returns:
        true if the encoding is supported, otherwise false
      • isTargetEncodingSupported

        public boolean isTargetEncodingSupported(AudioFormat.Encoding targetEncoding)
        Indicates whether the format converter supports conversion to the specified target format encoding.
        Parameters:
        targetEncoding - the target format encoding for which support is queried
        Returns:
        true if the encoding is supported, otherwise false
      • getTargetEncodings

        public abstract AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
        Obtains the set of target format encodings supported by the format converter given a particular source format. If no target format encodings are supported for this source format, an array of length 0 is returned.
        Parameters:
        sourceFormat - format of the incoming data
        Returns:
        array of supported target format encodings.
      • isConversionSupported

        public boolean isConversionSupported(AudioFormat.Encoding targetEncoding,
                                             AudioFormat sourceFormat)
        Indicates whether the format converter supports conversion to a particular encoding from a particular format.
        Parameters:
        targetEncoding - desired encoding of the outgoing data
        sourceFormat - format of the incoming data
        Returns:
        true if the conversion is supported, otherwise false
      • getTargetFormats

        public abstract AudioFormat[] getTargetFormats(AudioFormat.Encoding targetEncoding,
                                                       AudioFormat sourceFormat)
        Obtains the set of target formats with the encoding specified supported by the format converter If no target formats with the specified encoding are supported for this source format, an array of length 0 is returned.
        Parameters:
        targetEncoding - desired encoding of the stream after processing
        sourceFormat - format of the incoming data
        Returns:
        array of supported target formats.
      • isConversionSupported

        public boolean isConversionSupported(AudioFormat targetFormat,
                                             AudioFormat sourceFormat)
        Indicates whether the format converter supports conversion to one particular format from another.
        Parameters:
        targetFormat - desired format of outgoing data
        sourceFormat - format of the incoming data
        Returns:
        true if the conversion is supported, otherwise false
      • getAudioInputStream

        public abstract AudioInputStream getAudioInputStream(AudioFormat.Encoding targetEncoding,
                                                             AudioInputStream sourceStream)
        Obtains an audio input stream with the specified encoding from the given audio input stream.
        Parameters:
        targetEncoding - desired encoding of the stream after processing
        sourceStream - stream from which data to be processed should be read
        Returns:
        stream from which processed data with the specified target encoding may be read
        Throws:
        IllegalArgumentException - if the format combination supplied is not supported.
      • getAudioInputStream

        public abstract AudioInputStream getAudioInputStream(AudioFormat targetFormat,
                                                             AudioInputStream sourceStream)
        Obtains an audio input stream with the specified format from the given audio input stream.
        Parameters:
        targetFormat - desired data format of the stream after processing
        sourceStream - stream from which data to be processed should be read
        Returns:
        stream from which processed data with the specified format may be read
        Throws:
        IllegalArgumentException - if the format combination supplied is not supported.
Java™ Platform
Standard Ed. 8

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部