The JPEG compression was substantially improved, providing smaller images at the same visual quality. The reduction varies between 10 – 30%.
In addition, RIOT can now open JPEG images encoded using arithmetic coding and will support such encoding in future versions.
64 bit build. Work with larger images. Improved security
Version 1.0 comes as a 64 bit build, allowing it to process larger images (>50 megapixels) and enhanced instruction sets (AVX2).
The PE security was improved by enabling Data Execution Prevention (DEP) and Address Space Layout Randomization (ASLR). This helps mitigate attacks by viruses or other threats to inject and execute code in memory sections not meant to hold code. Some specially crafted images for instance might be used to cause buffer overflows and cause code execution.
Get it while hot from the Download page.
Note: The updated version is only available for 64bit for now and only as the standalone version. The 32 bit version and the updated plugin will be release soon.
In the earlier post about the future plans of RIOT I mentioned these and the strike through items are already done:
64 bit version. This will allow RIOT to work with higher resolution images and be faster
- full support for WebP image format (read/write). I expect that in a couple of years WebP will replace JPEGs and PNGs
jpeg compression improvements
- HiDPI support – make RIOT UI look better on 4k displays
- … more
You can see that the WebP support and continuing the HiDPI improvements is on the medium term roadmap.
I am gonna add one more item to this list, which should be an exciting news for the people who want to use RIOT on their servers: a Linux server version. That will open the gates for a RIOT Api, a RIOT web image optimization service and more.
Future of the RIOT plugin
Even if not yet released, I already created an updated 64 bit version for GIMP. Me and Pierre (XNVIew author) are planning the integration to XNView MP (the 64 bit of XNVIew).
Paint.net already has support for using the RIOT plugin in the 32 bit version. I will have to talk to them about the upgrade and maybe add this option in the RIOT installer.
I am investigating adding plugins for other host applications such as Adobe Photoshop or Inkscape.
So the plugin is here to stay.
Unfortunately there are low chances RIOT will ever be implemented in IrfanView on the 64bit version, not because RIOT does not work, but because Irfan has some weird demands (yes, I really mean demands) on the size and packaging of the RIOT plugin. IrfanView does not have an open plugin architecture, so unless me and him agree on something and he accepts to simply add the support manually (since again, his plugin architecture is not open, which defeats the purpose of using plugins btw), you are stuck with using the 32 bit version and probably an older version of IV in the future, if he removes RIOT support altogether from it’s 32 bit version. He insists of bundling the plugin, even if only the support is necessary, and the installation can be made by RIOT as it was for the recent years when the plugin was updated, and there were no issues with that in the past years. Also he has some crazy ideas on having a single dll (controlling the structure of how RIOT is made) and expectations about the size, which would only be bellow 3 MB anyway , and that request to go bellow 3 MB is silly now with these 1 TB harddrives.. We are not in 1996 anymore when I had a 160 MB disk. RIOT is quite complex and has support for formats for which iV has plugins, also the 64 bit adds overhead. Can’t see why this fixation for size and how one megabytes makes any difference for a user with a terrabyte harddrive. Users don’t fill their disks with programs, they fill them with data. Basically the 64 bit version of IV now has that “Save for web” menu option coded to not try to run RIOT, even if RIOT would actually work on 64 bit.
Anyway, we’ll see what happens. Maybe you will have the 64 bit version for IV, but it’s really not my call here.
Full change log:
v. 1.0.0 (Jan 25, 2021)
* : fixed
! : changed
+ : added
– : removed
+ 64 bit version, allowing bigger images to be processed (>50 MP)
! improved compression with up to 30% for jpeg images
+ decoding support for jpeg images using arithmetic coding
+ improved PE security with DEP and ASLR
! the AVX2 instruction set for the 64bit version should provide better performance on larger images
! the 32 bit version is gonna be deprecated (probably the last 32 bit release)
* fixed display of optiized size in higher text dpi settings
* using less memory after the image is analyzed
* other minor fixes & tweaks