What is MIME type "audio/x-xm"?

A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.

audio/x-xm is a MIME type for module music files. It tells software that the file contains sample-based music data created by tracker programs like FastTracker2.
Module files store both audio samples and instructions. They allow a small set of samples to be arranged in varied patterns. This design creates complex music with low storage needs.
This MIME type applies to several module formats. Examples include MOD, FAR, XM, IT, STM, AMF, MED, WOW, XI, DMF, S3M, 669, MTM, MT2, ULT, and OKT.
The MIME type assists browsers and media players in choosing the right decoder. For more on module files, check Wikipedia – Module File.

Associated file extensions

Usage Examples

HTTP Header

When serving content with this MIME type, set the Content-Type header:


    Content-Type: audio/x-xm    
  

HTML

In HTML, you can specify the MIME type in various elements:


    <a href="file.dat" type="audio/x-xm">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-xm');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

Do web browsers natively support the audio/x-xm MIME type?

No, standard HTML5 <audio> elements do not natively support tracker formats like XM or MOD. To play these files on a website, developers typically use JavaScript libraries (such as libopenmpt compiled to WebAssembly) to decode the audio data for the Web Audio API.

How do I configure Apache to serve XM files correctly?

To ensure browsers recognize the file type, add the MIME type definition to your .htaccess file or main configuration. Use the line: AddType audio/x-xm .xm .mod .it .s3m. This tells the server to send the audio/x-xm header for these extensions.

What is the difference between audio/x-xm and audio/mpeg?

audio/x-xm files function like digital sheet music combined with instrument samples, whereas audio/mpeg (MP3) files contain a recorded waveform. Because module files store instructions rather than raw audio data, they are often significantly smaller in file size than MP3s.

Which applications can open files sent as audio/x-xm?

These files are best opened with dedicated tracker software or versatile media players. Popular options include OpenMPT (Open ModPlug Tracker), VLC Media Player, and Winamp. You can find more details on specific extensions like XM or IT on our site.

Why does the MIME type start with 'x-'?

The x- prefix indicates that audio/x-xm is a non-standard or experimental type not officially registered with IANA. While it is widely accepted by software for FastTracker 2 and related module formats, it remains a convention rather than a strict standard.

Can I use audio/x-xm for all tracker file formats?

While audio/x-xm is specifically intended for XM files, some servers use it as a catch-all for similar formats like MOD or S3M. However, it is often more accurate to use specific types like audio/x-mod or audio/x-s3m if the client software requires strict differentiation.

Are there security risks associated with audio/x-xm files?

Generally, these are safe media files, but they rely on complex parsing logic in the media player. Historically, buffer overflow vulnerabilities have been found in older decoder libraries, so it is important to keep your media player (e.g., VLC or OpenMPT) updated to the latest version.

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.