• Stars
    star
    340
  • Rank 124,317 (Top 3 %)
  • Language
    C
  • License
    BSD 3-Clause "New...
  • Created over 9 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Reference implementation of the Ogg media container

Ogg

Travis Build Status Jenkins Build Status AppVeyor Build Status

Ogg project codecs use the Ogg bitstream format to arrange the raw, compressed bitstream into a more robust, useful form. For example, the Ogg bitstream makes seeking, time stamping and error recovery possible, as well as mixing several sepearate, concurrent media streams into a single physical bitstream.

What's here

This source distribution includes libogg and nothing else. Other modules (eg, the modules libvorbis, vorbis-tools for the Vorbis music codec, libtheora for the Theora video codec) contain the codec libraries for use with Ogg bitstreams.

Directory:

  • src The source for libogg, a BSD-license inplementation of the public domain Ogg bitstream format

  • include Library API headers

  • doc Ogg specification and libogg API documents

  • win32 Win32 projects and build automation

Contact

The Ogg homepage is located at https://www.xiph.org/ogg/ . Up to date technical documents, contact information, source code and pre-built utilities may be found there.

Building

Building from tarball distributions

./configure
make

and optionally (as root):

make install

This will install the Ogg libraries (static and shared) into /usr/local/lib, includes into /usr/local/include and API documentation into /usr/local/share/doc.

Building from repository source

A standard svn build should consist of nothing more than:

./autogen.sh
./configure
make

and as root if desired :

make install

Building on Windows

Use the project file in the win32 directory. It should compile out of the box.

Cross-compiling from Linux to Windows

It is also possible to cross compile from Linux to windows using the MinGW cross tools and even to run the test suite under Wine, the Linux/*nix windows emulator.

On Debian and Ubuntu systems, these cross compiler tools can be installed by doing:

sudo apt-get mingw32 mingw32-binutils mingw32-runtime wine

Once these tools are installed its possible to compile and test by executing the following commands, or something similar depending on your system:

./configure --host=i586-mingw32msvc --target=i586-mingw32msvc --build=i586-linux
make
make check

(Build instructions for Ogg codecs such as vorbis are similar and may be found in those source modules' README files)

Building with CMake

Ogg supports building using CMake. CMake is a meta build system that generates native projects for each platform. To generate projects just run cmake replacing YOUR-PROJECT-GENERATOR with a proper generator from a list here:

mkdir build
cd build
cmake -G YOUR-PROJECT-GENERATOR ..

Note that by default cmake generates projects that will build static libraries. To generate projects that will build dynamic library use BUILD_SHARED_LIBS option like this:

cmake -G YOUR-PROJECT-GENERATOR -DBUILD_SHARED_LIBS=1 ..

After projects are generated use them as usual

Building on Windows

Use proper generator for your Visual Studio version like:

cmake -G "Visual Studio 12 2013" ..

Building on Mac OS X

Use Xcode generator. To build framework run:

cmake -G Xcode -DBUILD_FRAMEWORK=1 ..

Building on Linux

Use Makefile generator which is default one.

cmake ..
make

Testing

This package includes a collection of automated tests. Running them is not part of building nor installation but optional.

Unix-like System or MinGW

If build under automake:

make check

If build under CMake:

make test

or:

ctest

Windows with MSBuild

If build with configuration type "Debug", then:

ctest -C Debug

If build with configuration type "Release", then:

ctest -C Release

License

THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.

THE OggVorbis SOURCE CODE IS COPYRIGHT (C) 1994-2019 by the Xiph.Org Foundation https://www.xiph.org/

More Repositories

1

rnnoise

Recurrent neural network for audio noise reduction
C
3,969
star
2

rav1e

The fastest and safest AV1 encoder.
Assembly
3,714
star
3

opus

Modern audio compression for the internet.
C
2,201
star
4

flac

Free Lossless Audio Codec
C
1,590
star
5

LPCNet

Efficient neural speech synthesis
C
1,123
star
6

daala

Modern video compression for the internet
C
541
star
7

Icecast-Server

Icecast streaming media server (Mirror) - Please report bugs at https://gitlab.xiph.org/xiph/icecast-server/issues
C
464
star
8

speexdsp

Speex audio processing library - THIS IS A MIRROR, DEVELOPMENT HAPPENS AT https://gitlab.xiph.org/xiph/speexdsp
C
460
star
9

vorbis

Reference implementation of the Ogg Vorbis audio format.
C
455
star
10

speex

Speex voice codec mirror - THIS IS A MIRROR, DEVELOPMENT HAPPENS AT https://gitlab.xiph.org/xiph/speex
C
420
star
11

aomanalyzer

AV1 / VP9 Bitstream Analyzer
TypeScript
222
star
12

opus-tools

A set of tools to encode, inspect, and decode audio in the Opus format.
C
214
star
13

opusfile

Stand-alone decoder library for .opus streams
C
150
star
14

libopusenc

Library for encoding .opus audio files and live streams.
C
105
star
15

theora

Reference implementation of the Theora video compression format.
C
96
star
16

vorbis-tools

Command-line tools for creating and playing Ogg Vorbis files.
C
73
star
17

libao

Portable audio output library
C
73
star
18

awcy

Python
71
star
19

ezstream

[Mirror] A streaming source client for Icecast
C
57
star
20

Icecast-libshout

Icecast project live streaming library (Mirror) - Please report bugs at https://gitlab.xiph.org/xiph/icecast-libshout/issues
C
42
star
21

rd_tool

Python
18
star
22

Icecast-IceS

IceS, source client for streaming vorbis to the Icecast server.
C
17
star
23

Icecast-directory

[Obsolete] Icecast stream directory (NodeJS version)
JavaScript
11
star
24

webrtc-opus-ng

C++
11
star
25

Icecast-common

Shared code of the Icecast project
C
9
star
26

xiph-mirror

Scripts for maintaining mirrors of https://git.xiph.org/
Shell
7
star
27

oggdsf

Ogg Directshow Filters
C
5
star
28

Icecast-m4

Icecast project shared autofoo
M4
5
star
29

opus-website

Source of https://opus-codec.org/
JavaScript
4
star
30

flac-website

Homepage for the Free Lossless Audio Codec
HTML
3
star
31

xiphbot-ng

IRC notification bot in rust
Rust
3
star
32

opus-logo

Source files for the Opus audio codec logo.
3
star
33

sintel-downmix

Scripts for deriving packages from the "Sintel" open movie.
Makefile
2
star
34

gsoc

Google Summer of Code
1
star