mirror of
https://github.com/1dot13/source.git
synced 2026-07-29 13:52:17 +02:00
libsmacker is an open reimplementation of the parts of smackw32.dll needed to get frames and audio out of an .smk file. Vendoring it here is the first step to dropping the proprietary SMACKW32.LIB/SMACKW32.DLL dependency. Nothing links against it yet. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
56 lines
1.7 KiB
Plaintext
56 lines
1.7 KiB
Plaintext
libsmacker
|
|
A C library for decoding .smk Smacker Video files
|
|
|
|
version 1.2.0
|
|
2021-06-02
|
|
|
|
(c) Greg Kennedy 2013-2021
|
|
http://libsmacker.sourceforge.net
|
|
----
|
|
|
|
---
|
|
Introduction
|
|
---
|
|
libsmacker is a cross-platform C library which can be used for decoding Smacker Video files produced by RAD Game Tools. Smacker Video was the king of video middleware in the 1990s, and its 256-color compressed video format was used in over 2600 software titles.
|
|
|
|
libsmacker implements the minimum feature set required from smackw32.dll to get an smk off a disk and the frames / audio into a buffer in the correct order.
|
|
|
|
---
|
|
License
|
|
---
|
|
libsmacker is released under the Lesser GNU Public License, v2.1. See the file COPYING for more information.
|
|
|
|
---
|
|
Usage
|
|
---
|
|
See the webpage for sample code and function documentation. The source package additionally includes a pair of driver programs:
|
|
* driver.c - dumps all frames of a file to a bmp/ subdirectory, and all audio as raw streams to out_*.raw files in CWD
|
|
* smk2avi.c - converts smk file(s) to AVI files - uncompressed 24-bit color and PCM audio stream.
|
|
|
|
Though the libraries are "bulletproofed" the sample apps are not: be cautious if you plan to implement in some critical environment.
|
|
|
|
---
|
|
Changelog
|
|
---
|
|
1.2.0
|
|
* Major refactor of data structures for performance
|
|
* Merge all files into a single unified .c source file
|
|
* Support audio-only .smk files
|
|
1.1.1
|
|
* Re-license under LGPL 2.1
|
|
1.1
|
|
* Switch to autotools-based build
|
|
* Incorporates patches from Dalerank Slim, Gennady Trafimenkov, and Bianca van Schaik
|
|
* Performance improvements and code cleanup / safety.
|
|
1.0
|
|
* Initial revision
|
|
|
|
---
|
|
Contact
|
|
---
|
|
Questions/comments:
|
|
* by email: kennedy.greg@gmail.com
|
|
* by website: http://libsmacker.sourceforge.net
|
|
|
|
Enjoy!
|