What is MIME type "video/x-msvideo"?
A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.
video/x-msvideo is the MIME type for the Audio Video Interleave format. It indicates that a file contains both video and audio data that play together.Files with this MIME type are best known by their AVI extension. This format is common on PCs, especially those running Windows.
- Playback: Media players recognize this type and play the file correctly.
- Editing: It is widely used in video editing and basic multimedia projects.
- Web Delivery: Web servers use it to signal browsers about video content.
- Compatibility: Its design suits common PC environments, ensuring smooth performance.
Associated file extensions
Usage Examples
HTTP Header
When serving content with this MIME type, set the Content-Type header:
Content-Type: video/x-msvideo
HTML
In HTML, you can specify the MIME type in various elements:
<a href="file.dat" type="video/x-msvideo">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', 'video/x-msvideo');
res.end('Content here');
}).listen(3000);
Associated file extensions
FAQs
Does the HTML5 <video> tag support video/x-msvideo?
Generally, no. Most modern web browsers do not natively support the AVI format or the video/x-msvideo MIME type within the HTML5 <video> element. To ensure video plays across all browsers (Chrome, Firefox, Safari), it is recommended to convert the file to a web-standard format like MP4 or WebM.
How do I configure Apache to serve AVI files correctly?
You can enable the correct MIME type association by adding a directive to your .htaccess file or main configuration. Add the line AddType video/x-msvideo .avi to ensure the server sends the correct header to the client.
What is the difference between video/x-msvideo and video/avi?
video/x-msvideo is the most widely recognized and compatible MIME type for Audio Video Interleave files. While you might occasionally see video/avi or video/msvideo used, video/x-msvideo is the standard convention established by Microsoft and is preferred for server configurations to avoid download errors.
How do I add support for AVI files in Nginx?
To serve files with the .avi extension using the correct content type in Nginx, locate your mime.types file. Ensure it includes the entry video/x-msvideo avi;. If it is missing, add it inside the types { ... } block and reload the server.
Is video/x-msvideo a good choice for web streaming?
No, this format is typically not optimized for web streaming due to large file sizes and a lack of native browser support. It is better suited for local storage or downloading. For streaming, use formats with high compression efficiency like H.264 (MP4) or VP9 (WebM).
Why does my browser download the AVI file instead of playing it?
If a browser encounters content labeled video/x-msvideo that it cannot decode natively, its default behavior is to download the file. Since AVI is a container format that can hold various unsupported codecs, browsers often treat it as a generic binary file meant for a local media player rather than inline playback.
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.