The OGG/Vorbis file format, as defined by http://www.vorbis.com/, is a scheme
for compressing audio streams by multiple factors with a minimum of
quality loss. This extension adds Ogg Vorbis support to PHP's
URL Wrappers. When used in read mode,
compressed OGG/Vorbis data is expanded to raw PCM audio in one of six PCM
encoding formats listed below.
This extension has no configuration directives defined in php.ini.
oggvorbis is installed through the usual PECL package installation process.
Table 1. OGG/Vorbis tuning options
Option | Definition | Relevance | Default |
---|
pcm_mode | PCM byte encoding used. See constants below. | Read / Write | OGGVORBIS_PCM_S16_LE |
rate | PCM Sampling rate. Measured in Hz. | Write only | 44100 |
bitrate |
Vorbis Average Bitrate Encoding / Variable Bitrate Encoding.
Measured in bps (ABR) or Quality level (VBR: 0.0 to 1.0).
128000 ABR is rough equal to 0.4 VBR.
| Write only | 128000 |
channels | Number of PCM channels. 1 == Mono, 2 == Stereo. | Write only | 2 |
serialno |
Serial Number of stream within file. Must be unique within file.
Because of the potential to select a duplicate serial number within
a chained file, make efforts to manually assign unique numbers when
encoding.
| Write only | Random |
comments |
Associative array of file comments.
Will be translated to strtoupper($name) . "=$value".
Note: This context option is not available in oggvorbis-0.1
| Write only | array('ENCODER' => 'PHP/OggVorbis, http://pear.php.net/oggvorbis') |
The constants below are defined by this extension, and
will only be available when the extension has either
been compiled into PHP or dynamically loaded at runtime.
Table 2. OGG/Vorbis supports PCM encodings in the following formats
Constant | Definition |
---|
OGGVORBIS_PCM_U8 | Unsigned 8-bit PCM. |
OGGVORBIS_PCM_S8 | Signed 8-bit PCM. |
OGGVORBIS_PCM_U16_LE | Unsigned 16-bit PCM. Little Endian byte order. |
OGGVORBIS_PCM_U16_BE | Unsigned 16-bit PCM. Big Endian byte order. |
OGGVORBIS_PCM_S16_LE | Signed 16-bit PCM. Little Endian byte order. |
OGGVORBIS_PCM_S16_BE | Signed 16-bit PCM. Big Endian byte order. |