What is MIME type "audio/x-speex"?
A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.
audio/x-speex signals that a file uses the Speex audio codec. It compresses voice efficiently and works best for speech data.- Main use: Voice communication in VoIP and conferencing systems.
- Additional use: Online voice messaging and interactive voice response.
- Key fact: Designed for low-bit-rate audio, it reduces file size while keeping clarity for spoken word.
For more technical details, visit the Speex Project.
Associated file extensions
Usage Examples
HTTP Header
When serving content with this MIME type, set the Content-Type header:
Content-Type: audio/x-speex
HTML
In HTML, you can specify the MIME type in various elements:
<a href="file.dat" type="audio/x-speex">Download file</a>
Server-side (Node.js)
Setting the Content-Type header in Node.js:
const http = require('http');
http.createServer((req, res) => {
res.setHeader('Content-Type', 'audio/x-speex');
res.end('Content here');
}).listen(3000);
Associated file extensions
FAQs
How do I play a file with the audio/x-speex MIME type?
You need a media player that supports the Ogg container and Speex codec, such as VLC Media Player or Foobar2000. Since these files usually have the .spx extension, standard system players like Windows Media Player often require installing specific DirectShow filters to open them.
Is audio/x-speex supported in modern web browsers?
Native support is very limited; most modern browsers and the HTML5 <audio> tag do not support Speex out of the box, preferring Opus or AAC instead. To play these files on a webpage, you usually need to use a JavaScript decoder (like ogv.js) or convert the file to a standard format like MP3.
How do I configure Apache to serve .spx files correctly?
You should add the MIME type definition to your .htaccess file or main configuration. Add the line AddType audio/x-speex .spx to ensure the server sends the correct header to the client, preventing the browser from treating the file as generic binary data.
What is the difference between audio/x-speex and audio/speex?
The x- prefix signifies a non-standard or experimental type used before the format was formally registered with IANA. While audio/speex is the official standard now, many legacy VoIP systems and older applications still generate and expect the audio/x-speex header.
Should I use audio/x-speex for a new voice application?
No, the Xiph.Org Foundation (the creators of Speex) has declared it obsolete. For any new voice applications, VoIP, or audio streaming, you should use the Opus codec, which provides superior quality and lower latency at similar bitrates.
How can I convert audio/x-speex files to MP3?
You can use the command-line tool FFmpeg or various online audio converters. A simple FFmpeg command to convert the file would be ffmpeg -i input.spx output.mp3, which makes the voice recording compatible with virtually all audio players.
General FAQ
What is a MIME type?
A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.
MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.
MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.
How do I find the MIME type for a file?
You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.
Why are multiple MIME types listed for one extension?
Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.