CVI. oggvorbis

導入

OGG/Vorbis ファイルフォーマットは http://www.vorbis.com/ で定義されており、 音質の劣化を最小限に抑えた圧縮オーディオストリームを提供する仕組みです。 この拡張モジュールは、PHP の URL ラッパ を Ogg Vorbis に対応させます。読み込みモードで使用した場合は、以下の表の 6 つの PCM エンコーディングフォーマットのうちひとつを用いて OGG/Vorbis 圧縮データを PCM オーディオに展開します。

要件

この拡張モジュールは、PHP >= 4.3.0libogg >= 1.0 および libvorbis >= 1.0 を必要とします。

実行時設定

設定ディレクティブは定義されていません。

インストール手順

oggvorbis は、一般的な PECL パッケージと同じ手順でインストールします。

  • $ pear install oggvorbis

  • 出来上がった oggvorbis.so を適切な場所にコピーし、 extension=oggvorbis.sophp.ini ファイルに 追加するか、スクリプト中で dl('oggvorbis.so'); を使用して動的に読み込みます。

Context options

表 1. OGG/Vorbis のチューニングオプション

オプション定義モードデフォルト
pcm_mode使用する PCM バイトエンコーディング形式。以下の定数を参照ください。Read / WriteOGGVORBIS_PCM_S16_LE
ratePCM サンプリングレート。Hz 単位。Write only44100
bitrate Vorbis 平均ビットレート(ABR)/ 可変ビットレート(VBR)。 bps 単位(ABR)あるいは品質レベル(VBR: 0.0 から 1.0)。 128000 ABR と 0.4 VBR がほぼ同じレベルです。 Write only128000
channelsPCM チャネル数。1 == モノラル、2 == ステレオ。Write only2
serialno ファイル内のストリームのシリアル番号。ファイル内で一意である必要が あります。連結したファイル内でシリアル番号が重複してしまう可能性が あるため、エンコードの際には手動で一意の番号を割り当てるよう注意して ください。 Write onlyRandom
comments ファイルについてのコメントの連想配列。 strtoupper($name) . "=$value" 形式に変換されます。 注意: このオプションは、oggvorbis-0.1 では使用できません。 Write onlyarray('ENCODER' => 'PHP/OggVorbis, http://pear.php.net/oggvorbis')

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

表 2. OGG/Vorbis は、以下のフォーマットの PCM エンコーディングをサポートします

定数定義
OGGVORBIS_PCM_U8符号なし 8 ビット PCM。
OGGVORBIS_PCM_S8符号付き 8 ビット PCM。
OGGVORBIS_PCM_U16_LE符号なし 16 ビット PCM。リトルエンディアンバイトオーダー。
OGGVORBIS_PCM_U16_BE符号なし 16 ビット PCM。ビッグエンディアンバイトオーダー。
OGGVORBIS_PCM_S16_LE符号付き 16 ビット PCM。リトルエンディアンバイトオーダー。
OGGVORBIS_PCM_S16_BE符号付き 16 ビット PCM。ビッグエンディアンバイトオーダー。
目次
使用方法 --  ogg:// ラッパの使用例