ویڈیو انکوڈنگ ڈیجیٹل ویڈیو سگنل کو کم سے کم معیار کے نقصان کے ساتھ ذخیرہ کرنے اور نیٹ ورک پر منتقل کرنے کے لیے موزوں فارمیٹ میں کمپریس کرنے کا عمل ہے۔ انکوڈنگ کے بغیر، ایک منٹ کی غیر کمپریسڈ 4K ویڈیو تقریباً 30 GB لیتی ہے، جس سے انٹرنیٹ پر ترسیل ناممکن ہو جاتی ہے۔ Sandvine Global Internet Phenomena (2025) رپورٹ کے مطابق، ویڈیو کل انٹرنیٹ ٹریفک کا 65% ہے، اور انکوڈنگ وہ کلیدی ٹیکنالوجی ہے جو اسے ممکن بناتی ہے۔
اہم نکات
ویڈیو انکوڈنگ کمپریشن الگورتھم استعمال کرکے غیر کمپریسڈ ویڈیو سگنل کو ڈیجیٹل فارمیٹ میں تبدیل کرنے کا عمل ہے۔ ویڈیو کوڈیک میں لاگو کیے گئے یہ الگورتھم، مقامی ڈومین (ایک فریم کے اندر) اور وقتی ڈومین (لگاتار فریموں کے درمیان) دونوں میں فاضل معلومات کو ہٹاتے ہیں۔
غیر کمپریسڈ ویڈیو فریموں کا ایک سلسلہ ہے، ہر ایک RGB یا YUV فارمیٹ میں پکسلز کی ایک صف کے طور پر محفوظ ہوتا ہے۔ کمپریشن کے بغیر، 30 FPS پر 1080p ویڈیو کے ایک سیکنڈ کے لیے تقریباً 1.5 GB میموری درکار ہوتی ہے۔ H.264 کوڈیک اس اسٹریم کو 3–5 Mbps تک کمپریس کرتا ہے، جو اصل سائز سے 2500 گنا کم ہے۔
ویڈیو کوڈیک دو قسم کے کمپریشن استعمال کرتے ہیں: انٹرا فریم اور انٹر فریم۔ انٹرا فریم کمپریشن ہر فریم پر آزادانہ طور پر لاگو ہوتا ہے، JPEG جیسے الگورتھم استعمال کرتا ہے: ڈسکریٹ کوزائن ٹرانسفارم (DCT)، کوانٹائزیشن اور اینٹروپی کوڈنگ۔
انٹر فریم کمپریشن لگاتار فریموں کے درمیان فرق کا تجزیہ کرتا ہے اور صرف تبدیلیوں کو انکوڈ کرتا ہے۔ اگر پس منظر مستحکم ہے، تو کوڈیک صرف ایک بار مکمل فریم (I-frame) بھیجتا ہے، اور پھر صرف فرق (P- اور B-frames) بھیجتا ہے، جو کم حرکت والے مناظر کے لیے ڈیٹا کے حجم کو نمایاں طور پر کم کرتا ہے۔
ویڈیو کوڈیک کا انتخاب معیار سے سائز کے تناسب، ڈیوائس کی مطابقت اور لائسنسنگ فیس کا تعین کرتا ہے۔ چار اہم کوڈیک موبائل ایپلیکیشن مارکیٹ پر حاوی ہیں: H.264 (AVC)، H.265 (HEVC)، VP9 اور AV1۔
| کوڈیک | معیار | سال | H.264 کے مقابلے میں کمپریشن | لائسنسنگ |
|---|---|---|---|---|
| H.264/AVC | MPEG-4 Part 10 | 2003 | 1x (بنیادی) | رائلٹی (MPEG LA) |
| H.265/HEVC | MPEG-H Part 2 | 2013 | 40–50% زیادہ کارآمد | رائلٹی (دو پول) |
| VP9 | 2013 | 30–40% زیادہ کارآمد | مفت | |
| AV1 | AOM | 2018 | 50–60% زیادہ کارآمد | رائلٹی سے پاک |
H.264 (AVC — Advanced Video Coding) سب سے زیادہ مطابقت رکھنے والا ویڈیو کوڈیک ہے: یہ 2005 سے تمام موبائل ڈیوائسز، براؤزرز اور سمارٹ TV کے ذریعے تعاون یافتہ ہے۔ ہارڈویئر سے تیز کردہ H.264 ڈی کوڈنگ بجٹ ڈیوائسز پر بھی دستیاب ہے، جو اسے عالمگیر اسٹریم کے لیے مثالی بناتا ہے۔
H.264 کا بنیادی نقصان جدید کوڈیک کے مقابلے میں نسبتاً کم کمپریشن کارکردگی ہے۔ اسی بٹ ریٹ پر، H.265 اور AV1 نمایاں طور پر زیادہ معیار فراہم کرتے ہیں، جو خاص طور پر HDR اور 4K مواد کے لیے اہم ہے۔
H.265 (HEVC — High Efficiency Video Coding) اسی بصری معیار پر H.264 کے مقابلے میں 40–50% بہتر کمپریشن فراہم کرتا ہے۔ یہ فریم کو بلاکس میں زیادہ لچکدار تقسیم (16×16 کے بجائے 64×64 پکسلز تک CTU) اور بہتر حرکت کی پیش گوئی الگورتھم کے ذریعے حاصل کیا جاتا ہے۔
HEVC تمام Apple ڈیوائسز (iPhone 6 سے شروع)، Android (ہارڈویئر ڈی کوڈنگ کے ساتھ ورژن 5.0 سے) اور زیادہ تر سمارٹ TV پر تعاون یافتہ ہے۔ HEVC لائسنسنگ فیس H.264 سے زیادہ ہے اور دو پیٹنٹ پول کے ذریعے منظم کی جاتی ہے، جو قانونی استعمال کو پیچیدہ بناتی ہے۔
AV1 Alliance for Open Media (AOM) کے ذریعے تیار کردہ ایک ویڈیو کوڈیک ہے، جو Google, Netflix, Amazon, Intel اور Mozilla کی قیادت میں ایک کنسورشیم ہے۔ AV1 H.264 کے مقابلے میں 50–60% بہتر کمپریشن فراہم کرتا ہے اور مکمل طور پر رائلٹی سے پاک ہے، جو اسے اسٹریمنگ سروسز کے لیے پرکشش بناتا ہے۔
AV1 کا بنیادی نقصان انکوڈنگ کی اعلیٰ حسابی پیچیدگی ہے۔ AV1 انکوڈنگ اسی ہارڈویئر پر H.264 کے مقابلے میں 5–10 گنا سست ہو سکتی ہے، حالانکہ ہارڈویئر ڈی کوڈنگ 2024–2025 کی ڈیوائسز (Snapdragon 8 Gen 3, Apple A17 Pro) پر پہلے سے ظاہر ہو رہی ہے۔
موبائل ایپلیکیشنز میں آڈیو کوڈیک ویڈیو کوڈیک سے کم اہم نہیں ہیں۔ اسٹریمنگ ویڈیو کے لیے کم سے کم تاخیر، اعلیٰ معیار اور MP4 اور WebM کنٹینرز کے ساتھ مطابقت رکھنے والی آڈیو درکار ہے۔ تین اہم آڈیو کوڈیک 99% موبائل اسٹریمنگ ایپلیکیشنز کو کور کرتے ہیں۔
AAC (Advanced Audio Coding) MP3 کا جانشین ہے، جسے 1997 میں MPEG نے تیار کیا اور iTunes، YouTube اور Android کے لیے معیاری آڈیو کوڈیک بن گیا۔ AAC 30% کم بٹ ریٹ پر MP3 جیسا معیار فراہم کرتا ہے اور 7.1 تک ملٹی چینل آڈیو کو سپورٹ کرتا ہے۔
موبائل ایپلیکیشنز کے لیے، سٹیریو کے لیے 128–192 kbps پر AAC-LC اور کم بٹ ریٹ 32–64 kbps کے لیے AAC-HE تجویز کیا جاتا ہے۔ ہارڈویئر AAC ڈی کوڈنگ تمام جدید ڈیوائسز پر دستیاب ہے، جو بجلی کی کھپت کو کم سے کم کرتی ہے۔
Opus IETF (RFC 6716) کا ایک اوپن آڈیو کوڈیک ہے، جو 6 سے 510 kbps تک کے بٹ ریٹ پر تمام آڈیو کوڈیک کے درمیان بہترین معیار فراہم کرتا ہے۔ Opus SILK (تقریر کے لیے الگورتھم) اور CELT (موسیقی کے لیے) کو یکجا کرتا ہے اور مواد کے لحاظ سے خود بخود موڈ تبدیل کرتا ہے۔
Opus WebRTC میں ویڈیو کالز کے لیے، Spotify اور Discord ایپلیکیشنز میں استعمال ہوتا ہے، اور iOS 11 اور Android 5.0 سے HLS میں تعاون یافتہ ہے۔ Opus کی کم تاخیر (AAC کے 40–100 ms کے مقابلے میں 5–26 ms) اسے لائیو نشریات اور ویڈیو کانفرنسنگ کے لیے ترجیحی انتخاب بناتی ہے۔
انکوڈنگ پیرامیٹرز حتمی فائل سائز، ویڈیو کوالٹی اور ڈیوائس مطابقت کا تعین کرتے ہیں۔ موبائل ایپلیکیشن ڈویلپر کو ہر قسم کے مواد کے لیے بہترین سیٹنگز منتخب کرنی چاہیے: فلمیں، کھیلوں کی نشریات، صارف کا تیار کردہ مواد۔
بٹ ریٹ ویڈیو کے ایک سیکنڈ کو انکوڈ کرنے کے لیے استعمال ہونے والے بٹس کی تعداد ہے۔ لائیو نشریات کے لیے CBR (مستقل بٹ ریٹ)، آرکائیو اسٹوریج کے لیے ہدف معیار کے ساتھ VBR (متغیر بٹ ریٹ) اور اسٹریمنگ کے لیے ABR (اوسط بٹ ریٹ) ہوتے ہیں۔
| ریزولوشن | H.264 (تجویز کردہ) | H.265/HEVC | AV1 |
|---|---|---|---|
| 360p | 400–800 kbps | 250–500 kbps | 200–400 kbps |
| 720p | 1.5–4 Mbps | 1–2.5 Mbps | 0.8–2 Mbps |
| 1080p | 3–8 Mbps | 2–5 Mbps | 1.5–4 Mbps |
| 4K (2160p) | 15–40 Mbps | 10–25 Mbps | 8–20 Mbps |
CRF (Constant Rate Factor) x264 اور x265 میں ایک انکوڈنگ پیرامیٹر ہے جو مقررہ بٹ ریٹ کے بجائے ہدف معیار متعین کرتا ہے۔ CRF پیمانہ 0 (بے نقصان) سے 51 (بدترین معیار) تک ہوتا ہے، جس میں 18–28 کام کرنے کی حد ہے۔ موبائل ایپلیکیشنز کے لیے، x264 کے لیے CRF 23 اور x265 کے لیے CRF 25 تجویز کیا جاتا ہے۔
CRF 18–20 پریزنٹیشن مواد اور آف لائن دیکھنے کے لیے اعلیٰ معیار فراہم کرتا ہے۔ CRF 24–28 اسٹریمنگ اور صارف کے تیار کردہ مواد کے لیے موزوں ہے، جہاں فائل کا سائز مطلق معیار سے زیادہ اہم ہوتا ہے۔
H.264 معیار پروفائلز (Baseline, Main, High) اور لیولز (Level 1–5.2) کی وضاحت کرتا ہے جو زیادہ سے زیادہ ویڈیو پیرامیٹرز کو محدود کرتے ہیں۔ Baseline Profile تمام ڈیوائسز کے ساتھ مطابقت رکھتا ہے لیکن B-frames کو سپورٹ نہیں کرتا۔ High Profile زیادہ سے زیادہ معیار فراہم کرتا ہے اور 1080p مواد کے لیے استعمال ہوتا ہے۔
4K اسٹریمنگ کے لیے، Level 5.1 اور اس سے اوپر درکار ہے، جو 2018 سے زیادہ تر موبائل ڈیوائسز کے ذریعے تعاون یافتہ ہے۔ کوڈیک لیول زیادہ سے زیادہ ریزولوشن، بٹ ریٹ اور بفر سائز کا تعین کرتا ہے، تمام تصدیق شدہ ڈیوائسز پر درست ڈی کوڈنگ کو یقینی بناتا ہے۔
اسٹریمنگ کے لیے انکوڈنگ آرکائیو انکوڈنگ سے مختلف ہے کیونکہ اس میں متعدد معیار کی مختلف حالتیں (ABR ladder) بنانے اور نیٹ ورک ٹرانسمیشن کے لیے اصلاح کی ضرورت ہوتی ہے۔ مواد فراہم کرنے والے VOD کے لیے ریئل ٹائم ٹرانسکوڈنگ یا پری انکوڈنگ استعمال کرتے ہیں۔
موبائل ایپلیکیشنز کے لیے ایک عام ABR میں 4–6 مختلف حالتیں شامل ہیں: کمزور نیٹ ورکس کے لیے 144p (200 kbps) سے Wi-Fi کے لیے 1080p (8 Mbps) تک۔ تجویز کردہ ریزولوشنز: 144p, 240p, 360p, 480p, 720p, 1080p۔ 4K مواد کے لیے، 1440p اور 2160p شامل کیے جاتے ہیں۔
val mediaCodec = MediaCodec.createEncoderByType(
MediaFormat.MIMETYPE_VIDEO_AVC
)
val format = MediaFormat.createVideoFormat(
MediaFormat.MIMETYPE_VIDEO_AVC,
1280, 720
).apply {
setInteger(MediaFormat.KEY_BIT_RATE, 3_000_000)
setInteger(MediaFormat.KEY_FRAME_RATE, 30)
setInteger(MediaFormat.KEY_I_FRAME_INTERVAL, 2)
setInteger(MediaFormat.KEY_PROFILE,
MediaCodecInfo.CodecProfileLevel.AVCProfileHigh)
setInteger(MediaFormat.KEY_LEVEL,
MediaCodecInfo.CodecProfileLevel.AVCLevel31)
}
mediaCodec.configure(format, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE)
لائیو نشریات کے لیے، کم تاخیر خاص طور پر اہم ہے۔ انکوڈنگ سیٹنگز کو کوڈیک ان پٹ/آؤٹ پٹ تاخیر کو کم سے کم کرنا چاہیے: 1–2 سیکنڈ کا GOP سائز (ہر 30–60 فریم) تجویز کیا جاتا ہے، B-frames غیر فعال یا کم سے کم ہونے چاہئیں، اور H.264 کے لیے Baseline Profile استعمال کیا جاتا ہے۔
جدید کم تاخیری پروٹوکول — LL-HLS اور CMAF-Low Latency — 1–2 سیکنڈ کے سیگمنٹس اور جزوی ڈاؤن لوڈ (Partial Segments) کی حمایت کے ساتھ ٹکڑوں میں انکوڈنگ کی ضرورت ہوتی ہے۔ کوڈیک کو ٹکڑوں والے MP4 کے لیے ہر سیگمنٹ میں moof-box کو سپورٹ کرنا چاہیے۔
اکثر پوچھے گئے سوالات
ویڈیو انکوڈنگ ڈیٹا کے حجم کو کم کرنے کے لیے کوڈیک استعمال کرکے ڈیجیٹل ویڈیو سگنل کو کمپریس کرنے کا عمل ہے۔ موبائل ایپلیکیشنز میں، انکوڈنگ ویڈیو کو منتقل اور ذخیرہ کرنے کی اجازت دیتی ہے، ڈیوائس اسکرین پر نمایاں معیار کے نقصان کے بغیر سائز کو سینکڑوں گنا کم کرتی ہے۔
H.264 پرانی ڈیوائسز کے ساتھ زیادہ سے زیادہ مطابقت فراہم کرتا ہے، جبکہ H.265 اسی معیار پر 40–50% زیادہ کارآمد ہے۔ 1080p اور اس سے نیچے کے مواد کے لیے، H.264 کافی ہے؛ 4K کے لیے H.265 یا AV1 تجویز کیا جاتا ہے اگر ڈیوائس سپورٹ کرتی ہے۔
بٹ ریٹ ویڈیو کے فی سیکنڈ ڈیٹا کی مقدار ہے۔ 1080p کے لیے، H.264 کے لیے 3–8 Mbps اور H.265 کے لیے 2–5 Mbps بہترین بٹ ریٹ ہے۔ انتخاب مواد پر منحصر ہے: متحرک مناظر (کھیل) زیادہ بٹ ریٹ کی ضرورت ہوتی ہے، جامد مناظر (انٹرویو) کم بٹ ریٹ کی ضرورت ہوتی ہے۔
VP9 Google کا AV1 کا پیشرو ہے، جو H.265 کی سطح پر کمپریشن فراہم کرتا ہے۔ AV1، VP9 کے مقابلے میں 20–30% زیادہ کارآمدی سے کمپریس کرتا ہے، لیکن اسے 5–10 گنا زیادہ انکوڈنگ وسائل درکار ہوتے ہیں۔ VP9 YouTube کے لیے بہتر ہے، AV1 Netflix اور جدید اسٹریمنگ سروسز کے لیے۔
لائیو نشریات کے لیے، 1–2 سیکنڈ کے GOP، B-frames کے بغیر، 1080p کے لیے 2–4 Mbps بٹ ریٹ کے ساتھ H.264 Baseline Profile استعمال کریں۔ LL-HLS کے لیے ٹکڑوں والا MP4 (CMAF) فعال کریں اور MediaCodec یا VideoToolbox کے ذریعے ہارڈویئر انکوڈنگ استعمال کریں۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں