Smacker Video SMK: Difference between revisions
imported>Ikskoks |
imported>Ikskoks (→Games) |
||
| (11 intermediate revisions by 2 users not shown) | |||
| Line 43: | Line 43: | ||
=== MultiEx BMS Script === | === MultiEx BMS Script === | ||
<bms author="unknown" ext="smk" games="'Jurassic Park: Trespasser'" platforms="'PC'" version="1.0" silence="no" verbose="no"> IDString 0 SMK2 ; Get DUMMYL Long 0 ; Get DUMMYL Long 0 ; Get FILECNTL Long 0 ; Set FILESTART Long 104 ; Set FILEJMP Long FILECNTL ; Math FILEJMP *= 4 ; Math FILEJMP += FILECNTL ; Math FILEJMP += 104 ; Do ; Set FILEOFF Long FILEJMP ; GoTo FILESTART 0 ; Get FILESIZE Long 0 ; SavePos FILESTART 0 ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math FILEJMP += FILESIZE ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; </bms> <bms author="unknown" ext="zrb" games="'Total Annihilation'" platforms="'PC'" version="1.0" silence="yes" verbose="no"> IDString 0 SMK2 ; Get DUMMYL Long 0 ; Get DUMMYL Long 0 ; Get FILECNTL Long 0 ; Set FILESTART Long 104 ; Set FILEJMP Long FILECNTL ; Math FILEJMP *= 4 ; Math FILEJMP += FILECNTL ; Math FILEJMP += 104 ; Do ; Set FILEOFF Long FILEJMP ; GoTo FILESTART 0 ; Get FILESIZE Long 0 ; SavePos FILESTART 0 ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math FILEJMP += FILESIZE ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; </bms> | <bms author="unknown" ext="smk" games="'Jurassic Park: Trespasser'" platforms="'PC'" version="1.0" silence="no" verbose="no"> IDString 0 SMK2 ; Get DUMMYL Long 0 ; Get DUMMYL Long 0 ; Get FILECNTL Long 0 ; Set FILESTART Long 104 ; Set FILEJMP Long FILECNTL ; Math FILEJMP *= 4 ; Math FILEJMP += FILECNTL ; Math FILEJMP += 104 ; Do ; Set FILEOFF Long FILEJMP ; GoTo FILESTART 0 ; Get FILESIZE Long 0 ; SavePos FILESTART 0 ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math FILEJMP += FILESIZE ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; </bms> <bms author="unknown" ext="zrb" games="'Total Annihilation'" platforms="'PC'" version="1.0" silence="yes" verbose="no"> IDString 0 SMK2 ; Get DUMMYL Long 0 ; Get DUMMYL Long 0 ; Get FILECNTL Long 0 ; Set FILESTART Long 104 ; Set FILEJMP Long FILECNTL ; Math FILEJMP *= 4 ; Math FILEJMP += FILECNTL ; Math FILEJMP += 104 ; Do ; Set FILEOFF Long FILEJMP ; GoTo FILESTART 0 ; Get FILESIZE Long 0 ; SavePos FILESTART 0 ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math FILEJMP += FILESIZE ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; </bms> | ||
=== quickBMS Script === | |||
* [https://pastebin.com/uuva6vAq smk_demuxer.bms] | |||
=== Notes and Comments === | === Notes and Comments === | ||
| Line 51: | Line 55: | ||
=== Games === | === Games === | ||
List of games using this file format: | List of games using this file format: | ||
* Blood (*.SMK) (PC) | |||
* Hugo: Jungle Island (*.SMK) (PC) | |||
* [[Jurassic Park: Trespasser]] (*.SMK) | * [[Jurassic Park: Trespasser]] (*.SMK) | ||
* Total Annihilation (*.ZRB) | * Total Annihilation (*.ZRB) | ||
| Line 60: | Line 66: | ||
* {{ProgramSupportMexcom}} | * {{ProgramSupportMexcom}} | ||
* Foobar2000 + vgmstream plugin (audio only) | |||
* {{ProgramSupportGameExtracter}} | * {{ProgramSupportGameExtracter}} | ||
* [http://www.radgametools.com/smkdown.htm Smacker] | * [http://www.radgametools.com/smkdown.htm Smacker] | ||
| Line 67: | Line 74: | ||
=== See Also === | === See Also === | ||
* [https://wiki.multimedia.cx/index.php/Smacker Smacker File Format (multimedia.cx)] | * [https://wiki.multimedia.cx/index.php/Smacker Smacker File Format (multimedia.cx)] | ||
* [ | * [[wikipedia:Smacker video|Smacker video (Wikipedia)]] | ||
<br/><br> | <br/><br> | ||
Latest revision as of 20:32, 25 April 2022
Back to index | Edit this page
SMK
- Format Type : Video
- Endian Order : Little Endian
- Signature : SMK2 / SMK4
Format Specifications
// header
4 bytes (char) - signature // "SMK2" or "SMK4"
4 bytes (uint32) - width
4 bytes (uint32) - height
4 bytes (uint32) - number of frames
4 bytes (uint32) - frame rate
4 bytes (uint32) - flags
28 bytes (7 * uint32) - audio size array
4 bytes (uint32) - trees size
4 bytes (uint32) - mmap size
4 bytes (uint32) - mClr size
4 bytes (uint32) - full size
4 bytes (uint32) - type size
28 bytes (7 * uint32) - audio rate array
4 bytes (uint32) - unknown
// frame sizes
num_of_frames *
{
4 bytes (uint32) - frame size
}
x bytes - frame types
x bytes - huffman trees
x bytes - frame data
MultiEx BMS Script
<bms author="unknown" ext="smk" games="'Jurassic Park: Trespasser'" platforms="'PC'" version="1.0" silence="no" verbose="no"> IDString 0 SMK2 ; Get DUMMYL Long 0 ; Get DUMMYL Long 0 ; Get FILECNTL Long 0 ; Set FILESTART Long 104 ; Set FILEJMP Long FILECNTL ; Math FILEJMP *= 4 ; Math FILEJMP += FILECNTL ; Math FILEJMP += 104 ; Do ; Set FILEOFF Long FILEJMP ; GoTo FILESTART 0 ; Get FILESIZE Long 0 ; SavePos FILESTART 0 ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math FILEJMP += FILESIZE ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; </bms> <bms author="unknown" ext="zrb" games="'Total Annihilation'" platforms="'PC'" version="1.0" silence="yes" verbose="no"> IDString 0 SMK2 ; Get DUMMYL Long 0 ; Get DUMMYL Long 0 ; Get FILECNTL Long 0 ; Set FILESTART Long 104 ; Set FILEJMP Long FILECNTL ; Math FILEJMP *= 4 ; Math FILEJMP += FILECNTL ; Math FILEJMP += 104 ; Do ; Set FILEOFF Long FILEJMP ; GoTo FILESTART 0 ; Get FILESIZE Long 0 ; SavePos FILESTART 0 ; Log FILENAME FILEOFF FILESIZE 0 0 ; Math FILEJMP += FILESIZE ; Math EXTRCNT += 1 ; While EXTRCNT <> FILECNTL ; </bms>
quickBMS Script
Notes and Comments
- None.
Games
List of games using this file format:
- Blood (*.SMK) (PC)
- Hugo: Jungle Island (*.SMK) (PC)
- Jurassic Park: Trespasser (*.SMK)
- Total Annihilation (*.ZRB)
- William Shatner's TekWar (*.SMK)
- Many more...
Full list of games using Smacker can be found here
Compatible Programs
- MultiEx Commander
- Foobar2000 + vgmstream plugin (audio only)
- Game Extractor
- Smacker
- libsmacker (+source code)
- RAD Video Tools
See Also