libjpeg-turbo

Software screenshot:
libjpeg-turbo
Software detaljer:
Version: 1.4.90 Opdateret
Upload dato: 10 Mar 16
Udvikler: D. R. Commander
Licens: Gratis
Popularitet: 68

Rating: nan/5 (Total Votes: 0)

libjpeg-turbo er en open source, cross-platform og helt gratis software udviklet til at give en høj hastighed version af den oprindelige libjpeg biblioteket software, specielt udformet til x86 og x86-64 processorer, der bruger SIMD ( Single Instruction, Multiple data) instruktioner, såsom SSE2, MMX og NEON, at fremskynde baseline JPEG dekompression og komprimering.


En ekstremt hurtig JPEG-billede codec

Softwaren er en ekstremt hurtig JPEG-billede codec, der generelt 2-4x hurtigere end den umodificerede udgave af libjpeg. Projektet blev oprindeligt baseret på libjpeg / SIMD projekt skabt af Miyasaka Masaru.


Gennemfører den traditionelle libjpeg API

Denne turbo version af libjpeg biblioteket implementerer også den traditionelle libjpeg API, samt ligetil TurboJPEG API. Den er udstyret med farverum udvidelser, som giver brugerne mulighed for at komprimere fra eller dekomprimere til store-endian og 32-bit pixel buffere (XBGR, RGBX, etc.), og en fuldt udstyret Java-interface.


Distribueret som indfødte installatører for DEB og RPM-baserede OS'er

For nemheds skyld, er softwaren distribueres som indfødte installatører for DEB og RPM-baserede operativsystemer, såsom Debian, Ubuntu, Linux Mint, Fedora, CentOS, Red Hat Enterprise Linux, openSUSE, Mageia, etc., understøtter både 64 og 32-bit hardware-platforme.


Kom godt i gang med libjpeg-turbo

libjpeg-turbo projekt kan nemt installeres fra de vigtigste softwarekilder i GNU / Linux-distribution. Det vil også automatisk installeret sammen med software, der kræver det.

For at installere den manuelt ved hjælp kildekodepakken, hvis du ønsker at optimere det til din hardware arkitektur / operativsystem, downloade og gemme den nyeste arkivet fra Softoware, pakke indholdet ved hjælp et arkiv Manager hjælpeprogram, åbne en Terminal app og gå til placeringen af ​​den udpakkede arkivfil (f.eks cd / home / softoware / libjpeg-turbo).

Derefter køre & lsquo; ./ configure && få & rsquo; kommando til at konfigurere og kompilere programmet, efterfulgt af & lsquo; sudo make install & rsquo; commad at installere det hele systemet og gøre den tilgængelig for alle programmer

