What is a DivX File?
A DivX file contains video encoded with a DivX codec, commonly MPEG-4 Part 2 or a later DivX variant. The encoded stream is often stored in an AVI or MKV container rather than a container unique to DivX.
How DivX Files work
DivX is a brand that covers several codec generations and device profiles, not one file structure. DivX 3 was based on Microsoft’s MPEG-4 v3 codec, which decoders treat as a codec separate from standard MPEG-4 Part 2; the DivX 5 encoder is documented as an MPEG-4 Part 2 implementation (Simple and Advanced Simple Profile); and DivX states that versions 3 through 6 used AVI as their container. DivX 6 introduced the DivX Media Format, which uses the .divx extension and adds XSUB subtitles, menus, chapter points, and alternate audio tracks. Later generations changed both layers: DivX describes DivX Plus video as based on H.264, and it uses MKV for DivX Plus and DivX HEVC video. The decoder a file needs therefore follows from its stream, while the container supplies timing and track layout.
Key facts
- 1DivX-labeled AVIs do not all need the same decoder. FFmpeg maps the FourCCs
DIVXandDX50to its MPEG-4 Part 2 decoder but mapsDIV3,DIV4,DIV5, andDIV6tomsmpeg4v3, the Microsoft MPEG-4 v3 variant that DivX 3 was based on. The FourCC is only a tag in the stream header, and FFmpeg’s table includes entries for broken AVIs, so confirm the codec by decoding a sample, not by reading the tag alone. - 2Stream-copying DivX video out of AVI can produce a file that standard decoders reject. FFmpeg documents DivX-style packed B-frames as not valid MPEG-4 and warns that they cause trouble when copied into MP4 or MPEG-PS/TS. Its MPEG-4 decoder logs a message when it meets them and suggests the
mpeg4_unpack_bframesbitstream filter “without encoding but stream copy”: the filter repairs the stream during a copy, and FFmpeg’s documented example copies from one AVI file to another. A re-encode does not need the filter, because the decoder handles packed B-frames itself. - 3Not every DivX-era stream can be stream-copied into MP4 with FFmpeg. Its MP4 muxer’s codec tag table has entries for MPEG-4 Part 2, H.264, and HEVC but none for
msmpeg4v3or XSUB subtitles, and the muxer stops with an error when a stream’s codec has no tag. Video that decodes asmsmpeg4v3therefore has to be re-encoded to go into an FFmpeg-written MP4, and XSUB subtitles cannot be copied across. - 4The extension does not identify the codec, and it suggests the container without confirming it. DivX describes
.divxfiles as based on the AVI container and.mkvas the Matroska extension, and its profile table lists.aviand.divxfor its MPEG-4-era profiles and.mkv,.avi, and.divxfor DivX Plus HD. A.divxfilter therefore misses DivX video stored as.avior.mkv, and no extension settles which codec is inside. - 5Decoding in software does not mean a DivX Certified device will play the file. The profile table sets separate ceilings per device class for frame size, bitrate, B-frame count, and quantization method: the Home Theater profile, for example, lists H.263 quantization and one B-frame, while DivX HD 1080p lists two B-frames and H.263, MPEG, or custom quantization.
When DivX Files matter
Support DivX when handling legacy video collections or converting them for newer playback environments. Detect both codec and container because an extension alone may not reveal the decoder or demuxer required.
How Transloadit helps with DivX Files
Transloadit’s video codec reference, which covers its FFmpeg-based Robots such as /video/encode, lists mpeg4 (MPEG-4 Part 2, with encoders that include mpeg4 and libxvid) and msmpeg4v3 as readable and writable. These are the two codecs that FFmpeg maps the FourCCs above to.
The reference lists codecs. It does not cover DivX Media Format features such as menus or XSUB subtitles, so test files that depend on them.
Explore Transloadit’s file formats & compression capabilities
Sources
- DivX: DivX Profiles Tech Specs (file extensions, codecs, and limits per profile)
- DivX Technology Glossary: AVI (container for DivX video versions 3 through 6)
- DivX Technology Glossary: MKV (container for DivX Plus and DivX HEVC video)
- DivX Technology Glossary: H.264 (basis of DivX Plus video)
- DivX press release, June 15, 2005: DivX 6 introduces the DivX Media Format
- DivX 10 User Guide (PDF): .divx files and the AVI container
- Library of Congress format description fdd000069: DivX Video Codec, Version 5
- FFmpeg source, libavformat/riff.c: FourCC to codec mapping
- FFmpeg Bitstream Filters Documentation: mpeg4_unpack_bframes
- FFmpeg source, libavcodec/mpeg4videodec.c: packed B-frames handling and message
- FFmpeg source, libavformat/movenc.c: MP4 muxer codec tags