Fast JPEG decoder

9 отговора 207 прегледа
#1

Fast JPEG decoder

Търся бърз JPEG decoder - source code или DLL с указания за използване. Delphi поддържа JPEG, но е несравнимо по-бавен от програми като ACDSee например.
Предлагам GIF source encoder - decoder (без анимация).

Отговор
в отговор на Grabcho #2

Re: Fast JPEG decoder

ACDSee maj hitree i decodwa sledwashtata wednaga sled kato pokaje tekushtata kartinka

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на SDR #3

Re: Fast JPEG decoder

Че хитрее - хитрее, ама и thubnails ги показва адски бързо!

Отговор
в отговор на Grabcho #4

Re: Fast JPEG decoder

Ако искаш да се занимаваш с бърза графика - бих ти препоръчал да забравиш VCL. Предполагам следва резонния въпос с какво да го замениш - ето ти и отговора
[линк]
[линк]
За съжаление ще трябва доста да прочетеш в news групите и на двете - но мисля, че си заслужава.

---
Е т'ва е живот!
Отговор
в отговор на Grabcho #5

Re: Fast JPEG decoder

[линк]

Аз успявал да "екстрактна" MJPEG декодера му (assembler и C++) и да го вградя в DLL. Това май е най-бързата реализация на source, която съм виждал - а съм търсил много .

А ако не ти се занимава (или нямаш възможност) с assembler, C++ и прочие:
[линк]

Това е Pascal транслация на JPEG имплементацията на Independent JPEG Group. Но едва ли е по-бързо от JPEG unit-а който си идва с Delphi-то...

---
Не е важно да си добър, важното е да си ман-и-як!
Отговор
в отговор на ess #6

Re: Fast JPEG decoder

PASJPEG го имам от 2-3 години, даже оптимизирах по скорост някои фрагменти, включително на асемблер, но скоростта на декодиране е поне 2-3 пъти по-малка от тази на някои готови дори DOS програми. Изглежда просто алгоритъмът не е много добър. Virtual dubbing е страхотна програма, но MJPEG и JPEG?? Малко съм бос тука..

Отговор
в отговор на PhantomAS #7

Re: Fast JPEG decoder

С бърза графиката и оптимизиране по скорост се занимавам отдавна, но тук въпросът ми е за ефективен алгоритъм на декодиране. Благодаря ти за link-овете!

Отговор
в отговор на Grabcho #8

Re: Fast JPEG decoder

Ами MJPEG е съкращение на Motion (срещал съм и Movie) JPEG.
Т.е. ако имаш .AVI файл в такъв формат, това означава че всеки (полу)кадър е отделен компресиран JPEG. По този начин бързо и удобно се редактират видео файлове, защото отделните кадри са независими един от друг - имаш бърз достъп до тях (за разлика от MPEG компресията - където в общият случай един кадър зависи от предишните).

Както и да е, от VirtualDub ти практически можеш да вземеш JPEG декодера, но трябва да си поиграеш да го накараш да декодира данните заредени от .JPEG файл - това аз не съм го правил. Заслужава си да опиташ, защото в този декодер има доста assembler, влк. MMX, SSE (и SSE2 май?) инструкции.

Само едно да те предупредя: не можеш да декодираш JPEG на който ширината и височината не са кратни на 8 - или нещо такова, трябва да видиш точно как е в сорса...

Успех

---
Не е важно да си добър, важното е да си ман-и-як!
Отговор
в отговор на ess #9

Re: Fast JPEG decoder

Ох, мъка, мъка.. :)))) Да конвертирам C код на Pascal.. Благодаря все пак!

Отговор
в отговор на Grabcho #10

Re: Fast JPEG decoder

Нямах предвид това. Можеш просто да изолираш декодера в отделен DLL...
Разбира се трябва ти Visual Studio 6 с така нареченият processor pack...
Става все по-сложно

---
Не е важно да си добър, важното е да си ман-и-як!
Отговор