ڈکشنری

انکوڈنگ عمل کیا ہوتا ہے؟

Encoding Process اس طریقے کا نام ہے جو ایک JPEG فائل اپنی تصویر کے ڈیٹا کو کمپریس کرنے کے لیے استعمال کرتی ہے، جیسے baseline یا progressive۔ یہ تصویر کے ڈیٹا ہی سے پڑھا جاتا ہے۔

encoding-process

انکوڈنگ پراسس وہ طریقہ ہے جو کسی تصویر کو کمپریسڈ امیج ڈیٹا میں بدلتا ہے۔ میٹا ڈیٹا رپورٹ میں، Encoding Process اس طریقے کا نام ہوتا ہے جو کسی JPG فائل نے استعمال کیا ہو، مثال کے طور پر Baseline DCT, Huffman coding۔

ویلیو کے 2 حصے ہوتے ہیں۔ پہلا حصہ بتاتا ہے کہ تصویر کا ڈیٹا کیسے کمپریس کیا گیا۔ دوسرا حصہ بتاتا ہے کہ نتیجہ بٹس میں کیسے پیک کیا گیا۔

کون سی فائلیں اسے رکھتی ہیں

Encoding Process ایک JPEG فیلڈ ہے، اور ہر JPEG تصویر میں یہ موجود ہوتا ہے۔ JPEG اسٹینڈرڈ یہ معلومات مختصر ہیڈر میں رکھتا ہے جو کمپریسڈ تصویر کے ڈیٹا سے پہلے آتا ہے۔

قدر کہاں سے آتی ہے

کوئی کیمرا یا پروگرام Encoding Process کو الگ ٹیگ کے طور پر نہیں لکھتا۔ ExifTool جیسے ریڈر Start of Frame مارکر سے، جو اس ہیڈر کو کھولتا ہے، ویلیو کا اندازہ لگاتے ہیں۔ JPEG اسٹینڈرڈ ہر انکوڈنگ پراسس کے لیے الگ مارکر متعین کرتا ہے۔

یہی ہیڈر تصویر کی چوڑائی اور اونچائی، بِٹس فی سیمپل اور کلر کمپوننٹس کی تعداد بھی محفوظ کرتا ہے۔ ExifTool اسی ہیڈر سے کرومہ سب سیمپلنگ بھی معلوم کرتا ہے۔

چونکہ ویلیو بتاتی ہے کہ امیج ڈیٹا کیسے محفوظ کیا گیا ہے، آپ اسے عام ٹیگ کی طرح ایڈٹ نہیں کر سکتے۔ Encoding Process صرف تب بدلتا ہے جب کوئی پروگرام تصویر کو دوبارہ دوسرے سیٹنگز کے ساتھ سیو کرے۔

قدریں کیسی نظر آتی ہیں

ExifTool 13 میں سے کوئی ایک ویلیو دکھاتا ہے۔ لائبریری آف کانگریس کے مطابق سب سے عام ویلیوز baseline اور progressive ہیں۔

  • Baseline DCT, Huffman coding
  • Extended sequential DCT, Huffman coding
  • Progressive DCT, Huffman coding
  • Lossless, Huffman coding
  • Sequential DCT, differential Huffman coding
  • Progressive DCT, differential Huffman coding
  • Lossless, Differential Huffman coding
  • Extended sequential DCT, arithmetic coding
  • Progressive DCT, arithmetic coding
  • Lossless, arithmetic coding
  • Sequential DCT, differential arithmetic coding
  • Progressive DCT, differential arithmetic coding
  • Lossless, differential arithmetic coding

قدر کے ہر حصے کا کیا مطلب ہے

  • DCT سے مراد discrete cosine transform ہے۔ DCT پر مبنی JPEG پراسسز lossy ہوتے ہیں: یہ فائل کو چھوٹا کرنے کے لیے کچھ تفصیل ختم کر دیتے ہیں۔
  • Baseline بنیادی DCT پراسس ہے۔ یہ 8 بِٹس فی سیمپل اور Huffman coding استعمال کرتا ہے۔
  • Sequential کا مطلب ہے کہ ہر کلر کمپوننٹ ایک ہی scan میں محفوظ ہوتا ہے۔
  • Extended sequential baseline کی طرح کام کرتا ہے، لیکن یہ 12 بِٹس فی سیمپل اور arithmetic coding بھی اجازت دیتا ہے۔
  • Progressive تصویر کو کئی scans میں محفوظ کرتا ہے۔ ہر scan عموماً کوالٹی بہتر کرتا ہے، اس لیے ویور پہلے دھندلی تصویر دکھا سکتا ہے اور پھر اسے آہستہ آہستہ واضح کر سکتا ہے۔
  • Lossless DCT استعمال نہیں کرتا۔ ڈی کوڈ ہونے والی تصویر اصل کے بالکل یکساں ہوتی ہے۔
  • differential hierarchical موڈ سے تعلق رکھتا ہے۔ اس میں ہر اگلا فریم صرف پچھلے فریم سے فرق محفوظ کرتا ہے۔
  • Huffman coding اور arithmetic coding ڈیٹا کو کم بٹس میں پیک کرنے کے 2 lossless طریقے ہیں۔

آپ کی فائل کے لیے یہ کیوں اہم ہے

JPEG اسٹینڈرڈ ہر پروگرام کو ہر پراسس سپورٹ کرنے کا پابند نہیں کرتا۔ ہر DCT decoder کے لیے baseline سپورٹ کرنا ضروری ہے، اس لیے baseline فائل تب محفوظ انتخاب ہے جب تصویر کو ہر جگہ کھلنا ہو۔

دیگر پراسس کچھ پروگراموں میں کھلنے میں ناکام ہو سکتے ہیں۔ لائبریری آف کانگریس کے مطابق اصل lossless پراسس ایپلیکیشنز میں وسیع پیمانے پر سپورٹ نہیں ہوا تھا۔ Huffman coding والا ایک lossless ویریئنٹ Adobe DNG را فارمیٹ کے ورژن 1.1 میں استعمال ہوتا ہے۔

DCT والی ویلیو یہ بتاتی ہے کہ تصویر کو محفوظ کرتے وقت کچھ تفصیل ختم کر دی گئی تھی۔ فائل کو دوبارہ سیو کرنے سے وہ تفصیل واپس نہیں آتی۔ یہ فیلڈ صرف بتاتا ہے کہ تصویر کیسے محفوظ ہے اور اس میں کوئی ذاتی معلومات نہیں ہوتی۔

میٹا کیز