HEIC کیا ہے، اور آپ اسے رکھیں یا JPEG؟
میرا فون .heic فائلیں محفوظ کرتا ہے اور میرے لیپ ٹاپ پر کوئی چیز انہیں نہیں کھولتی۔ یہ ہیں کیا، اور کیا مجھے ان کی ضرورت ہے؟
HEIC کس کا مخفف ہے
HEIC عام طور پر High Efficiency Image Container کا مخفف سمجھا جاتا ہے۔ .heic ایکسٹینشن HEIF خاندان کی امیج فائل کی نشاندہی کرتی ہے، جس میں پکسل عموماً HEVC سے اینکوڈ ہوتے ہیں۔ روزمرہ گفتگو میں لوگ HEIC کہتے ہیں تو مراد iPhone کی تصویر والی فائل ہوتی ہے، حالانکہ کنٹینر کا معیار HEIF ہے اور اس کے اندر کمپریشن کا کوڈیک عموماً HEVC ہوتا ہے۔
یہی فرق واضح کرتا ہے کہ .heic کو .jpg کر دینے سے تصویر تبدیل کیوں نہیں ہوتی۔ فائل ایکسٹینشن محض ایک لیبل ہے؛ سافٹ ویئر کو اندر پھر بھی HEIF کی ساخت اور HEVC سے کمپریس شدہ امیج ڈیٹا ملتا ہے۔ اصل کنورژن کے لیے اُن پکسلوں کو ڈی کوڈ کر کے ایک نئی JPEG، PNG یا WebP فائل اینکوڈ کرنا ضروری ہے۔
HEIC کنٹینر ہے، کوڈیک نہیں
.heic فائل دراصل HEIF فائل ہے: High Efficiency Image File Format، جو ISO/IEC 23008-12 کے طور پر معیاری بنایا گیا ہے۔ HEIF ایک کنٹینر ہے جو اُسی ISO base media فائل ساخت پر بنا ہے جو MP4 استعمال کرتی ہے۔ یہ بتاتا ہے کہ تصاویر، تھمب نیل، ڈیپتھ میپ، امیج سیکوئنس اور میٹا ڈیٹا فائل کے اندر کیسے ترتیب پائیں — یہ نہیں بتاتا کہ پکسل کیسے کوڈ ہوں۔
iPhone جو فائلیں بناتا ہے، ان میں پکسل HEVC سے کوڈ ہوتے ہیں، جسے H.265 بھی کہا جاتا ہے — وہ ویڈیو کوڈیک جو ITU-T H.265 کے طور پر معیاری بنایا گیا۔ فارمیٹ کے فائدے بھی یہیں سے نکلتے ہیں اور مسائل بھی: آپ عملاً ایک تصویر کو کسی جدید ویڈیو کوڈیک کے ایک فریم کے طور پر محفوظ کر رہے ہوتے ہیں۔
فون نے یہ کیوں چنا
HEVC کے پاس انٹرا فریم پریڈکشن کے ایسے اوزار ہیں جو JPEG کے 1992 والے ڈیزائن میں نہیں، اس لیے یکساں بصری کوالٹی کے لیے اسے عموماً کم بٹ درکار ہوتے ہیں۔ فون پر اسٹوریج محدود ہے اور تصویروں کی لائبریریاں نہیں، اس لیے یہ بچت ڈیوائس بنانے والے کے لیے حقیقی پیسے کے برابر ہے۔ کنٹینر یہ سہولت بھی دیتا ہے کہ ایک ہی فائل کئی متعلقہ تصاویر رکھ لے — برسٹ کے فریم، Live Photo کی ساکت تصویر اور اس کی مختصر کلپ، الفا یا ڈیپتھ چینل — بجائے اس کے کہ وہ سب ایک فولڈر میں بکھری پڑی ہوں۔
ایک دوسرا فائدہ بھی ہے جو کچھ لوگوں کے لیے حجم سے زیادہ اہم ہے: HEIF فی چینل 8 بٹ سے زیادہ سنبھال سکتا ہے۔ 10-bit تصویر میں گریڈینٹس کے لیے کہیں زیادہ گنجائش ہوتی ہے، اسی لیے آسمان اور جِلد کے رنگ ترمیم کے بعد 8-bit JPEG کے مقابلے میں بہتر حالت میں رہتے ہیں۔
آپ کا دوسرا سافٹ ویئر اسے کھولنے سے کیوں انکار کرتا ہے
HEVC ایک پیٹنٹ شدہ کوڈیک ہے جس کے ڈی کوڈرز پر لائسنسنگ کی ذمہ داریاں عائد ہوتی ہیں۔ یہ قانونی اور کاروباری حقیقت ہے، تکنیکی نہیں، اور سپورٹ کے ناہموار ہونے کی بنیادی وجہ یہی ہے: کچھ آپریٹنگ سسٹم ڈی کوڈر کے ساتھ آتے ہیں، کچھ صرف تب دیتے ہیں جب ہارڈویئر ڈی کوڈر موجود ہو، اور کچھ براؤزر HEIC ڈی کوڈ کرتے ہیں جبکہ باقی نہیں کرتے۔ جو فائل اُسی فون پر فوراً کھل جاتی ہے جس نے اسے لیا، وہ تین میٹر دور پڑی مشین پر ناقابلِ مطالعہ ہو سکتی ہے۔
اسی لیے FileSlimmer، HEIC کو ڈی کوڈ تو کرتا ہے مگر لکھتا کبھی نہیں۔ کنورژن آپ کے براؤزر میں چلتا ہے — جہاں پلیٹ فارم کا ڈی کوڈر موجود ہو وہاں اسے استعمال کرتے ہوئے، اور جہاں نہ ہو وہاں خود میزبانی کیے گئے WebAssembly ڈی کوڈر سے — اور آؤٹ پٹ JPEG، PNG یا WebP ہوتا ہے، یعنی وہ فارمیٹس جنہیں وصول کرنے والا سافٹ ویئر واقعی کھول لے گا۔
HEIC بمقابلہ JPEG، ایمانداری سے
| خصوصیت | HEIC، یعنی HEVC کے ساتھ HEIF | JPEG |
|---|---|---|
| ملتی جلتی کوالٹی پر حجم | عموماً چھوٹا | عموماً بڑا |
| بٹ ڈیپتھ | فی چینل 8 یا 10 بٹ | فی چینل 8 بٹ |
| شفافیت | سپورٹ ہے | سپورٹ نہیں |
| ایک فائل میں کئی تصاویر | سپورٹ ہے | سپورٹ نہیں |
| غیر مانوس سافٹ ویئر پر کھلنا | اکثر نہیں | تقریباً ہمیشہ |
| لائسنسنگ | پیٹنٹ شدہ کوڈیک | عملاً پابندیوں سے آزاد |
HEIC فائل کیا کچھ چھپائے بیٹھی ہو سکتی ہے
چونکہ کنٹینر ایک پورا مجموعہ رکھ سکتا ہے، اس لیے ایک ہی .heic میں اُس تصویر سے زیادہ کچھ ہو سکتا ہے جو آپ کو نظر آتی ہے۔ Live Photo ساکت تصویر کے ساتھ ایک مختصر امیج سیکوئنس بھی لیے پھرتی ہے۔ پورٹریٹ شاٹ میں ڈیپتھ میپ ہو سکتا ہے۔ برسٹ میں کئی فریم ہو سکتے ہیں جن میں سے ایک بنیادی کے طور پر نشان زد ہوتا ہے۔ JPEG میں تبدیل کرنے سے ایک ہی چپٹی تصویر بنتی ہے، اس لیے کنٹینر بنیادی تصویر کے ساتھ جو کچھ بھی اٹھائے ہوئے تھا وہ آؤٹ پٹ میں موجود نہیں ہوتا۔
رخ الگ سے ذکر کے قابل ہے۔ HEIC گھماؤ کو میٹا ڈیٹا کے طور پر درج کرتا ہے، بالکل ویسے ہی جیسے JPEG کرتی ہے۔ جو کنورٹر اسے نظر انداز کر دے وہ ترچھی تصویریں بناتا ہے۔ FileSlimmer کنورژن کے دوران درج شدہ رخ کو پکسلوں پر لاگو کرتا ہے، تاکہ JPEG ویسی ہی لگے جیسی فون نے دکھائی تھی۔
تو آپ کون سی نقل رکھیں؟
- اگر آپ ایسے ماحول میں رہتے ہیں جو HEIC پڑھ لیتا ہے اور آپ کو چھوٹی لائبریری اور اضافی بٹ ڈیپتھ کی قدر ہے، تو HEIC ہی کو اپنی اصل نقل کے طور پر رکھیں۔
- جو کچھ باہر بھیجنا ہو اُس کے لیے JPEG میں تبدیل کریں: اپ لوڈ فارم، پرنٹ سروس، ای میل کا منسلکہ، نامعلوم سافٹ ویئر والا کوئی ساتھی۔
- PNG میں صرف تب تبدیل کریں جب آپ کو ترمیم کے لیے لاس لیس آؤٹ پٹ درکار ہو؛ فائل باقی دونوں سے کہیں بڑی ہوگی۔
- اگر HEIC ہی آپ کی واحد اصل تھی تو اسے JPEG میں بدل کر HEIC حذف نہ کریں۔ یہ کنورژن پہلے سے لاسی تصویر کا ایک اور لاسی اینکوڈ ہے۔
تبدیل کرنے سے پہلے جاننے کے قابل حدیں
تبدیل کرنا ایک دوسرا لاسی مرحلہ ہے، اس لیے اونچی سیٹنگ پر بھی تھوڑی سی کوالٹی ضائع ہوتی ہے۔ اگر کوئی براؤزر HEVC کو سرے سے ڈی کوڈ نہ کر سکے، اور خود میزبانی کیا گیا متبادل ڈی کوڈر کسی خاص قسم کو نہ سنبھال پائے — کوئی غیر معمولی پروفائل، خراب فائل، یا اُسی کنٹینر کے اندر HEVC کے علاوہ کوئی اور کوڈیک — تو کنورژن غلط چیز بنانے کے بجائے ناکام ہو جاتا ہے۔ FileSlimmer بتا دیتا ہے کہ کون سی فائل اور کیوں ناکام ہوئی، اور اصل فائل کو ہاتھ نہیں لگاتا۔
اگر آپ یہ جھنجھٹ جڑ ہی سے ختم کرنا چاہتے ہیں تو زیادہ تر فون کیمروں میں مطابقت کی ایک سیٹنگ ہوتی ہے جو تصویر کھینچنا واپس JPEG پر لے آتی ہے۔ آپ اسٹوریج دے کر یہ سہولت خرید لیتے ہیں کہ فائل کسی کو بھی تھمائی جا سکے۔
اس کام کے ٹولز
مآخذ
- ISO/IEC 23008-12 — High Efficiency Image File Format
- ITU-T H.265 — High Efficiency Video Coding
- Nokia Technologies — HEIF technical overview