libjpeg-turbo

Screenshot Software:
libjpeg-turbo
Detalii soft:
Versiune: 1.4.90 Actualizat
Incarca data: 10 Mar 16
Producător: D. R. Commander
Licenţă: Gratuit
Popularitate: 68

Rating: nan/5 (Total Votes: 0)

libjpeg-turbo este un open source, cross-platform și software-ul complet gratuit proiectat pentru a oferi o versiune de mare viteză a software-ului original, biblioteca libjpeg, special conceput pentru procesoarele x86 și x86-64, care utilizează SIMD ( unică de instrucțiuni, date multiple) instrucțiuni, cum ar fi SSE2, MMX și NEON, pentru a accelera momentul inițial decompresie JPEG și compresie.


Un codec extrem de rapid de imagine JPEG

Software-ul este un codec extrem de rapid de imagine JPEG care este, în general 2-4x mai rapid decât versiunea nemodificată a libjpeg. Proiectul sa bazat inițial pe proiectul libjpeg / SIMD creat de Miyasaka Masaru.


Implementează API tradițional libjpeg

Această versiune turbo a bibliotecii libjpeg pune în aplicare, de asemenea, API libjpeg tradiționale, precum și simplu API TurboJPEG. Acesta dispune de extensii, ceea ce permite colorspace utilizatorilor să comprime de la sau decomprima la tampoane big-endian și pe 32 de biți pixeli (XBGR, RGBX, etc), precum și o interfață full-featured Java.


Distribuite ca instalatori nativ pentru DEB și sisteme de operare bazate pe RPM

Pentru confortul dvs., software-ul este distribuit ca instalatorilor native pentru DEB și sisteme de operare bazate pe RPM, cum ar fi Debian, Ubuntu, Linux Mint, Fedora, CentOS, Red Hat Enterprise Linux, openSUSE, Mageia, etc, sprijinirea atât 64 și 32-biți platforme hardware.


Noțiuni de bază cu libjpeg-turbo

Proiectul libjpeg-turbo poate fi ușor de instalat de principalele depozite software ale unei distribuții GNU / Linux. Acesta va fi instalat automat, împreună cu orice software care are nevoie.

Pentru a instala utilizând manual pachetul sursă, în cazul în care doriți să-l optimizați pentru arhitectura hardware / sistem de operare, de descărcare și de a salva cele mai recente arhiva din Softoware, se extrage conținutul său folosind un utilitar de manager de arhive, deschideți o aplicație Terminal și du-te la locația fișierului arhivă s-a extras (de exemplu, cd / home / softoware / libjpeg-turbo).

Apoi, rulați & lsquo; ./ Configureaza && make & rsquo; comandă pentru a configura și a compila programul, urmat de & lsquo; sudo make install & rsquo; commad să-l instaleze la nivel de sistem și îl pune la dispoziția tuturor aplicațiilor

