JFIFdt44 44.19
fastest JPEG picture datatype
Short: fastest JPEG picture datatype Author: Henryk Richter, gni@gecko.de (Gunther Nikl) Uploader: henryk richter gmx net (Henryk Richter) Type: util/dtype Version: 44.19 Architecture: m68k-amigaos >= 3.0.0 Distribution: NoCD This datatype contains a highly optimized 68020+ JPEG decoder core, aiming for maximum speed without compromising accuracy. Changes in this release: - This release fixes a rare issue in the optimized Entropy decoder. At extremely high bitrates (quality setting 100%) and high noise levels, minor localized block errors could have resulted. (Thanks to P. "flype" Carpentier) - Smaller JPEG files up to 1 MB in size are now loaded directly instead of double buffered streaming on systems with plenty (>= 32MB) of RAM. A performance comparison is shown below. (on A3000 with BFG9060@100 MHz, 3.2+ ROM, CyberVision64 in HiColor, picture.datatype 47.15 from OS3.2.1, all datatypes at default settings; times in seconds measured as median over 5 iterations with "visage nojpeg time test"): Name |akjfif |jfif |warpjpeg|os32jpeg| Version |45.95 |44.19 |45.17 |47.8 | ------------------------------------|--------|--------|--------|--------| AnalogPac640x480_70_seq.jpg |0.484 |0.305 |0.461 |0.372 | BGA1024x1024_gray.jpg |1.583 |1.386 |1.545 |1.534 | CasaDeCampo_2592x1728_70_seq_420.jpg|4.593 |2.988 |3.969 |3.650 | CasaDeCampo_2592x1728_90_seq_444.jpg|8.232 |5.405 |7.760 |6.565 | Goose1024x768_12_baselineopt.jpg |1.971 |1.417 |1.861 |1.797 | Molli512x384_9_seq.jpg |0.374 |0.255 |0.351 |0.310 | Peacock800x600_10_baseline.jpg |0.923 |0.605 |0.891 |0.739 | Sail768x576_9_seq.jpg |0.680 |0.423 |0.627 |0.511 | Wnmde1152x768_70_422v_prog.jpg |1.788 |1.457 |1.637 |1.633 | Wnmde1536x1024_90_422h_seq.jpg |1.834 |1.183 |1.686 |1.432 | jordan199b.jpg |1.185 |0.717 |1.045 |0.871 | The test images, benchmarking scripts, system details and raw results are available at: http://bax.comlab.uni-rostock.de/fileadmin/downloads/jpegbench.zip The datatype is an all-in-one binary for any 68020+ Amiga. A fallback 68000 version (without assembly optimizations) is provided as well. Changes in this release 44.19: - workaround for potential Huffman decoder glitch at extremely high bitrates (SAFERESTART option) - smaller JPEG files are loaded in one step now instead of streaming 44.18: - added installer script - overhauled YCC to RGB conversion by avoiding multiplications such that it runs much faster on MC68030/68040 - updated both HQ and fast integer iDCT algorithms with faster paths for some special cases that are computed as more efficient 2D iDCT instead of the customary 1D separated row/column approach 44.17: - fixed V42 mode (3.0/3.1 without updated picture.datatype) - added CPU check to 020+ version to exit cleanly on 68000/10 - removed FPU requirement (FPU iDCT is still optionally available on FPU equipped systems) - added minimum CPU type to version string 44.16: - fixed occasionally missing rows of pixels in cases where the SCALE or MAXLENGTH options are active - prepared for additional speedup on OS3.2.1 (about 100ms per megapixel on 060/50 with picture.datatype 47.15) 44.15: - fixed incompatibility with picture.datatype 45.17 (OS3.9BB2) 44.14: - enabled arithmetic residual coding (not part of the JPEG standard last I checked, but there are some pictures on the internet using this mode) - improvements to Huffman decoding functions - leverage V47 picture.datatype features for more speed - improvements to grayscale image handling Feature overview - supports normal and progressive JFIFs with all their flavours - supports HAM output (HAM6 as well as HAM8) - switches to V43 mode if a picture.datatype V43+ is present - asynchronous file I/O to speedup image loading and decoding - utilizes WritePixelLine8() for chunky-to-planar in V42 mode - automatic colour quantizing of true-colour data for V42 - can be configured to suit personal preferences - OS 3.5 and later support (minimum OS3.0) - FBlit tolerance - based on libjpeg-turbo - ASM optimizations to Huffman decoding, iDCT and color transform (68020+) - 30 bit internal resolution for color transform functions - Highly accurate and fast default inverse cosine transform function (stock libjpeg methods still available as options) - AMMX optimization for Apollo Core Gold 2.7 and later - FPU and AMMX availability is checked before use at runtime - support for XMP JFIF files - all-in-one binary for 68020+ Tuning (see also the guide file for additional options): Classic 68k based Amigas - The old fast iDCT is still about 10% faster than the default on 68030/68040. If you care more for speed than accuracy, just type makedir envarc:classes makedir envarc:classes/datatypes echo "DCT=FAST" >envarc:classes/datatypes/jfif44.prefs in a shell window. Alternatively, a single commandline call is also possible: setenv envarc:classes/datatypes/jfif44.prefs DCT=FAST Vampire Amigas - On Vampire, the default iDCT is the AMMX fast, less accurate iDCT. If you'd like to have the better accuracy of the new iDCT, type the following lines in a shell window: makedir envarc:classes makedir envarc:classes/datatypes echo "DCT=FASTGOOD" >envarc:classes/datatypes/jfif44.prefs alternative: setenv envarc:classes/datatypes/jfif44.prefs DCT=FASTGOOD
Gratis
Desde el Amiga: abre Hangar y busca JFIFdt44.
| Autor | Henryk Richter, gni@gecko.de (Gunther Nikl) |
|---|---|
| Categoría | util/dtype |
| Tamaño | 683 KB |
| Fecha | 2026-11-09 |
| Para | m68k-amigaos >= 3.0.0 |
| Origen | Aminet |