39.1. al
--- SGIのオーディオ機能¶
バージョン 2.6 で非推奨: al
モジュールは Python 3 で削除されました。
このモジュールを使うと、SGI Indy と Indigo ワークステーションのオーディオ装置にアクセスできます。詳しくは IRIX の man ページのセクション 3A を参照してください。ここに書かれた関数が何をするかを理解するには、man ページを読む必要があります! IRIX のリリース 4.0.5 より前のものでは使えない関数もあります。お使いのプラットフォームで特定の関数が使えるかどうか、マニュアルで確認してください。
このモジュールで定義された関数とメソッドは全て、名前に AL
の接頭辞を付けた C の関数と同義です。
C のヘッダーファイル <audio.h>
のシンボル定数は標準モジュール AL
に定義されています。下記を参照してください。
警告
オーディオライブラリの現在のバージョンは、不正な引数が渡されるとエラーステイタスが返るのではなく、coreを吐き出すことがあります。残念ながら、この現象が確実に起こる環境は述べられていないし、確認することは難しいので、 Python インターフェースでこの種の問題に対して防御することはできません。(一つの例は過大なキューサイズを特定することです --- 上限については記載されていません。)
このモジュールには、以下の関数が定義されています:
-
al.
openport
(name, direction[, config])¶ 引数 name と direction は文字列です。省略可能な引数 config は、
newconfig()
で返されるコンフィギュレーションオブジェクトです。返り値は audio port object です;オーディオポートオブジェクトのメソッドは下に書かれています。
-
al.
newconfig
()¶ 返り値は新しい audio configuration object です;オーディオコンフィギュレーションオブジェクトのメソッドは下に書かれています。
-
al.
queryparams
(device)¶ 引数 device は整数です。返り値は
ALqueryparams()
で返されるデータを含む整数のリストです。
-
al.
getparams
(device, list)¶ 引数 device は整数です。引数 list は
queryparams()
で返されるようなリストです;queryparams()
を適切に(!)修正して使うことができます。
-
al.
setparams
(device, list)¶ 引数 device は整数です。引数 list は
queryparams()
で返されるようなリストです。
39.1.1. コンフィギュレーションオブジェクト¶
newconfig()
で返されるコンフィギュレーションオブジェクトには以下のメソッドがあります:
-
audio configuration.getqueuesize()
キューサイズを返します。
-
audio configuration.setqueuesize(size)
キューサイズを設定します。
-
audio configuration.getwidth()
サンプルサイズを返します。
-
audio configuration.setwidth(width)
サンプルサイズを設定します。
-
audio configuration.getchannels()
チャンネル数を返します。
-
audio configuration.setchannels(nchannels)
チャンネル数を設定します。
-
audio configuration.getsampfmt()
サンプルのフォーマットを返します。
-
audio configuration.setsampfmt(sampfmt)
サンプルのフォーマットを設定します。
-
audio configuration.getfloatmax()
浮動小数点数でサンプルデータの最大値を返します。
-
audio configuration.setfloatmax(floatmax)
浮動小数点数でサンプルデータの最大値を設定します。
39.1.2. ポートオブジェクト¶
openport()
で返されるポートオブジェクトには以下のメソッドがあります:
-
audio port.closeport()
ポートを閉じます。
-
audio port.getfd()
ファイルデスクリプタを整数で返します。
-
audio port.getfilled()
バッファに存在するサンプルの数を返します。
-
audio port.getfillable()
バッファの空きに入れることのできるサンプルの数を返します。
-
audio port.readsamps(nsamples)
必要ならブロックして、キューから指定のサンプル数を読み込みます。生データを文字列として(例えば、サンプルサイズが 2 バイトならサンプル当たり 2 バイトが big-endian (high byte、low byte) で)返します。
-
audio port.writesamps(samples)
必要ならブロックして、キューにサンプルを書き込みます。サンプルは
readsamps()
で返される値のようにエンコードされていなければなりません。
-
audio port.getfillpoint()
'fill point' を返します。
-
audio port.setfillpoint(fillpoint)
'fill point' を設定します。
-
audio port.getconfig()
現在のポートのコンフィギュレーションを含んだコンフィギュレーションオブジェクトを返します。
-
audio port.setconfig(config)
コンフィギュレーションを引数に取り、そのコンフィギュレーションに設定します。
-
audio port.getstatus(list)
最後のエラーについてのステイタスの情報を返します。