base libraries and tools

base libraries

The base libraries required for Annodex are:

  • libogg, liboggz
  • libvorbis, libtheora, libfishsound
  • libannodex
  • libexpat
  • libcmml

For development, you want to check out all the base Annodex libraries, including the Xiph.org codecs with:
http://svn.annodex.net/annodex-core/

libfishsound 0.8.0 Release

This release includes compatibility with the floating point portion of the libfishsound development trunk API, in preparation for use with liboggplay. In order to build a minimal version of libfishsound for use with liboggplay, configure with encoding disabled in order to produce a smaller binary and to remove the dependency on libvorbisenc. See the Configuration section of the documentation for details.

Changes

  • Improved consistency of frame number reporting: for both Vorbis and Speex, the frame number is always updated before calling the user's callbacks for encoding or decoding.

RPM packages

Thomas Vander Stichele developed rpm packages for the base libraries. Find them on http://rpmfind.net/linux/RPM/index.html.

debian packages

Library dependencies

The following hyperlinked graph shows the dependencies of the Annodex.net base libraries.

  • Upstream libraries are shown in grey.
  • Annodex.net libraries are shown in red.
  • Annodex.net importers are shown in green.

libfishsound

FishSound (libfishsound) provides a simple programming interface for decoding and encoding audio data using the Xiph.Org codecs Vorbis and Speex.

libfishsound is a wrapper around the existing codec libraries and provides a consistent, higher-level programming interface. It has been designed for use in a wide variety of applications; it has no direct dependencies on Annodex or Ogg encapsulation, though it is most commonly used in conjunction with liboggz to decode or encode Ogg encapsulated Vorbis or Speex files.

libannodex

The libannodex source distribution comprises the C library libannodex, plugins for importing media (CMML, theora, vorbis, speex), and some command-line tools.

These command-line tools are useful for creating and inspecting Annodex media:

  • anxenc: Encapsulate annotations and data into annodexed media.
  • anxrip: Extract annotations and data tracks from annodexed media.
  • anxgrep: Search for a pattern in annodexed media files. New in version 0.6.1
  • anxinfo: Display information about annodexed media contents.

liboggz

Oggz provides a simple programming interface for reading and writing Xiph.Org files and streams. The tarball contains the liboggz library and some command-line tools.

The following command-line tools are useful for debugging and testing Ogg bitstreams:

  • oggzinfo: Display information about one or more Ogg files and their bitstreams.
  • oggzdump: Hexdump packets of an Ogg file, or revert an Ogg file from such a hexdump.
  • oggzdiff: Hexdump the packets of two Ogg files and output differences.
  • oggzmerge: Merge Ogg files together, interleaving pages in order of presentation time.
  • oggzrip: Extract one or more logical bitstreams from an Ogg file.
  • oggz-scan: Scan an Ogg file and output characteristic landmarks. New in version 0.9.3
  • oggz-validate:
    Validate the Ogg framing of one or more files.

libcmml

The libcmml tarball comprises the C library and some command-line tools.

These command-line tools are useful for creating and fixing CMML files: