|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Line
インタフェースは、モノラルチャネルまたは多重チャネルのオーディオ送りを表します。ラインは、ミキサー、入出力ポート、ミキサーへのデータ入出力パスなどの、デジタルオーディオ「パイプライン」の 1 要素です。
ラインはゲイン、パン、リーバーブなどをコントロールすることができます。コントロール自体は、基底
クラスを拡張するクラスのインスタンスです。Control
Line
インタフェースはラインをコントロールするためのアクセス用メソッドを 2 つ提供します。
はセット全体を返し、getControls
は指定された単一のコントロールを返します。
getControl
ラインは時間によってさまざまな状態で存在します。ラインが開くと、ライン自体のためにシステムリソースが確保され、ラインが閉じると、これらのリソースは他のオブジェクトまたはアプリケーションのために解放されます。
メソッドにより、ラインが開いているか閉じているかを確認できます。ただしラインが開いていても、データを処理しているとは限りません。データ処理は通常、isOpen()
や SourceDataLine.write
などのサブインタフェースのメソッドによって開始されます。
TargetDataLine.read
オブジェクトを登録して、ラインの状態が変化するたびに通知を受け取ることができます。オブジェクトは、単一のメソッド
で構成される update
interface インタフェースを実装している必要があります。このメソッドはラインの開閉時に呼び出されます。ラインが LineListener
DataLine
である場合は、開始および停止時に呼び出されます。
オブジェクトを登録して複数のラインを監視することができます。オブジェクトが update
メソッドで受信するイベントは、どのラインがイベントを作成したのか、それはどのタイプのイベントか (OPEN
、CLOSE
、START
、または STOP
)、およびイベント発生時ラインがどれだけのサンプルフレームを処理し終わっているかを指定します。
開閉などの一定のライン操作は、ラインが共有オーディオリソースであるときに特権を持たないコードによって呼び出された場合、セキュリティ例外を生成することがあります。
LineEvent
入れ子クラスの概要 | |
static class |
Line.Info
Line.Info オブジェクトは、ラインに関する情報を含んでいます。 |
メソッドの概要 | |
void |
addLineListener(LineListener listener)
リスナーにこのラインを追加します。 |
void |
close()
ラインを閉じ、ラインで使用していたシステムリソースを解放できることを示します。 |
Control |
getControl(Control.Type control)
指定されたタイプのコントロールがある場合、そのコントロールを取得します。 |
Control[] |
getControls()
このラインに関連するコントロールのセットを取得します。 |
Line.Info |
getLineInfo()
このラインを説明する Line.Info オブジェクトを取得します。 |
boolean |
isControlSupported(Control.Type control)
指定されたタイプのコントロールをラインがサポートしているかどうかを示します。 |
boolean |
isOpen()
ラインが開いているかどうか、つまり現在はサウンドを再生または収集していなくてもシステムリソースを確保し操作可能であるかどうかを示します。 |
void |
open()
ラインを開き、必要なシステムリソースを獲得して操作可能になっていることを示します。 |
void |
removeLineListener(LineListener listener)
このラインのリスナーのリストから、指定されたリスナーを削除します。 |
メソッドの詳細 |
public Line.Info getLineInfo()
Line.Info
オブジェクトを取得します。
public void open() throws LineUnavailableException
OPEN
イベントがラインのリスナーにディスパッチされます。
ラインによっては、一度閉じると再び開くことはできない点に注意してください。こうしたラインを再度開こうとすると、常に LineUnavailableException
が表示されます。
ラインの種類によっては、リソースの割り当てに影響を与える設定可能なプロパティを持っているものもあります。たとえば、DataLine
は特定のフォーマットおよびバッファサイズで開く必要があります。こうしたラインは、open
メソッド、または望ましい設定をアプリケーションで指定できるメソッドを追加するなどして、これらのプロパティを設定する機能を提供します
このメソッドは引数をとらず、現在の設定でラインを開きます。これは、
および SourceDataLine
オブジェクトの場合、ラインがデフォルト設定で開くことを意味します。しかし TargetDataLine
の場合、バッファサイズはデータをロードするときに決定されます。このメソッドではロードするデータをアプリケーションで指定できないので、このメソッドはクリップのリソースにゼロフレームのデータを割り当てます。続いてデータをそのクリップにロードする手段はありません。したがって、この代わりに、Clip
Clip
インタフェースに備わっている open
メソッドの 1 つを使って、データを Clip
にロードします。
LineUnavailableException
- リソースの制約のためにラインを開けない場合
SecurityException
- セキュリティ上の制約のためにラインを開けない場合close()
,
isOpen()
,
LineEvent
,
DataLine
,
Clip.open(AudioFormat, byte[], int, int)
,
Clip.open(AudioInputStream)
public void close()
CLOSE
イベントがラインのリスナーにディスパッチされます。
SecurityException
- セキュリティ上の制約のためにラインを閉じることができない場合open()
,
isOpen()
,
LineEvent
public boolean isOpen()
true
、そうでない場合は false
open()
,
close()
public Control[] getControls()
getControl(javax.sound.sampled.Control.Type)
public boolean isControlSupported(Control.Type control)
control
- サポートが照会されるコントロールのタイプ
true
、そうでない場合は false
public Control getControl(Control.Type control)
control
- 要求されたコントロールのタイプ
IllegalArgumentException
- 指定されたタイプのコントロールがサポートされていない場合getControls()
,
isControlSupported(Control.Type control)
public void addLineListener(LineListener listener)
update()
メソッドが呼び出され、変化を説明する update()
オブジェクトが示されます。
listener
- リスナーとしてこのラインに追加するオブジェクトremoveLineListener(javax.sound.sampled.LineListener)
,
LineListener.update(javax.sound.sampled.LineEvent)
,
LineEvent
public void removeLineListener(LineListener listener)
listener
- 削除するリスナーaddLineListener(javax.sound.sampled.LineListener)
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.