AVIF to JPG: वो फोटो जो आपका सॉफ्टवेयर खोलने से मना कर देता है
आपने किसी वेबसाइट से एक इमेज सेव की, और अब आपके कंप्यूटर पर कोई भी प्रोग्राम उसे खोल नहीं पा रहा। वो फाइल AVIF है। Chrome, Edge, Firefox और Safari चारों इसे बिना किसी दिक्कत के दिखाते हैं, और ज्यादातर इमेज CDN अब डिफॉल्ट में यही फॉर्मेट भेजते हैं, इसीलिए बिना मांगे भी आपके पास एक AVIF फाइल आ जाती है। दूसरी तरफ Photoshop के पुराने वर्जन, Windows का फोटो व्यूअर, प्रिंट शॉप और बहुत सारे अपलोड फॉर्म आज भी इस एक्सटेंशन को रिजेक्ट कर देते हैं, जैसे फाइल ही खराब हो। आपकी फाइल में कोई खराबी नहीं है। वो बस एक ऐसे फॉर्मेट में आई है जो आपके सॉफ्टवेयर के लिखे जाने के बाद बना।
JPG आज भी इकलौता ऐसा रास्टर फॉर्मेट है जो हर जगह चलता है, इसलिए उसमें बदलना ही सबसे छोटा रास्ता है ऐसी तस्वीर तक पहुंचने का जिसे आप ईमेल कर सकें, प्रिंट करा सकें, या ऐसे फॉर्म में अपलोड कर सकें जो आपके कंट्रोल में नहीं है। आगे ठीक वही लिखा है जो यह कन्वर्टर आपकी फाइल के साथ करता है, वो हिस्सा भी जिसे बाकी कन्वर्टर पेज बताना पसंद नहीं करते।
आपकी JPG फाइल शायद AVIF से बड़ी ही निकलेगी
बाकी हर कन्वर्टर छोटी फाइल का वादा करता है। इस खास कन्वर्जन में वो वादा गलत है, और आप खुद आसानी से जांच सकते हैं। AVIF, JPEG के मुकाबले कहीं ज्यादा एफिशिएंट कोडेक है, इसलिए वही तस्वीर JPG बनते ही ज्यादा बाइट मांगती है। नीचे 2000 x 1500 की एक फोटो है जो 138 KB की AVIF के रूप में आई थी, और जिसे हमने अपने ही सर्वर पर तीनों सेटिंग्स से गुजारा:
| सेटिंग | JPG साइज | AVIF के मुकाबले |
|---|---|---|
| Best quality | 426 KB | +207% |
| Recommended | 184 KB | +33% |
| Smallest | 87 KB | -37% |
दूसरी फाइल, 1200 x 900 की सिर्फ 21 KB वाली AVIF, उसी रास्ते गई लेकिन और तेजी से: +285%, फिर +55%, और Smallest पर भी +4%। नियम सीधा है: आपकी AVIF शुरू से जितनी अच्छी एनकोड हुई होगी, किसी भी JPG के उससे छोटा निकलने का चांस उतना ही कम है। आप यहां कम्पैटिबिलिटी के लिए कन्वर्ट कर रहे हैं, जगह बचाने के लिए नहीं। अगर असली मकसद साइज कम करना ही है, तो कन्वर्ट करने के बाद JPG को कंप्रेस कर लें, या वेब के लिए AVIF रखें और JPG सिर्फ वहां इस्तेमाल करें जहां AVIF चलती ही नहीं।
फोटो सीधी निकलती है
फोन लगभग हर तस्वीर लैंडस्केप में सेव करते हैं और साथ में EXIF के अंदर एक टैग लगा देते हैं जो बताता है कि दिखाते वक्त उसे किस तरफ घुमाना है। जो कन्वर्टर इस टैग को नजरअंदाज करता है, वो हर पोर्ट्रेट फोटो को तिरछी लिटाकर लौटा देता है। यहां वो टैग पढ़ा जाता है, एनकोडिंग से पहले पिक्सल पर सचमुच लगाया जाता है, और फिर आउटपुट से हटा दिया जाता है। दोनों काम बराबर जरूरी हैं: टैग अगर फाइल में रह जाए तो Chrome, Safari, iOS और Windows Photos पहले से ठीक हो चुकी फोटो को दोबारा घुमा देते हैं, और लोगों के पास उल्टी फोटो आ जाती है, बिना किसी वजह के।
रंग भड़कीले नहीं होते
आजकल के फोन Display P3 में शूट करते हैं, जो sRGB से चौड़ी कलर रेंज है। इस प्रोफाइल को हटा देना कुछ कन्वर्ट नहीं करता; वही नंबर वहीं रह जाते हैं, बस गलत पैमाने से पढ़े जाने लगते हैं, और हर गाढ़ा रंग जरूरत से ज्यादा गाढ़ा दिखता है: स्किन लाल पड़ जाती है, आसमान नियॉन जैसा हो जाता है। इसीलिए प्रोफाइल डिफॉल्ट रूप से JPG के अंदर ले जाया जाता है। और अगर जहां फोटो भेजनी है वहां प्रोफाइल पढ़े ही नहीं जाते, तो Colour profile सेटिंग टैग फेंकने की जगह तस्वीर को ठीक तरीके से sRGB में बदल देती है।
ट्रांसपेरेंट हिस्से में वही रंग भरता है जो आप चुनें
JPEG में अल्फा चैनल होता ही नहीं, इसलिए ट्रांसपेरेंट बैकग्राउंड में कुछ न कुछ भरना पड़ता है। लापरवाह कन्वर्टर को खाली कोनों वाला लोगो दीजिए, और वो अक्सर उसके पीछे काला डिब्बा लगाकर लौटा देता है, जो देखने में बिल्कुल खराब फाइल जैसा लगता है। यहां डिफॉल्ट सफेद है, और सेटिंग्स के बगल वाला कलर पिकर आपको कोई भी रंग चुनने देता है, स्वैच से या hex कोड से। रिजल्ट में यह भी साफ लिखा आता है कि ट्रांसपेरेंसी फ्लैट कर दी गई है, इसलिए बदला हुआ बैकग्राउंड कभी चौंकाता नहीं। अगर ट्रांसपेरेंसी भरनी नहीं, बचानी है, तो AVIF to PNG इस्तेमाल करें।
कौन सी सेटिंग चुनें
Best quality उस कॉपी के लिए है जो आर्काइव में जाएगी या प्रिंट होगी, जहां फाइल का कई गुना बड़ा हो जाना मायने नहीं रखता। Recommended हर उस चीज का सही जवाब है जो स्क्रीन पर दिखेगी, और नॉर्मल व्यूइंग साइज पर फोटो में इसका नुकसान दिखता ही नहीं। Smallest ईमेल, मैसेजिंग ऐप्स और उन सब जगहों के लिए है जहां असली अड़चन साइज लिमिट होती है। मन बदल जाए तो बिना किसी खर्च के दोबारा कन्वर्ट कर सकते हैं।
फाइल उसके नाम से नहीं, अंदर के कंटेंट से पहचानी जाती है
नाम बदलने से फाइल के अंदर का कुछ नहीं बदलता, और लोग नाम बदलते ही रहते हैं। .jpg एक्सटेंशन पहने हुई AVIF, या ऐसी .avif जिसे किसी ने ब्राउजर से किसी और नाम से सेव कर लिया हो, अपने ही बाइट्स से पहचानी जाती है और सही तरीके से कन्वर्ट होती है। ग्रेस्केल AVIF ग्रेस्केल ही रहती है। एनिमेटेड AVIF का पहला फ्रेम स्टिल इमेज के तौर पर मिलता है, और रिजल्ट में यह बात लिखी भी आती है।
बल्क कन्वर्जन में फाइल के नाम वैसे के वैसे रहते हैं
पूरा फोल्डर एक साथ कन्वर्ट कीजिए, सब कुछ एक ही ZIP में वापस आता है, हर फाइल उसी नाम से जिस नाम से आपने भेजी थी: photo.avif बन जाती है photo.jpg, और हिंदी, अरबी, चाइनीज या एक्सेंट वाले नाम भी जस के तस रहते हैं। एक फाइल न पढ़ी जा सके तो पूरा काम नहीं रुकता। वो छोड़ दी जाती है, रिजल्ट में उसका नाम और वजह लिख दी जाती है, और बाकी सब कन्वर्ट होती रहती हैं। रिजल्ट में हर फाइल का पहले और बाद का साइज अलग अलग दिखता है, एक कुल जोड़ नहीं।
आपको क्या मिलता है
- ऐसी JPG जो AVIF के आने से पहले लिखे गए सॉफ्टवेयर में भी खुल जाए
- सीधी खड़ी फोटो, और ओरिएंटेशन टैग हटा हुआ ताकि कोई ऐप उसे दोबारा न घुमाए
- वाइड गैमट रंग जस के तस, या आपके कहने पर ठीक तरीके से sRGB में बदले हुए
- ट्रांसपेरेंट हिस्सों में आपका चुना हुआ रंग, गलती से काला नहीं
- हर बार वही पिक्सल डाइमेंशन जो ओरिजिनल इमेज के थे
- बल्क कन्वर्जन एक ही ZIP में, आपके ओरिजिनल फाइल नामों के साथ
आगे क्या?
ट्रांसपेरेंट बैकग्राउंड भरना नहीं, बचाना है? AVIF to PNG में असली अल्फा चैनल है और आधी ट्रांसपेरेंसी भी वैसी ही रहती है।
JPG तो मिल गई, पर ईमेल के लिए भारी है? JPEG कंप्रेस साइज कम कर देता है, डाइमेंशन छेड़े बिना।
वही दिक्कत, फॉर्मेट अलग? HEIC to JPG इसी सिचुएशन का iPhone वाला हिस्सा संभालता है।