Ce este nou în această versiune:.

    < li> Fixed o problemă construi pe platforme OS X PowerPC (md5cmp nu a reușit să construiască, deoarece OS X nu furnizează le32toh () și htole32 () funcții.).
  • non-SIMD culoare RGB565 codul de conversie nu a funcționat corect pe mașinile endian mari. Acest lucru a fost stabilit.
  • Fixed o problemă în tjPlaneSizeYUV (), prin care s-ar reveni în mod eronat 1 în loc de -1 în cazul în care a fost componentID & gt; 0 și subsamp a fost TJSAMP_GRAY.
  • Fixed o problemă în tjBufSizeYUV2 () wherby ar reveni în mod eronat 0 în loc de -1 dacă lățimea a fost & lt; 1.
  • Huffman Codorul folosește acum instrucțiuni CLZ și BSR pentru biți de numărare pe platforme ARM64.
  • Metoda închidere () în clasele TJCompressor și TJDecompressor Java este acum idempotente. Anterior, această metodă ar apela funcția tjDestroy nativă () chiar și în cazul în care instanța TurboJPEG fusese deja distrusă. Acest lucru a cauzat o excepție care urmează să fie aruncate în timpul finalizării, în cazul în care metoda închidere () a fost deja numit. Excepția a fost prins, dar era încă o operație costisitoare.
  • TurboJPEG API-ul generat anterior o eroare (& quot; Nu se poate determina tipul de Subeșantionare pentru imagine JPEG & quot;) atunci când se încearcă să decomprima imagini JPEG în tonuri de gri, care au fost comprimate cu un factor de eșantionare diferit de 1 (de exemplu, cu 'cjpeg -grayscale - 2x2 probă "). Mostră din punct de vedere tehnic nu are nici un sens, cu tonuri de gri JPEG, și, astfel, elementele orizontale și verticale de eșantionare pentru astfel de imagini sunt ignorate de decomprimare. Cu toate acestea, TurboJPEG API-ul a fost prea rigid și se aștepta factorii de eșantionare să fie egal cu 1 înainte de a fi tratat imaginea ca JPEG în tonuri de gri.
  • cjpeg, djpeg și jpegtran acum accepta un argument de -versiunea, care va imprima versiunea de bibliotecă și de ieșire.
  • Cu referire la 1.4 beta1 [15], o altă situație extrem de rară a fost descoperită sub care tampon locală codificatorul Huffman poate fi depășită atunci când este utilizat un manager de destinație tamponată și un bloc extrem de înaltă frecvență (de fapt, datele de imagine nedorite) este fiind codificat. Chiar daca buffer-ul local, Huffman a fost crescută de la 128 octeți la 136 octeți pentru a aborda problema anterioară, noua emisiune a provocat chiar buffer-ul mai mare care urmează să fie depășită. O altă analiză relevă faptul că, în cel mai rău caz absolut (cum ar fi stabilirea coeficienților de AC alternativ, la 32767 și -32,768 în ordinea de scanare JPEG), codorul Huffman poate produce blocuri codificate, care se apropie de două ori dimensiunea blocurilor necodate. Astfel, tamponul local, Huffman a fost crescută la 256 octeți, care ar trebui să împiedice orice astfel de problemă să fie re-apar în viitor.
  • Noul tjPlaneSizeYUV (), tjPlaneWidth (), și funcțiile tjPlaneHeight () nu au fost de fapt utilizabile pe orice platformă, cu excepția OS X și Windows, pentru că aceste funcții nu au fost incluse în libturbojpeg fișierul de mapare. Acest lucru a fost stabilit.
  • Restaurat JPP (), JMETHOD (), și macro-urile FAR în fișierele header-turbo libjpeg. Cele JPP () și JMETHOD () macro-urile au fost puse în aplicare inițial în libjpeg ca o modalitate de a sprijini non-ANSI compilatoare, care nu aveau suport pentru parametrii prototip. libjpeg-turbo nu a sprijinit astfel de compilatoare, dar unele pachete software folosesc în continuare macro-uri pentru a-și defini propriile prototipuri. În mod similar, libjpeg-turbo nu a sprijinit MS-DOS și alte platforme care au simboluri departe, dar unele pachete software folosesc în continuare macro FAR. Un argument destul de bine se poate face ca aceasta este o practică proastă din partea a software-ului în cauză, dar din moment ce acest lucru afectează mai mult de un pachet, este pur și simplu mai ușor să-l repara aici.
  • probleme fixe care împiedicau ARM pe 64 de biți codul SIMD de la compilare pentru iOS și a inclus o arhitectură ARMv8 în toate binarele instalate de & quot; oficial & quot; SDK-libjpeg turbo pentru OS X.

Ce este nou în versiunea 1.4.2:

  • Fixed o problemă construi pe platforme OS X PowerPC ( md5cmp nu a reușit să construiască, deoarece OS X nu furnizează le32toh () și htole32 () funcții.).
  • non-SIMD culoare RGB565 codul de conversie nu a funcționat corect pe mașinile endian mari. Acest lucru a fost stabilit.
  • Fixed o problemă în tjPlaneSizeYUV (), prin care s-ar reveni în mod eronat 1 în loc de -1 în cazul în care a fost componentID & gt; 0 și subsamp a fost TJSAMP_GRAY.
  • Fixed o problemă în tjBufSizeYUV2 () wherby ar reveni în mod eronat 0 în loc de -1 dacă lățimea a fost & lt; 1.
  • Huffman Codorul folosește acum instrucțiuni CLZ și BSR pentru biți de numărare pe platforme ARM64.
  • Metoda închidere () în clasele TJCompressor și TJDecompressor Java este acum idempotente. Anterior, această metodă ar apela funcția tjDestroy nativă () chiar și în cazul în care instanța TurboJPEG fusese deja distrusă. Acest lucru a cauzat o excepție care urmează să fie aruncate în timpul finalizării, în cazul în care metoda închidere () a fost deja numit. Excepția a fost prins, dar era încă o operație costisitoare.
  • TurboJPEG API-ul generat anterior o eroare (& quot; Nu se poate determina tipul de Subeșantionare pentru imagine JPEG & quot;) atunci când se încearcă să decomprima imagini JPEG în tonuri de gri, care au fost comprimate cu un factor de eșantionare diferit de 1 (de exemplu, cu 'cjpeg -grayscale - 2x2 probă "). Mostră din punct de vedere tehnic nu are nici un sens, cu tonuri de gri JPEG, și, astfel, elementele orizontale și verticale de eșantionare pentru astfel de imagini sunt ignorate de decomprimare. Cu toate acestea, TurboJPEG API-ul a fost prea rigid și se aștepta factorii de eșantionare să fie egal cu 1 înainte de a fi tratat imaginea ca JPEG în tonuri de gri.
  • cjpeg, djpeg și jpegtran acum accepta un argument de -versiunea, care va imprima versiunea de bibliotecă și de ieșire.
  • Cu referire la 1.4 beta1 [15], o altă situație extrem de rară a fost descoperită sub care tampon locală codificatorul Huffman poate fi depășită atunci când este utilizat un manager de destinație tamponată și un bloc extrem de înaltă frecvență (de fapt, datele de imagine nedorite) este fiind codificat. Chiar daca buffer-ul local, Huffman a fost crescută de la 128 octeți la 136 octeți pentru a aborda problema anterioară, noua emisiune a provocat chiar buffer-ul mai mare care urmează să fie depășită. O altă analiză relevă faptul că, în cel mai rău caz absolut (cum ar fi stabilirea coeficienților de AC alternativ, la 32767 și -32,768 în ordinea de scanare JPEG), codorul Huffman poate produce blocuri codificate, care se apropie de două ori dimensiunea blocurilor necodate. Astfel, tamponul local, Huffman a fost crescută la 256 octeți, care ar trebui să împiedice orice astfel de problemă să fie re-apar în viitor.
  • Noul tjPlaneSizeYUV (), tjPlaneWidth (), și funcțiile tjPlaneHeight () nu au fost de fapt utilizabile pe orice platformă, cu excepția OS X și Windows, pentru că aceste funcții nu au fost incluse în libturbojpeg fișierul de mapare. Acest lucru a fost stabilit.
  • Restaurat JPP (), JMETHOD (), și macro-urile FAR în fișierele header-turbo libjpeg. Cele JPP () și JMETHOD () macro-urile au fost puse în aplicare inițial în libjpeg ca o modalitate de a sprijini non-ANSI compilatoare, care nu aveau suport pentru parametrii prototip. libjpeg-turbo nu a sprijinit astfel de compilatoare, dar unele pachete software folosesc în continuare macro-uri pentru a-și defini propriile prototipuri. În mod similar, libjpeg-turbo nu a sprijinit MS-DOS și alte platforme care au simboluri departe, dar unele pachete software folosesc în continuare macro FAR. Un argument destul de bine se poate face ca aceasta este o practică proastă din partea a software-ului în cauză, dar din moment ce acest lucru afectează mai mult de un pachet, este pur și simplu mai ușor să-l repara aici.
  • probleme fixe care împiedicau ARM pe 64 de biți codul SIMD de la compilare pentru iOS și a inclus o arhitectură ARMv8 în toate binarele instalate de & quot; oficial & quot; SDK-libjpeg turbo pentru OS X.

Ce este nou în versiunea 1.4.0:

  • Fixed o problemă construi pe platforme OS X PowerPC ( md5cmp nu a reușit să construiască, deoarece OS X nu furnizează le32toh () și htole32 () funcții.).
  • non-SIMD culoare RGB565 codul de conversie nu a funcționat corect pe mașinile endian mari. Acest lucru a fost stabilit.
  • Fixed o problemă în tjPlaneSizeYUV (), prin care s-ar reveni în mod eronat 1 în loc de -1 în cazul în care a fost componentID & gt; 0 și subsamp a fost TJSAMP_GRAY.
  • Fixed o problemă în tjBufSizeYUV2 () wherby ar reveni în mod eronat 0 în loc de -1 dacă lățimea a fost & lt; 1.
  • Huffman Codorul folosește acum instrucțiuni CLZ și BSR pentru biți de numărare pe platforme ARM64.
  • Metoda închidere () în clasele TJCompressor și TJDecompressor Java este acum idempotente. Anterior, această metodă ar apela funcția tjDestroy nativă () chiar și în cazul în care instanța TurboJPEG fusese deja distrusă. Acest lucru a cauzat o excepție care urmează să fie aruncate în timpul finalizării, în cazul în care metoda închidere () a fost deja numit. Excepția a fost prins, dar era încă o operație costisitoare.
  • TurboJPEG API-ul generat anterior o eroare (& quot; Nu se poate determina tipul de Subeșantionare pentru imagine JPEG & quot;) atunci când se încearcă să decomprima imagini JPEG în tonuri de gri, care au fost comprimate cu un factor de eșantionare diferit de 1 (de exemplu, cu 'cjpeg -grayscale - 2x2 probă "). Mostră din punct de vedere tehnic nu are nici un sens, cu tonuri de gri JPEG, și, astfel, elementele orizontale și verticale de eșantionare pentru astfel de imagini sunt ignorate de decomprimare. Cu toate acestea, TurboJPEG API-ul a fost prea rigid și se aștepta factorii de eșantionare să fie egal cu 1 înainte de a fi tratat imaginea ca JPEG în tonuri de gri.
  • cjpeg, djpeg și jpegtran acum accepta un argument de -versiunea, care va imprima versiunea de bibliotecă și de ieșire.
  • Cu referire la 1.4 beta1 [15], o altă situație extrem de rară a fost descoperită sub care tampon locală codificatorul Huffman poate fi depășită atunci când este utilizat un manager de destinație tamponată și un bloc extrem de înaltă frecvență (de fapt, datele de imagine nedorite) este fiind codificat. Chiar daca buffer-ul local, Huffman a fost crescută de la 128 octeți la 136 octeți pentru a aborda problema anterioară, noua emisiune a provocat chiar buffer-ul mai mare care urmează să fie depășită. O altă analiză relevă faptul că, în cel mai rău caz absolut (cum ar fi stabilirea coeficienților de AC alternativ, la 32767 și -32,768 în ordinea de scanare JPEG), codorul Huffman poate produce blocuri codificate, care se apropie de două ori dimensiunea blocurilor necodate. Astfel, tamponul local, Huffman a fost crescută la 256 octeți, care ar trebui să împiedice orice astfel de problemă să fie re-apar în viitor.
  • Noul tjPlaneSizeYUV (), tjPlaneWidth (), și funcțiile tjPlaneHeight () nu au fost de fapt utilizabile pe orice platformă, cu excepția OS X și Windows, pentru că aceste funcții nu au fost incluse în libturbojpeg fișierul de mapare. Acest lucru a fost stabilit.
  • Restaurat JPP (), JMETHOD (), și macro-urile FAR în fișierele header-turbo libjpeg. Cele JPP () și JMETHOD () macro-urile au fost puse în aplicare inițial în libjpeg ca o modalitate de a sprijini non-ANSI compilatoare, care nu aveau suport pentru parametrii prototip. libjpeg-turbo nu a sprijinit astfel de compilatoare, dar unele pachete software folosesc în continuare macro-uri pentru a-și defini propriile prototipuri. În mod similar, libjpeg-turbo nu a sprijinit MS-DOS și alte platforme care au simboluri departe, dar unele pachete software folosesc în continuare macro FAR. Un argument destul de bine se poate face ca aceasta este o practică proastă din partea a software-ului în cauză, dar din moment ce acest lucru afectează mai mult de un pachet, este pur și simplu mai ușor să-l repara aici.
  • probleme fixe care împiedicau ARM pe 64 de biți codul SIMD de la compilare pentru iOS și a inclus o arhitectură ARMv8 în toate binarele instalate de & quot; oficial & quot; SDK-libjpeg turbo pentru OS X.

Ce este nou în versiunea 1.3.0:

  • [1] "face testul" acum funcționează în mod corespunzător pe FreeBSD, și nu mai este nevoie de executabil md5sum să fie prezent pe alte platforme ale oNU * x.
  • [2] Revizuit sistemul de ambalare: - Pentru a evita un conflict cu pachete libjpeg-turbo furnizat-furnizor, pachetele RPM oficiale și Debs pentru libjpeg-turbo au fost redenumit & quot; libjpeg-turbo-oficial & quot ;. - Bibliotecile TurboJPEG sunt acum situate în / opt / libjpeg-turbo în pachetele oficiale Linux și Mac, pentru a evita un conflict cu pachetele furnizate de furnizor și, de asemenea, pentru a eficientiza sistemul de ambalare. - pachetele de lansare sunt create acum cu structura de directoare definite de variabilele configure & quot; prefix & quot ;, & quot; bindir & quot ;, & quot; libdir & quot ;, etc (Un * x) sau de către variabila CMAKE_INSTALL_PREFIX (Windows). Excepția este că sunt întotdeauna situate docs în directorul de documentare, implicit sistemul pe Un * x și sistemele Mac, și pe sistemului Windows, TurboJPEG DLL este întotdeauna localizat în directorul de sistem Windows. - Pentru a evita confuzia, pachetele oficiale libjpeg-turbo pe platforme Linux / Unix (cu excepția Mac) se vor instala întotdeauna bibliotecile pe 32 de biți în / opt / libjpeg-turbo / lib32 și bibliotecile pe 64 de biți în / opt / libjpeg- turbo / lib64. - Fixed o problemă prin care, în unele cazuri, executabilele libjpeg-turbo de pe onu * x sistemele care nu au fost corect cu legătura între bibliotecile partajate instalate de același pachet. - Fixed o problemă prin construirea & quot; instalare & quot; țintă pe Windows atunci când WITH_JAVA = 1 ar eșua în cazul în care JAR TurboJPEG nu au fost construite anterior. - Construirea & quot; instalați & quot; țintă pe Windows instalează acum fișiere în aceleași locuri pe care programul de instalare nu.
  • [3] Fixed un bug care a împiedicat codificator Huffman suspensie I / O să funcționeze corect.

Ce este nou în versiunea 1.2.0:

  • O problemă de construcție întâlnită atunci când se utilizează YASM pe sistemele Unix a fost fixată.
  • O limitele out-of-citit în codul SSE2 SIMD a fost fixat.
  • Noile constante de extensie care permit aplicațiilor colorspace să se precizeze că octet nefolosit într-un tampon RGB de 4 octeți ar trebui să fie tratat ca un canal alfa, atunci când s-au adăugat decompressing.
  • O problemă de regresie întâlnită atunci când construirea devil cu libjpeg-turbo a fost stabilită.
  • s-a adăugat suport pentru iOS la SDK-turbo libjpeg pentru Mac.

Ce este nou în versiunea 1.1 Beta 1:

  • libjpeg-turbo poate fi construit pentru a emula libjpeg API v7 sau v8b / ABI.
  • Sistemul construi Windows utilizează acum CMake.
  • TurboJPEG / OSS poate comprima acum de la / decomprima la bitmapuri în nuanțe de gri și de a converti RGB sau JPEG imagini pentru a le ieșire plane YUV.
  • jpgtest poate fi folosit pentru a testa performanta decompresie cu imagini JPEG existente.
  • s-a adăugat Opțional aritmetică codare și decodare suport.

  • S-au adăugat
  • protecții suplimentare împotriva codurilor Huffman invalide.

Ce este nou în versiunea 1.0.0:.

  • construi îmbunătățiri suplimentare pe FreeBSD
  • pachete Unix / Linux includ acum libjpeg run-time programe (cjpeg etc.) și paginile man.
  • Există un pachet de 32 de biți suplimentar pentru sistemele Debian amd64.
  • sprijin Cygwin.
  • Suport complet pentru construirea / testarea pe arhitecturi de bază non-x86.
  • 64-bit sistem de operare X binarele sunt acum compatibile înapoi cu OS X 10.4.
  • Există diverse trucuri de ambalare Linux.

Ce este nou în versiunea 0.0.91:

  • Adăugat documentație pentru pachete .deb

  • probleme de corupere
  • date fixe atunci când decomprima imagini JPEG mari și / sau folosind tampon I / O cu decompresor libjpeg-turbo

Alte software-uri de dezvoltator D. R. Commander

VirtualGL
VirtualGL

7 Mar 16

TurboVNC
TurboVNC

3 Jun 15

Comentarii la libjpeg-turbo

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!