Hvad er nyt i denne udgivelse:.

    < li> Rettet en build problem på OS X PowerPC-platforme (md5cmp undladt at bygge, fordi OS X ikke giver le32toh () og htole32 () funktioner.).
  • Den ikke-SIMD RGB565 farve konverteringskode virkede ikke korrekt på big endian maskiner. Dette er blevet rettet.
  • Fixed et problem i tjPlaneSizeYUV (), hvorved det fejlagtigt ville returnere 1 i stedet for -1 hvis componentID var & gt; 0 og subsamp var TJSAMP_GRAY.
  • Fixed et problem i tjBufSizeYUV2 () wherby det fejlagtigt ville returnere 0 i stedet for -1 hvis bredde var & lt; 1.
  • Huffman encoder bruger nu CLZ og BSR instruktioner til bit regner ARM64 platforme.
  • Den tætte () metoden i TJCompressor og TJDecompressor Java-klasser er nu idempotent. Tidligere ville denne metode kalde native tjDestroy () funktion, selv hvis TurboJPEG eksempel allerede var blevet ødelagt. Dette forårsagede en undtagelse til at blive kastet under færdiggørelsen, hvis tæt () metoden allerede var blevet kaldt. Undtagelsen blev fanget, men det var stadig en dyr operation.
  • TurboJPEG API tidligere genererede en fejl (& quot; Kunne ikke bestemme subsampling type for JPEG-billede & quot;), når de forsøger at dekomprimere gråtoner JPEG-billeder, som er komprimeret med en anden end en (prøvetagning faktor for eksempel med 'cjpeg -grayscale - prøve 2x2 "). Undersampling teknisk har ingen mening med gråtoner JPEG, og dermed de vandrette og lodrette prøveudtagning faktorer for sådanne billeder ignoreres af dekomprimeringsprogrammet. Men TurboJPEG API var for stiv og forventer prøveudskillelsesfiltrene faktorer at være lig med en, før det behandles billedet som en gråtone JPEG.
  • cjpeg, djpeg, og jpegtran nu acceptere et argument for -version, som vil udskrive biblioteket versionen og exit.
  • Med henvisning til 1,4 beta1 [15], en anden ekstremt sjældne tilfælde blev opdaget under hvilke Huffman encoder lokale buffer kan blive overskredet, når der bruges en buffer destination manager og en ekstremt høj-frekvens blok (grundlæggende junk billeddata) er indkodes. Selvom Huffman lokale buffer blev øget fra 128 bytes til 136 bytes til at løse den forrige spørgsmål, den nye udgave forårsagede endog større buffer til at blive løbet over ende. Yderligere analyser viser, at, i den absolutte værste fald (såsom fastsættelse alternerende AC koefficienter til 32767 og -32768 i JPEG-scanning rækkefølge), Huffman encoder kan producere kodede blokke, der nærmer dobbelt størrelse af de ukodede blokke. Således blev Huffman lokale buffer steget til 256 bytes, hvilket skulle forhindre en sådan tvist fra re forekommende i fremtiden.
  • Den nye tjPlaneSizeYUV (), tjPlaneWidth (), og tjPlaneHeight () funktioner var faktisk ikke anvendelig på enhver platform undtagen OS X og Windows, fordi disse funktioner ikke blev medtaget i den libturbojpeg mapFile. Dette er blevet rettet.
  • Restaureret de JPP (), JMETHOD () og FAR makroer i libjpeg-turbo header-filer. De JPP () og JMETHOD () makroer oprindeligt implementeret i libjpeg som en måde at støtte ikke-ANSI compilere der manglede støtte til prototype parametre. libjpeg-turbo har aldrig støttet sådanne compilere, men nogle softwarepakker stadig bruge makroer til at definere deres egne prototyper. Tilsvarende har libjpeg-turbo aldrig støttet MS-DOS og andre platforme, der har langt symboler, men nogle softwarepakker stadig bruge FAR makro. kan foretages en temmelig godt argument, at det er en dårlig praksis på den del af softwaren i spørgsmål, men da dette påvirker mere end én pakke, det er bare nemmere at ordne det her.
  • Faste problemer, der forhindrer ARM 64-bit SIMD kode fra kompilering til iOS, og omfattede en ARMv8 arkitektur i alle de binære filer installeret af & quot; officielle & quot; libjpeg-turbo SDK til OS X.

Hvad er nyt i version 1.4.2:

  • Fixed et build problem på OS X PowerPC-platforme ( md5cmp undladt at bygge, fordi OS X ikke giver le32toh () og htole32 () funktioner.).
  • Den ikke-SIMD RGB565 farve konverteringskode virkede ikke korrekt på big endian maskiner. Dette er blevet rettet.
  • Fixed et problem i tjPlaneSizeYUV (), hvorved det fejlagtigt ville returnere 1 i stedet for -1 hvis componentID var & gt; 0 og subsamp var TJSAMP_GRAY.
  • Fixed et problem i tjBufSizeYUV2 () wherby det fejlagtigt ville returnere 0 i stedet for -1 hvis bredde var & lt; 1.
  • Huffman encoder bruger nu CLZ og BSR instruktioner til bit regner ARM64 platforme.
  • Den tætte () metoden i TJCompressor og TJDecompressor Java-klasser er nu idempotent. Tidligere ville denne metode kalde native tjDestroy () funktion, selv hvis TurboJPEG eksempel allerede var blevet ødelagt. Dette forårsagede en undtagelse til at blive kastet under færdiggørelsen, hvis tæt () metoden allerede var blevet kaldt. Undtagelsen blev fanget, men det var stadig en dyr operation.
  • TurboJPEG API tidligere genererede en fejl (& quot; Kunne ikke bestemme subsampling type for JPEG-billede & quot;), når de forsøger at dekomprimere gråtoner JPEG-billeder, som er komprimeret med en anden end en (prøvetagning faktor for eksempel med 'cjpeg -grayscale - prøve 2x2 "). Undersampling teknisk har ingen mening med gråtoner JPEG, og dermed de vandrette og lodrette prøveudtagning faktorer for sådanne billeder ignoreres af dekomprimeringsprogrammet. Men TurboJPEG API var for stiv og forventer prøveudskillelsesfiltrene faktorer at være lig med en, før det behandles billedet som en gråtone JPEG.
  • cjpeg, djpeg, og jpegtran nu acceptere et argument for -version, som vil udskrive biblioteket versionen og exit.
  • Med henvisning til 1,4 beta1 [15], en anden ekstremt sjældne tilfælde blev opdaget under hvilke Huffman encoder lokale buffer kan blive overskredet, når der bruges en buffer destination manager og en ekstremt høj-frekvens blok (grundlæggende junk billeddata) er indkodes. Selvom Huffman lokale buffer blev øget fra 128 bytes til 136 bytes til at løse den forrige spørgsmål, den nye udgave forårsagede endog større buffer til at blive løbet over ende. Yderligere analyser viser, at, i den absolutte værste fald (såsom fastsættelse alternerende AC koefficienter til 32767 og -32768 i JPEG-scanning rækkefølge), Huffman encoder kan producere kodede blokke, der nærmer dobbelt størrelse af de ukodede blokke. Således blev Huffman lokale buffer steget til 256 bytes, hvilket skulle forhindre en sådan tvist fra re forekommende i fremtiden.
  • Den nye tjPlaneSizeYUV (), tjPlaneWidth (), og tjPlaneHeight () funktioner var faktisk ikke anvendelig på enhver platform undtagen OS X og Windows, fordi disse funktioner ikke blev medtaget i den libturbojpeg mapFile. Dette er blevet rettet.
  • Restaureret de JPP (), JMETHOD () og FAR makroer i libjpeg-turbo header-filer. De JPP () og JMETHOD () makroer oprindeligt implementeret i libjpeg som en måde at støtte ikke-ANSI compilere der manglede støtte til prototype parametre. libjpeg-turbo har aldrig støttet sådanne compilere, men nogle softwarepakker stadig bruge makroer til at definere deres egne prototyper. Tilsvarende har libjpeg-turbo aldrig støttet MS-DOS og andre platforme, der har langt symboler, men nogle softwarepakker stadig bruge FAR makro. kan foretages en temmelig godt argument, at det er en dårlig praksis på den del af softwaren i spørgsmål, men da dette påvirker mere end én pakke, det er bare nemmere at ordne det her.
  • Faste problemer, der forhindrer ARM 64-bit SIMD kode fra kompilering til iOS, og omfattede en ARMv8 arkitektur i alle de binære filer installeret af & quot; officielle & quot; libjpeg-turbo SDK til OS X.

Hvad er nyt i version 1.4.0:

  • Fixed et build problem på OS X PowerPC-platforme ( md5cmp undladt at bygge, fordi OS X ikke giver le32toh () og htole32 () funktioner.).
  • Den ikke-SIMD RGB565 farve konverteringskode virkede ikke korrekt på big endian maskiner. Dette er blevet rettet.
  • Fixed et problem i tjPlaneSizeYUV (), hvorved det fejlagtigt ville returnere 1 i stedet for -1 hvis componentID var & gt; 0 og subsamp var TJSAMP_GRAY.
  • Fixed et problem i tjBufSizeYUV2 () wherby det fejlagtigt ville returnere 0 i stedet for -1 hvis bredde var & lt; 1.
  • Huffman encoder bruger nu CLZ og BSR instruktioner til bit regner ARM64 platforme.
  • Den tætte () metoden i TJCompressor og TJDecompressor Java-klasser er nu idempotent. Tidligere ville denne metode kalde native tjDestroy () funktion, selv hvis TurboJPEG eksempel allerede var blevet ødelagt. Dette forårsagede en undtagelse til at blive kastet under færdiggørelsen, hvis tæt () metoden allerede var blevet kaldt. Undtagelsen blev fanget, men det var stadig en dyr operation.
  • TurboJPEG API tidligere genererede en fejl (& quot; Kunne ikke bestemme subsampling type for JPEG-billede & quot;), når de forsøger at dekomprimere gråtoner JPEG-billeder, som er komprimeret med en anden end en (prøvetagning faktor for eksempel med 'cjpeg -grayscale - prøve 2x2 "). Undersampling teknisk har ingen mening med gråtoner JPEG, og dermed de vandrette og lodrette prøveudtagning faktorer for sådanne billeder ignoreres af dekomprimeringsprogrammet. Men TurboJPEG API var for stiv og forventer prøveudskillelsesfiltrene faktorer at være lig med en, før det behandles billedet som en gråtone JPEG.
  • cjpeg, djpeg, og jpegtran nu acceptere et argument for -version, som vil udskrive biblioteket versionen og exit.
  • Med henvisning til 1,4 beta1 [15], en anden ekstremt sjældne tilfælde blev opdaget under hvilke Huffman encoder lokale buffer kan blive overskredet, når der bruges en buffer destination manager og en ekstremt høj-frekvens blok (grundlæggende junk billeddata) er indkodes. Selvom Huffman lokale buffer blev øget fra 128 bytes til 136 bytes til at løse den forrige spørgsmål, den nye udgave forårsagede endog større buffer til at blive løbet over ende. Yderligere analyser viser, at, i den absolutte værste fald (såsom fastsættelse alternerende AC koefficienter til 32767 og -32768 i JPEG-scanning rækkefølge), Huffman encoder kan producere kodede blokke, der nærmer dobbelt størrelse af de ukodede blokke. Således blev Huffman lokale buffer steget til 256 bytes, hvilket skulle forhindre en sådan tvist fra re forekommende i fremtiden.
  • Den nye tjPlaneSizeYUV (), tjPlaneWidth (), og tjPlaneHeight () funktioner var faktisk ikke anvendelig på enhver platform undtagen OS X og Windows, fordi disse funktioner ikke blev medtaget i den libturbojpeg mapFile. Dette er blevet rettet.
  • Restaureret de JPP (), JMETHOD () og FAR makroer i libjpeg-turbo header-filer. De JPP () og JMETHOD () makroer oprindeligt implementeret i libjpeg som en måde at støtte ikke-ANSI compilere der manglede støtte til prototype parametre. libjpeg-turbo har aldrig støttet sådanne compilere, men nogle softwarepakker stadig bruge makroer til at definere deres egne prototyper. Tilsvarende har libjpeg-turbo aldrig støttet MS-DOS og andre platforme, der har langt symboler, men nogle softwarepakker stadig bruge FAR makro. kan foretages en temmelig godt argument, at det er en dårlig praksis på den del af softwaren i spørgsmål, men da dette påvirker mere end én pakke, det er bare nemmere at ordne det her.
  • Faste problemer, der forhindrer ARM 64-bit SIMD kode fra kompilering til iOS, og omfattede en ARMv8 arkitektur i alle de binære filer installeret af & quot; officielle & quot; libjpeg-turbo SDK til OS X.

Hvad er nyt i version 1.3.0:

  • [1] "gøre prøve" fungerer nu korrekt på FreeBSD, og ​​det kræver ikke længere md5sum eksekverbare at være til stede på andre Fn * x platforme.
  • [2] overhaling emballagesystemet: - For at undgå konflikt med producents libjpeg-turbo pakker, har de officielle omdrejninger og Debs for libjpeg-turbo blevet omdøbt til & quot; libjpeg-turbo-officielle & quot ;. - De TurboJPEG biblioteker er nu placeret under / opt / libjpeg-turbo i de officielle Linux og Mac-pakker, for at undgå konflikt med producents pakker og også at strømline emballage system. - Frigiv pakker er nu oprettet med mappestruktur defineret af configure variabler & quot; præfiks & quot ;, & quot; bindir & quot ;, & quot; libdir & quot ;, osv (Un * x) eller af CMAKE_INSTALL_PREFIX variabel (Windows). Undtagelsen er at docs altid er placeret under systemets standard dokumentation mappe på Un * x og Mac-systemer, og på Windows, er TurboJPEG DLL altid placeret i systemet mappe i Windows. - For at undgå forvirring, officielle libjpeg-turbo pakker på Linux / Unix-platforme (undtagen for Mac) vil altid installere 32-bit biblioteker i / opt / libjpeg-turbo / lib32 og 64-bit biblioteker i / opt / libjpeg- turbo / lib64. - Rettet et problem, hvor der i nogle tilfælde libjpeg-turbo eksekverbare på Un * x systemer blev ikke korrekt forbinder med de delte biblioteker installeret af den samme pakke. - Rettet et problem, hvor bygge & quot; installatør & quot; målrette på Windows, når WITH_JAVA = 1 ville mislykkes, hvis TurboJPEG JAR ikke tidligere var blevet bygget. - Opbygning af & quot; installere & quot; mål på Windows nu installerer filer ind i de samme steder, som installationsprogrammet gør.
  • [3] Rettet en Huffman encoder fejl der forhindrede I / O suspension i at fungere korrekt.

Hvad er nyt i version 1.2.0:

  • En build problem stødt, når du bruger YASM på Unix-systemer blev fastsat.
  • en out-of-bounds læst i SSE2 SIMD koden blev fastsat.
  • Nye farverum udvidelse konstanter, der tillader applikationer at angive, at den ubrugte byte i en 4-byte RGB buffer bør behandles som en alfakanal, når dekomprimere blev tilføjet.
  • En regression problem stødt, når man bygger Devil med libjpeg-turbo blev fastsat.
  • iOS støtte blev tilføjet til libjpeg-turbo SDK til Mac.

Hvad er nyt i version 1.1 Beta 1:

  • libjpeg-turbo kan bygges til at emulere libjpeg v7 eller v8b API / ABI.
  • Windows byggesystem nu bruger CMake.
  • TurboJPEG / OSS kan nu komprimere fra / dekomprimere til gråtoner bitmaps og konvertere RGB eller JPEG-billeder til YUV plane output.
  • jpgtest kan bruges til at teste dekompression ydeevne med eksisterende JPEG-billeder.
  • Valgfri aritmetisk kodning og afkodning support blev tilføjet.
  • Yderligere beskyttelse blev sat mod ugyldige Huffman-koder.

Hvad er nyt i version 1.0.0:.

  • Opbygge yderligere forbedringer på FreeBSD
  • Unix / Linux-pakkerne nu omfatter libjpeg køre-time programmer (cjpeg, etc.) og man-sider.
  • Der er en 32-bit supplerende pakke til amd64 Debian-systemer.
  • Cygwin support.
  • Fuld understøttelse for bygning / test på ikke-x86-arkitekturer.
  • 64-bit OS X binære filer er nu bagud kompatibel med OS X 10.4.
  • Der er forskellige Linux-emballage tweaks.

Hvad er nyt i version 0.0.91:

  • Tilføjet dokumentation til .deb pakker

  • spørgsmål
  • Faste data korruption, når dekomprimere store JPEG-billeder og / eller ved hjælp af bufferet I / O med libjpeg-turbo dekomprimeringsprogram

Andre software developer D. R. Commander

VirtualGL
VirtualGL

7 Mar 16

TurboVNC
TurboVNC

3 Jun 15

Kommentarer til libjpeg-turbo

Kommentarer ikke fundet
Tilføj kommentar
Tænd billeder!