1 | # Ogg
|
---|
2 |
|
---|
3 | [![Travis Build Status](https://travis-ci.org/xiph/ogg.svg?branch=master)](https://travis-ci.org/xiph/ogg)
|
---|
4 | [![Jenkins Build Status](https://mf4.xiph.org/jenkins/job/libogg/badge/icon)](https://mf4.xiph.org/jenkins/job/libogg/)
|
---|
5 | [![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/xiph/ogg?branch=master&svg=true)](https://ci.appveyor.com/project/rillian/ogg)
|
---|
6 |
|
---|
7 | Ogg project codecs use the Ogg bitstream format to arrange the raw,
|
---|
8 | compressed bitstream into a more robust, useful form. For example,
|
---|
9 | the Ogg bitstream makes seeking, time stamping and error recovery
|
---|
10 | possible, as well as mixing several sepearate, concurrent media
|
---|
11 | streams into a single physical bitstream.
|
---|
12 |
|
---|
13 | ## What's here ##
|
---|
14 | This source distribution includes libogg and nothing else. Other modules
|
---|
15 | (eg, the modules libvorbis, vorbis-tools for the Vorbis music codec,
|
---|
16 | libtheora for the Theora video codec) contain the codec libraries for
|
---|
17 | use with Ogg bitstreams.
|
---|
18 |
|
---|
19 | Directory:
|
---|
20 |
|
---|
21 | - `src` The source for libogg, a BSD-license inplementation of the public domain Ogg bitstream format
|
---|
22 |
|
---|
23 | - `include` Library API headers
|
---|
24 |
|
---|
25 | - `doc` Ogg specification and libogg API documents
|
---|
26 |
|
---|
27 | - `win32` Win32 projects and build automation
|
---|
28 |
|
---|
29 | ## Contact ##
|
---|
30 |
|
---|
31 | The Ogg homepage is located at https://www.xiph.org/ogg/ .
|
---|
32 | Up to date technical documents, contact information, source code and
|
---|
33 | pre-built utilities may be found there.
|
---|
34 |
|
---|
35 | ## Building ##
|
---|
36 |
|
---|
37 | #### Building from tarball distributions ####
|
---|
38 |
|
---|
39 | ./configure
|
---|
40 | make
|
---|
41 |
|
---|
42 | and optionally (as root):
|
---|
43 |
|
---|
44 | make install
|
---|
45 |
|
---|
46 | This will install the Ogg libraries (static and shared) into
|
---|
47 | /usr/local/lib, includes into /usr/local/include and API
|
---|
48 | documentation into /usr/local/share/doc.
|
---|
49 |
|
---|
50 | #### Building from repository source ####
|
---|
51 |
|
---|
52 | A standard svn build should consist of nothing more than:
|
---|
53 |
|
---|
54 | ./autogen.sh
|
---|
55 | ./configure
|
---|
56 | make
|
---|
57 |
|
---|
58 | and as root if desired :
|
---|
59 |
|
---|
60 | make install
|
---|
61 |
|
---|
62 | #### Building on Windows ####
|
---|
63 |
|
---|
64 | Use the project file in the win32 directory. It should compile out of the box.
|
---|
65 |
|
---|
66 | #### Cross-compiling from Linux to Windows ####
|
---|
67 |
|
---|
68 | It is also possible to cross compile from Linux to windows using the MinGW
|
---|
69 | cross tools and even to run the test suite under Wine, the Linux/*nix
|
---|
70 | windows emulator.
|
---|
71 |
|
---|
72 | On Debian and Ubuntu systems, these cross compiler tools can be installed
|
---|
73 | by doing:
|
---|
74 |
|
---|
75 | sudo apt-get mingw32 mingw32-binutils mingw32-runtime wine
|
---|
76 |
|
---|
77 | Once these tools are installed its possible to compile and test by
|
---|
78 | executing the following commands, or something similar depending on
|
---|
79 | your system:
|
---|
80 |
|
---|
81 | ./configure --host=i586-mingw32msvc --target=i586-mingw32msvc --build=i586-linux
|
---|
82 | make
|
---|
83 | make check
|
---|
84 |
|
---|
85 | (Build instructions for Ogg codecs such as vorbis are similar and may
|
---|
86 | be found in those source modules' README files)
|
---|
87 |
|
---|
88 | ## Building with CMake ##
|
---|
89 |
|
---|
90 | Ogg supports building using [CMake](http://www.cmake.org/). CMake is a meta build system that generates native projects for each platform.
|
---|
91 | To generate projects just run cmake replacing `YOUR-PROJECT-GENERATOR` with a proper generator from a list [here](http://www.cmake.org/cmake/help/v3.2/manual/cmake-generators.7.html):
|
---|
92 |
|
---|
93 | mkdir build
|
---|
94 | cd build
|
---|
95 | cmake -G YOUR-PROJECT-GENERATOR ..
|
---|
96 |
|
---|
97 | Note that by default cmake generates projects that will build static libraries.
|
---|
98 | To generate projects that will build dynamic library use `BUILD_SHARED_LIBS` option like this:
|
---|
99 |
|
---|
100 | cmake -G YOUR-PROJECT-GENERATOR -DBUILD_SHARED_LIBS=1 ..
|
---|
101 |
|
---|
102 | After projects are generated use them as usual
|
---|
103 |
|
---|
104 | #### Building on Windows ####
|
---|
105 |
|
---|
106 | Use proper generator for your Visual Studio version like:
|
---|
107 |
|
---|
108 | cmake -G "Visual Studio 12 2013" ..
|
---|
109 |
|
---|
110 | #### Building on Mac OS X ####
|
---|
111 |
|
---|
112 | Use Xcode generator. To build framework run:
|
---|
113 |
|
---|
114 | cmake -G Xcode -DBUILD_FRAMEWORK=1 ..
|
---|
115 |
|
---|
116 | #### Building on Linux ####
|
---|
117 |
|
---|
118 | Use Makefile generator which is default one.
|
---|
119 |
|
---|
120 | cmake ..
|
---|
121 | make
|
---|
122 |
|
---|
123 | ## Testing ##
|
---|
124 |
|
---|
125 | This package includes a collection of automated tests.
|
---|
126 | Running them is not part of building nor installation but optional.
|
---|
127 |
|
---|
128 | ### Unix-like System or MinGW ###
|
---|
129 |
|
---|
130 | If build under automake:
|
---|
131 |
|
---|
132 | make check
|
---|
133 |
|
---|
134 | If build under CMake:
|
---|
135 |
|
---|
136 | make test
|
---|
137 |
|
---|
138 | or:
|
---|
139 |
|
---|
140 | ctest
|
---|
141 |
|
---|
142 | ### Windows with MSBuild ###
|
---|
143 |
|
---|
144 | If build with configuration type "Debug", then:
|
---|
145 |
|
---|
146 | ctest -C Debug
|
---|
147 |
|
---|
148 | If build with configuration type "Release", then:
|
---|
149 |
|
---|
150 | ctest -C Release
|
---|
151 |
|
---|
152 | ## License ##
|
---|
153 |
|
---|
154 | THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.
|
---|
155 | USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS
|
---|
156 | GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE
|
---|
157 | IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.
|
---|
158 |
|
---|
159 | THE OggVorbis SOURCE CODE IS COPYRIGHT (C) 1994-2019
|
---|
160 | by the Xiph.Org Foundation https://www.xiph.org/
|
---|