AMV video format

From Wikipedia, the free encyclopedia

AMV is a proprietary video file format, produced for MP4 players, as well as S1 MP3 players with video playback.

AMV
File name extension .amv
Container for Audio, video
Extended from AVI and Motion JPEG

[edit] Format

The container is a modified version of AVI.[1] The video format is a variant of motion JPEG, with fixed rather than variable quantisation tables.[2] The audio format is a variant of IMA ADPCM, where the first 8 bytes of each frame are origin (16 bits), index (16 bits) and number of encoded 16-bit samples (32 bits); all known AMV files run sound at 22050 samples/second.[1]

Low decoder overhead is paramount as the S1 MP3 players have very low-end processors (a Z80 variant). Video compression ratio is low — around 4 pixels/byte, compared with over 10 pixels/byte for MPEG-2[1] — though as the files are of low resolution (96×96 up to 208×176) and frame rate (10, 12, or 16 fps), file sizes are small in bytes per second. With a resolution of 128×96 pixels and a framerate of 12 fps, a 30-minute video will be compressed into 80 MB.

[edit] Documentation

Documentation for this format is not publicly available, but Dobrica Pavlinušić reverse engineered the format[1] to produce a Perl-based decoder[3] and Pavlinušić, Tom Van Braeckel and Vladimir Voroshilov produced a version of FFmpeg that works on AMV files.[4] The AMV code has been sent upstream to the main FFmpeg project.[5]

[edit] References

  1. ^ a b c d voroshil (2007-10-15). AmvDocumentation. Google Code. Retrieved on 2008-04-06.
  2. ^ forcing mjpegenc to use fixed quantisation tables (Tom Van Braeckel, FFmpeg-devel mailing list, 28 October 2007)
  3. ^ AMV free decoder (Dobrica Pavlinušić, personal blog, 19 August 2007)
  4. ^ amv-codec-tools (Google Code)
  5. ^ What needs to be done - this is an asynchronous meeting by mailing list. (Tom Van Braeckel, AMV codec tools group mailing list, 26 October 2007)