libjpeg-turbo

نرم افزار تصویر:
libjpeg-turbo
جزئیات نرم افزار:
نسخه: 1.4.90 به روز شده
ها تاریخ: 10 Mar 16
توسعه دهنده: D. R. Commander
پروانه: رایگان
محبوبیت: 339

Rating: nan/5 (Total Votes: 0)

libjpeg توربو منبع باز، کراس پلت فرم و نرم افزار کاملا رایگان طراحی شده برای ارائه یک نسخه با سرعت بالا از نرم افزار اصلی کتابخانه libjpeg، به طور خاص برای x86 و x86-64 به پردازنده، که استفاده از SIMD گردد (است یک دستور داده) دستورالعمل های متعدد، مانند SSE2، MMX و نئون، برای سرعت بخشیدن به پایه رفع فشار JPEG و فشرده سازی.


بسیار سریع JPEG کدک تصویر

در این نرمافزار یک JPEG کدک تصویر بسیار سریع است که به طور کلی 2-4x سریع تر از نسخه اصلاح نشده از libjpeg است. این پروژه در اصل در libjpeg / پروژه SIMD ایجاد شده توسط Miyasaka ماسارو بود.


پیاده سازی API libjpeg سنتی

این نسخه توربو کتابخانه libjpeg نیز پیاده سازی API libjpeg سنتی، و همچنین به عنوان API TurboJPEG سر راست است. از ویژگی های آن پسوند فاصلهرنگ، که اجازه می دهد تا کاربران برای فشرده سازی از حالت فشرده خارج و یا به بزرگ endian است و 32 بیتی بافر پیکسل (XBGR، RGBX، و غیره)، و یک رابط کامل شامل جاوا.


توزیع به عنوان نصب بومی برای DEB و سیستم عامل مبتنی بر RPM

در برای راحتی شما، نرم افزار به عنوان نصب بومی برای DEB و سیستم عامل مبتنی بر RPM، مانند دبیان، اوبونتو، لینوکس مینت، فدورا، لینوکس، لینوکس، لینوکس، مجیا، و غیره توزیع شده، حمایت از هر دو 64 و 32 بیتی سیستم عامل سخت افزار.


شروع کار با libjpeg توربو

در این پروژه libjpeg توربو می تواند به راحتی از مخازن نرم افزار اصلی یک توزیع گنو / لینوکس نصب شده است. این نیز خواهد شد به صورت خودکار همراه با هر نرم افزار که نیاز به نصب شده است.

برای نصب آن به صورت دستی با استفاده از بسته برنامه، در مورد شما می خواهید آن را بهینه سازی برای معماری سخت افزار / سیستم عامل خود را دانلود و ذخیره شدن آرشیو از Softoware، استخراج محتویات آن با استفاده از یک ابزار مدیریت آرشیو، باز کردن یک برنامه ترمینال و رفتن به محل فایل آرشیو استخراج (به عنوان مثال سی دی / صفحه اصلی / softoware / libjpeg توربو).

در پس از آن، اجرای و lsquo. ./ پیکربندی && را برون دستور به پیکربندی و کامپایل برنامه، پس از و lsquo. کد: sudo را نصب برون commad آن را نصب سیستم گسترده و آن را به همه برنامه های موجود

چه در این نسخه جدید است:

