
libjpeg-turbo मूलतः libjpeg/SIMD वर आधारित होते, libjpeg v6b चे MMX-त्वरित व्युत्पन्न
लिनक्समध्ये, जेव्हा कोडेक्सचा विचार केला जातो, तेव्हा बहुतेक वापरकर्ते याबद्दल काळजी करत नाहीत, कारण बर्याच वितरणांमध्ये ही समस्या सामान्यत: आधीच लक्ष्यात समाविष्ट करून सोडवली जाते, अनुप्रयोग पाहणे किंवा संपादित करण्याव्यतिरिक्त, ते त्यांचे धान्य देखील योगदान देतात. काही अतिरिक्त गोष्टींसह वाळूचे.
परंतु जेव्हा वापरकर्त्याला काही बाबींमध्ये कार्यप्रदर्शन सुधारायचे असते, कार्ये संपादित करण्यासाठी किंवा साध्या विश्रांतीसाठी म्हणा तेव्हा काय होते. या भागात, सर्व वापरकर्ते सामील होत नाहीत, परंतु ज्यांना स्वारस्य आहे, ते प्रत्येक स्वरूप ऑफर करणारे फायदे आणि तोटे तपासतात.
आणि आज आपण ज्या कोडेकबद्दल बोलणार आहोत ते इथेच येते आणि ते म्हणजे जेपीईजी इमेज फॉरमॅट सर्वात लोकप्रिय आहे, पण याचा अर्थ असा नाही की ते सर्वोत्कृष्ट आहे, कारण इतर फॉरमॅट्स आहेत. यावर बरेच फायदे देतात.
libjpeg-turbo हे JPEG च्या काही कमतरतांवर उपाय आहे त्यांच्या GitHub रेपॉजिटरीमध्ये नमूद केल्याप्रमाणे इतर स्वरूपांच्या विरूद्ध:
libjpeg-turbo एक JPEG इमेज कोडेक आहे जो x86, x86-64, Arm, PowerPC आणि MIPS सिस्टीमवर बेंचमार्क JPEG कॉम्प्रेशन आणि डीकंप्रेशन, तसेच x86, x86-64, आणि आर्म वर प्रगतीशील JPEG कॉम्प्रेशन वेगवान करण्यासाठी SIMD सूचना वापरतो. अशा प्रणालींवर, libjpeg-turbo सामान्यतः libjpeg पेक्षा 2-6 पट वेगवान असते, बाकी सर्व समान असतात. इतर प्रकारच्या सिस्टीमवर, libjpeg-turbo अजूनही libjpeg ला लक्षणीय प्रमाणात मागे टाकू शकते, त्याच्या उच्च ऑप्टिमाइझ केलेल्या हफमन कोडिंग दिनचर्यामुळे. बर्याच प्रकरणांमध्ये, libjpeg-turbo चे कार्यप्रदर्शन मालकीच्या हाय-स्पीड JPEG कोडेक्सच्या प्रतिस्पर्धी आहे.
libjpeg-turbo पारंपारिक libjpeg API आणि कमी शक्तिशाली परंतु सोपे TurboJPEG API दोन्ही लागू करते. libjpeg-turbo मध्ये कलर स्पेस एक्स्टेंशन देखील आहेत जे त्यास 32-बिट आणि बिग-एंडियन पिक्सेल बफर (RGBX, XBGR, इ.), तसेच पूर्ण-वैशिष्ट्यीकृत Java इंटरफेसवर संकुचित/डीकंप्रेस करण्यास अनुमती देतात.
libjpeg-turbo क्लासिक libjpeg लायब्ररीचा API/ABI सुसंगत फोर्क आहे, ज्यांचे लक्ष्य सर्वात जलद एन्कोडिंग आणि डीकोडिंग गती प्रदान करणे आहे. मानक libjpeg API व्यतिरिक्त, लायब्ररी स्वतःचे TurboJPEG API आणि रंग प्रस्तुतीकरण मॉडेलसह अनेक विस्तार प्रदान करते जे 32-बिट पिक्सेल बफर (RGBX, XBGR) मध्ये प्रतिमा संकुचित किंवा डीकोड करण्यास अनुमती देते.
इतर आर्किटेक्चरवर, वेग तितका लक्षणीय नाही, परंतु ऑप्टिमाइझ केलेल्या हफमन कोडिंग फंक्शन्सच्या वापरामुळे, लायब्ररी अजूनही लक्षणीय वेगवान आहे libjpeg पेक्षा आणि उच्च-गुणवत्तेच्या मालकीच्या JPEG कोडेक्सच्या कार्यक्षमतेच्या दृष्टीने जवळ येते.
उल्लेखनीय आहे की अलीकडेचibjpeg-turbo ला त्याची नवीन शाखा 3.0 प्राप्त झाली आणि मुख्य नवकल्पना जे या नवीन आवृत्तीमधून वेगळे व्हा, खालील उल्लेख आहेत:
- 4:1:1 कलर सबसॅम्पलिंगसाठी समर्थन जोडले, तुम्हाला 4:1:1 सबसॅम्पल्ड JPEG इमेजेस क्वालिटी हानी न करता रूपांतरित, क्रॉप आणि फिरवता येतात, तसेच डीकॉम्प्रेस करून त्यांना YUV कलर मॉडेलमध्ये रूपांतरित करता येते.
- इष्टतम हफमन सारण्यांची लक्षणीय प्रवेगक गणना. लहान प्रतिमांसाठी (256×256), बदलामुळे कम्प्रेशन वेळ दोन वेळा कमी केला जाऊ शकतो.
- 12-बिट-प्रति-चॅनेल रंग प्रतिनिधित्वासह JPEG प्रतिमांसाठी अंकगणित एन्ट्रॉपी कोडिंग लागू करण्याची क्षमता जोडली.
- विद्यमान मर्यादा काढून टाकण्यासाठी आणि विस्तारक्षमता वाढवण्यासाठी TurboJPEG API लक्षणीयरीत्या पुन्हा डिझाइन केले गेले आहे. उदाहरणार्थ, सर्व C फंक्शन्स आता "tj3" सह उपसर्ग आहेत.
- अनेक ध्वज आणि मोड फंक्शन आर्ग्युमेंट्समधून सामान्य API पॅरामीटर्समध्ये रूपांतरित केले गेले आहेत.
- हानीकारक आणि दोषरहित मोडमध्ये प्रति चॅनेल 12 आणि 16 बिट्स रंग असलेल्या प्रतिमांसाठी समर्थन.
- लॉसलेस JPEG फाइल मोड जोडला गेला आहे, जो प्रति चॅनेल 8, 12 आणि 16 बिट्स कलर असलेल्या प्रतिमांसाठी उपलब्ध आहे. नवीन फंक्शन jpeg_enable_lossless() आणि कमांड लाइन पर्याय "-Lossless" जोडले.
- Java TurboJPEG API मधील नापसंत फील्ड, कन्स्ट्रक्टर आणि पद्धती काढून टाकल्या.
शेवटी, हे नमूद केले पाहिजे की भविष्यात, libjpeg-turbo चे लेखक प्रकल्पावरील कार्य केवळ दोष निराकरणासह अद्यतने जारी करण्यापुरते मर्यादित ठेवू इच्छित आहेत. प्रकल्पासाठी निधी प्राप्त होईपर्यंत नवीन आवृत्ती 3.1 चा विकास सुरू होणार नाही.
साठी कोडमध्ये स्वारस्य आहे तुम्हाला हे माहित असले पाहिजे की ते तीन BSD IJG प्रकारच्या परवान्यांतर्गत वितरीत केले जाते, BSD आणि zlib द्वारे सुधारित केले जाते आणि Linux, macOS आणि Windows साठी तयार बायनरी ऑफर केल्या जातात. तुम्ही तपशील तपासू शकता, तसेच बायनरी मिळवू शकता खालील दुवा.