Noctropolis VID
From MultimediaWiki
| Revision as of 21:36, 20 February 2012 VAG (Talk | contribs) (typos) ← Previous diff |
Current revision VAG (Talk | contribs) (add another game) |
||
| Line 6: | Line 6: | ||
| * Samples: '''TODO''' | * Samples: '''TODO''' | ||
| - | VID is an FMV format used in the computer game [http://www.mobygames.com/game/dos/noctropolis Noctropolis]. Uses basic [[RLE]] compression. | + | VID is an FMV format first appeared in the computer game [http://www.mobygames.com/game/dos/noctropolis Noctropolis]. Uses basic [[RLE]] compression. |
| A file consists of a header and a number of frame chunks. All numbers are little endian. | A file consists of a header and a number of frame chunks. All numbers are little endian. | ||
| Line 58: | Line 58: | ||
| Same as 0x7C, but no sync/frequency fields. | Same as 0x7C, but no sync/frequency fields. | ||
| + | |||
| + | == Games Using VID == | ||
| + | |||
| + | * [http://www.mobygames.com/game/dos/noctropolis Noctropolis] | ||
| + | * [http://www.mobygames.com/game/synnergist Synnergist] | ||
| [[Category:Game Formats]] | [[Category:Game Formats]] | ||
| [[Category:Video Codecs]] | [[Category:Video Codecs]] | ||
| [[Category:Formats missing in FFmpeg]] | [[Category:Formats missing in FFmpeg]] | ||
Current revision
- See also VID
- Extensions: vid
- Company: Flashpoint Productions, Inc.
- Year: 1994
- Samples: TODO
VID is an FMV format first appeared in the computer game Noctropolis. Uses basic RLE compression.
A file consists of a header and a number of frame chunks. All numbers are little endian.
Contents |
File header
+ 0 s8 Signature[4] -- "VID" + 4 s8 Version -- usually 2 + 5 s16 Frames -- number of video frames (not chunks!) + 7 s16 Width -- frame width and height + 9 s16 Height + B s16 Unknown -- related to playback speed? + D s16 Rate -- playback rate (?)
Frame chunks
Each chunk begins with a byte chunk type then followed by payload of variable length.
0x00 - Intraframe
u16 sync value, followed by Width * Height frame raster
0x01 - Interframe
u16 sync value, followed by RLE-compressed raster. Version 2 movies has extra zero byte after it (if not ended permaturely by a stop-code.) Decompression algorithm:
while frame is not complete
len = next byte of input
if len is 0 finish
if high bit of len is set
leave (len & 0x7F) pixels unchanged
else
draw next (len) pixels
0x02 - Palette
0x03 - RLE Intraframe
Same as 0x01, but no stop-codes and instead of skipping pixels, fill them with the next byte of input.
0x04 - Partial Interframe
Same as 0x01, but has an extra u16 value after the sync field denotes how many horizontal lines to skip before start of decoding.
0x7C - Audio Start
u16 sync, followed by u8 sampling frequency in SoundBlaster VOC format, then followed by u16 size of data and corresponding amount of actual PCM data in Mono, 8-bit Unsigned format.
0x7D - Audio Continue
Same as 0x7C, but no sync/frequency fields.
