<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multimedia.cx/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=John+doe</id>
	<title>MultimediaWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multimedia.cx/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=John+doe"/>
	<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php/Special:Contributions/John_doe"/>
	<updated>2026-06-13T02:54:57Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.5</generator>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=5639</id>
		<title>BRP</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=5639"/>
		<updated>2006-07-24T10:41:51Z</updated>

		<summary type="html">&lt;p&gt;John doe: clarified 0x02 type 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extensions: brp&lt;br /&gt;
* Company: [[Argonaut Games]]&lt;br /&gt;
* Samples:&lt;br /&gt;
** Alien Odyssey: [http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/alienodyssey/ http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/alienodyssey/]&lt;br /&gt;
** FX Fighter: [http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/fxfighter/ http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/fxfighter/]&lt;br /&gt;
&lt;br /&gt;
At least 2 games use an animation format with the extension .brp: [http://www.mobygames.com/game/dos/fx-fighter FX Fighter] and [http://www.mobygames.com/game/dos/alien-odyssey Alien Odyssey], both by Argonaut. The general container formats used in both games are similar, but differing fourccs inside may indicate that the games used different video coding algorithms (which are presently unknown). All multi-byte numbers are little endian.&lt;br /&gt;
&lt;br /&gt;
== File Format ==&lt;br /&gt;
&lt;br /&gt;
BRP files consist of multi-stream chunks, where video and audio located in separate, but interleaved streams.&lt;br /&gt;
&lt;br /&gt;
File begins with following 12-byte header:&lt;br /&gt;
  dword signature - &amp;quot;BRPP&amp;quot;&lt;br /&gt;
  dword streams   - number of streams in file&lt;br /&gt;
  dword unknown   - unknown, but equal to 640*480&lt;br /&gt;
&lt;br /&gt;
File header followed by stream headers:&lt;br /&gt;
  dword signature       - stream [[FOURCC]]&lt;br /&gt;
  dword index           - logical index of the stream&lt;br /&gt;
  dword unknown1        -&lt;br /&gt;
  dword unknown2        -&lt;br /&gt;
  dword plsize          - size of the following payload data&lt;br /&gt;
  byte  payload[plsize] - stream-specific payload&lt;br /&gt;
&lt;br /&gt;
Finally, actual data chunks follows, each one starts with chunk header:&lt;br /&gt;
  dword index      - logical index of the stream chunk belongs to&lt;br /&gt;
  dword unknown&lt;br /&gt;
  dword size       - size of the chunk data&lt;br /&gt;
  byte  data[size] - stream-specific chunk data&lt;br /&gt;
&lt;br /&gt;
== Streams ==&lt;br /&gt;
=== BVID Stream ===&lt;br /&gt;
The video stream. Stream header payload:&lt;br /&gt;
   dword unknown1&lt;br /&gt;
   dword width    - width of the frame&lt;br /&gt;
   dword height   - height of the frame&lt;br /&gt;
   dword unknown2&lt;br /&gt;
&lt;br /&gt;
Each BVID's chunk data started with another [[FOURCC]], indicates chunk format:&lt;br /&gt;
==== PAL8 Chunk ====&lt;br /&gt;
  word start          - first color to update&lt;br /&gt;
  word count          - number of colors to update&lt;br /&gt;
  byte rgb[count * 3] - [[RGB]] triplets&lt;br /&gt;
&lt;br /&gt;
==== AVCF Chunk ====&lt;br /&gt;
&lt;br /&gt;
Intraframe 2x2 [[VQ]], similar to one used in [[AVS]].&lt;br /&gt;
&lt;br /&gt;
==== ALCD Chunk ====&lt;br /&gt;
&lt;br /&gt;
Interframe 2x2 [[VQ]], similar to one used in [[AVS]].&lt;br /&gt;
&lt;br /&gt;
==== RLED, RLEF Chunks ====&lt;br /&gt;
&lt;br /&gt;
Rle-compressed frame.&lt;br /&gt;
  while not all output processed&lt;br /&gt;
    count = next byte of the input&lt;br /&gt;
    pixel = next byte of the input&lt;br /&gt;
    if count is zero&lt;br /&gt;
      skip (pixel) bytes of ouput&lt;br /&gt;
    else&lt;br /&gt;
      fill count of bytes of output with pixel&lt;br /&gt;
&lt;br /&gt;
==== MAD1 Chunk ====&lt;br /&gt;
&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
This chunk type is made up of several subchunks. Each subchunk is identified by a single byte after which the subchunk data follows. Note that the size of each subchunk is not stored, you need to correctly process each subchunk to get to the next one.&lt;br /&gt;
&lt;br /&gt;
These subchunk types are currently known:&lt;br /&gt;
&lt;br /&gt;
* 0x02: RLE-type algorithm&lt;br /&gt;
* 0x03: unknown, first two bytes are some size (of output?)&lt;br /&gt;
* 0x05: half-resolution frame, scaled to full resolution (e.g. for a 320x200 BRP this would be 160x100 pixels upscaled to 320x200)&lt;br /&gt;
* 0x06: full frame, read width*height bytes of data&lt;br /&gt;
* 0x07: block copy / motion vectors&lt;br /&gt;
* 0xFF: marks end of MAD1 chunk&lt;br /&gt;
&lt;br /&gt;
=== 0x02 algorithm ===&lt;br /&gt;
&lt;br /&gt;
  while input left&lt;br /&gt;
    get a byte from the input&lt;br /&gt;
    count = upper 2 bits of the byte&lt;br /&gt;
    skip = lower 6 bits of the byte&lt;br /&gt;
    if skip is 0x3F, skip 0x3E pixels in the output buffer&lt;br /&gt;
    else&lt;br /&gt;
      skip 'skip' pixels in the output buffer&lt;br /&gt;
      while count is greater than zero&lt;br /&gt;
        get a byte from the input as 'bitbuffer'&lt;br /&gt;
        repeat the following four times&lt;br /&gt;
          get next 2 bits from 'bitbuffer' ('bitbuffer' &amp;amp; 3) as 'code'&lt;br /&gt;
          do one of the following according to 'code'&lt;br /&gt;
            0: skip the next pixel in the output buffer&lt;br /&gt;
            1: repeat the last output pixel&lt;br /&gt;
            2: copy the pixel from output[output_positon - width] to the output buffer&lt;br /&gt;
            3: copy next pixel from the input buffer&lt;br /&gt;
&lt;br /&gt;
=== BASF Stream ===&lt;br /&gt;
Audio Stream. Stream header payload:&lt;br /&gt;
&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
Details of the audio compression scheme are currently unknown. The audio chunks are apparently not preceeded by an ASCII chunk type name.&lt;br /&gt;
  &lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=5638</id>
		<title>BRP</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=5638"/>
		<updated>2006-07-24T10:36:21Z</updated>

		<summary type="html">&lt;p&gt;John doe: /* MAD1 Chunk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extensions: brp&lt;br /&gt;
* Company: [[Argonaut Games]]&lt;br /&gt;
* Samples:&lt;br /&gt;
** Alien Odyssey: [http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/alienodyssey/ http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/alienodyssey/]&lt;br /&gt;
** FX Fighter: [http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/fxfighter/ http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/fxfighter/]&lt;br /&gt;
&lt;br /&gt;
At least 2 games use an animation format with the extension .brp: [http://www.mobygames.com/game/dos/fx-fighter FX Fighter] and [http://www.mobygames.com/game/dos/alien-odyssey Alien Odyssey], both by Argonaut. The general container formats used in both games are similar, but differing fourccs inside may indicate that the games used different video coding algorithms (which are presently unknown). All multi-byte numbers are little endian.&lt;br /&gt;
&lt;br /&gt;
== File Format ==&lt;br /&gt;
&lt;br /&gt;
BRP files consist of multi-stream chunks, where video and audio located in separate, but interleaved streams.&lt;br /&gt;
&lt;br /&gt;
File begins with following 12-byte header:&lt;br /&gt;
  dword signature - &amp;quot;BRPP&amp;quot;&lt;br /&gt;
  dword streams   - number of streams in file&lt;br /&gt;
  dword unknown   - unknown, but equal to 640*480&lt;br /&gt;
&lt;br /&gt;
File header followed by stream headers:&lt;br /&gt;
  dword signature       - stream [[FOURCC]]&lt;br /&gt;
  dword index           - logical index of the stream&lt;br /&gt;
  dword unknown1        -&lt;br /&gt;
  dword unknown2        -&lt;br /&gt;
  dword plsize          - size of the following payload data&lt;br /&gt;
  byte  payload[plsize] - stream-specific payload&lt;br /&gt;
&lt;br /&gt;
Finally, actual data chunks follows, each one starts with chunk header:&lt;br /&gt;
  dword index      - logical index of the stream chunk belongs to&lt;br /&gt;
  dword unknown&lt;br /&gt;
  dword size       - size of the chunk data&lt;br /&gt;
  byte  data[size] - stream-specific chunk data&lt;br /&gt;
&lt;br /&gt;
== Streams ==&lt;br /&gt;
=== BVID Stream ===&lt;br /&gt;
The video stream. Stream header payload:&lt;br /&gt;
   dword unknown1&lt;br /&gt;
   dword width    - width of the frame&lt;br /&gt;
   dword height   - height of the frame&lt;br /&gt;
   dword unknown2&lt;br /&gt;
&lt;br /&gt;
Each BVID's chunk data started with another [[FOURCC]], indicates chunk format:&lt;br /&gt;
==== PAL8 Chunk ====&lt;br /&gt;
  word start          - first color to update&lt;br /&gt;
  word count          - number of colors to update&lt;br /&gt;
  byte rgb[count * 3] - [[RGB]] triplets&lt;br /&gt;
&lt;br /&gt;
==== AVCF Chunk ====&lt;br /&gt;
&lt;br /&gt;
Intraframe 2x2 [[VQ]], similar to one used in [[AVS]].&lt;br /&gt;
&lt;br /&gt;
==== ALCD Chunk ====&lt;br /&gt;
&lt;br /&gt;
Interframe 2x2 [[VQ]], similar to one used in [[AVS]].&lt;br /&gt;
&lt;br /&gt;
==== RLED, RLEF Chunks ====&lt;br /&gt;
&lt;br /&gt;
Rle-compressed frame.&lt;br /&gt;
  while not all output processed&lt;br /&gt;
    count = next byte of the input&lt;br /&gt;
    pixel = next byte of the input&lt;br /&gt;
    if count is zero&lt;br /&gt;
      skip (pixel) bytes of ouput&lt;br /&gt;
    else&lt;br /&gt;
      fill count of bytes of output with pixel&lt;br /&gt;
&lt;br /&gt;
==== MAD1 Chunk ====&lt;br /&gt;
&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
This chunk type is made up of several subchunks. Each subchunk is identified by a single byte after which the subchunk data follows. Note that the size of each subchunk is not stored, you need to correctly process each subchunk to get to the next one.&lt;br /&gt;
&lt;br /&gt;
These subchunk types are currently known:&lt;br /&gt;
&lt;br /&gt;
* 0x02: RLE-type algorithm&lt;br /&gt;
* 0x03: unknown, first two bytes are some size (of output?)&lt;br /&gt;
* 0x05: half-resolution frame, scaled to full resolution (e.g. for a 320x200 BRP this would be 160x100 pixels upscaled to 320x200)&lt;br /&gt;
* 0x06: full frame, read width*height bytes of data&lt;br /&gt;
* 0x07: block copy / motion vectors&lt;br /&gt;
* 0xFF: marks end of MAD1 chunk&lt;br /&gt;
&lt;br /&gt;
=== 0x02 algorithm ===&lt;br /&gt;
&lt;br /&gt;
  while input left&lt;br /&gt;
    get a byte from the input&lt;br /&gt;
    count = upper 2 bits of the byte&lt;br /&gt;
    skip = lower 6 bits of the byte&lt;br /&gt;
    if skip is 0x3F, skip 0x3E pixels in the output buffer&lt;br /&gt;
    else&lt;br /&gt;
      skip 'skip' pixels in the output buffer&lt;br /&gt;
      while count is greater than zero&lt;br /&gt;
        get a byte from the input as 'bitbuffer'&lt;br /&gt;
        repeat the following four times&lt;br /&gt;
          get next 2 bits from 'bitbuffer' ('bitbuffer' &amp;amp; 3) as 'code'&lt;br /&gt;
          do one of the following according to 'code'&lt;br /&gt;
            0: skip the next pixel in the output buffer&lt;br /&gt;
            1: repeat the last output pixel&lt;br /&gt;
            2: copy the pixel from the line above to the output buffer&lt;br /&gt;
            3: copy next pixel from the input buffer&lt;br /&gt;
&lt;br /&gt;
=== BASF Stream ===&lt;br /&gt;
Audio Stream. Stream header payload:&lt;br /&gt;
&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
Details of the audio compression scheme are currently unknown. The audio chunks are apparently not preceeded by an ASCII chunk type name.&lt;br /&gt;
  &lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=5637</id>
		<title>BRP</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=5637"/>
		<updated>2006-07-24T10:35:07Z</updated>

		<summary type="html">&lt;p&gt;John doe: /* MAD1 Chunk */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extensions: brp&lt;br /&gt;
* Company: [[Argonaut Games]]&lt;br /&gt;
* Samples:&lt;br /&gt;
** Alien Odyssey: [http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/alienodyssey/ http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/alienodyssey/]&lt;br /&gt;
** FX Fighter: [http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/fxfighter/ http://www.mplayerhq.hu/MPlayer/samples/game-formats/brp/fxfighter/]&lt;br /&gt;
&lt;br /&gt;
At least 2 games use an animation format with the extension .brp: [http://www.mobygames.com/game/dos/fx-fighter FX Fighter] and [http://www.mobygames.com/game/dos/alien-odyssey Alien Odyssey], both by Argonaut. The general container formats used in both games are similar, but differing fourccs inside may indicate that the games used different video coding algorithms (which are presently unknown). All multi-byte numbers are little endian.&lt;br /&gt;
&lt;br /&gt;
== File Format ==&lt;br /&gt;
&lt;br /&gt;
BRP files consist of multi-stream chunks, where video and audio located in separate, but interleaved streams.&lt;br /&gt;
&lt;br /&gt;
File begins with following 12-byte header:&lt;br /&gt;
  dword signature - &amp;quot;BRPP&amp;quot;&lt;br /&gt;
  dword streams   - number of streams in file&lt;br /&gt;
  dword unknown   - unknown, but equal to 640*480&lt;br /&gt;
&lt;br /&gt;
File header followed by stream headers:&lt;br /&gt;
  dword signature       - stream [[FOURCC]]&lt;br /&gt;
  dword index           - logical index of the stream&lt;br /&gt;
  dword unknown1        -&lt;br /&gt;
  dword unknown2        -&lt;br /&gt;
  dword plsize          - size of the following payload data&lt;br /&gt;
  byte  payload[plsize] - stream-specific payload&lt;br /&gt;
&lt;br /&gt;
Finally, actual data chunks follows, each one starts with chunk header:&lt;br /&gt;
  dword index      - logical index of the stream chunk belongs to&lt;br /&gt;
  dword unknown&lt;br /&gt;
  dword size       - size of the chunk data&lt;br /&gt;
  byte  data[size] - stream-specific chunk data&lt;br /&gt;
&lt;br /&gt;
== Streams ==&lt;br /&gt;
=== BVID Stream ===&lt;br /&gt;
The video stream. Stream header payload:&lt;br /&gt;
   dword unknown1&lt;br /&gt;
   dword width    - width of the frame&lt;br /&gt;
   dword height   - height of the frame&lt;br /&gt;
   dword unknown2&lt;br /&gt;
&lt;br /&gt;
Each BVID's chunk data started with another [[FOURCC]], indicates chunk format:&lt;br /&gt;
==== PAL8 Chunk ====&lt;br /&gt;
  word start          - first color to update&lt;br /&gt;
  word count          - number of colors to update&lt;br /&gt;
  byte rgb[count * 3] - [[RGB]] triplets&lt;br /&gt;
&lt;br /&gt;
==== AVCF Chunk ====&lt;br /&gt;
&lt;br /&gt;
Intraframe 2x2 [[VQ]], similar to one used in [[AVS]].&lt;br /&gt;
&lt;br /&gt;
==== ALCD Chunk ====&lt;br /&gt;
&lt;br /&gt;
Interframe 2x2 [[VQ]], similar to one used in [[AVS]].&lt;br /&gt;
&lt;br /&gt;
==== RLED, RLEF Chunks ====&lt;br /&gt;
&lt;br /&gt;
Rle-compressed frame.&lt;br /&gt;
  while not all output processed&lt;br /&gt;
    count = next byte of the input&lt;br /&gt;
    pixel = next byte of the input&lt;br /&gt;
    if count is zero&lt;br /&gt;
      skip (pixel) bytes of ouput&lt;br /&gt;
    else&lt;br /&gt;
      fill count of bytes of output with pixel&lt;br /&gt;
&lt;br /&gt;
==== MAD1 Chunk ====&lt;br /&gt;
&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
This chunk type is made up of several subchunks. Each subchunk is identified by a single byte after which the subchunk data follows.&lt;br /&gt;
&lt;br /&gt;
These subchunk types are currently known:&lt;br /&gt;
&lt;br /&gt;
* 0x02: RLE-type algorithm&lt;br /&gt;
* 0x03: unknown, first two bytes are some size (of output?)&lt;br /&gt;
* 0x05: half-resolution frame, scaled to full resolution (e.g. for a 320x200 BRP this would be 160x100 pixels upscaled to 320x200)&lt;br /&gt;
* 0x06: full frame, read width*height bytes of data&lt;br /&gt;
* 0x07: block copy / motion vectors&lt;br /&gt;
* 0xFF: marks end of MAD1 chunk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 0x02 algorithm ===&lt;br /&gt;
&lt;br /&gt;
  while input left&lt;br /&gt;
    get a byte from the input&lt;br /&gt;
    count = upper 2 bits of the byte&lt;br /&gt;
    skip = lower 6 bits of the byte&lt;br /&gt;
    if skip is 0x3F, skip 0x3E pixels in the output buffer&lt;br /&gt;
    else&lt;br /&gt;
      skip 'skip' pixels in the output buffer&lt;br /&gt;
      while count is greater than zero&lt;br /&gt;
        get a byte from the input as 'bitbuffer'&lt;br /&gt;
        repeat the following four times&lt;br /&gt;
          get next 2 bits from 'bitbuffer' ('bitbuffer' &amp;amp; 3) as 'code'&lt;br /&gt;
          do one of the following according to 'code'&lt;br /&gt;
            0: skip the next pixel in the output buffer&lt;br /&gt;
            1: repeat the last output pixel&lt;br /&gt;
            2: copy the pixel from the line above to the output buffer&lt;br /&gt;
            3: copy next pixel from the input buffer&lt;br /&gt;
&lt;br /&gt;
=== BASF Stream ===&lt;br /&gt;
Audio Stream. Stream header payload:&lt;br /&gt;
&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
Details of the audio compression scheme are currently unknown. The audio chunks are apparently not preceeded by an ASCII chunk type name.&lt;br /&gt;
  &lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Shockwave_Stream&amp;diff=5463</id>
		<title>Shockwave Stream</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Shockwave_Stream&amp;diff=5463"/>
		<updated>2006-06-27T12:32:01Z</updated>

		<summary type="html">&lt;p&gt;John doe: Forgot a closing brace&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extension: stream&lt;br /&gt;
* Samples: http://www.mplayerhq.hu/MPlayer/samples/game-formats/shockwave-stream/&lt;br /&gt;
&lt;br /&gt;
Files with the .stream extension are found on the [[3DO]] game Shockwave. The files apparently use [[Cinepak]] for video compression but it is unclear if the version used is compatible with standard Cinepak.&lt;br /&gt;
&lt;br /&gt;
The Cinepak data is almost compatible to the standard Cinepak. In the Cinepak decoder, after the number of strips is read, 8 bytes need to be skipped. The meaning of these bytes is currently unknown.&lt;br /&gt;
Also, the chunk sizes do not always equal the amount of data actually read. This has been tested with of a modified version of Dr. Ferguson's decoder [1].&lt;br /&gt;
&lt;br /&gt;
The audio data is uncompressed, signed 16-Bit.&lt;br /&gt;
&lt;br /&gt;
The general file layout is made up of chunks (similar to IFF).&lt;br /&gt;
&lt;br /&gt;
[1] http://www.csse.monash.edu.au/~timf/videocodec.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Shockwave_Stream&amp;diff=5462</id>
		<title>Shockwave Stream</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Shockwave_Stream&amp;diff=5462"/>
		<updated>2006-06-27T12:31:20Z</updated>

		<summary type="html">&lt;p&gt;John doe: Added some more information on Cinepak and structure&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extension: stream&lt;br /&gt;
* Samples: http://www.mplayerhq.hu/MPlayer/samples/game-formats/shockwave-stream/&lt;br /&gt;
&lt;br /&gt;
Files with the .stream extension are found on the [[3DO]] game Shockwave. The files apparently use [[Cinepak]] for video compression but it is unclear if the version used is compatible with standard Cinepak.&lt;br /&gt;
&lt;br /&gt;
The Cinepak data is almost compatible to the standard Cinepak. In the Cinepak decoder, after the number of strips is read, 8 bytes need to be skipped. The meaning of these bytes is currently unknown.&lt;br /&gt;
Also, the chunk sizes do not always equal the amount of data actually read. This has been tested with of a modified version of Dr. Ferguson's decoder [1].&lt;br /&gt;
&lt;br /&gt;
The audio data is uncompressed, signed 16-Bit.&lt;br /&gt;
&lt;br /&gt;
The general file layout is made up of chunks (similar to IFF.&lt;br /&gt;
&lt;br /&gt;
[1] http://www.csse.monash.edu.au/~timf/videocodec.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=Shockwave_Stream&amp;diff=5461</id>
		<title>Shockwave Stream</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=Shockwave_Stream&amp;diff=5461"/>
		<updated>2006-06-27T12:29:39Z</updated>

		<summary type="html">&lt;p&gt;John doe: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extension: stream&lt;br /&gt;
* Samples: http://www.mplayerhq.hu/MPlayer/samples/game-formats/shockwave-stream/&lt;br /&gt;
&lt;br /&gt;
Files with the .stream extension are found on the [[3DO]] game Shockwave. The files apparently use [[Cinepak]] for video compression but it is unclear if the version used is compatible with standard Cinepak.&lt;br /&gt;
&lt;br /&gt;
The Cinepak data is almost compatible to the standard Cinepak. In the Cinepak decoder, after the number of strips is read, 8 bytes need to be skipped. The meaning of these bytes is currently unknown.&lt;br /&gt;
Also, the chunk sizes do not always equal the amount of data actually read. This has been tested with of a modified version of Dr. Ferguson's decoder [1].&lt;br /&gt;
&lt;br /&gt;
The audio data is uncompressed, signed 16-Bit.&lt;br /&gt;
&lt;br /&gt;
[1] http://www.csse.monash.edu.au/~timf/videocodec.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=HNM&amp;diff=4971</id>
		<title>HNM</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=HNM&amp;diff=4971"/>
		<updated>2006-05-19T17:57:22Z</updated>

		<summary type="html">&lt;p&gt;John doe: HNM formats, game links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extension: hnm&lt;br /&gt;
* Company: [[CRYO Interactive Entertainment]]&lt;br /&gt;
&lt;br /&gt;
HNM is a multimedia format used in some computer games by CRYO.&lt;br /&gt;
&lt;br /&gt;
There are at least three versions of the HNM format:&lt;br /&gt;
HNM, HNM4 and HNM6.&lt;br /&gt;
&lt;br /&gt;
HNM and HNM4 format animations are used in games like Commander Blood and Lost Eden. One of the differences is that HNM4 animations don't seem to contain an audio track, while the HNM ones do contain uncompressed PCM audio data.&lt;br /&gt;
Both HNM and HNM4 are palette-based formats.&lt;br /&gt;
&lt;br /&gt;
HNM6 is used by newer Cryo games made in the late 1990ies, e.g. China: The Forbidden City and probably the Atlantis games. The audio format in these animations is similar to Cryo's Apc audio format.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Games Using HNM ==&lt;br /&gt;
* [http://www.mobygames.com/game/windows/persian-wars Persian Wars]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/philip-jos-farmers-riverworld Riverworld]&lt;br /&gt;
* [http://www.mobygames.com/game/commander-blood Commander Blood]&lt;br /&gt;
* [http://www.mobygames.com/game/dos/lost-eden Lost Eden]&lt;br /&gt;
* [http://www.mobygames.com/game/china-the-forbidden-city China: The Forbidden City]&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=2267</id>
		<title>BRP</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=BRP&amp;diff=2267"/>
		<updated>2006-02-15T08:39:08Z</updated>

		<summary type="html">&lt;p&gt;John doe: Video chunks and audio; removed part about AO and MAD1 as it also uses ALCD/AVCF&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extensions: BRP&lt;br /&gt;
* Company: [[Argonaut Games]]&lt;br /&gt;
&lt;br /&gt;
At least 2 games use an animation format with the extension .brp: [http://www.mobygames.com/game/dos/fx-fighter FX Fighter] and [http://www.mobygames.com/game/dos/alien-odyssey Alien Odyssey], both by Argonaut. The general container formats used in both games are similar, but differing fourccs inside may indicate that the games used different video coding algorithms (which are presently unknown).&lt;br /&gt;
&lt;br /&gt;
All multi-byte numbers are little endian. The fourcc chunk format is as follows:&lt;br /&gt;
&lt;br /&gt;
  bytes 0-3    chunk size, not including 12-byte preamble&lt;br /&gt;
  bytes 4-7    chunk type&lt;br /&gt;
  bytes 8-11   unknown&lt;br /&gt;
  bytes 12..   chunk payload&lt;br /&gt;
&lt;br /&gt;
A BRP file begins with the following header:&lt;br /&gt;
&lt;br /&gt;
  bytes 0-3    file signature: 'BRPP'&lt;br /&gt;
  bytes 4-7    version number&lt;br /&gt;
  bytes 8-11   unknown, but always seems to be 307200 in decimal which,&lt;br /&gt;
               for trivia, is the product of 640 * 480&lt;br /&gt;
  bytes 12-15  fourcc: 'BVID', possibly a file sub-type&lt;br /&gt;
  bytes 16-31  unknown&lt;br /&gt;
  bytes 32-35  total number of video frames in file&lt;br /&gt;
  bytes 36-39  video width&lt;br /&gt;
  bytes 40-43  video height&lt;br /&gt;
  bytes 44-47  possibly video depth (8-bit, palettized video)&lt;br /&gt;
&lt;br /&gt;
There are 2 known versions: 1 and 2. The version 1 file proceeds as follows:&lt;br /&gt;
&lt;br /&gt;
  bytes 48-55  unknown&lt;br /&gt;
&lt;br /&gt;
A version 2 file header proceeds with a BASF chunk which appears to have an unknown 8-byte payload. This is followed by a 'ASF\0' chunk which has an 0x18-byte payload. Bytes 8-15 of this payload appear to be the 8 bytes of the DOS base filename (e.g., file 'foo.brp' would contain 'foo' with 5 0s after). The rest of the payload is unknown. The next 4 bytes of a v2 header contains the length of the remainder of the header, minus 12 bytes. An audio sample rate sits occupies 2 bytes in the space 16 bytes after these four bytes. The rest of the header is unknown. However, the presence of what looks like an audio sampling rate strongly indicates that these files carry audio data.&lt;br /&gt;
&lt;br /&gt;
Following the header is a 'PAL8' chunk (presumably, this would only occur in a 8-bit file if other bit depth files exist). This chunk contains full 8-bit RGB palette triplets.&lt;br /&gt;
&lt;br /&gt;
The video frames follow the header and palette chunk. In F/X Fighter, there are 2 frame types: AVCF and ALCD. Based on their relative occurrence frequencies, AVCF frames may be intracoded while ALCD frames&lt;br /&gt;
are intercoded.&lt;br /&gt;
&lt;br /&gt;
The following chunk types are currently known:&lt;br /&gt;
&lt;br /&gt;
  PAL8            8-bit palette, range 0-255&lt;br /&gt;
  MAD1            contains sub-chunks using different codecs like RLE-compression&lt;br /&gt;
  AVCF            vector quantized keyframe (similar to the algorithm used in Creature Shock)&lt;br /&gt;
  ALCD            vector quantized deltaframe&lt;br /&gt;
  &lt;br /&gt;
In the examined files only either the MAD1 or the AVCF/ALCD types are used throughout one file.&lt;br /&gt;
&lt;br /&gt;
Details of the audio compression scheme are currently unknown. The audio chunks are apparently not preceeded by an ASCII chunk type name.&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=RoQ&amp;diff=2266</id>
		<title>RoQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=RoQ&amp;diff=2266"/>
		<updated>2006-02-15T08:24:58Z</updated>

		<summary type="html">&lt;p&gt;John doe: Little info about RoQ differences in The 11th Hour and Clandestiny&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extensions: roq&lt;br /&gt;
* Company: [[Id Software]]&lt;br /&gt;
* Technical Description: [http://www.csse.monash.edu.au/~timf/videocodec/idroq.txt http://www.csse.monash.edu.au/~timf/videocodec/idroq.txt]&lt;br /&gt;
* Official Encoder (win32): [ftp://ftp.idsoftware.com/idstuff/quake3/tools/roq.zip ftp://ftp.idsoftware.com/idstuff/quake3/tools/roq.zip]&lt;br /&gt;
&lt;br /&gt;
RoQ is a full motion video format originally developed for [http://www.mobygames.com/game/dos/11th-hour The 11th Hour] by Graeme Devine. The format was later used as the FMV format for [http://www.mobygames.com/game/windows/quake-iii-arena Quake III: Arena] and derivative games.&lt;br /&gt;
&lt;br /&gt;
According to excerpts of Devine's ''11th Hour'' development journal published in Wired at [http://www.wired.com/wired/archive/3.08/shipping.html http://www.wired.com/wired/archive/3.08/shipping.html], the RoQ format was named after Devine's newborn daughter, Roqee.&lt;br /&gt;
&lt;br /&gt;
Switchblade roq encoder with source can be found here http://icculus.org/homepages/riot/&lt;br /&gt;
&lt;br /&gt;
The RoQ files used in The 11th Hour and Clandestiny are a superset of the format used in Q3-Engine based games. They include chunk types not used in Q3 and supported in the current impelentations of the format. These two games, among other differences, also include support for JPEG encoded keyframes.&lt;br /&gt;
&lt;br /&gt;
== Games Using RoQ ==&lt;br /&gt;
&lt;br /&gt;
These games are known to use the RoQ format, often because they are based on the ''Quake III'' engine.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/dos/11th-hour The 11th Hour]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/american-mcgees-alice American McGee's Alice]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/quake-iii-arena Quake III: Arena]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/return-to-castle-wolfenstein Return To Castle Wolfenstein]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/star-wars-jedi-knight-ii-jedi-outcast Star Wars: Jedi Knight II - Jedi Outcast]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/clandestiny Clandestiny]&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=RoQ&amp;diff=2265</id>
		<title>RoQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=RoQ&amp;diff=2265"/>
		<updated>2006-02-15T08:20:19Z</updated>

		<summary type="html">&lt;p&gt;John doe: added Clandestiny to /* Game Using RoQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extensions: roq&lt;br /&gt;
* Company: [[Id Software]]&lt;br /&gt;
* Technical Description: [http://www.csse.monash.edu.au/~timf/videocodec/idroq.txt http://www.csse.monash.edu.au/~timf/videocodec/idroq.txt]&lt;br /&gt;
* Official Encoder (win32): [ftp://ftp.idsoftware.com/idstuff/quake3/tools/roq.zip ftp://ftp.idsoftware.com/idstuff/quake3/tools/roq.zip]&lt;br /&gt;
&lt;br /&gt;
RoQ is a full motion video format originally developed for [http://www.mobygames.com/game/dos/11th-hour The 11th Hour] by Graeme Devine. The format was later used as the FMV format for [http://www.mobygames.com/game/windows/quake-iii-arena Quake III: Arena] and derivative games.&lt;br /&gt;
&lt;br /&gt;
According to excerpts of Devine's ''11th Hour'' development journal published in Wired at [http://www.wired.com/wired/archive/3.08/shipping.html http://www.wired.com/wired/archive/3.08/shipping.html], the RoQ format was named after Devine's newborn daughter, Roqee.&lt;br /&gt;
&lt;br /&gt;
Switchblade roq encoder with source can be found here http://icculus.org/homepages/riot/&lt;br /&gt;
&lt;br /&gt;
== Games Using RoQ ==&lt;br /&gt;
&lt;br /&gt;
These games are known to use the RoQ format, often because they are based on the ''Quake III'' engine.&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/dos/11th-hour The 11th Hour]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/american-mcgees-alice American McGee's Alice]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/quake-iii-arena Quake III: Arena]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/return-to-castle-wolfenstein Return To Castle Wolfenstein]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/star-wars-jedi-knight-ii-jedi-outcast Star Wars: Jedi Knight II - Jedi Outcast]&lt;br /&gt;
* [http://www.mobygames.com/game/windows/clandestiny Clandestiny]&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
	<entry>
		<id>https://wiki.multimedia.cx/index.php?title=MUX&amp;diff=2264</id>
		<title>MUX</title>
		<link rel="alternate" type="text/html" href="https://wiki.multimedia.cx/index.php?title=MUX&amp;diff=2264"/>
		<updated>2006-02-15T08:17:19Z</updated>

		<summary type="html">&lt;p&gt;John doe: /* Games That Use MUX */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Extension: mux&lt;br /&gt;
&lt;br /&gt;
MUX is a full motion video format used in a small number of computer games. The format packages raw, unsigned, 8-bit PCM audio along with a custom video coding format.&lt;br /&gt;
&lt;br /&gt;
== File Format ==&lt;br /&gt;
&lt;br /&gt;
All multi-byte numbers are little endian. The file format is laid out as follows:&lt;br /&gt;
&lt;br /&gt;
  bytes 0-27       unknown&lt;br /&gt;
  bytes 28-29      video width&lt;br /&gt;
  bytes 30-31      video height&lt;br /&gt;
  bytes 32-16383   frame offset table&lt;br /&gt;
&lt;br /&gt;
Each frame offset is 32 bits. There is enough space in the chunk offset table for 4087 media chunks. The top 2 bits of each offset always appear to be 1 (so the top byte of the chunk is always 0xC0), so these are probably flags of some sort. The last entry in the table is all 1s (0xFFFFFFFF) and the remainder of the table is all 0s.&lt;br /&gt;
&lt;br /&gt;
Frames contain 1 or more chunks, each of which are formatted in a manner that is reminiscent of the [[Flic Video|Autodesk FLIC format]]:&lt;br /&gt;
&lt;br /&gt;
  bytes 0-1    chunk type&lt;br /&gt;
  bytes 2-5    chunk size, not including this 6-byte header&lt;br /&gt;
  bytes 6..    chunk payload&lt;br /&gt;
&lt;br /&gt;
Known chunk types appear to include:&lt;br /&gt;
&lt;br /&gt;
  0007    unsigned, 8-bit PCM audio&lt;br /&gt;
  0070    apparently a palette chunk, 0x300 (768) bytes, and each &lt;br /&gt;
          component is 8 bits (not 6 bits, like VGA palettes are &lt;br /&gt;
          normally stored)&lt;br /&gt;
  006F    video chunk&lt;br /&gt;
  0005    frame count: 2-byte payload contains frame number&lt;br /&gt;
&lt;br /&gt;
== Video Format ==&lt;br /&gt;
&lt;br /&gt;
The corresponding video coding format is presently unknown.&lt;br /&gt;
&lt;br /&gt;
== Games That Use MUX ==&lt;br /&gt;
&lt;br /&gt;
These games are known to use MUX files for FMV:&lt;br /&gt;
&lt;br /&gt;
* [http://www.mobygames.com/game/dos/chaos-control Chaos Control]&lt;br /&gt;
* [http://www.mobygames.com/game/dos/prisoner-of-ice Prisoner of Ice]&lt;br /&gt;
* [http://www.mobygames.com/game/dos/time-gate-knights-chase Time Gate: Knight's Chase]&lt;br /&gt;
&lt;br /&gt;
[[Category:Video Codecs]]&lt;br /&gt;
[[Category:Undiscovered Video Codecs]]&lt;br /&gt;
[[Category:Game Formats]]&lt;/div&gt;</summary>
		<author><name>John doe</name></author>
	</entry>
</feed>