Bug 901583: Reapply mozilla patches on top of webrtc.org 3.34, use NEON detection...
[gecko.git] / media / libvorbis / README
blob3e969e0ceb8ba8a2589f5188172553748fb71d2c
1 ********************************************************************
2 *                                                                  *
3 * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
5 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
7 *                                                                  *
8 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007             *
9 * by the Xiph.org Foundation, http://www.xiph.org/                 *
10 *                                                                  *
11 ********************************************************************
13 Vorbis is a general purpose audio and music encoding format
14 contemporary to MPEG-4's AAC and TwinVQ, the next generation beyond
15 MPEG audio layer 3. Unlike the MPEG sponsored formats (and other
16 proprietary formats such as RealAudio G2 and Windows' flavor of the
17 month), the Vorbis CODEC specification belongs to the public domain.
18 All the technical details are published and documented, and any
19 software entity may make full use of the format without license 
20 fee, royalty or patent concerns.
22 This package contains:
24 * libvorbis, a BSD-style license software implementation of
25   the Vorbis specification by the Xiph.Org Foundation 
26   (http://www.xiph.org/) 
28 * libvorbisfile, a BSD-style license convenience library
29   built on Vorbis designed to simplify common uses
31 * libvorbisenc, a BSD-style license library that provides a simple,
32   programmatic encoding setup interface 
34 * example code making use of libogg, libvorbis, libvorbisfile and
35   libvorbisenc
37 WHAT'S HERE:
39 This source distribution includes libvorbis and an example
40 encoder/player to demonstrate use of libvorbis as well as
41 documentation on the Ogg Vorbis audio coding format.
43 You'll need libogg (distributed separately) to compile this library.
44 A more comprehensive set of utilities is available in the vorbis-tools
45 package.
47 Directory:
49 ./lib           The source for the libraries, a BSD-license implementation
50                 of the public domain Ogg Vorbis audio encoding format.
52 ./include       Library API headers
54 ./debian        Rules/spec files for building Debian .deb packages
56 ./doc           Vorbis documentation
58 ./examples      Example code illustrating programmatic use of libvorbis, 
59                 libvorbisfile and libvorbisenc
61 ./mac           Codewarrior project files and build tweaks for MacOS.
63 ./macosx        Project files for MacOS X.
65 ./win32         Win32 projects files and build automation
67 ./vq            Internal utilities for training/building new LSP/residue 
68                 and auxiliary codebooks.
70 CONTACT:
72 The Ogg homepage is located at 'http://www.xiph.org/ogg/'.
73 Vorbis's homepage is located at 'http://www.xiph.org/vorbis/'.
74 Up to date technical documents, contact information, source code and
75 pre-built utilities may be found there.
77 The user website for Ogg Vorbis software and audio is http://vorbis.com/
79 BUILDING FROM TRUNK:
81 Development source is under subversion revision control at 
82 https://svn.xiph.org/trunk/vorbis/. You will also need the 
83 newest versions of autoconf, automake, libtool and pkg-config in
84 order to compile Vorbis from development source. A configure script
85 is provided for you in the source tarball distributions.
87   [update or checkout latest source]
88   ./autogen.sh
89   make
91 and as root if desired:
93   make install
95 This will install the Vorbis libraries (static and shared) into
96 /usr/local/lib, includes into /usr/local/include and API manpages
97 (once we write some) into /usr/local/man.
99 Documentation building requires xsltproc and pdfxmltex.
101 BUILDING FROM TARBALL DISTRIBUTIONS:
103   ./configure
104   make
106 and optionally (as root):
107   make install
109 BUILDING RPMS:
111 after normal configuring:
113   make dist
114   rpm -ta libvorbis-<version>.tar.gz
116 BUILDING ON MACOS 9:
118 Vorbis on MacOS 9 is built using Metroworks CodeWarrior.  To build it, 
119 first verify that the Ogg libraries are already built following the
120 instructions in the Ogg module README.  Open vorbis/mac/libvorbis.mcp,
121 switch to the "Targets" pane, select everything, and make the project.
122 Do the same thing to build libvorbisenc.mcp, and libvorbisfile.mcp (in
123 that order).  In vorbis/mac/Output you will now have both debug and final
124 versions of Vorbis shared libraries to link your projects against.
126 To build a project using Ogg Vorbis, add access paths to your
127 CodeWarrior project for the ogg/include, ogg/mac/Output,
128 vorbis/include, and vorbis/mac/Output folders.  Be sure that
129 "interpret DOS and Unix paths" is turned on in your project; it can
130 be found in the "access paths" pane in your project settings.  Now
131 simply add the shared libraries you need to your project (OggLib and
132 VorbisLib at least) and #include "ogg/ogg.h" and "vorbis/codec.h"
133 wherever you need to access Ogg and Vorbis functionality.