LMLM4
Jump to navigation
Jump to search
- Extension: LML uses .divx on their website, though there are other file formats that use that, too.
- Company: Linux Media Labs
- Website: http://www.linuxmedialabs.com/
- Samples: http://www.linuxmedialabs.com/LML_downloads.php?dl=SA
LMLM4 files are near-raw files, containing MPEG-4 video and MPEG-1 Layer II, μ-law or ADPCM audio.
A file contains multiple packets. Each packet is padded with zeroes to a multiple of 512 bytes (one block).
typedef struct { uint16_t channel_number; uint16_t frame_type; uint32_t packet_size; uint8_t data[packet_size - 8]; uint8_t padding[ -packet_size & 511 ]; } LMLM4_Packet;
The maximum size of a packet is 1048576 bytes, which is 2048 blocks.
channel_number, frame_type and packet_size are stored in big-endian order.
The following frametypes are supported:
0x00 - I-Frame, video 0x01 - P-Frame, video 0x02 - B-Frame, video 0x04 - MPEG-1 Layer 2 audio 0x05 - μ-law, audio 0x06 - ADPCM, audio
One packet contains a complete decodable frame.