What is MIME type "audio/x-psid"?
A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.
audio/x-psid is a MIME type for files that carry Commodore 64 chip tune music.It signals that the file holds program code meant to control the SID sound chip instead of standard audio data.
Files in this format include those with extensions SID and PSID.
These files are played using emulators or specialized players that simulate the original hardware.
- Retro Music: They recreate sound from the Commodore 64 era, capturing its unique character.
- Emulation: Software interprets the code to mimic the SID chip, ensuring authentic playback.
- Customization: Artists can tweak the code to produce new chip tunes while preserving old styles.
- Non-standard Usage: The “x-” prefix shows it is unofficial but widely used in retro computing circles.
Associated file extensions
Usage Examples
HTTP Header
When serving content with this MIME type, set the Content-Type header:
Content-Type: audio/x-psid
HTML
In HTML, you can specify the MIME type in various elements:
<a href="file.dat" type="audio/x-psid">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-psid');
res.end('Content here');
}).listen(3000);
Associated file extensions
FAQs
What is the audio/x-psid MIME type used for?
The MIME type audio/x-psid is used to identify Commodore 64 music files, specifically those formatted for the SID sound chip. Unlike standard audio files, these contain program code (instructions) that tell the hardware how to generate sound. Common file extensions associated with this type are .sid and .psid.
How do I play audio/x-psid files in a web browser?
Most modern web browsers do not support audio/x-psid natively because the format requires a specific emulator to synthesize the audio. To play these files on a website, you usually need a JavaScript-based SID emulator (like DeepSID or jsSID) rather than a standard <audio> tag.
How do I configure Apache to serve SID files correctly?
To ensure your Apache server sends the correct headers for Commodore 64 music files, add the following line to your .htaccess file or main configuration: AddType audio/x-psid .sid .psid. This helps client applications identify the content as chip tune data rather than generic binary files.
Why does this MIME type start with "x-"?
The prefix x- indicates that audio/x-psid is an experimental or non-standard MIME type not officially registered with the IANA. While it is not a formal standard, it is the widely accepted convention within the retro computing and demoscene communities for identifying SID music.
Are audio/x-psid files smaller than MP3s?
Yes, audio/x-psid files are significantly smaller than MP3 or WAV files, often only a few kilobytes in size. This is because they store musical notation and synthesis parameters (code) for the sound chip, whereas formats like audio/mpeg store recorded sound waves.
Can audio/x-psid files contain security risks?
Technically, SID files contain executable machine code (6510/6502 assembly) intended for the Commodore 64 CPU. While modern players run this code in a sandboxed emulator, downloading and running executable files from untrusted sources always carries a theoretical risk, though practical exploits via modern SID players are extremely rare.
What is the difference between .sid and .psid files?
The .psid format is a specific wrapper around the raw C64 machine code that adds a metadata header (containing title, artist, and speed information). While audio/x-psid covers both, the PSID header makes it easier for PC-based players to emulate the file correctly compared to raw dumps.
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.