JavaTM 2 Platform
Standard Ed. 5.0

javax.sound.sampled
クラス AudioSystem

java.lang.Object
  上位を拡張 javax.sound.sampled.AudioSystem

public class AudioSystem
extends Object

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

プロパティを使用して、特定のラインタイプのデフォルトミキサーを指定できます。システムプロパティ、プロパティファイルの両方とも使用可能です。Sun リファレンス実装では、プロパティファイルは、JRE ディレクトリ内の「lib/sound.properties」です。システムプロパティがプロパティファイル内にも存在する場合、システムプロパティのほうが優先されます。プロパティがまったく指定されていない場合は、使用可能なデバイスの中から適切なデフォルトプロパティが選択されます。プロパティファイルの構文は 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.InfogetName メソッドから返される String とマッチングされます。クラス名、ミキサー名の一方を省略することもできます。クラス名だけを指定した場合、ハッシュ記号は省略できます。

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

ミキサー名が指定されると、Mixer.Info オブジェクトの結果リストが検索されます。一致する名前を持つ最初のオブジェクト (それぞれのラインインタフェースを提供する Mixer を持つ) が返されます。一致する Mixer.Info オブジェクトが見つからない場合、またはミキサー名が指定されていない場合、結果リスト (それぞれのラインインタフェースを提供) から最初のミキサーが返されます。 たとえば、プロパティ javax.sound.sampled.Clip の値が com.sun.media.sound.MixerProvider#SunClip だとします。この場合、getLine 呼び出しで Clip インスタンスが要求されたとき、インストール済みミキサープロバイダのリスト内に com.sun.media.sound.MixerProvider クラスが存在していれば、SunClip という名前の最初のミキサーが返されます。該当するものが見つからない場合、名前とは関係なく、指定されたプロバイダの最初のミキサーから最初の Clip が返されます。存在しない場合は、getMixerInfo によって返されるすべてのミキサーのリストに含まれる SunClip という名前の最初の Mixer から最初の Clip が返されます。これも見つからない場合は、すべてのミキサーのリスト内の最初の Mixer の最初の Clip が返されます。この処理にも失敗した場合は、IllegalArgumentException がスローされます。

導入されたバージョン:
1.3
関連項目:
AudioFormat, AudioInputStream, Mixer, Line, Line.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(AudioFormat.Encoding targetEncoding, AudioInputStream sourceStream)
          指定されたオーディオ入力ストリームを変換して、示されたエンコーディングのオーディオ入力ストリームを取得します。
static AudioInputStream getAudioInputStream(AudioFormat targetFormat, AudioInputStream sourceStream)
          指定されたオーディオ入力ストリームを変換して、示された形式のオーディオ入力ストリームを取得します。
static AudioInputStream getAudioInputStream(File file)
          指定された File からオーディオ入力ストリームを取得します。
static AudioInputStream getAudioInputStream(InputStream stream)
          指定された入力ストリームからオーディオ入力ストリームを取得します。
static AudioInputStream getAudioInputStream(URL url)
          指定された URL のオーディオ入力ストリームを取得します。
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.Encoding sourceEncoding)
          インストールされた形式変換のセットを使用して、指定されたエンコーディングでオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。
static AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
          インストールされた形式変換のセットを使用して、指定された形式のオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。
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)
          指定されたファイル型のオーディオファイルを表すバイトのストリームを、指定された出力ストリームへ書き込みます。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

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 ファイル内に定義されている場合は、これらを使用してデフォルトラインを取得できます。詳細は、クラスの説明を参照してください。 それぞれのプロパティが設定されていない場合、または要求されたプロパティがインストールされていないか、要求されたラインを提供しない場合、インスタンス化されたすべてのミキサーから、要求されたラインタイプが照会されます。要求されたラインタイプを提供する最初のミキサーからラインが返されます。

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

getClip

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

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

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

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

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

getClip

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

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

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

パラメータ:
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) メソッドで開かれている必要があります。

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

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

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

パラメータ:
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) メソッドで開かれている必要があります。

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

返される 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) メソッドで開かれている必要があります。

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

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

パラメータ:
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) メソッドで開かれている必要があります。

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

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

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

パラメータ:
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 を表す (変換なし)

getTargetEncodings

public static AudioFormat.Encoding[] getTargetEncodings(AudioFormat sourceFormat)
インストールされた形式変換のセットを使用して、指定された形式のオーディオ入力ストリームからシステムが取得できるエンコーディングを取得します。

パラメータ:
sourceFormat - 変換について照会するオーディオ形式
戻り値:
エンコーディング配列。sourceFormat がサポートされない場合、配列長 0 の配列が返される。そうでない場合、配列長は 1 以上で、sourceFormat のエンコーディングを表す (変換なし)

isConversionSupported

