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

インタフェースLine

すべてのスーパー・インタフェース:
AutoCloseable
既知のすべてのサブインタフェース:
Clip, DataLine, Mixer, Port, SourceDataLine, TargetDataLine

public interface Line extends AutoCloseable
Lineインタフェースは、モノラル・チャネルまたは多重チャネルのオーディオ・フィードを表します。 ラインは、ミキサー、入出力ポート、ミキサーへのデータ入出力パスなどの、デジタル・オーディオ「パイプライン」の1要素です。

ラインにはゲイン、パン、リバーブなどのコントロールがあります。 コントロール自体は、ベースControlクラスを拡張するクラスのインスタンスです。 Lineインタフェースには、行のコントロールを取得するための2つのアクセサ・メソッドが用意されています: getControlsはセット全体を返し、getControlは指定されたタイプの単一の制御を返します。

ラインは時間によってさまざまな状態で存在します。 ラインが開くと、ライン自体のためにシステム・リソースが確保され、ラインが閉じると、これらのリソースはほかのオブジェクトまたはアプリケーションのために解放されます。 isOpen()メソッドを使用すると、行が開いているか閉じているかを確認できます。 ただしラインが開いていても、データを処理しているとは限りません。 このような処理は、通常、SourceDataLine.writeTargetDataLine.readなどのサブインタフェース・メソッドによって開始されます。

オブジェクトを登録して、ラインの状態が変化するたびに通知を受け取ることができます。 オブジェクトは、単一のメソッドupdateで構成されるLineListenerインタフェースを実装する必要があります。 このメソッドは、(そして、DataLineの場合、起動時および停止時)を開いたり閉じたりするときに呼び出されます。

オブジェクトを登録して複数のラインを監視することができます。 オブジェクトがupdateメソッドで受信するイベントは、どのラインがイベントを作成したのか、それはどのタイプのイベントか(OPENCLOSESTART、またはSTOP)、およびイベント発生時ラインがどれだけのサンプル・フレームを処理し終わっているかを指定します。

開閉などの一定のライン操作は、ラインが共有オーディオ・リソースであるときに特権を持たないコードによって呼び出された場合、セキュリティ例外を生成することがあります。

導入されたバージョン:
1.3
関連項目: