মোবাইল অ্যাপ্লিকেশনে ভিডিও এনকোডিং: এটি কী, কোডেক এবং প্যারামিটার

লেখক: IT Sectr প্রকাশিত: 2026-05-24 পড়ার সময়: 8 মিনিট

ভিডিও এনকোডিং হল ন্যূনতম গুণমান হ্রাসসহ সংরক্ষণ এবং নেটওয়ার্কের মাধ্যমে প্রেরণের জন্য উপযুক্ত ফরম্যাটে ডিজিটাল ভিডিও সংকেত সংকুচিত করার প্রক্রিয়া। এনকোডিং ছাড়া, এক মিনিটের অসংকুচিত 4K ভিডিও প্রায় 30 GB জায়গা নেয়, যা ইন্টারনেটের মাধ্যমে প্রেরণ অসম্ভব করে তোলে। Sandvine Global Internet Phenomena (2025) রিপোর্ট অনুসারে, ভিডিও সমস্ত ইন্টারনেট ট্রাফিকের 65% গঠন করে, এবং এনকোডিং হল মূল প্রযুক্তি যা এটি সম্ভব করে।

মূল পয়েন্ট

  • এনকোডিং — ডেটার পরিমাণ কমানোর জন্য কোডেক ব্যবহার করে ভিডিও সংকেত সংকোচন।
  • H.264 এবং H.265 কোডেক — প্রধান মান: AVC সামঞ্জস্য নিশ্চিত করে, HEVC ভালো সংকোচন প্রদান করে।
  • VP9 এবং AV1 — Google এবং Alliance for Open Media-র ওপেন কোডেক, রয়্যালটি-মুক্ত।
  • বিটরেট আকার এবং গুণমান নির্ধারণ করে: 1080p-এর জন্য 2–5 Mbps, 4K-এর জন্য 15–40 Mbps।
  • AAC এবং Opus অডিও কোডেক — কম বিলম্ব এবং উচ্চ গুণমানসম্পন্ন মোবাইল অ্যাপ্লিকেশনের জন্য মান।

ভিডিও এনকোডিং কী?

ভিডিও এনকোডিং হল সংকোচন অ্যালগরিদম ব্যবহার করে অসংকুচিত ভিডিও সংকেতকে ডিজিটাল ফরম্যাটে রূপান্তর করার প্রক্রিয়া। এই অ্যালগরিদমগুলি, ভিডিও কোডেকে বাস্তবায়িত, স্থানিক ডোমেনে (একটি ফ্রেমের ভিতরে) এবং অস্থায়ী ডোমেনে (পরপর ফ্রেমের মধ্যে) উভয় ক্ষেত্রেই অপ্রয়োজনীয় তথ্য সরিয়ে দেয়।

অসংকুচিত ভিডিও হল ফ্রেমের একটি ক্রম, প্রতিটি RGB বা YUV ফরম্যাটে পিক্সেলের একটি অ্যারে হিসাবে সংরক্ষিত। সংকোচন ছাড়া, 30 FPS-এ 1080p ভিডিওর এক সেকেন্ডের জন্য প্রায় 1.5 GB মেমোরি প্রয়োজন। H.264 কোডেক এই স্ট্রিমটিকে 3–5 Mbps-এ সংকুচিত করে, যা মূল আকারের তুলনায় 2500 গুণ ছোট।

ভিডিও সংকোচনের নীতি

ভিডিও কোডেক দুই ধরনের সংকোচন ব্যবহার করে: ইন্ট্রা-ফ্রেম এবং ইন্টার-ফ্রেম। ইন্ট্রা-ফ্রেম সংকোচন প্রতিটি ফ্রেমে স্বাধীনভাবে প্রয়োগ করা হয়, JPEG-এর মতো অ্যালগরিদম ব্যবহার করে: বিচ্ছিন্ন কোসাইন রূপান্তর (DCT), কোয়ান্টাইজেশন এবং এনট্রপি কোডিং।

ইন্টার-ফ্রেম সংকোচন পরপর ফ্রেমের মধ্যে পার্থক্য বিশ্লেষণ করে এবং শুধুমাত্র পরিবর্তনগুলি এনকোড করে। যদি পটভূমি স্থির থাকে, কোডেক শুধুমাত্র একবার সম্পূর্ণ ফ্রেম (I-frame) প্রেরণ করে, এবং তারপরে শুধুমাত্র পার্থক্যগুলি (P- এবং B-frames) প্রেরণ করে, যা কম গতিশীল দৃশ্যের জন্য ডেটার পরিমাণ উল্লেখযোগ্যভাবে হ্রাস করে।

ভিডিও কোডেক: H.264, H.265, VP9, AV1

ভিডিও কোডেক নির্বাচন গুণমান-থেকে-আকার অনুপাত, ডিভাইস সামঞ্জস্য এবং লাইসেন্সিং ফি নির্ধারণ করে। চারটি প্রধান কোডেক মোবাইল অ্যাপ্লিকেশন বাজারে আধিপত্য বিস্তার করে: H.264 (AVC), H.265 (HEVC), VP9 এবং AV1।

কোডেকমানবছরH.264-এর তুলনায় সংকোচনলাইসেন্সিং
H.264/AVCMPEG-4 Part 1020031x (ভিত্তি)রয়্যালটি (MPEG LA)
H.265/HEVCMPEG-H Part 2201340–50% বেশি কার্যকররয়্যালটি (দুই পুল)
VP9Google201330–40% বেশি কার্যকরবিনামূল্য
AV1AOM201850–60% বেশি কার্যকররয়্যালটি-মুক্ত

H.264 — সর্বজনীন মান

H.264 (AVC — Advanced Video Coding) সবচেয়ে সামঞ্জস্যপূর্ণ ভিডিও কোডেক হিসাবে রয়ে গেছে: এটি 2005 সাল থেকে সমস্ত মোবাইল ডিভাইস, ব্রাউজার এবং স্মার্ট TV দ্বারা সমর্থিত। হার্ডওয়্যার-ত্বরিত H.264 ডিকোডিং বাজেট ডিভাইসেও উপলব্ধ, যা এটিকে সর্বজনীন স্ট্রিমের জন্য আদর্শ করে তোলে।

H.264-এর প্রধান ত্রুটি হল আধুনিক কোডেকের তুলনায় অপেক্ষাকৃত কম সংকোচন দক্ষতা। একই বিটরেটে, H.265 এবং AV1 উল্লেখযোগ্যভাবে উচ্চতর গুণমান প্রদান করে, যা বিশেষ করে HDR এবং 4K সামগ্রীর জন্য গুরুত্বপূর্ণ।

H.265 — 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 — ভবিষ্যতের ওপেন মান

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) উপস্থিত হচ্ছে।

অডিও কোডেক: AAC, MP3, Opus

মোবাইল অ্যাপ্লিকেশনে অডিও কোডেক ভিডিও কোডেকের চেয়ে কম গুরুত্বপূর্ণ নয়। স্ট্রিমিং ভিডিওর জন্য ন্যূনতম বিলম্ব, উচ্চ গুণমান এবং MP4 এবং WebM কন্টেইনারের সাথে সামঞ্জস্যসম্পন্ন অডিও প্রয়োজন। তিনটি প্রধান অডিও কোডেক 99% মোবাইল স্ট্রিমিং অ্যাপ্লিকেশন কভার করে।

AAC — Apple এবং YouTube-এর মান

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 — আধুনিক অডিও কোডেক

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) এটিকে লাইভ সম্প্রচার এবং ভিডিও কনফারেন্সিং-এর জন্য পছন্দের বিকল্প করে তোলে।

এনকোডিং প্যারামিটার: বিটরেট, রেজোলিউশন, FPS

এনকোডিং প্যারামিটার চূড়ান্ত ফাইলের আকার, ভিডিও গুণমান এবং ডিভাইস সামঞ্জস্য নির্ধারণ করে। মোবাইল অ্যাপ্লিকেশন ডেভেলপারকে প্রতিটি ধরনের সামগ্রীর জন্য অনুকূল সেটিংস বেছে নিতে হবে: চলচ্চিত্র, খেলাধুলার সম্প্রচার, ব্যবহারকারী-নির্মিত সামগ্রী।

বিটরেট এবং এর প্রকার

বিটরেট হল ভিডিওর এক সেকেন্ড এনকোড করতে ব্যবহৃত বিটের সংখ্যা। লাইভ সম্প্রচারের জন্য CBR (স্থির বিটরেট), আর্কাইভাল সংরক্ষণের জন্য লক্ষ্য গুণমানসহ VBR (পরিবর্তনশীল বিটরেট) এবং স্ট্রিমিংয়ের জন্য ABR (গড় বিটরেট) রয়েছে।

রেজোলিউশনH.264 (সুপারিশকৃত)H.265/HEVCAV1
360p400–800 kbps250–500 kbps200–400 kbps
720p1.5–4 Mbps1–2.5 Mbps0.8–2 Mbps
1080p3–8 Mbps2–5 Mbps1.5–4 Mbps
4K (2160p)15–40 Mbps10–25 Mbps8–20 Mbps

CRF — গুণমান নিয়ন্ত্রণ

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 ladder-এ 4–6 ভেরিয়েন্ট অন্তর্ভুক্ত থাকে: দুর্বল নেটওয়ার্কের জন্য 144p (200 kbps) থেকে Wi-Fi-এর জন্য 1080p (8 Mbps) পর্যন্ত। সুপারিশকৃত রেজোলিউশন: 144p, 240p, 360p, 480p, 720p, 1080p। 4K সামগ্রীর জন্য, 1440p এবং 2160p যোগ করা হয়।

মোবাইল ডিভাইসে ট্রান্সকোডিং

kotlin
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 সমর্থন করতে হবে।

এনকোডিং পাইপলাইন অপ্টিমাইজেশন

  • হার্ডওয়্যার এনকোডিং MediaCodec (Android) বা VideoToolbox (iOS)-এর মাধ্যমে রিয়েল-টাইমের জন্য বাধ্যতামূলক।
  • মাল্টি-থ্রেডেড এনকোডিং সার্ভারে ultrafast বা veryfast মোডে libx264/libx265 ব্যবহার করে।
  • এনকোডিং প্রিসেট: placebo — VOD-এর জন্য সবচেয়ে খারাপ (সর্বোচ্চ সংকোচন), ultrafast — লাইভ সম্প্রচারের জন্য।
  • টু-পাস VBR — VOD-এর জন্য পছন্দের মোড, পূর্বাভাসযোগ্য আকার এবং গুণমান প্রদান করে।

সচরাচর জিজ্ঞাসিত প্রশ্ন

মোবাইল অ্যাপ্লিকেশনে ভিডিও এনকোডিং কী?

ভিডিও এনকোডিং হল ডেটার পরিমাণ কমানোর জন্য কোডেক ব্যবহার করে ডিজিটাল ভিডিও সংকেত সংকুচিত করার প্রক্রিয়া। মোবাইল অ্যাপ্লিকেশনে, এনকোডিং ভিডিও প্রেরণ এবং সংরক্ষণের অনুমতি দেয়, ডিভাইস স্ক্রিনে লক্ষণীয় গুণমান হ্রাস ছাড়াই আকার শতগুণ হ্রাস করে।

কোন কোডেক ভালো: H.264 না H.265?

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 কীভাবে AV1 থেকে আলাদা?

VP9 হল Google-এর AV1-এর পূর্বসূরি, H.265-এর স্তরে সংকোচন প্রদান করে। AV1, VP9-এর তুলনায় 20–30% বেশি কার্যকরভাবে সংকুচিত করে, কিন্তু 5–10 গুণ বেশি এনকোডিং সংস্থান প্রয়োজন। VP9 YouTube-এর জন্য ভালো, AV1 Netflix এবং আধুনিক স্ট্রিমিং পরিষেবার জন্য।

লাইভ সম্প্রচারের জন্য এনকোডিং কীভাবে কনফিগার করবেন?

লাইভ সম্প্রচারের জন্য, 1–2 সেকেন্ডের GOP-সহ H.264 Baseline Profile ব্যবহার করুন, B-frames ছাড়া, 1080p-এর জন্য 2–4 Mbps বিটরেট। LL-HLS-এর জন্য খণ্ডিত MP4 (CMAF) সক্ষম করুন এবং MediaCodec বা VideoToolbox-এর মাধ্যমে হার্ডওয়্যার এনকোডিং ব্যবহার করুন।

সারসংক্ষেপ

  • এনকোডিং একটি মৌলিক প্রযুক্তি যা ছাড়া অসংকুচিত ডেটার বিশাল আকারের কারণে ইন্টারনেটে ভিডিও ট্রান্সমিশন অসম্ভব।
  • H.264 সামঞ্জস্যের মান হিসাবে রয়ে গেছে এবং মোবাইল অ্যাপ্লিকেশনে সর্বজনীন স্ট্রিমের জন্য সুপারিশ করা হয়।
  • H.265 এবং AV1 40–60% ভালো সংকোচন প্রদান করে, কিন্তু কার্যকর ডিকোডিংয়ের জন্য হার্ডওয়্যার সমর্থন প্রয়োজন।
  • বিটরেট এবং CRF মূল প্যারামিটার: 1080p H.264-এর জন্য 3–8 Mbps, 4K H.265-এর জন্য 10–25 Mbps ব্যবহার করুন।
  • AAC মানক অডিও কোডেক, Opus ন্যূনতম বিলম্বের কারণে লাইভ সম্প্রচারের জন্য পছন্দনীয়।
  • ABR ladder স্ট্রিমিংয়ের জন্য 144p থেকে 1080p পর্যন্ত বিভিন্ন বিটরেটসহ 4–6 ভেরিয়েন্ট অন্তর্ভুক্ত করে।
  • মোবাইল ডিভাইসে রিয়েল-টাইমের জন্য হার্ডওয়্যার এনকোডিং বাধ্যতামূলক।

আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব

IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।

প্রকল্প নিয়ে আলোচনা করুন

আরও পড়ুন