モジュール java.desktop
パッケージ javax.sound.sampled

クラスAudioSystem


  • public class AudioSystem
    extends Object
    AudioSystemクラスは、サンプリングされたオーディオ・システム・リソースのエントリ・ポイントとして動作します。 このクラスを使用すると、システムにインストールされたミキサーに照会およびアクセスできます。 AudioSystemには、各種形式間でのオーディオ・データの変換やオーディオ・ファイルとストリーム間の変換を実行するための多数のメソッドが用意されています。 また、ミキサーを明示的に扱わずにAudioSystemから直接Lineを取得するメソッドも提供しています。

    プロパティを使用して、特定のライン・タイプのデフォルト・ミキサーを指定できます。 システム・プロパティ、プロパティ・ファイルの両方とも使用可能です。 "sound.properties"プロパティ・ファイルは、実装固有のロケーション(通常、Javaインストール・ディレクトリ内のconfディレクトリです)から読み込まれます。 オプションの"javax.sound.config.file"システム・プロパティを使用して、初期構成として読み取られるプロパティ・ファイルを指定できます。 プロパティがシステム・プロパティとしても、プロパティ・ファイル内にも存在する場合は、システム・プロパティが優先されます。 プロパティがまったく指定されていない場合は、使用可能なデバイスの中から適切なデフォルト・プロパティが選択されます。 プロパティ・ファイルの構文はProperties.loadに指定されています。 次の表は、使用可能なプロパティ・キーと、これらを認識するメソッドのリストです。

    オーディオ・システムのプロパティ・キー
    プロパティ・キー インタフェース 影響を受けるメソッド
    javax.sound.sampled.Clip Clip getLine(javax.sound.sampled.Line.Info), getClip()
    javax.sound.sampled.Port Port getLine(javax.sound.sampled.Line.Info)
    javax.sound.sampled.SourceDataLine SourceDataLine getLine(javax.sound.sampled.Line.Info), getSourceDataLine(javax.sound.sampled.AudioFormat)
    javax.sound.sampled.TargetDataLine TargetDataLine getLine(javax.sound.sampled.Line.Info), getTargetDataLine(javax.sound.sampled.AudioFormat)
    プロパティ値は、プロバイダ・クラス名とミキサー名をハッシュ記号(#)で区切った形式で表されます。 プロバイダ・クラス名は、具象mixer providerクラスの完全指定名です。 ミキサー名は、Mixer.InfogetNameメソッドから返されるStringとマッチングされます。 クラス名、ミキサー名の一方を省略することもできます。 クラス名だけを指定した場合、ハッシュ記号は省略できます。

    プロバイダ・クラスが指定されていて、インストール済プロバイダから正常に取得できる場合、このプロバイダからMixer.Infoオブジェクトのリストが取り出されます。 そうでない場合、またはこれらのミキサーがこれ以降マッチングを行わない場合、getMixerInfo()から取得したリストには、使用可能なすべてのMixer.Infoオブジェクトが含まれます。

    ミキサー名が指定されている場合、結果として得られたMixer.Infoオブジェクトのリストが検索されます。一致する名前を持つ最初のオブジェクト(対応するライン・インタフェースを提供するMixerを持つもの)が返されます。 一致するMixer.Infoオブジェクトが見つからない場合、またはミキサー名が指定されていない場合、結果として得られたリストの最初のミキサー(それぞれのライン・インタフェースを提供)が返されます。

    たとえば、"com.sun.media.sound.MixerProvider#SunClip"を値に持つプロパティjavax.sound.sampled.Clipでは、Clipインスタンス要求時にgetLineが呼び出されたときに、次のような結果が得られます: インストール済ミキサー・プロバイダのリスト内にクラスcom.sun.media.sound.MixerProviderが存在する場合、"SunClip"という名前を持つ最初のミキサーに含まれる最初のClipが返されます。 該当するものが見つからない場合は、名前とは関係なく、指定されたプロバイダの最初のミキサーから最初のClipが返されます。 存在しない場合は、すべてのミキサー(getMixerInfoによって返される)のリストにある"SunClip"の最初のMixerの最初のClipが返されます。見つからなければ、すべてのミキサーのリストにある最初のMixerの最初のClipが返されます。 これにも失敗した場合は、IllegalArgumentExceptionがスローされます。

    導入されたバージョン:
    1.3
    関連項目:
    AudioFormatAudioInputStreamMixerLineLine.Info
    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      static int NOT_SPECIFIED
      不明な数値を表す整数。
    • メソッドのサマリー

      修飾子と型 メソッド 説明
      static AudioFileFormat getAudioFileFormat​(File file)
      指定されたFileのオーディオ・ファイル形式を取得します。
      static AudioFileFormat getAudioFileFormat​(InputStream stream)
      指定された入力ストリームのオーディオ・ファイル形式を取得します。
      static AudioFileFormat getAudioFileFormat​(URL url)
      指定されたURLのオーディオ・ファイル形式を取得します。
      static AudioFileFormat.Type[] getAudioFileTypes()
      システムがファイル書込みサポートを提供するファイル・タイプを取得します。
      static AudioFileFormat.Type[] getAudioFileTypes​(AudioInputStream stream)
      指定されたオーディオ入力ストリームからシステムが書き込むことができるファイル・タイプを取得します。
      static AudioInputStream getAudioInputStream​(File file)
      指定されたFileからオーディオ入力ストリームを取得します。
      static AudioInputStream getAudioInputStream​(InputStream stream)
      指定された入力ストリームからオーディオ入力ストリームを取得します。
      static AudioInputStream getAudioInputStream​(URL url)
      URLからオーディオ入力ストリームを取得します。
      static AudioInputStream getAudioInputStream​(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
      指定されたオーディオ入力ストリームを変換して、示されたエンコーディングのオーディオ入力ストリームを取得します。
      static AudioInputStream getAudioInputStream​(AudioFormat targetFormat, AudioInputStream sourceStream)
      指定されたオーディオ入力ストリームを変換して、示された形式のオーディオ入力ストリームを取得します。
      static Clip getClip()
      オーディオ・ファイルやオーディオ・ストリームの再生に使用できるクリップを取得します。
      static Clip getClip​(Mixer.Info mixerInfo)
      オーディオ・ファイルやオーディオ・ストリームの再生に使用できるクリップを指定のミキサーからを取得します。
      static Line getLine​(Line.Info info)
      指定されたLine.Infoオブジェクトの記述に一致するラインを取得します。
      static Mixer getMixer​(Mixer.Info info)
      要求されたオーディオ・ミキサーを取得します。
      static Mixer.Info[] getMixerInfo()
      システムに現在インストールされているオーディオ・ミキサーのセットを表すミキサー情報オブジェクトの配列を取得します。
      static SourceDataLine getSourceDataLine​(AudioFormat format)
      AudioFormatオブジェクトで指定された形式でオーディオ・データを再生するために使用するソース・データ・ラインを取得します。
      static SourceDataLine getSourceDataLine​(AudioFormat format, Mixer.Info mixerinfo)
      AudioFormatオブジェクトで指定された形式で、Mixer.Infoオブジェクトによって指定されたミキサーによって提供されたオーディオ・データの再生に使用できるソース・データ・ラインを取得します。
      static Line.Info[] getSourceLineInfo​(Line.Info info)
      インストールされているミキサーでサポートされる特定のタイプのソース・ラインに関する情報を取得します。
      static TargetDataLine getTargetDataLine​(AudioFormat format)
      AudioFormatオブジェクトで指定された形式でオーディオ・データを録音するために使用できるターゲット・データ・ラインを取得します。
      static TargetDataLine getTargetDataLine​(AudioFormat format, Mixer.Info mixerinfo)
      AudioFormatオブジェクトで指定された形式で、Mixer.Infoオブジェクトによって指定されたミキサーによって提供されたオーディオ・データの録音に使用できるターゲット・データ・ラインを取得します。
      static AudioFormat.Encoding[] getTargetEncodings​(AudioFormat sourceFormat)
      インストールされた形式変換のセットを使用して、指定された形式のオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。
      static AudioFormat.Encoding[] getTargetEncodings​(AudioFormat.Encoding sourceEncoding)
      インストールされた形式変換のセットを使用して、指定されたエンコーディングでオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。
      static AudioFormat[] getTargetFormats​(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
      特定のエンコーディングを持つ形式、およびインストールされた形式変換のセットを使用して指定された形式のストリームからシステムが取得できる形式を取得します。
      static Line.Info[] getTargetLineInfo​(Line.Info info)
      インストールされているミキサーでサポートされる特定のタイプのターゲット・ラインに関する情報を取得します。
      static boolean isConversionSupported​(AudioFormat.Encoding targetEncoding, AudioFormat sourceFormat)
      指定されたエンコーディングのオーディオ入力ストリームを、指定された形式のオーディオ入力ストリームから取得できるかどうかを示します。
      static boolean isConversionSupported​(AudioFormat targetFormat, AudioFormat sourceFormat)
      指定された形式のオーディオ入力ストリームを、別の指定された形式のオーディオ入力ストリームから取得できるかどうかを示します。
      static boolean isFileTypeSupported​(AudioFileFormat.Type fileType)
      指定されたファイル・タイプのファイル書込みサポートをシステムが提供しているかどうかを示します。
      static boolean isFileTypeSupported​(AudioFileFormat.Type fileType, AudioInputStream stream)
      指定されたファイル・タイプのオーディオ・ファイルを、示されたオーディオ入力ストリームから書込みできるかどうかを示します。
      static boolean isLineSupported​(Line.Info info)
      指定されたLine.Infoオブジェクトに一致するラインをシステムがサポートしているかどうかを示します。
      static int write​(AudioInputStream stream, AudioFileFormat.Type fileType, File out)
      指定されたファイル・タイプのオーディオ・ファイルを表すバイトのストリームを、指定された外部ファイルへ書き込みます。
      static int write​(AudioInputStream stream, AudioFileFormat.Type fileType, OutputStream out)
      指定されたファイル・タイプのオーディオ・ファイルを表すバイトのストリームを、指定された出力ストリームへ書き込みます。
    • フィールドの詳細

      • NOT_SPECIFIED

        public static final int NOT_SPECIFIED
        不明な数値を表す整数。 この値は、通常負の値をとらない符号付きの数量を示す場合にだけ使用します。 たとえば、ファイル・サイズ、フレーム・サイズ、バッファ・サイズ、サンプル・レートがあります。 いくつかのJava Soundコンストラクタが、そのようなパラメータのNOT_SPECIFIEDの値を受け入れます。 ドキュメントに示されているように、ほかのメソッドでもこの値を受け入れたり、返したりする場合があります。
        関連項目:
        定数フィールド値
    • メソッドの詳細

      • getMixerInfo

        public static Mixer.Info[] getMixerInfo()
        システムに現在インストールされているオーディオ・ミキサーのセットを表すミキサー情報オブジェクトの配列を取得します。
        戻り値:
        現在インストールされているミキサーの情報オブジェクトの配列。 システムでミキサーが使用できない場合は、長さ0の配列が返される。
        関連項目:
        getMixer(javax.sound.sampled.Mixer.Info)
      • getMixer

        public static Mixer getMixer​(Mixer.Info info)
        要求されたオーディオ・ミキサーを取得します。
        パラメータ:
        info - 必要なミキサーを表すMixer.Infoオブジェクト、またはシステムのデフォルト・ミキサーの場合はnull
        戻り値:
        要求されたミキサー
        例外:
        SecurityException - セキュリティ上の制約のために要求されたミキサーが使用できない場合
        IllegalArgumentException - 情報オブジェクトがシステムにインストールされたミキサーを表さない場合
        関連項目:
        getMixerInfo()
      • getSourceLineInfo

        public static Line.Info[] getSourceLineInfo​(Line.Info info)
        インストールされているミキサーでサポートされる特定のタイプのソース・ラインに関する情報を取得します。
        パラメータ:
        info - 情報が要求されたラインの種類を指定するLine.Infoオブジェクト
        戻り値:
        要求されたタイプに一致するソース・ラインを記述するLine.Infoオブジェクトの配列。 一致するソース・ラインがサポートされていない場合、長さ0の配列が返される。
        関連項目:
        Mixer.getSourceLineInfo(Line.Info)
      • getTargetLineInfo

        public static Line.Info[] getTargetLineInfo​(Line.Info info)
        インストールされているミキサーでサポートされる特定のタイプのターゲット・ラインに関する情報を取得します。
        パラメータ:
        info - 情報が要求されたラインの種類を指定するLine.Infoオブジェクト
        戻り値:
        要求されたタイプに一致するターゲット・ラインを記述するLine.Infoオブジェクトの配列。 一致するターゲット・ラインがサポートされていない場合、長さ0の配列が返される。
        関連項目:
        Mixer.getTargetLineInfo(Line.Info)
      • isLineSupported

        public static boolean isLineSupported​(Line.Info info)
        指定されたLine.Infoオブジェクトに一致するラインをシステムがサポートしているかどうかを示します。 ラインは、インストールされたミキサーがサポートする場合はサポートされます。
        パラメータ:
        info - サポートの有無が照会されるラインを記述するLine.Infoオブジェクト
        戻り値:
        一致するラインが少なくとも1つサポートされる場合はtrue、そうでない場合はfalse
        関連項目:
        Mixer.isLineSupported(Line.Info)
      • getLine

        public static Line getLine​(Line.Info info)
                            throws LineUnavailableException
        指定されたLine.Infoオブジェクトの記述に一致するラインを取得します。

        DataLineが要求され、かつinfoDataLine.Infoのインスタンスであって、1つ以上の完全指定のオーディオ形式を指定する場合、最後のものが返されるDataLineのデフォルトの形式になります。

        システム・プロパティjavax.sound.sampled.Clipjavax.sound.sampled.Portjavax.sound.sampled.SourceDataLine、およびjavax.sound.sampled.TargetDataLineが定義されている場合、またはこれらがsound.propertiesファイル内に定義されている場合は、これらはデフォルト・ラインの取得に使用されます。 詳細は、class descriptionを参照してください。 それぞれのプロパティが設定されていない場合、またはプロパティで要求されるミキサーがインストールされていないか、要求されたラインを提供しない場合、インスタンス化されたすべてのミキサーが、要求されたライン・タイプについて照会されます。 要求されたライン・タイプを提供する最初のミキサーからラインが返されます。

        パラメータ:
        info - 必要な種類のラインを記述するLine.Infoオブジェクト
        戻り値:
        要求された種類のライン
        例外:
        LineUnavailableException - リソースの制約のために、一致するラインを使用できない場合
        SecurityException - セキュリティ上の制約のために、一致するラインを使用できない場合
        IllegalArgumentException - インストールされたミキサーを介して、指定されたLine.Infoオブジェクトと一致するラインを1つもシステムがサポートしない場合
      • getClip

        public static Clip getClip()
                            throws LineUnavailableException
        オーディオ・ファイルやオーディオ・ストリームの再生に使用できるクリップを取得します。 返されるクリップは、デフォルトのシステム・ミキサーから提供されます。可能でない場合は、Clipオブジェクトをサポートするシステム内にインストールされた任意のミキサーから提供されます。

        返されるクリップは、open(AudioFormat)またはopen(AudioInputStream)メソッドで開かれている必要があります。

        これは、getMixergetLineを内部使用する高度なメソッドです。

        システム・プロパティjavax.sound.sampled.Clipが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルト・クリップの取得に使用されます。 詳細は、class descriptionを参照してください。

        戻り値:
        目的のクリップ・オブジェクト
        例外:
        LineUnavailableException - リソースの制約のために、クリップ・オブジェクトを使用できない場合
        SecurityException - セキュリティの制約のために、クリップ・オブジェクトを使用できない場合
        IllegalArgumentException - システムが任意のインストール済みミキサーで1つ以上のクリップ・インスタンスをサポートしない場合
        導入されたバージョン:
        1.5
        関連項目:
        getClip(Mixer.Info)
      • getClip

        public static Clip getClip​(Mixer.Info mixerInfo)
                            throws LineUnavailableException
        オーディオ・ファイルやオーディオ・ストリームの再生に使用できるクリップを指定のミキサーからを取得します。

        返されるクリップは、open(AudioFormat)またはopen(AudioInputStream)メソッドで開かれている必要があります。

        これは、getMixergetLineを内部使用する高度なメソッドです。

        パラメータ:
        mixerInfo - 必要なミキサーを表すMixer.Infoオブジェクト、またはシステムのデフォルト・ミキサーの場合はnull
        戻り値:
        指定のミキサーから取得するクリップ
        例外:
        LineUnavailableException - リソースの制約のために、このミキサーからクリップを使用できない場合
        SecurityException - セキュリティの制約のために、このミキサーからクリップを使用できない場合
        IllegalArgumentException - システムが指定のミキサーで1つ以上のクリップをサポートしない場合
        導入されたバージョン:
        1.5
        関連項目:
        getClip()
      • getSourceDataLine

        public static SourceDataLine getSourceDataLine​(AudioFormat format)
                                                throws LineUnavailableException
        AudioFormatオブジェクトで指定された形式でオーディオ・データを再生するために使用するソース・データ・ラインを取得します。 返されるラインは、デフォルトのシステム・ミキサーから提供されます。または、一致するSourceDataLineオブジェクトをサポートする任意のインストール済ミキサーから提供されます。

        返されるラインは、open(AudioFormat)またはopen(AudioFormat, int)メソッドで開かれている必要があります。

        これは、getMixergetLineを内部使用する高度なメソッドです。

        返されるSourceDataLineのデフォルトのオーディオ形式は、formatで初期化されます。

        システム・プロパティjavax.sound.sampled.SourceDataLineが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルトのソース・データ・ラインの取得に使用されます。 詳細は、class descriptionを参照してください。

        パラメータ:
        format - 返されるラインのサポート対象オーディオ形式を指定するAudioFormatオブジェクト。その他のオーディオ形式の場合はnull
        戻り値:
        目的のSourceDataLineオブジェクト
        例外:
        LineUnavailableException - リソースの制約のために、一致するソース・データ・ラインを使用できない場合
        SecurityException - セキュリティ上の制約のために、一致するソース・データ・ラインを使用できない場合
        IllegalArgumentException - システムが、任意のインストール済みミキサーにより指定のオーディオ形式をサポートするソース・データ・ラインを1つ以上サポートしない場合
        導入されたバージョン:
        1.5
        関連項目:
        getSourceDataLine(AudioFormat, Mixer.Info)
      • getSourceDataLine

        public static SourceDataLine getSourceDataLine​(AudioFormat format,
                                                       Mixer.Info mixerinfo)
                                                throws LineUnavailableException
        AudioFormatオブジェクトで指定された形式で、Mixer.Infoオブジェクトによって指定されたミキサーによって提供されたオーディオ・データの再生に使用できるソース・データ・ラインを取得します。

        返されるラインは、open(AudioFormat)またはopen(AudioFormat, int)メソッドで開かれている必要があります。

        これは、getMixergetLineを内部使用する高度なメソッドです。

        返されるSourceDataLineのデフォルトのオーディオ形式は、formatで初期化されます。

        パラメータ:
        format - 返されるラインのサポート対象オーディオ形式を指定するAudioFormatオブジェクト。その他のオーディオ形式の場合はnull
        mixerinfo - 必要なミキサーを表すMixer.Infoオブジェクト、またはシステムのデフォルト・ミキサーの場合はnull
        戻り値:
        目的のSourceDataLineオブジェクト
        例外:
        LineUnavailableException - リソースの制約のために、指定のミキサーから一致するソース・データ・ラインを使用できない場合
        SecurityException - セキュリティ上の制約のために、指定のミキサーから一致するソース・データ・ラインを使用できない場合
        IllegalArgumentException - 指定のミキサーが、指定のオーディオ形式をサポートするソース・データ・ラインを1つ以上サポートしない場合
        導入されたバージョン:
        1.5
        関連項目:
        getSourceDataLine(AudioFormat)
      • getTargetDataLine

        public static TargetDataLine getTargetDataLine​(AudioFormat format)
                                                throws LineUnavailableException
        AudioFormatオブジェクトで指定された形式でオーディオ・データを録音するために使用できるターゲット・データ・ラインを取得します。 返されるラインは、デフォルトのシステム・ミキサーから提供されます。または、一致するTargetDataLineオブジェクトをサポートする任意のインストール済ミキサーから提供されます。

        返されるラインは、open(AudioFormat)またはopen(AudioFormat, int)メソッドで開かれている必要があります。

        これは、getMixergetLineを内部使用する高度なメソッドです。

        返されるTargetDataLineのデフォルトのオーディオ形式は、formatで初期化されます。

        システム・プロパティjavax.sound.sampled.TargetDataLineが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルトのターゲット・データ・ラインの取得に使用されます。 詳細は、class descriptionを参照してください。

        パラメータ:
        format - 返されるラインのサポート対象オーディオ形式を指定するAudioFormatオブジェクト。その他のオーディオ形式の場合はnull
        戻り値:
        目的のTargetDataLineオブジェクト
        例外:
        LineUnavailableException - リソースの制約のために、一致するターゲット・データ・ラインを使用できない場合
        SecurityException - セキュリティの制約のために、一致するターゲット・データ・ラインを使用できない場合
        IllegalArgumentException - システムが、任意のインストール済みミキサーにより指定のオーディオ形式をサポートするターゲット・データ・ラインを1つ以上サポートしない場合
        導入されたバージョン:
        1.5
        関連項目:
        getTargetDataLine(AudioFormat, Mixer.Info)AudioPermission
      • getTargetDataLine

        public static TargetDataLine getTargetDataLine​(AudioFormat format,
                                                       Mixer.Info mixerinfo)
                                                throws LineUnavailableException
        AudioFormatオブジェクトで指定された形式で、Mixer.Infoオブジェクトによって指定されたミキサーによって提供されたオーディオ・データの録音に使用できるターゲット・データ・ラインを取得します。

        返されるラインは、open(AudioFormat)またはopen(AudioFormat, int)メソッドで開かれている必要があります。

        これは、getMixergetLineを内部使用する高度なメソッドです。

        返されるTargetDataLineのデフォルトのオーディオ形式は、formatで初期化されます。

        パラメータ:
        format - 返されるラインのサポート対象オーディオ形式を指定するAudioFormatオブジェクト。その他のオーディオ形式の場合はnull
        mixerinfo - 必要なミキサーを表すMixer.Infoオブジェクト、またはシステムのデフォルト・ミキサーの場合はnull
        戻り値:
        目的のTargetDataLineオブジェクト
        例外:
        LineUnavailableException - リソースの制約のために、指定のミキサーから一致するターゲット・データ・ラインを使用できない場合
        SecurityException - セキュリティの制約のために、指定のミキサーから一致するターゲット・データ・ラインを使用できない場合
        IllegalArgumentException - 指定のミキサーが、指定のオーディオ形式をサポートするターゲット・データ・ラインを1つ以上サポートしない場合
        導入されたバージョン:
        1.5
        関連項目:
        getTargetDataLine(AudioFormat)AudioPermission
      • getTargetEncodings

        public static AudioFormat.Encoding[] getTargetEncodings​(AudioFormat.Encoding sourceEncoding)
        インストールされた形式変換のセットを使用して、指定されたエンコーディングでオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。
        パラメータ:
        sourceEncoding - 変換サポートについて照会するエンコーディング
        戻り値:
        エンコーディングの配列。 sourceEncoding がサポートされていない場合、長さ0の配列が返される。 そうでない場合、配列長は1以上で、sourceEncodingを表す(変換なし)。
        例外:
        NullPointerException - sourceEncodingnullの場合
      • getTargetEncodings

        public static AudioFormat.Encoding[] getTargetEncodings​(AudioFormat sourceFormat)
        インストールされた形式変換のセットを使用して、指定された形式のオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。
        パラメータ:
        sourceFormat - 変換について照会するオーディオ形式
        戻り値:
        エンコーディングの配列。 sourceFormatがサポートされていない場合、長さ0の配列が返される。 そうでない場合、配列長は1以上で、sourceFormatのエンコーディングを表す(変換なし)。
        例外:
        NullPointerException - sourceFormatnullの場合
      • isConversionSupported

        public static boolean isConversionSupported​(AudioFormat.Encoding targetEncoding,
                                                    AudioFormat sourceFormat)
        指定されたエンコーディングのオーディオ入力ストリームを、指定された形式のオーディオ入力ストリームから取得できるかどうかを示します。
        パラメータ:
        targetEncoding - 変換後の必要なエンコーディング
        sourceFormat - 変換前のオーディオ形式
        戻り値:
        変換がサポートされている場合はtrue、そうでない場合はfalse
        例外:
        NullPointerException - targetEncodingまたはsourceFormatnullの場合
      • getTargetFormats

        public static AudioFormat[] getTargetFormats​(AudioFormat.Encoding targetEncoding,
                                                     AudioFormat sourceFormat)
        特定のエンコーディングを持つ形式、およびインストールされた形式変換のセットを使用して指定された形式のストリームからシステムが取得できる形式を取得します。
        パラメータ:
        targetEncoding - 変換後の必要なエンコーディング
        sourceFormat - 変換前のオーディオ形式
        戻り値:
        形式の配列。 指定されたエンコーディングの形式がサポートされない場合は、長さ0の配列が返される。
        例外:
        NullPointerException - targetEncodingまたはsourceFormatnullの場合
      • isConversionSupported

        public static boolean isConversionSupported​(AudioFormat targetFormat,
                                                    AudioFormat sourceFormat)
        指定された形式のオーディオ入力ストリームを、別の指定された形式のオーディオ入力ストリームから取得できるかどうかを示します。
        パラメータ:
        targetFormat - 変換後の必要なオーディオ形式
        sourceFormat - 変換前のオーディオ形式
        戻り値:
        変換がサポートされている場合はtrue、そうでない場合はfalse
        例外:
        NullPointerException - targetFormatまたはsourceFormatnullの場合
      • getAudioFileFormat

        public static AudioFileFormat getAudioFileFormat​(InputStream stream)
                                                  throws UnsupportedAudioFileException,
                                                         IOException
        指定された入力ストリームのオーディオ・ファイル形式を取得します。 ストリームは有効なオーディオ・ファイル・データを示す必要があります。 このメソッドの実装には、ストリームを検証してそのストリームがサポートされるかどうかを判定する複数のパーサーが必要な場合があります。 これらのパーサーは、ストリームをマークし、ストリームをサポートするかどうかを判断するのに十分なデータを読み込み、ストリームの読み取りポインタを元の位置にリセットすることができなければなりません。 入力ストリームがこれらの操作をサポートしない場合、このメソッドはIOExceptionで失敗することがあります。
        パラメータ:
        stream - ファイル形式情報を抽出する入力ストリーム
        戻り値:
        ストリームのオーディオ・ファイル形式を記述するAudioFileFormatオブジェクト
        例外:
        UnsupportedAudioFileException - システムが認識した有効なオーディオ・ファイル・データをストリームが示さない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - streamnullの場合
        関連項目:
        InputStream.markSupported(), InputStream.mark(int)
      • getAudioFileFormat

        public static AudioFileFormat getAudioFileFormat​(URL url)
                                                  throws UnsupportedAudioFileException,
                                                         IOException
        指定されたURLのオーディオ・ファイル形式を取得します。 URLは、有効なオーディオ・ファイル・データを指している必要があります。
        パラメータ:
        url - ファイル形式情報を抽出するURL
        戻り値:
        オーディオ・ファイル形式を記述するAudioFileFormatオブジェクト
        例外:
        UnsupportedAudioFileException - URLがシステムによって認識された有効なオーディオ・ファイル・データを指していない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - urlnullの場合
      • getAudioFileFormat

        public static AudioFileFormat getAudioFileFormat​(File file)
                                                  throws UnsupportedAudioFileException,
                                                         IOException
        指定されたFileのオーディオ・ファイル形式を取得します。 Fileは有効なオーディオ・ファイル・データを示す必要があります。
        パラメータ:
        file - ファイル形式情報を抽出するFile
        戻り値:
        オーディオ・ファイル形式を記述するAudioFileFormatオブジェクト
        例外:
        UnsupportedAudioFileException - システムが認識した有効なオーディオ・ファイル・データをFileが示さない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - filenullの場合
      • getAudioInputStream

        public static AudioInputStream getAudioInputStream​(InputStream stream)
                                                    throws UnsupportedAudioFileException,
                                                           IOException
        指定された入力ストリームからオーディオ入力ストリームを取得します。 ストリームは有効なオーディオ・ファイル・データを示す必要があります。 このメソッドの実装には、ストリームを検証してそのストリームがサポートされるかどうかを判定する複数のパーサーが必要な場合があります。 これらのパーサーは、ストリームをマークし、ストリームをサポートするかどうかを判断するのに十分なデータを読み込み、ストリームの読み取りポインタを元の位置にリセットすることができなければなりません。 入力ストリームがこれらの操作をサポートしない場合、このメソッドはIOExceptionで失敗することがあります。
        パラメータ:
        stream - AudioInputStreamを構築する入力ストリーム
        戻り値:
        入力ストリームに含まれるオーディオ・ファイル・データに基づくAudioInputStreamオブジェクト
        例外:
        UnsupportedAudioFileException - システムが認識した有効なオーディオ・ファイル・データをストリームが示さない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - streamnullの場合
        関連項目:
        InputStream.markSupported(), InputStream.mark(int)
      • getAudioInputStream

        public static AudioInputStream getAudioInputStream​(URL url)
                                                    throws UnsupportedAudioFileException,
                                                           IOException
        URLからオーディオ入力ストリームを取得します。 URLは、有効なオーディオ・ファイル・データを指している必要があります。
        パラメータ:
        url - AudioInputStreamが構成されるべきURL
        戻り値:
        URLが指すオーディオ・ファイル・データに基づくAudioInputStreamオブジェクト
        例外:
        UnsupportedAudioFileException - URLがシステムによって認識された有効なオーディオ・ファイル・データを指していない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - urlnullの場合
      • getAudioInputStream

        public static AudioInputStream getAudioInputStream​(File file)
                                                    throws UnsupportedAudioFileException,
                                                           IOException
        指定されたFileからオーディオ入力ストリームを取得します。 Fileは有効なオーディオ・ファイル・データを示す必要があります。
        パラメータ:
        file - AudioInputStreamを構築するFile
        戻り値:
        Fileが示すオーディオ・ファイル・データに基づくAudioInputStreamオブジェクト
        例外:
        UnsupportedAudioFileException - システムが認識した有効なオーディオ・ファイル・データをFileが示さない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - filenullの場合
      • getAudioFileTypes

        public static AudioFileFormat.Type[] getAudioFileTypes()
        システムがファイル書込みサポートを提供するファイル・タイプを取得します。
        戻り値:
        一意のファイル・タイプの配列。 サポートされているファイル・タイプがない場合、長さ0の配列が返される。
      • isFileTypeSupported

        public static boolean isFileTypeSupported​(AudioFileFormat.Type fileType)
        指定されたファイル・タイプのファイル書込みサポートをシステムが提供しているかどうかを示します。
        パラメータ:
        fileType - 書込み機能が照会されるファイル・タイプ
        戻り値:
        ファイル・タイプがサポートされている場合はtrue、そうでない場合はfalse
        例外:
        NullPointerException - fileTypenullの場合
      • getAudioFileTypes

        public static AudioFileFormat.Type[] getAudioFileTypes​(AudioInputStream stream)
        指定されたオーディオ入力ストリームからシステムが書き込むことができるファイル・タイプを取得します。
        パラメータ:
        stream - オーディオ・ファイル・タイプのサポートが照会されるオーディオ入力ストリーム
        戻り値:
        ファイル・タイプの配列。 サポートされているファイル・タイプがない場合、長さ0の配列が返される。
        例外:
        NullPointerException - streamnullの場合
      • isFileTypeSupported

        public static boolean isFileTypeSupported​(AudioFileFormat.Type fileType,
                                                  AudioInputStream stream)
        指定されたファイル・タイプのオーディオ・ファイルを、示されたオーディオ入力ストリームから書込みできるかどうかを示します。
        パラメータ:
        fileType - 書込み機能が照会されるファイル・タイプ
        stream - ファイル書込みサポートが照会されるストリーム
        戻り値:
        ファイル・タイプがこのオーディオ入力ストリームに対してサポートされている場合はtrue、そうでない場合はfalse
        例外:
        NullPointerException - fileTypeまたはstreamnullの場合
      • write

        public static int write​(AudioInputStream stream,
                                AudioFileFormat.Type fileType,
                                OutputStream out)
                         throws IOException
        指定されたファイル・タイプのオーディオ・ファイルを表すバイトのストリームを、指定された出力ストリームへ書き込みます。 長さをファイル・ヘッダーへ書き込む必要があるファイル・タイプもあります。あらかじめ長さがわからない場合は、そのようなタイプのファイルを最初から最後まで書き込むことができません。 そのようなタイプのファイルを書き込もうとしても、オーディオ・ファイル・タイプの長さがAudioSystem.NOT_SPECIFIEDの場合、IOExceptionで失敗します。
        パラメータ:
        stream - ファイルに書き込まれるオーディオ・データを含むオーディオ入力ストリーム
        fileType - 書き込むオーディオ・ファイルの種類
        out - ファイル・データが書き込まれるストリーム
        戻り値:
        出力ストリームへ書き込まれるバイト数
        例外:
        IOException - 入出力例外が発生した場合
        IllegalArgumentException - システムがそのファイル・タイプをサポートしていない場合
        NullPointerException - streamまたはfileTypeまたはoutnull
        関連項目:
        isFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type), getAudioFileTypes()
      • write

        public static int write​(AudioInputStream stream,
                                AudioFileFormat.Type fileType,
                                File out)
                         throws IOException
        指定されたファイル・タイプのオーディオ・ファイルを表すバイトのストリームを、指定された外部ファイルへ書き込みます。
        パラメータ:
        stream - ファイルに書き込まれるオーディオ・データを含むオーディオ入力ストリーム
        fileType - 書き込むオーディオ・ファイルの種類
        out - ファイル・データが書き込まれる外部ファイル
        戻り値:
        ファイルへ書き込まれるバイト数
        例外:
        IOException - 入出力例外が発生した場合
        IllegalArgumentException - システムがそのファイル・タイプをサポートしていない場合
        NullPointerException - streamまたはfileTypeまたはoutnull
        関連項目:
        isFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type), getAudioFileTypes()