Sustainability of Digital Formats
 Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

Ogg Speex Audio Format

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name Ogg Speex Audio Format
Description File format and bitstream encoding for for spoken content, targeted at a wide range of devices other than mobile phones.
Production phase Generally used for final-state, end-user delivery.
Relationship to other formats
    Subtype of Ogg, Ogg File Format
    Contains SPX_1_2, Speex Audio Codec, Version 1.2

Local use Explanation of format description terms

LC experience or existing holdings None.
LC preference None. For preservation reformatting, the Library prefers Broadcast WAVE (WAVE_BWF_1 and WAVE_BWF_2).

Sustainability factors Explanation of format description terms

Disclosure Developed by xiph as an open source and patent-free project.
    Documentation See Ogg and SPX_1_2.
Adoption See Ogg.
    Licensing and patents See SPX_1_2.
Transparency See SPX_1_2.
Self-documentation See Ogg.
External dependencies None.
Technical protection considerations See Ogg.

Quality and functionality factors Explanation of format description terms

Normal rendering Good support.
Fidelity (high audio resolution) See SPX_1_2.
Multiple channels See SPX_1_2.
Support for user-defined sounds, samples, and patches None.
Functionality beyond normal rendering Not investigated at this time.

File type signifiers Explanation of format description terms

Tag Value Note
Filename extension spx
The specification states that Speex tools (speexenc, speexdec) do not rely on the extension; any extension will work.
Internet Media Type audio/x-speex
For Speex-in-Ogg, from the main part of the specification. However, the recommended practice now seems to use the codecs parameter as described in RFC 5334.
Internet Media Type audio/ogg; codecs=speex
From RFC 5334.
Internet Media Type audio/speex
Proposed in various drafts of RTP Payload Format for the Speex Codec. e.g., (obsolete and hence not actively linked from this format description).
Magic numbers Hex: 4F 67 67 53 00 02 00 00 00 00 00 00 00 00
See also Notes below.
Other Speex
Ogg Codec Identifier. An 8-character string, with 3 trailing spaces, used within Ogg container, at beginning of first header page to identify codec. See notes below and IETF RFC 5334

Notes Explanation of format description terms

General Regarding file type signifiers, from the Speex specification: The first packet of the Ogg_SPX file contains the Speex header [presented in table 7.1 on page 25]. All integer fields in the headers are stored as little-endian. The speex_string field must contain the [Speex with 3 trailing spaces], which identifies the bit-stream. The next field, speex_version contains the version of Speex that encoded the file. For now, refer to speex_header.[ch] for more info. The beginning of stream (b_o_s) flag is set to 1 for the header. The header packet has packetno=0 and granulepos=0. The second packet contains the Speex comment header. The format used is the Vorbis comment format described here: This packet has packetno=1 and granulepos=0. The third and subsequent packets each contain one or more (number found in header) Speex frames. These are identified with packetno starting from 2 and the granulepos is the number of the last sample encoded in that packet. The last of these packets has the end of stream (e_o_s) flag is set to 1.

Format specifications Explanation of format description terms

Useful references


Last Updated: 11/26/2013