betz            Fri Jun 17 19:05:15 2005 EDT

  Added files:                 
    /phpdoc/en/reference/oggvorbis      configure.xml constants.xml 
                                        contexts.xml reference.xml 
  Log:
  move oggvorbis from peardoc
  
  
http://cvs.php.net/co.php/phpdoc/en/reference/oggvorbis/configure.xml?r=1.1&p=1
Index: phpdoc/en/reference/oggvorbis/configure.xml
+++ phpdoc/en/reference/oggvorbis/configure.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<section id="oggvorbis.installation">
 &reftitle.install;
 <simpara>
  oggvorbis is installed through the usual PECL package installation process.
 </simpara>
 <itemizedlist>
  <listitem>
   <para>
    <screen>
$ pear install Net_Gopher
    </screen> 
   </para>
  </listitem>
  <listitem>
   <simpara>
    Copy the resulting <literal>oggvorbis.so</literal> to an appropriate
    location and add <literal>extension=oggvorbis.so</literal> to your
    &php.ini; file or load it dynamically in your PHP script using 
    <literal>dl(&quot;oggvorbis.so&quot;);</literal>
   </simpara>
  </listitem>
 </itemizedlist>
</section>


<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

http://cvs.php.net/co.php/phpdoc/en/reference/oggvorbis/constants.xml?r=1.1&p=1
Index: phpdoc/en/reference/oggvorbis/constants.xml
+++ phpdoc/en/reference/oggvorbis/constants.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<section id="oggvorbis.constants">
 &reftitle.constants;
 &extension.constants;
 <table>
  <title>OGG/Vorbis supports PCM encodings in the following formats</title>
  <tgroup cols="2">
   <thead>
    <row>
     <entry>Constant</entry>
     <entry>Definition</entry>
    </row>
   </thead>
   <tbody>
    <row>
     <entry><constant>OGGVORBIS_PCM_U8</constant></entry>
     <entry>Unsigned 8-bit PCM.</entry>
    </row>
    <row>
     <entry><constant>OGGVORBIS_PCM_S8</constant></entry>
     <entry>Signed 8-bit PCM.</entry>
    </row>
    <row>
     <entry><constant>OGGVORBIS_PCM_U16_LE</constant></entry>
     <entry>Unsigned 16-bit PCM. Little Endian byte order.</entry>
    </row>
    <row>
     <entry><constant>OGGVORBIS_PCM_U16_BE</constant></entry>
     <entry>Unsigned 16-bit PCM. Big Endian byte order.</entry>
    </row>
    <row>
     <entry><constant>OGGVORBIS_PCM_S16_LE</constant></entry>
     <entry>Signed 16-bit PCM. Little Endian byte order.</entry>
    </row>
    <row>
     <entry><constant>OGGVORBIS_PCM_S16_BE</constant></entry>
     <entry>Signed 16-bit PCM. Big Endian byte order.</entry>
    </row>
   </tbody>
  </tgroup>
 </table>
</section>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