public static boolean isConversionSupported(AudioFormat.Encoding targetEncoding,
                                            AudioFormat sourceFormat)
指定されたエンコーディングのオーディオ入力ストリームを、指定された形式のオーディオ入力ストリームから取得できるかどうかを示します。

パラメータ:
targetEncoding - 変換後の必要なエンコーディング
sourceFormat - 変換前のオーディオ形式
戻り値:
変換がサポートされている場合は true、そうでない場合は false

getAudioInputStream

public static AudioInputStream getAudioInputStream(AudioFormat.Encoding targetEncoding,
                                                   AudioInputStream sourceStream)
指定されたオーディオ入力ストリームを変換して、示されたエンコーディングのオーディオ入力ストリームを取得します。

パラメータ:
targetEncoding - 変換後の必要なエンコーディング
sourceStream - 変換されるストリーム
戻り値:
示されたエンコーディングのオーディオ入力ストリーム
例外:
IllegalArgumentException - 変換がサポートされていない場合
関連項目:
getTargetEncodings(AudioFormat.Encoding), getTargetEncodings(AudioFormat), isConversionSupported(AudioFormat.Encoding, AudioFormat), getAudioInputStream(AudioFormat, AudioInputStream)

getTargetFormats

public static AudioFormat[] getTargetFormats(AudioFormat.Encoding targetEncoding,
                                             AudioFormat sourceFormat)
特定のエンコーディングをもつ形式、およびインストールされた形式変換のセットを使用して指定された形式のストリームからシステムが取得できる形式を取得します。

パラメータ:
targetEncoding - 変換後の必要なエンコーディング
sourceFormat - 変換前のオーディオ形式
戻り値:
形式の配列。指定されたエンコーディングの形式がサポートされない場合は、長さ 0 の配列が返される

isConversionSupported

public static boolean isConversionSupported(AudioFormat targetFormat,
                                            AudioFormat sourceFormat)
指定された形式のオーディオ入力ストリームを、別の指定された形式のオーディオ入力ストリームから取得できるかどうかを示します。

パラメータ:
targetFormat - 変換後の必要なオーディオ形式
sourceFormat - 変換前のオーディオ形式
戻り値:
変換がサポートされている場合は true、そうでない場合は false

getAudioInputStream

public static AudioInputStream getAudioInputStream(AudioFormat targetFormat,
                                                   AudioInputStream sourceStream)
指定されたオーディオ入力ストリームを変換して、示された形式のオーディオ入力ストリームを取得します。

パラメータ:
targetFormat - 変換後の必要なオーディオ形式
sourceStream - 変換されるストリーム
戻り値:
示された形式のオーディオ入力ストリーム
例外:
IllegalArgumentException - 変換がサポートされない場合
関連項目:
getTargetFormats(AudioFormat.Encoding, AudioFormat), isConversionSupported(AudioFormat, AudioFormat), getAudioInputStream(AudioFormat.Encoding, AudioInputStream)

getAudioFileFormat

public static AudioFileFormat getAudioFileFormat(InputStream stream)
                                          throws UnsupportedAudioFileException,
                                                 IOException
指定された入力ストリームのオーディオファイル形式を取得します。ストリームは有効なオーディオファイルデータを示す必要があります。このメソッドの実装には、ストリームを検証してそのストリームがサポートされるかどうかを判定する複数のパーサが必要な場合があります。これらのパーサは、ストリームをマークし、ストリームをサポートするかどうかを判定するのに十分なデータを読み取り、サポートしない場合はストリームの読み取りポインタを元の位置に戻す、という機能が必要です。入力ストリームがこれらの操作をサポートしない場合、このメソッドは IOException を表示して失敗することがあります。

パラメータ:
stream - ファイル形式情報を抽出する入力ストリーム
戻り値:
ストリームのオーディオファイル形式を記述する AudioFileFormat オブジェクト
例外:
UnsupportedAudioFileException - システムが認識した有効なオーディオファイルデータをストリームが示さない場合
IOException - 入出力例外が発生した場合
関連項目:
InputStream.markSupported(), InputStream.mark(int)

getAudioFileFormat

public static AudioFileFormat getAudioFileFormat(URL url)
                                          throws UnsupportedAudioFileException,
                                                 IOException
指定された URL のオーディオファイル形式を取得します。URL は、有効なオーディオファイルデータを示す必要があります。

パラメータ:
url - ファイル形式情報を抽出する URL
戻り値:
オーディオファイル形式を記述する AudioFileFormat オブジェクト
例外:
UnsupportedAudioFileException - システムが認識した有効なオーディオファイルデータを URL が示さない場合
IOException - 入出力例外が発生した場合

getAudioFileFormat

public static AudioFileFormat getAudioFileFormat(File file)
                                          throws UnsupportedAudioFileException,
                                                 IOException
