| View previous topic :: View next topic | 
	
	
		| Author | Message | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Tue Feb 07, 2012 20:15    Post subject: [WDX_Plugin Request] Параметры сжатия JPEG (Photoshop) |   |  
				| 
 |  
				| Существует достаточно полезная программа показывающая различную информацию о JPEG файлах: http://www.impulseadventure.com/photo/jpeg-snoop.html 
 Одной из такой есть информация о выбранном качестве сжатия, которую для файлов Adobe Photoshop программа берет из маркера APP13.
 
 Для файлов сжатых в режиме "Save For Web.." всё достаточно просто (значение всегда в одном и том же положении и вопрос решен плагином decHexWdx), но вот для режима "Save As..", намного сложнее.
 Детальное описание нашел здесь:
 http://www.impulseadventure.com/photo/save-as-save-for-web.html
 
 Просьба сделать плагин находящий значение HEX: 38 42 49 4D 04 06 00 00 00 00 07 00 02 и по этим последним двум значениям выводящим информацию о качестве согласно таблицы:
 FFFC Quality 0
 FFFD Quality 1
 FFFE Quality 2
 FFFF Quality 3
 0000 Quality 4
 0001 Quality 5
 0002 Quality 6
 0003 Quality 7
 0004 Quality 8
 0005 Quality 9
 0006 Quality 10
 0007 Quality 11
 0008 Quality 12
 
 Нужна сортировка по этому значению в колонке ТС.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dec 
 
 
 Joined: 07 Sep 2006
 Posts: 466
 
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 16:45    Post subject: Re: [WDX_Plugin Request] Параметры сжатия JPEG (Photoshop) |   |  
				| 
 |  
				|  	  | aLLigator wrote: |  	  | Для файлов сжатых в режиме "Save For Web.." всё достаточно просто (значение всегда в одном и том же положении и вопрос решен плагином decHexWdx) 
 ...
 
 Просьба сделать плагин находящий значение HEX: 38 42 49 4D 04 06 00 00 00 00 07 00 02 и по этим последним двум значениям выводящим информацию о качестве
 | 
 
 На самом деле там все гораздо сложнее. Но поскольку я в этой теме уже 5 лет, то на коленке написал нужный тебе плагин. Немного исходников (не все) в комплекте.
 
 http://www.thumbnailexpert.com/binary/decAdobeSaveWDX.zip
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 17:53    Post subject: |   |  
				| 
 |  
				| Огромное спасибо! Как проверю - отпишусь. 
 Знаю, что сложнее, но мне хотя бы по этому параметру отсортировать файлы - уже хорошо будет!
 
 А программа очень выручает во многих случаях! гораздо больше информации дает, чем Ваш же плагин decMetaExpertWLX, тем более расшифровывает многие параметры, а не просто показывает значения.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dec 
 
 
 Joined: 07 Sep 2006
 Posts: 466
 
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 17:57    Post subject: |   |  
				| 
 |  
				|  	  | aLLigator wrote: |  	  | Знаю, что сложнее, но мне хотя бы по этому параметру отсортировать файлы - уже хорошо будет! | 
 Кеп мне подсказывает, что сортировкой занимается сам Total. И плагин тут как бы не при делах.
 
 
 Какая программа? 	  | aLLigator wrote: |  	  | А программа очень выручает во многих случаях! | 
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 18:12    Post subject: |   |  
				| 
 |  
				|  	  | Dec wrote: |  	  |  	  | aLLigator wrote: |  	  | Знаю, что сложнее, но мне хотя бы по этому параметру отсортировать файлы - уже хорошо будет! | 
 Кеп мне подсказывает, что сортировкой занимается сам Total. И плагин тут как бы не при делах.
 | 
 
 Сам Тотал никак не отсортирует файлы в порядке возрастания качества (параметра сжатия) JPEG без вывода этого самого параметра в колонку.
 Возникла необходимо разгрести десятки тысяч файлов... сначала шли только сжатые в режиме "Save for Web" и вопрос успешно был решен Вашим же плагином decHexWdx, посокльку параметр находиться в одном и том же положении НЕХ. Сейчас дошел до сохраненных через "Save As"... так же была необходимость сортировки в порядке возрастания значения.
 Еще раз спасибо Вам за плагин! только что проверил на тестовых картинках - пока всё идеально!
 
 
  	  | Dec wrote: |  	  | Какая программа? 	  | aLLigator wrote: |  	  | А программа очень выручает во многих случаях! | 
 | 
 JPEGsnoop, по ссылке из первого сообщения этой темы.
 
 
 
 Есть возможность так же привязаться к режимам сжатия - Baseline: standart/optimized; Progressive и количеству сканов; наличия цветового профиля ICC; цветовой субдискретизации...
 Если интересно - могу дать такую информацию для дальнейшего развития плагина!
 Мне эта информация пока ни к чему, но может кому и пригодится.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dec 
 
 
 Joined: 07 Sep 2006
 Posts: 466
 
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 18:21    Post subject: |   |  
				| 
 |  
				| Ну, как бы, логично. 	  | aLLigator wrote: |  	  | Сам Тотал никак не отсортирует файлы в порядке возрастания качества (параметра сжатия) JPEG без вывода этого самого параметра в колонку. | 
 
 
 Повторюсь, это не всегда так. 	  | aLLigator wrote: |  	  | сначала шли только сжатые в режиме "Save for Web" и вопрос успешно был решен Вашим же плагином decHexWdx, посокльку параметр находиться в одном и том же положении | 
 
 
 Все это прикрутить не проблема, но мне лень заниматься вещами, которые никому не нужны. 	  | aLLigator wrote: |  	  | Есть возможность так же привязаться к режимам сжатия - Baseline: standart/optimized; Progressive и количеству сканов; наличия цветового профиля ICC; цветовой субдискретизации... Если интересно - могу дать такую информацию для дальнейшего развития плагина!
 | 
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 20:20    Post subject: |   |  
				| 
 |  
				|  	  | Dec wrote: |  	  | Все это прикрутить не проблема, но мне лень заниматься вещами, которые никому не нужны. | 
 Ну, я тут подумал... не отказался бы от такого функционала, если Вас это не сильно затруднит!
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dec 
 
 
 Joined: 07 Sep 2006
 Posts: 466
 
 
 | 
			
				|  (Separately) Posted: Thu Feb 09, 2012 20:25    Post subject: |   |  
				| 
 |  
				|  	  | aLLigator wrote: |  	  | Ну, я тут подумал... не отказался бы от такого функционала, если Вас это не сильно затруднит! | 
 Пиши конкретно, что нужно добавить. И перейди уже на ты, мы не в театре.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dec 
 
 
 Joined: 07 Sep 2006
 Posts: 466
 
 
 | 
			
				|  (Separately) Posted: Fri Feb 10, 2012 18:24    Post subject: |   |  
				| 
 |  
				|  	  | aLLigator wrote: |  	  | Надо добавить... | 
 Добавил определение режима сжатия и количество сканов. Для "Save for Web" определить Baseline и Otpimized пока не представляется возможным. Standart и Baseline определяются как Baseline. Определение ICC добавлю познее.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Fri Feb 10, 2012 21:36    Post subject: |   |  
				| 
 |  
				| Добрый вечер! Ещё раз спасибо! 
 Правда заметил, что для режима "Save for Web" в "бэйслайновых" вообще не пишет режима.. Вот скриншот
 Из сообщения же понял, что должно было писать по крайней мере Baseline.
 
 А так же есть небольшая неточность в выводе информации для режима "Save As..", заключающаяся в том, что Baseline (скан в один проход) в фотошопе выполняется в режимах "standart" и "optimized", а так как показывает сейчас можно подумать, что это три разных режима - Baselinе, Оptimized и Progressive.
 
   Есть предложение подправить для точности.
 
 Кстати, JPEGsnoop распространяется с открытым исходным кодом. Понимаю, что копаться в чужом коде ещё то удовольствие, но может так будет проще определить к чему идет привязка там при определении параметров. Это может дать возможность определять качество не только для файлов Фотошопа, но и массы других программ.
 Это был бы тогда уже плагин для массового использования!
 
 Добавлено спустя 9 минут:
 
 Для режима "Save for Web" параметров похоже, что столько же.. если чекбокс "optimized" не выбран получится аналог Baselinе (standard), но как его по файлу отличить от Baselinе (Оptimized) я пока не знаю.
 Скриншот
 Интересно, какое количество сканов используется при прогресивном режиме в этом случае?
 ICC можно встроить в обоих режимах, но записываются они в файл поразному.
 
 
          | ! | Avada: |        | Замечание за массовое нарушение правил форума. Пост приведён в пристойный вид: неформатные картинки заменены ссылками, убраны ненужные пустые строки, оффтопная приписка (да ещё и с выделением ярким цветом) удалена полностью. |  |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dec 
 
 
 Joined: 07 Sep 2006
 Posts: 466
 
 
 | 
			
				|  (Separately) Posted: Sat Feb 11, 2012 00:28    Post subject: |   |  
				| 
 |  
				| Обновил логику плагина. |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Sat Feb 11, 2012 02:47    Post subject: |   |  
				| 
 |  
				| Немного информации по поводу отличий Baselinе (standard) и Baselinе (Оptimized) в структуре для режима "Save for Web". 
 Отличия имеет только маркер DHT (Таблицы Хаффмана), а точнее его размер.. файл сжатый в обычном Baselinе имеет вдвое больший размер этой секции по сравнению с Оptimized и Progressive.
 Кстати, это же самое справедливо и для режима "Save As.."
 
 Все остальные маркеры либо абсолютно идентичны, либо не имеют существенных различий.
 Надеюсь эта информация как-то поможет!
 
 Так же пытаюсь понять колько же всетаки сканов используется в Progressive...
 
 Немного о самой структуре:
 
  	  | Code: |  	  | 