ثابت شماره ساخت بر روی سیستم عامل OS X پاور (md5cmp موفق به ساخت زیرا OS X می کند le32toh () و htole32 () توابع ارائه نمی دهد.).
غیر SIMD کد تبدیل رنگ RGB565 به درستی بر روی ماشین های بزرگ endian است کار نمی کند. این ثابت شده است.
ثابت است که شماره در tjPlaneSizeYUV () به موجب آن اشتباه خواهد گشت 1 جای -1 اگر componentID بود & gt؛ به 0 و subsamp TJSAMP_GRAY بود.
ثابت است که شماره در tjBufSizeYUV2 () wherby آن اشتباه را می گردانند 0 به جای -1 اگر عرض LT بود و. 1.
رمزگذار هافمن حال حاضر با استفاده CLZ و BSR دستورالعمل برای شمارش کمی بر روی سیستم عامل ARM64.
روش بستن () در کلاس TJCompressor و TJDecompressor جاوا در حال حاضر idempotent. پیش از این، این روش به عملکرد tjDestroy بومی () حتی اگر به عنوان مثال در حال حاضر TurboJPEG نابود شده است. این باعث یک استثنا به طول نهایی پرتاب می شود، اگر به روش نزدیک () در حال حاضر به نام شده است. استثنا، گرفتار شد اما هنوز هم یک عملیات گران بود.
از API TurboJPEG قبلا تولید یک خطا (& quot؛ را می تواند نوع نمونه برداری برای JPEG تصویر و & quot مشخص نیست؛) زمانی که تلاش برای از حالت فشرده خارج تصاویر سیاه و سفید JPEG است که با یک عامل نمونه دیگر از 1 (برای مثال فشرده شد، با 'cjpeg -Grayscale -Sample و 2x2، ). نمونه برداری از لحاظ فنی هیچ معنایی با عکس JPEG سیاه و سفید، و در نتیجه عوامل نمونه افقی و عمودی برای چنین تصاویر توسط decompressor کنه. با این حال، API TurboJPEG بودن بیش از حد سفت و سخت و انتظار عوامل نمونه برداری به برابر با 1 قبل از آن تصویر به عنوان یک JPEG سیاه و سفید درمان می شود.
cjpeg، djpeg و jpegtran اکنون یک آرگومان از -Version، که نسخه کتابخانه و خروج چاپ را می پذیرد.
یکی دیگر از شرایط بسیار نادر با اشاره به 1.4 BETA1 [15]، کشف شد که بر اساس آن بافر محلی رمزگذار هافمن را می توان تاخت و تاز کردن هنگامی که یک مدیر مقصد بافر استفاده شده است و یک بلوک با فرکانس بسیار بالا (در واقع داده های تصویر ناخواسته) در حال رمزگذاری. حتی اگر بافر محلی هافمن از 128 بایت به بایت 136 برای رسیدگی به موضوع قبلی افزایش یافته بود، شماره جدید باعث شده حتی بافر بزرگتر به تاخت و تاز می شود. تجزیه و تحلیل بیشتر نشان می دهد که، در بدترین حالت مطلق (مانند تنظیم ضرایب AC متناوب به 32،767 و -32،768 در اسکن سفارش JPEG)، رمزگذار هافمن می تواند بلوک های کد گذاری که رویکرد دو برابر اندازه بلوک unencoded تولید کند. بنابراین، بافر محلی هافمن به 256 بایت، که باید هر موضوع را از دوباره اتفاق می افتد در آینده جلوگیری افزایش یافته بود.
tjPlaneSizeYUV جدید ()، tjPlaneWidth ()، و tjPlaneHeight () توابع در واقع روی هر پلت فرم به جز OS X و ویندوز قابل استفاده نیست، زیرا آن دسته از توابع در libturbojpeg mapfile شامل نمی شد. این ثابت شده است.
ترمیم JPP ()، JMETHOD () و ماکرو کنون در فایل های هدر libjpeg توربو. ماکروها JPP () و JMETHOD () در اصل در libjpeg به عنوان یک راه از حمایت کامپایلر غیر ANSI که فاقد پشتیبانی از پارامترهای نمونه اجرا شد. libjpeg توربو است هرگز چنین کامپایلر پشتیبانی، اما برخی از بسته های نرم افزاری هنوز هم استفاده از ماکروها برای تعریف نمونه های اولیه خود را دارند. به طور مشابه، libjpeg توربو هرگز حمایت MS-DOS و سیستم عامل های دیگر که علامت کنون، اما برخی از بسته های نرم افزاری هنوز هم استفاده از ماکرو FAR. بحث خیلی خوب می شود که این یک عمل بد در بخشی از نرم افزار در سوال این است، اما از آنجایی که این تاثیر می گذارد بیش از یک بسته بندی، آن را فقط آسان تر به آن را تعمیر کنید.
مسائل ثابت بود که جلوگیری از ARM 64 بیتی کد SIMD از تدوین برای IOS، و شامل یک معماری ARMv8 در تمام فایل های باینری نصب شده توسط & quot؛ را رسمی و & quot؛ SDK libjpeg توربو برای سیستم عامل X.

چه در نسخه 1.4.2 جدید است:

ثابت شماره ساخت بر روی سیستم عامل OS X پاور (md5cmp موفق به ساخت زیرا OS X می کند le32toh () و htole32 فراهم نیست ( ) توابع.).
غیر SIMD کد تبدیل رنگ RGB565 به درستی بر روی ماشین های بزرگ endian است کار نمی کند. این ثابت شده است.
ثابت است که شماره در tjPlaneSizeYUV () به موجب آن اشتباه خواهد گشت 1 جای -1 اگر componentID بود & gt؛ به 0 و subsamp TJSAMP_GRAY بود.
ثابت است که شماره در tjBufSizeYUV2 () wherby آن اشتباه را می گردانند 0 به جای -1 اگر عرض LT بود و. 1.
رمزگذار هافمن حال حاضر با استفاده CLZ و BSR دستورالعمل برای شمارش کمی بر روی سیستم عامل ARM64.
روش بستن () در کلاس TJCompressor و TJDecompressor جاوا در حال حاضر idempotent. پیش از این، این روش به عملکرد tjDestroy بومی () حتی اگر به عنوان مثال در حال حاضر TurboJPEG نابود شده است. این باعث یک استثنا به طول نهایی پرتاب می شود، اگر به روش نزدیک () در حال حاضر به نام شده است. استثنا، گرفتار شد اما هنوز هم یک عملیات گران بود.
از API TurboJPEG قبلا تولید یک خطا (& quot؛ را می تواند نوع نمونه برداری برای JPEG تصویر و & quot مشخص نیست؛) زمانی که تلاش برای از حالت فشرده خارج تصاویر سیاه و سفید JPEG است که با یک عامل نمونه دیگر از 1 (برای مثال فشرده شد، با 'cjpeg -Grayscale -Sample و 2x2، ). نمونه برداری از لحاظ فنی هیچ معنایی با عکس JPEG سیاه و سفید، و در نتیجه عوامل نمونه افقی و عمودی برای چنین تصاویر توسط decompressor کنه. با این حال، API TurboJPEG بودن بیش از حد سفت و سخت و انتظار عوامل نمونه برداری به برابر با 1 قبل از آن تصویر به عنوان یک JPEG سیاه و سفید درمان می شود.
cjpeg، djpeg و jpegtran اکنون یک آرگومان از -Version، که نسخه کتابخانه و خروج چاپ را می پذیرد.
یکی دیگر از شرایط بسیار نادر با اشاره به 1.4 BETA1 [15]، کشف شد که بر اساس آن بافر محلی رمزگذار هافمن را می توان تاخت و تاز کردن هنگامی که یک مدیر مقصد بافر استفاده شده است و یک بلوک با فرکانس بسیار بالا (در واقع داده های تصویر ناخواسته) در حال رمزگذاری. حتی اگر بافر محلی هافمن از 128 بایت به بایت 136 برای رسیدگی به موضوع قبلی افزایش یافته بود، شماره جدید باعث شده حتی بافر بزرگتر به تاخت و تاز می شود. تجزیه و تحلیل بیشتر نشان می دهد که، در بدترین حالت مطلق (مانند تنظیم ضرایب AC متناوب به 32،767 و -32،768 در اسکن سفارش JPEG)، رمزگذار هافمن می تواند بلوک های کد گذاری که رویکرد دو برابر اندازه بلوک unencoded تولید کند. بنابراین، بافر محلی هافمن به 256 بایت، که باید هر موضوع را از دوباره اتفاق می افتد در آینده جلوگیری افزایش یافته بود.
tjPlaneSizeYUV جدید ()، tjPlaneWidth ()، و tjPlaneHeight () توابع در واقع روی هر پلت فرم به جز OS X و ویندوز قابل استفاده نیست، زیرا آن دسته از توابع در libturbojpeg mapfile شامل نمی شد. این ثابت شده است.
ترمیم JPP ()، JMETHOD () و ماکرو کنون در فایل های هدر libjpeg توربو. ماکروها JPP () و JMETHOD () در اصل در libjpeg به عنوان یک راه از حمایت کامپایلر غیر ANSI که فاقد پشتیبانی از پارامترهای نمونه اجرا شد. libjpeg توربو است هرگز چنین کامپایلر پشتیبانی، اما برخی از بسته های نرم افزاری هنوز هم استفاده از ماکروها برای تعریف نمونه های اولیه خود را دارند. به طور مشابه، libjpeg توربو هرگز حمایت MS-DOS و سیستم عامل های دیگر که علامت کنون، اما برخی از بسته های نرم افزاری هنوز هم استفاده از ماکرو FAR. بحث خیلی خوب می شود که این یک عمل بد در بخشی از نرم افزار در سوال این است، اما از آنجایی که این تاثیر می گذارد بیش از یک بسته بندی، آن را فقط آسان تر به آن را تعمیر کنید.
مسائل ثابت بود که جلوگیری از ARM 64 بیتی کد SIMD از تدوین برای IOS، و شامل یک معماری ARMv8 در تمام فایل های باینری نصب شده توسط & quot؛ را رسمی و & quot؛ SDK libjpeg توربو برای سیستم عامل X.

چه در نسخه 1.4.0 جدید است:

ثابت شماره ساخت بر روی سیستم عامل OS X پاور (md5cmp موفق به ساخت زیرا OS X می کند le32toh () و htole32 فراهم نیست ( ) توابع.).
غیر SIMD کد تبدیل رنگ RGB565 به درستی بر روی ماشین های بزرگ endian است کار نمی کند. این ثابت شده است.
ثابت است که شماره در tjPlaneSizeYUV () به موجب آن اشتباه خواهد گشت 1 جای -1 اگر componentID بود & gt؛ به 0 و subsamp TJSAMP_GRAY بود.
ثابت است که شماره در tjBufSizeYUV2 () wherby آن اشتباه را می گردانند 0 به جای -1 اگر عرض LT بود و. 1.
رمزگذار هافمن حال حاضر با استفاده CLZ و BSR دستورالعمل برای شمارش کمی بر روی سیستم عامل ARM64.
روش بستن () در کلاس TJCompressor و TJDecompressor جاوا در حال حاضر idempotent. پیش از این، این روش به عملکرد tjDestroy بومی () حتی اگر به عنوان مثال در حال حاضر TurboJPEG نابود شده است. این باعث یک استثنا به طول نهایی پرتاب می شود، اگر به روش نزدیک () در حال حاضر به نام شده است. استثنا، گرفتار شد اما هنوز هم یک عملیات گران بود.
از API TurboJPEG قبلا تولید یک خطا (& quot؛ را می تواند نوع نمونه برداری برای JPEG تصویر و & quot مشخص نیست؛) زمانی که تلاش برای از حالت فشرده خارج تصاویر سیاه و سفید JPEG است که با یک عامل نمونه دیگر از 1 (برای مثال فشرده شد، با 'cjpeg -Grayscale -Sample و 2x2، ). نمونه برداری از لحاظ فنی هیچ معنایی با عکس JPEG سیاه و سفید، و در نتیجه عوامل نمونه افقی و عمودی برای چنین تصاویر توسط decompressor کنه. با این حال، API TurboJPEG بودن بیش از حد سفت و سخت و انتظار عوامل نمونه برداری به برابر با 1 قبل از آن تصویر به عنوان یک JPEG سیاه و سفید درمان می شود.
cjpeg، djpeg و jpegtran اکنون یک آرگومان از -Version، که نسخه کتابخانه و خروج چاپ را می پذیرد.
یکی دیگر از شرایط بسیار نادر با اشاره به 1.4 BETA1 [15]، کشف شد که بر اساس آن بافر محلی رمزگذار هافمن را می توان تاخت و تاز کردن هنگامی که یک مدیر مقصد بافر استفاده شده است و یک بلوک با فرکانس بسیار بالا (در واقع داده های تصویر ناخواسته) در حال رمزگذاری. حتی اگر بافر محلی هافمن از 128 بایت به بایت 136 برای رسیدگی به موضوع قبلی افزایش یافته بود، شماره جدید باعث شده حتی بافر بزرگتر به تاخت و تاز می شود. تجزیه و تحلیل بیشتر نشان می دهد که، در بدترین حالت مطلق (مانند تنظیم ضرایب AC متناوب به 32،767 و -32،768 در اسکن سفارش JPEG)، رمزگذار هافمن می تواند بلوک های کد گذاری که رویکرد دو برابر اندازه بلوک unencoded تولید کند. بنابراین، بافر محلی هافمن به 256 بایت، که باید هر موضوع را از دوباره اتفاق می افتد در آینده جلوگیری افزایش یافته بود.
tjPlaneSizeYUV جدید ()، tjPlaneWidth ()، و tjPlaneHeight () توابع در واقع روی هر پلت فرم به جز OS X و ویندوز قابل استفاده نیست، زیرا آن دسته از توابع در libturbojpeg mapfile شامل نمی شد. این ثابت شده است.
ترمیم JPP ()، JMETHOD () و ماکرو کنون در فایل های هدر libjpeg توربو. ماکروها JPP () و JMETHOD () در اصل در libjpeg به عنوان یک راه از حمایت کامپایلر غیر ANSI که فاقد پشتیبانی از پارامترهای نمونه اجرا شد. libjpeg توربو است هرگز چنین کامپایلر پشتیبانی، اما برخی از بسته های نرم افزاری هنوز هم استفاده از ماکروها برای تعریف نمونه های اولیه خود را دارند. به طور مشابه، libjpeg توربو هرگز حمایت MS-DOS و سیستم عامل های دیگر که علامت کنون، اما برخی از بسته های نرم افزاری هنوز هم استفاده از ماکرو FAR. بحث خیلی خوب می شود که این یک عمل بد در بخشی از نرم افزار در سوال این است، اما از آنجایی که این تاثیر می گذارد بیش از یک بسته بندی، آن را فقط آسان تر به آن را تعمیر کنید.
مسائل ثابت بود که جلوگیری از ARM 64 بیتی کد SIMD از تدوین برای IOS، و شامل یک معماری ARMv8 در تمام فایل های باینری نصب شده توسط & quot؛ را رسمی و & quot؛ SDK libjpeg توربو برای سیستم عامل X.

چه در نسخه 1.3.0 جدید است:

[1] را تست اکنون به درستی کار در بورس، و آن دیگر نیاز به دستور md5sum اجرایی به حضور در دیگر سازمان ملل باشد * سیستم عامل X.
[2] تعمیرات کلی سیستم بسته بندی: - برای جلوگیری از درگیری با بسته libjpeg توربو فروشنده عرضه، RPM ها رسمی و دبس برای libjpeg توربو تغییر نام شده به & quot؛ libjpeg توربو رسمی و & quot ؛. - کتابخانه TurboJPEG در حال حاضر تحت / انتخاب کردن / libjpeg توربو در بسته های رسمی لینوکس و مک قرار گرفته است، برای جلوگیری از درگیری با بسته فروشنده عرضه شده و همچنین به ساده سیستم بسته بندی. - بسته های انتشار در حال حاضر با ساختار دایرکتوری تعریف شده توسط متغیرهای پیکربندی و & quot ایجاد؛ پیشوند و & quot ؛، & quot؛ را bindir و & quot ؛، & quot؛ را libdir و & quot ؛، و غیره (سازمان ملل متحد * X) و یا با متغیر CMAKE_INSTALL_PREFIX (ویندوز) استثنا است که اسناد همیشه تحت سیستم به طور پیش فرض دایرکتوری اسناد و مدارک در سازمان ملل متحد * X و سیستم مک، و بر روی ویندوز قرار گرفته است، TurboJPEG DLL است که همیشه در دایرکتوری سیستم ویندوز قرار دارد. - برای جلوگیری از سردرگمی، بستههای libjpeg توربو بر روی سیستم عامل لینوکس / یونیکس (به جز برای مک) همیشه نصب خواهد شد کتابخانه های 32 بیتی در / انتخاب کردن / libjpeg توربو / lib32 و کتابخانه های 64 بیتی در / انتخاب کردن / libjpeg- توربو / lib64. - ثابت موضوع به موجب آن، در برخی موارد، اجرایی libjpeg توربو در سازمان ملل متحد * X سیستم به درستی با کتابخانه های اشتراکی نصب با همان بسته ارتباط نیست. - ثابت موضوع موجب آن ساخت و & quot؛ نصب و & quot؛ هدف قرار دادن بر روی ویندوز که WITH_JAVA = 1 شکست خواهد خورد اگر JAR TurboJPEG قبلا ساخته نشده است. - ساختمان و & quot؛ نصب و & quot؛ هدف در ویندوز در حال حاضر نصب فایل ها را به همان مکان که نصب می کند.
[3] رفع اشکال رمزگذار هافمن که تعلیق I / O از کار به درستی جلوگیری کرد.

چه در نسخه 1.2.0 جدید است:

یک مسئله ساخت مواجه می شوند که با استفاده از YASM در سیستم های یونیکس ثابت شد.
خارج از نوبت به عنوان خوانده شده در کد SSE2 SIMD ثابت شد.
جدید ثابت پسوند فاصلهرنگ اجازه می دهد که برنامه های کاربردی برای مشخص است که بایت استفاده نشده را در 4 بایت RGB بافر باید به عنوان یک کانال آلفا که استخراج اضافه شد درمان می شود.
موضوع رگرسیون مواجه می شوند که ساخت و ساز شیطان با libjpeg توربو ثابت شد.
پشتیبانی از iOS به SDK libjpeg توربو برای مک اضافه شده است.

چه در نسخه 1.1 بتا 1 جدید است:

libjpeg توربو ساخته می شود به تقلید V7 libjpeg یا API v8b / ABI.
سیستم ساخت ویندوز حال حاضر با استفاده CMake.
TurboJPEG / OSS اکنون می توانید از فشرده سازی / حالت فشرده خارج به بیت مپ سیاه و سفید و تبدیل RGB و یا تصاویر JPEG به خروجی مسطح YUV.
jpgtest می توان مورد استفاده برای تست عملکرد رفع فشار با تصاویر JPEG موجود است.
کدگذاری حسابی اختیاری و پشتیبانی از رمز گشایی اضافه شده است.
حفاظت بیشتر در برابر کد هافمن نامعتبر اضافه شد.

چه در نسخه 1.0.0 جدید است:

علاوه بر این ساخت پیشرفت در FreeBSD دارد.
بسته های یونیکس / لینوکس در حال حاضر شامل libjpeg زمان اجرا برنامه (cjpeg، و غیره) و صفحات مرد.
یک بسته مکمل 32 بیتی برای سیستم های دبیان AMD64 وجود دارد.
پشتیبانی از Cygwin.
پشتیبانی کامل برای ساخت و ساز / تست در معماری غیر از x86.
64 بیتی OS X باینری اکنون به عقب سازگار با OS X 10.4.
ترفند های مختلف هستند بسته بندی لینوکس وجود دارد.

چه در نسخه 0.0.91 جدید است:

اضافه مستندات را به deb بسته
مسائل ثابت فساد داده که استخراج تصاویر بزرگ JPEG و / یا استفاده از بافر I / O با decompressor libjpeg توربو

نرم افزار های دیگر از توسعه دهنده D. R. Commander

VirtualGL
VirtualGL

7 Mar 16

TurboVNC
TurboVNC

3 Jun 15

نظرات به libjpeg-turbo

نظر یافت نشد
اضافه کردن نظر
روشن کردن تصاویر!