指定された File のオーディオファイル形式を取得します。File は有効なオーディオファイルデータを示す必要があります。

パラメータ:
file - ファイル形式情報を抽出する File
戻り値:
オーディオファイル形式を記述する AudioFileFormat オブジェクト
例外:
UnsupportedAudioFileException - システムが認識した有効なオーディオファイルデータを File が示さない場合
IOException - 入出力例外が発生した場合

getAudioInputStream

public static AudioInputStream getAudioInputStream(InputStream stream)
                                            throws UnsupportedAudioFileException,
                                                   IOException
指定された入力ストリームからオーディオ入力ストリームを取得します。ストリームは有効なオーディオファイルデータを示す必要があります。このメソッドの実装には、ストリームを検証してそのストリームがサポートされるかどうかを判定する複数のパーサが必要な場合があります。これらのパーサは、ストリームをマークし、ストリームをサポートするかどうかを判定するのに十分なデータを読み取り、サポートしない場合はストリームの読み取りポインタを元の位置に戻す、という機能が必要です。入力ストリームがこれらの操作をサポートしない場合、このメソッドは IOException を表示して失敗することがあります。

パラメータ:
stream - AudioInputStream を構築する入力ストリーム
戻り値:
入力ストリームに含まれるオーディオファイルデータに基づく AudioInputStream オブジェクト
例外:
UnsupportedAudioFileException - システムが認識した有効なオーディオファイルデータをストリームが示さない場合
IOException - 入出力例外が発生した場合
関連項目:
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 - 入出力例外が発生した場合

getAudioInputStream

public static AudioInputStream getAudioInputStream(File file)
                                            throws UnsupportedAudioFileException,
                                                   IOException
指定された File からオーディオ入力ストリームを取得します。File は有効なオーディオファイルデータを示す必要があります。

パラメータ:
file - AudioInputStream を構築する File
戻り値:
File が示すオーディオファイルデータに基づく AudioInputStream オブジェクト
例外:
UnsupportedAudioFileException - システムが認識した有効なオーディオファイルデータを File が示さない場合
IOException - 入出力例外が発生した場合

getAudioFileTypes

public static AudioFileFormat.Type[] getAudioFileTypes()
システムがファイル書き込みサポートを提供するファイル型を取得します。

戻り値:
一意のファイル型の配列。サポートされているファイル型がない場合、長さ 0 の配列が返される

isFileTypeSupported

public static boolean isFileTypeSupported(AudioFileFormat.Type fileType)
指定されたファイル型のファイル書き込みサポートをシステムが提供しているかどうかを示します。

パラメータ:
fileType - 書き込み機能が照会されるファイル型
戻り値:
ファイル型がサポートされている場合は true、そうでない場合は false

getAudioFileTypes

public static AudioFileFormat.Type[] getAudioFileTypes(AudioInputStream stream)
指定されたオーディオ入力ストリームからシステムが書き込むことができるファイル型を取得します。

パラメータ:
stream - オーディオファイル型のサポートが照会されるオーディオ入力ストリーム
戻り値:
ファイル型の配列。サポートされているファイル型がない場合、長さ 0 の配列が返される

isFileTypeSupported

public static boolean isFileTypeSupported(AudioFileFormat.Type fileType,
                                          AudioInputStream stream)
指定されたファイル型のオーディオファイルを、示されたオーディオ入力ストリームから書き込みできるかどうかを示します。

パラメータ:
fileType - 書き込み機能が照会されるファイル型
stream - ファイル書き込みサポートが照会されるストリーム
戻り値:
ファイル型がこのオーディオ入力ストリームに対してサポートされている場合は true、そうでない場合は false

write

public static int write(AudioInputStream stream,
                        AudioFileFormat.Type fileType,
                        OutputStream out)
                 throws IOException
指定されたファイル型のオーディオファイルを表すバイトのストリームを、指定された出力ストリームへ書き込みます。長さをファイルヘッダへ書き込む必要があるファイル型もあります。あらかじめ長さがわからない場合は、そのような型のファイルを最初から最後まで書き込むことができません。オーディオファイル型の長さが AudioSystem.NOT_SPECIFIED の場合、このファイルを書き込もうとすると、IOException が表示されて失敗します。

パラメータ:
stream - ファイルに書き込まれるオーディオデータを含むオーディオ入力ストリーム
fileType - 書き込むオーディオファイルの種類
out - ファイルデータが書き込まれるストリーム
戻り値:
出力ストリームへ書き込まれるバイト数
例外:
IOException - 入出力例外が発生した場合
IllegalArgumentException - システムがそのファイル型をサポートしていない場合
関連項目:
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 - システムがそのファイル型をサポートしていない場合
関連項目:
isFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type), getAudioFileTypes()

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。