![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Bitmap=>Jpeg без модуля Jpeg соотвтственно. [D7, WinXP]
Sub_Black © (2006-04-17 11:20:00)Ребяты, подскажите возможно ли это, API вроде напрямую с Jpeg не работает. Может быть есть у кого наработки, а-то я пока в тупике.
DVM (2006-05-03 14:08:00) [101]
> Так же как и положение/значение ключа в реестре.
в реестр новая версия библиотеки не лезет
DVM (2006-05-03 14:00:00) [102]
> Sapersky (03.05.06 12:34) [20]
вот последний заголовочный файл, что удалось найти:
http://www.informsystems.ru/files/ijl.h
1998-2006 стоит
Sapersky (2006-05-03 12:34:00) [103]Зато в многопоточных приложениях работает стабильнее. Также лучше переваривает поврежденные jpeg-и
Сомнительно всё-таки, что Intel ради стабильности специально затормозила свою библиотеку (и с чего тогда размер вырос? я полагал - от увеличения количества оптимизированных под разные процессоры ветвей).
Ещё вдобавок к затормаживанию версия 2.0 отказывается грузить картинки по частям, с указанием Rect (ругается, что invalid jpeg properties).
Это наводит на мысль, что структура JpegProperties изменилась (или её выравнивание?). Так же как и положение/значение ключа в реестре. И что где-то должны существовать обновлённые заголовки... документация какая-нибудь...
А ту скорость, которую мы сейчас имеем с версией 2.0, можно получить и от OleLoadPicture. Безо всяких дополнительных DLL. Правда, с многопоточностью и повреждёнными картинками не тестировал.
DVM (2006-05-03 11:07:00) [104]Сам себе отвечу - для Athlon64 оптимально - 6
DVM (2006-05-03 10:25:00) [105]
> Sapersky (02.05.06 12:19) [17]
Да, точно, медленнее. Зато в многопоточных приложениях работает стабильнее. Также лучше переваривает поврежденные jpeg-и
> Для 1.5 нужно было установить ключ в реестре, чтобы она
> поняла, с каким процессором имеет дело:
А для Athlon64 не в курсе, что лучше ставить в реестре?
Sapersky (2006-05-02 12:19:00) [106]http://www.ipcam.ru/IJL.ZIP- 1.5 и 2.0 версии библиотеки
Наконец-то протестировал скачанную версию 2.0... и обнаружил, что она медленнее 1.5. Для 1.5 нужно было установить ключ в реестре, чтобы она поняла, с каким процессором имеет дело:
CPUKey:=0;
// determine Pentium, Pentium Pro, Pentium II
if CPUInfo.VendorID='GenuineIntel' then
if CPUInfo.Family=5 then CPUKey:=1 else if CPUInfo.Family=6 then
if CPUInfo.Model > 1 then CPUKey:=4 else CPUKey:=2;
// determine MMX, Pentium III, Pentium 4
if(cfMMX in CPUInfo.Features)and(CPUKey < 3)then CPUKey:=3;
if cfSSE in CPUInfo.Features then CPUKey:=5;
if cfSSE2 in CPUInfo.Features then CPUKey:=6;
RegCreateKeyEx(
HKEY_LOCAL_MACHINE,'SOFTWARE\Intel Corporation\PLSuite\IJLib',0,nil,
REG_OPTION_NON_VOLATILE,KEY_WRITE,nil,Key,@Dummy);
RegSetValueEx(Key,'USECPU',0,REG_DWORD,@CPUKey,4);
RegCloseKey(Key);
(из FastLIB'а - FastFiles.pas).
Возможно, для 2.0 что-то изменилось?
На сайте Intel, т.к. они прекратили разработку IJL как отдельной библиотеки, по этому поводу ничего нет. Или плохо искал?
XProger (2006-04-18 12:09:00) [107]Sub_Black, нет ничего невозможного...
Используй OleLoadPictureFile и OleSavePictureFile из oleaut32.dll
Sub_Black (2006-04-18 11:36:00) [108]>>DVM СПАСИБИЩИ!
Спасибо, ребяты всем, очень было приятно получить столько полезных откликов ;)
DVM (2006-04-17 16:14:00) [109]
> Sub_Black (17.04.06 16:07) [13]
http://www.ipcam.ru/IJL.ZIP- 1.5 и 2.0 версии библиотеки + заголовочные файлы + модуль-пример использования
Sub_Black (2006-04-17 16:07:00) [110]>>DVM сейчас посмотрим на ентого зверя (IJL)
>>Rouse_ тоже идея, но по-моему Delphi включает в файл только те процедуры, которые реально используются, нет разве?
Rouse_ (2006-04-17 16:04:00) [111]Jpeg.pas идет в составе дистрибутива (CD:\Info\Extras\Jpeg\) - вытащи оттуда необходимый код и не используй модуль :)
Sub_Black (2006-04-17 16:01:00) [112]>>MBo а можно по подробнее про GDIPlus - а-то я слышал кое что, входит ли он в винду и где интерфейсы модулей взять?
DVM (2006-04-17 15:27:00) [113]Intel Jpeg Library - очень хорошая и быстрая библиотека.
MBo (2006-04-17 15:26:00) [114]>Bitmap=>Jpeg без модуля Jpeg
GDIPlus это умеет
Sub_Black (2006-04-17 15:11:00) [115]>>Poirot Ок, спасибо!
Poirot (2006-04-17 15:02:00) [116]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_7zfp.asp
Sub_Black (2006-04-17 14:52:00) [117]>>Elen Спасибо, порыскаю
>>balepa, Гы :), да вы шутник
>>ZzzzZ Боюсь, что это будет работать не быстро :(
Да, ребят, попутный вопрос, как на API сохранить Bitmap в файл?
ZzzzZ (2006-04-17 13:51:00) [118]XЧерез оли или как ее там.
Где-то видел пример, на асме.
balepa (2006-04-17 13:08:00) [119]
> Sub_Black (17.04.06 12:12) [2]
> Тогда может быть есть варианты? Менее громоздкие модули, например от > сторонних разработчиков? Неужели все вот так вот грустно?
Напиши свой
Elen (2006-04-17 12:29:00) [120]Поищи компоненты вроде ImageGear или Impulse Studio. Они распространяются как ActiveX и их легко встроить в Делфи. Это не настолько громоздкие компоненты