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

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

The MIME type audio/x-flac designates audio files encoded in the FLAC format. This means the file uses a lossless compression method that retains every bit of the original audio quality.

The format supports high-resolution audio and is popular for digital music collections. Programs and browsers use this MIME type to recognize, play, and process these files correctly.

This MIME type helps applications manage the unique features of FLAC files. It informs the system how to display media options and handle file operations. For further technical details, visit IANA Media Types.

Associated file extensions

Usage Examples

HTTP Header

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


    Content-Type: audio/x-flac    
  

HTML

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


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

Associated file extensions

FAQs

What is the difference between audio/x-flac and audio/flac?

The MIME type audio/x-flac was the experimental type used before the format was officially registered with IANA. While audio/flac is now the standard, many older systems and legacy applications still recognize and generate the audio/x-flac header.

How do I configure Apache to serve FLAC files correctly?

To ensure your Apache server sends the correct headers for .flac files, add the following line to your .htaccess or httpd.conf file: AddType audio/flac .flac. If you specifically need to support legacy players requiring the experimental type, use AddType audio/x-flac .flac instead.

Can I use audio/x-flac in the HTML5 audio tag?

Yes, most modern browsers (Chrome, Firefox, Edge) support FLAC playback within the HTML5 <audio> element. You can specify the type attribute as <source src="music.flac" type="audio/flac">, though browsers often handle audio/x-flac or even missing headers correctly via MIME sniffing.

Why is my FLAC file downloading instead of playing in the browser?

This usually occurs if the web server is misconfigured and sends a generic application/octet-stream header instead of audio/x-flac or audio/flac. Browsers treat generic binary streams as files to be saved rather than media to be streamed.

How do I add FLAC support to Nginx?

Open your mime.types file (usually located in /etc/nginx/) and ensure the line audio/flac flac; exists. If you need to force the older MIME type for compatibility, you can modify it to audio/x-flac flac; before reloading the Nginx service.

Is audio/x-flac better than audio/mpeg (MP3)?

It depends on the use case. audio/x-flac represents lossless audio, meaning it retains 100% of the original quality, making it superior for archiving and high-fidelity listening. In contrast, audio/mpeg is lossy but produces much smaller file sizes, which is better for slow connections or limited storage.

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.