SIF1 Ė is a free universal video codec. Itís a multimedia compressor/decompressor which registers into Windows collection of multimedia drivers and integrates into any application using DirectShow and Microsoft Video for Windows. Itís based on the original proprietary algorithm of compression.
Information about technology used in this codec is here.
Demonstration video samples can be downloaded here.
Description of codec settings located on the separate help page.
SIF transform core code restructurization and multithreaded optimization.
Adding a new higher-quality SIF transform modes through the use of PsyRD optimization.
Adding support for quarter-pixel motion compensation.
Writing a portable SIF1 encoding-decoding library for Linux.
Performing SSE2 and multiprocessor optimization of the current code.
Further development of new algorithms based on SIF-technology.
History of versions.
- Motion detection engine was restructured and optimized for multithreaded operation (up to 32 threads). In current code multithreaded optimization is done using a temporal scheme since the core of SIF transform is the last big unit of code that is not working in multithreaded mode.
- Added multithreaded modes of an entropy codec operation (up to 8 threads). Thus, the decoder now have full multithreading support and supports decoding of streams with 80+ mbits bitrate.
- Codec now supports vertical resolution that is not a multiple of 16.
- Implemented different (in terms of speed & quality) motion detection engine presets.
- Added checking for correct input. Now the decoder doesn't crash on corrupt or invalid files.
- Added turbo first pass mode - about two times faster than second in two-pass mode.
- New PsyRD extrapolation engine, used in the motion detection engine, is written. Due to this, another significant improvement in sharpness and detail of compressed image was achieved.
- Code of motion compensation engine was restructured.
- All main DSP engines of the decoder were optimized for multithreaded operation. Up to 32 parallel threads are supported.
- Parameters of the SIF compression core were optimized and psycho-visual model was improved. At the result sharpness and detail of compressed image were significantly improved.
- Fixed bug in compression core that appeared when vertical image resolution was not a multiple of 32.
- Fixed bug in codec that lead to crash on old machines without SSE instruction set support. Thanks to Alexander Budchanin for testing.
- All basic units of codec were almost fully rewritten. Functionality of compression core have been significantly improved.
- Quality of compression enormously increased.
- Added full set of compressions modes.
- Debugged and improved psycho-visual model.
- Codec format was fixed and will be published in the form of open specification.
- Unfortunately this version is not compatible with all previous versions, but this is the last significant changing of the format.
- 0.45 Alpha4
- Decoding speed has been increased over 1.6 times.
- Total compression efficiency has been increased.
- Level of some image compression artifacts has been decreased.
- Psycho-visual model has been significantly improved.
- 0.40 Alpha3
- Algorithm has been improved and operation efficiency of the Core6 analyzing part has been increased. Level of some image artifacts has been decreased.
- Algorithm of quantizer operation has been changed.
- Added adaptive algorithm of bitrate control.
- Sharpness of decoded image has been significantly increased.
- Psycho-visual model has not been finally debugged. However, it operation is acceptable.
- Total compression efficiency has been significantly increased.
- This version is not compatible with the previous one, but all subsequent versions of the codec should decode video compressed by the former version.
- 0.30 Alpha2
- Entropy codec has been corrected and modified.
- Level of some image compression artifacts has been significantly decreased.
- Improved functionality of the motion compensation engine.
- Added automatic key frame arrangement.
- Compression efficiency has been significantly increased.
- Added support of input color spaces: RGB32, YUY2, and YV12.
- This version is incompatible with the previous one.
- 0.25 Alpha1 - First public version.