Маркер [FF C4]: DHT (таблица Хаффмана)
 
 
 
 Эта секция хранит коды и значения полученные кодированием Хаффмана.
 
 _______________FF C4 00 15 00 01 01 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 03 02
 
 [00 15] длина: 21 байт.
 [0_] класс: 0 (0 — таблица AC коэффициэнтов, 1 — таблица DC коэффициэнтов).
 [_0] идентификатор таблицы: 0
 Длина кода Хаффмана: 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16
 Количество кодов:  [01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
 Количество кодов означает количество кодов такой длины. Обратите внимание, что секция хранит только длины кодов, а не сами коды. Мы должны найти коды сами. Итак, у нас есть один код длины 1 и один — длины 2. Итого 2 кода, больше кодов в этой таблице нет.
 С каждым кодом сопоставлено значение, в файле они перечислены следом. Значения однобайтовые, поэтому читаем 2 байта.
 [03] — значение 1-го кода.
 [02] — значение 2-го кода.
 
 | 
 
 Last edited by aLLigator on Sun Feb 12, 2012 01:55; edited 3 times in total
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Mellomann 
 
  
 Joined: 07 Sep 2009
 Posts: 709
 
 
 | 
			
				|  (Separately) Posted: Sat Feb 11, 2012 02:49    Post subject: |   |  
				| 
 |  
				| aLLigator Оптимально - использовать 4, но зависимо от сложности изображения, можно давать хоть 3, хоть 5, хоть вообще 8...
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| aLLigator 
 
  
 Joined: 01 Dec 2011
 Posts: 167
 Location: из тех ворот, что и весь народ...
 
 | 
			
				|  (Separately) Posted: Sat Feb 11, 2012 02:51    Post subject: |   |  
				| 
 |  
				|  	  | Mellomann wrote: |  	  | aLLigator Оптимально - использовать 4, но зависимо от сложности изображения, можно давать хоть 3, хоть 5, хоть вообще 8...
 | 
 В режиме "Save for Web" не дает выбрать.. хочется просто знать сколько использует по умолчанию.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Моторокер 
 
  
 Joined: 06 May 2005
 Posts: 1517
 Location: г. Пермь (читается Перьмь)
 
 | 
			
				|  (Separately) Posted: Thu Feb 16, 2012 02:14    Post subject: |   |  
				| 
 |  
				| Начинал как-то писать такой плагин для получения информации по JPEG файлу. uses
 ImageEnIO, imageenproc, hyieutils, hyiedefs, TIFLZW, GifLZW;
 
 JpegFileQuality:= IECalcJpegFileQuality(FileName)
 
 Показывает сжатие в процентах.
 _________________
 плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
 ПармаСруб - строительство домов и бань в Перми
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		|  |