jverne
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору @ lorents, Sorry for not answering before, but I only had the password on this computer. I believe that Adobe Photoshop library and Independent JPEG Group cjpeg library are equivalent, because they need to do the same operations to build a JPEG file, with one exception -they are using different quantization tables- cf.: http://www.impulseadventure.com/photo/jpeg-quantization.html But you can use the Independent JPEG Group cjpeg library using the -qtables switch and put there the tables from Adobe Photoshop, if you really want. There is one problem, those two libraries are not adequate for lossless operations on images, such as those done by jpegtran, jpegoptim, jstrip and jpgcrush. There is another lossless jpeg optimization: use a better Huffman encoding. I believe that it should be relatively straightforward to change jpegtran's source code to use the Vitter's algorithm from Google and gain another 1-2% on average. @ yug78 I'm reading your post via Google translate, so you can answer in Russian. I also have found that the images compressed by jpgcrush do not show in older operas. On the other hand, I'm not seeing those old operas in my site logs. So I don't care that much. From my experience I also see a gain of 1-2% on average. Are you saying that with your second code, images are displayed on older operas? That's an interesting and welcome find for another site I'm working with, because the owner only cared for opera... Добавлено: Thanks for posting it at encode.ru. I think that Piotr Tarsa got it partially wrong: 1. Yes JPEG decoders do not build Huffman trees on the fly, 2. No, that is not a problem, because once we got the optimized Huffman tree, we use that one instead the classical one to encode the jpg. |