LMLM4: Difference between revisions

From MultimediaWiki
Jump to navigation Jump to search
m (wikilinks)
m (typo)
Line 3: Line 3:
* Website: http://www.linuxmedialabs.com/
* Website: http://www.linuxmedialabs.com/


LMLM4 files are near-raw files, containing [[MPEG-4]] video and [[MPEG-1 Layer II]], [[μ-law]] or [[ADPCM]] adio.
LMLM4 files are near-raw files, containing [[MPEG-4]] video and [[MPEG-1 Layer II]], [[μ-law]] or [[ADPCM]] audio.


A file contains multiple packets, padded with zeroes to a multiple of 512 (one block).
A file contains multiple packets, padded with zeroes to a multiple of 512 (one block).

Revision as of 11:02, 4 January 2008

  • 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/

LMLM4 files are near-raw files, containing MPEG-4 video and MPEG-1 Layer II, μ-law or ADPCM audio.

A file contains multiple packets, padded with zeroes to a multiple of 512 (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[ (512 - packet_size % 512) & 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.