http://cvs.php.net/co.php/phpdoc/en/reference/oggvorbis/contexts.xml?r=1.1&p=1
Index: phpdoc/en/reference/oggvorbis/contexts.xml
+++ phpdoc/en/reference/oggvorbis/contexts.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<section id="oggvorbis.contexts">  
 <title>Context options</title>
 <table>
  <title>OGG/Vorbis tuning options</title>
  <tgroup cols="4">
   <thead>
    <row>
     <entry>Option</entry>
     <entry>Definition</entry>
     <entry>Relevance</entry>
     <entry>Default</entry>
    </row>
   </thead>
   <tbody>
    <row>
     <entry>pcm_mode</entry>
     <entry>PCM byte encoding used.  See constants below.</entry>
     <entry>Read / Write</entry>
     <entry><constant>OGGVORBIS_PCM_S16_LE</constant></entry>
    </row>
    <row>
     <entry>rate</entry>
     <entry>PCM Sampling rate.  Measured in Hz.</entry>
     <entry>Write only</entry>
     <entry><constant>44100</constant></entry>
    </row>
    <row>
     <entry>bitrate</entry>
     <entry>
      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.
     </entry>
     <entry>Write only</entry>
     <entry><constant>128000</constant></entry>
    </row>
    <row>
     <entry>channels</entry>
     <entry>Number of PCM channels.  1 == Mono, 2 == Stereo.</entry>
     <entry>Write only</entry>
     <entry><constant>2</constant></entry>
    </row>
    <row>
     <entry>serialno</entry>
     <entry>
      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.
     </entry>
     <entry>Write only</entry>
     <entry><emphasis>Random</emphasis></entry>
    </row>
    <row>
     <entry>comments</entry>
     <entry>
      Associative array of file comments.  
      Will be translated to <literal>strtoupper($name) . "=$value"</literal>.
      Note: This context option is not available in oggvorbis-0.1
     </entry>
     <entry>Write only</entry>
     <entry><constant>array('ENCODER' => 'PHP/OggVorbis, 
http://pear.php.net/oggvorbis')</constant></entry>
    </row>
   </tbody>
  </tgroup>
 </table>
</section>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

http://cvs.php.net/co.php/phpdoc/en/reference/oggvorbis/reference.xml?r=1.1&p=1
Index: phpdoc/en/reference/oggvorbis/reference.xml
+++ phpdoc/en/reference/oggvorbis/reference.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<reference id="ref.oggvorbis">
 <title>oggvorbis</title>
 <titleabbrev>OGG/Vorbis</titleabbrev>

 <partintro>
  <section id="oggvorbis.intro">
   &reftitle.intro;
   <simpara>
    The OGG/Vorbis file format, as defined by <ulink 
url="&url.ogg;">&url.ogg;</ulink>
    and <ulink url="&url.ogg.vorbis;">&url.ogg.vorbis;</ulink>, is a scheme
    for compressing audio streams by multiple factors with a minimum of
    quality loss. This extension adds oggvorbis support to PHP&apos;s
    <link linkend="wrappers">URL Wrappers</link>. When used in read mode,
    compressed OGG/Vorbis data is expanded to raw PCM audio in one of six PCM
    encoding formats listed below.
   </simpara>
  </section>

  <section id="oggvorbis.requirements">
   &reftitle.required;
   <para>
    This extensiion requires <literal>PHP &gt;= 4.3.0</literal>,
    <ulink url="&url.ogg.vorbis.downloads;">libogg</ulink> &gt;= 1.0, and
    <ulink url="&url.ogg.vorbis.downloads;">libvorbis</ulink> &gt;= 1.0.
   </para>
  </section>

   <section id="oggvorbis.configuration">
    &reftitle.runtime;
    &no.config;
   </section>

<!--
   &reference.oggvorbis.configure;

   &reference.oggvorbis.contexts;

   &reference.oggvorbis.constants;
-->
 </partintro>  
 <refentry>
  <refnamediv>
   <refname>Usage</refname>
   <refpurpose>
    Examples on using the ogg:// wrapper.
   </refpurpose>
  </refnamediv>

  <refsect1 role="examples"> 
  &reftitle.examples;
   <para>
    <example>
     <title>Reading an OGG/Vorbis file</title>
     <programlisting role="php">
<![CDATA[
<?php
dl("oggvorbis.so");

/* By default, ogg:// will decode to Signed 16-bit Little Endian */
$fp = fopen('ogg://myaudio.ogg', 'r');

/* Collect some information about the file. */
$metadata = stream_get_meta_data($fp);

/* Inspect the first song (usually the only song, 
   but OGG/Vorbis files may be chained) */
$songdata = $metadata['wrapper_data'][0];

echo "OGG/Vorbis file encoded by: {$songdata['vendor']}\n.";
echo "  {$songdata['channels']} channels of {$songdata['rate']}Hz sampling 
encoded at {$songdata['bitrate_nominal']}bps.\n";
foreach($songdata['comments'] as $comment) {
    echo "  $comment\n";
}

while ($audio_data = fread($fp, 8192)) {
  /* Do something with the PCM audio we're extracting from the OGG.
     Copying to /dev/dsp is a good target on linux systems, 
     just remember to setup the device for your sampling mode first. */
}

fclose($fp);

?>
]]>
     </programlisting>
    </example>
   </para>

   <para>
    <example>
     <title>Encode an audio file to OGG/Vorbis</title>
     <programlisting role="php">
<![CDATA[
<?php
dl('oggvorbis.so');

$context = stream_context_create(array('ogg'=>array(
             'pcm_mode' => OGGVORBIS_PCM_S8,  /* Signed 8bit audio */
             'rate' => 44100,                 /* 44kHz CD quality */
             'bitrate' => 0.5,                /* Midquality VBR */
             'channels' => 1,                 /* Mono */
             'serialno' => 12345)));          /* Unique within our stream */

/* Open file for appending.  This will "chain" a second OGG stream at the end 
of the first. */
$ogg = fopen('ogg://mysong.ogg', 'a', false, $context);

$pcm = fopen('mysample.pcm', 'r');

/* Compress the raw PCM audio from mysample.pcm into mysong.ogg */
stream_copy_to_stream($pcm, $ogg);

fclose($pcm);
fclose($ogg);
?>
]]>
     </programlisting>
    </example>
   </para>
  </refsect1>
 </refentry>
</reference>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

Reply via email to