Codificarea video în aplicațiile mobile: ce este, codecuri și parametri

Autor: IT Sectr Publicat: 2026-05-24 Timp de citire: 8 min

Codificarea video (encoding) este procesul de compresie a semnalului video digital într-un format potrivit pentru stocare și transmitere prin rețea cu pierderi minime de calitate. Fără codificare, un minut de video necomprimat în rezoluție 4K ocupă aproximativ 30 GB, ceea ce face imposibilă transmiterea prin internet. Conform raportului Sandvine Global Internet Phenomena (2025), video-ul reprezintă 65% din tot traficul internet, iar codificarea este tehnologia cheie care face acest lucru posibil.

Pe scurt

  • Codificarea — compresia semnalului video folosind codecuri pentru a reduce volumul de date.
  • Codecurile H.264 și H.265 — standardele principale: AVC asigură compatibilitate, HEVC — compresie mai bună.
  • VP9 și AV1 — codecuri deschise de la Google și Alliance for Open Media, fără taxe de licențiere.
  • Bitrate-ul determină dimensiunea și calitatea: 2–5 Mbps pentru 1080p, 15–40 Mbps pentru 4K.
  • Codecurile audio AAC și Opus — standarde pentru aplicații mobile cu latență scăzută și calitate înaltă.

Ce este codificarea video?

Codificarea video (encoding) este procesul de transformare a semnalului video necomprimat într-un format digital folosind algoritmi de compresie. Algoritmii implementați în codecurile video elimină informația redundantă atât în domeniul spațial (în interiorul unui cadru), cât și în domeniul temporal (între cadrele succesive).

Video-ul necomprimat reprezintă o succesiune de cadre, fiecare stocat ca un tablou de pixeli în format RGB sau YUV. Fără compresie, o secundă de video 1080p la 30 FPS necesită aproximativ 1,5 GB de memorie. Codecul H.264 comprimă acest flux la 3–5 Mbps, de 2500 de ori mai puțin decât volumul inițial.

Principiile compresiei video

Codecurile video folosesc două tipuri de compresie: intra-cadru (intra-frame) și inter-cadru (inter-frame). Compresia intra-cadru se aplică fiecărui cadru independent, folosind algoritmi similari cu JPEG: transformarea cosinus discretă (DCT), cuantizarea și codificarea entropică.

Compresia inter-cadru analizează diferența dintre cadrele succesive și codifică doar modificările. Dacă fundalul este static, codecul transmite cadrul complet o singură dată (I-frame), apoi doar diferența (cadrele P și B), ceea ce reduce semnificativ volumul de date pentru scenele cu dinamică redusă.

Codecuri video: H.264, H.265, VP9, AV1

Alegerea codecului video determină raportul calitate-dimensiune, compatibilitatea cu dispozitivele și taxele de licențiere. Pe piața aplicațiilor mobile domină patru codecuri principale: H.264 (AVC), H.265 (HEVC), VP9 și AV1.

CodecStandardAnCompresie vs H.264Licențiere
H.264/AVCMPEG-4 Part 1020031x (de bază)Cu taxă (MPEG LA)
H.265/HEVCMPEG-H Part 22013Cu 40–50% mai eficientCu taxă (două pool-uri)
VP9Google2013Cu 30–40% mai eficientGratuit
AV1AOM2018Cu 50–60% mai eficientGratuit (Royalty-free)

H.264 — standardul universal

H.264 (AVC — Advanced Video Coding) rămâne cel mai compatibil codec video: este suportat de toate dispozitivele mobile, browserele și Smart TV-urile începând cu 2005. Accelerarea hardware a decodării H.264 există chiar și pe dispozitivele bugetare, ceea ce îl face ideal pentru fluxul universal.

Principalul dezavantaj al H.264 — eficiența relativ scăzută de compresie comparativ cu codecurile moderne. La același bitrate, H.265 și AV1 oferă o calitate vizibil mai înaltă, ceea ce este deosebit de important pentru conținutul HDR și 4K.

H.265 — eficiență pentru 4K

H.265 (HEVC — High Efficiency Video Coding) oferă o compresie cu 40–50% mai bună decât H.264 la aceeași calitate vizuală. Acest lucru se realizează printr-o împărțire mai flexibilă a cadrului în blocuri (CTU de până la 64×64 pixeli în loc de 16×16) și algoritmi îmbunătățiți de predicție a mișcării.

HEVC este suportat pe toate dispozitivele Apple (începând cu iPhone 6), pe Android (începând cu versiunea 5.0 cu decodare hardware) și pe majoritatea Smart TV-urilor. Taxele de licențiere HEVC sunt mai mari decât H.264 și sunt gestionate de două pool-uri de brevete, ceea ce complică utilizarea legală.

AV1 — standardul deschis al viitorului

AV1 — codec video dezvoltat de Alliance for Open Media (AOM), un consorțiu condus de Google, Netflix, Amazon, Intel și Mozilla. AV1 oferă o compresie cu 50–60% mai bună decât H.264 și este complet liber de taxe de licențiere, ceea ce îl face atractiv pentru serviciile de streaming.

Principalul dezavantaj al AV1 — complexitatea computațională ridicată a codificării. Codificarea AV1 poate fi de 5–10 ori mai lentă decât H.264 pe același echipament, deși decodarea hardware apare deja pe dispozitivele din 2024–2025 (Snapdragon 8 Gen 3, Apple A17 Pro).

Codecuri audio: AAC, MP3, Opus

Codecurile audio în aplicațiile mobile nu sunt mai puțin importante decât codecurile video. Pentru streaming video este necesar un audio cu latență minimă, calitate înaltă și compatibilitate cu containerele MP4 și WebM. Trei codecuri audio principale acoperă 99% din aplicațiile mobile de streaming.

AAC — standardul Apple și YouTube

AAC (Advanced Audio Coding) — succesorul MP3, dezvoltat de MPEG în 1997 și devenit codecul audio standard pentru iTunes, YouTube și Android. AAC oferă aceeași calitate ca MP3 la un bitrate cu 30% mai mic și suportă sunet multicanal până la 7.1.

Pentru aplicațiile mobile se recomandă AAC-LC la un bitrate de 128–192 kbps pentru stereo și AAC-HE pentru bitrate-uri scăzute de 32–64 kbps. Decodarea hardware AAC este disponibilă pe toate dispozitivele moderne, ceea ce minimizează consumul de energie.

Opus — codec audio modern

Opus — codec audio deschis de la IETF (RFC 6716), care oferă cea mai bună calitate dintre toate codecurile audio la bitrate-uri între 6 și 510 kbps. Opus combină SILK (algoritm pentru vorbire) și CELT (pentru muzică) și comută automat modurile în funcție de conținut.

Opus este utilizat în WebRTC pentru apeluri video, în aplicațiile Spotify și Discord și este suportat în HLS începând cu iOS 11 și Android 5.0. Latența scăzută a Opus (5–26 ms față de 40–100 ms la AAC) îl face alegerea preferată pentru transmisiile live și conferințele video.

Parametri de codificare: bitrate, rezoluție, FPS

Parametrii de codificare determină dimensiunea finală a fișierului, calitatea video și compatibilitatea cu dispozitivele. Dezvoltatorul de aplicații mobile trebuie să aleagă setările optime pentru fiecare tip de conținut: filme, transmisii sportive, conținut utilizator.

Bitrate-ul și tipurile sale

Bitrate-ul — numărul de biți utilizați pentru codificarea unei secunde de video. Se disting CBR (Constant Bitrate) — bitrate constant pentru transmisii live, VBR (Variable Bitrate) — variabil cu calitate țintă pentru stocare arhivă și ABR (Average Bitrate) — mediu pentru streaming.

RezoluțieH.264 (recomandat)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 — controlul calității

CRF (Constant Rate Factor) — parametru de codificare în x264 și x265 care stabilește calitatea țintă în locul unui bitrate fix. Scara CRF de la 0 (lossless) la 51 (calitate minimă), unde 18–28 este domeniul de lucru. Pentru aplicații mobile se recomandă CRF 23 pentru x264 și CRF 25 pentru x265.

CRF 18–20 asigură calitate înaltă pentru conținut de prezentare și vizionare offline. CRF 24–28 este potrivit pentru streaming și conținut utilizator, unde dimensiunea fișierului este mai importantă decât calitatea absolută.

Profilurile și nivelurile codecurilor

Standardul H.264 definește profiluri (Baseline, Main, High) și niveluri (Level 1–5.2) care limitează parametrii maximi ai video-ului. Baseline Profile este compatibil cu toate dispozitivele, dar nu suportă cadrele B. High Profile asigură calitate maximă și este utilizat pentru conținut 1080p.

Pentru streaming 4K este necesar Level 5.1 și superior, suportat de majoritatea dispozitivelor mobile începând cu 2018. Nivelul codecului determină rezoluția maximă, bitrate-ul și dimensiunea buffer-ului, garantând decodarea corectă pe toate dispozitivele certificate.

Codificarea pentru streaming

Codificarea pentru streaming diferă de codificarea arhivă prin necesitatea creării mai multor variante de calitate (ABR ladder) și optimizarea pentru transmisia în rețea. Furnizorii de conținut folosesc transcodificarea în timp real sau codificarea preliminară pentru VOD.

Un set ABR tipic pentru aplicații mobile include 4–6 variante: de la 144p (200 kbps) pentru rețele slabe până la 1080p (8 Mbps) pentru Wi-Fi. Rezoluții recomandate: 144p, 240p, 360p, 480p, 720p, 1080p. Pentru conținut 4K se adaugă 1440p și 2160p.

Transcodificarea pe dispozitivul mobil

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)

Codificarea pentru transmisii live

Pentru transmisiile live este deosebit de importantă latența scăzută. Setările de codificare trebuie să minimizeze latența de intrare/ieșire a codecului: se recomandă dimensiunea GOP de 1–2 secunde (la fiecare 30–60 cadre), cadrele B oprite sau minimizate, pentru H.264 se utilizează Baseline Profile.

Protocoalele moderne pentru latență scăzută — LL-HLS și CMAF-Low Latency — necesită codificare fragmentată cu segmente de 1–2 secunde și posibilitatea încărcării parțiale (Partial Segments). Codecul trebuie să suporte moof-box în fiecare segment pentru MP4 fragmentat.

Optimizarea pipeline-ului de codificare

  • Codificarea hardware prin MediaCodec (Android) sau VideoToolbox (iOS) este obligatorie pentru timp real.
  • Codificarea multi-thread pe server folosind libx264/libx265 în modul ultrafast sau veryfast.
  • Preseturile de codificare: placebo — cel mai prost pentru VOD (compresie maximă), ultrafast — pentru transmisii live.
  • Two-pass VBR — modul preferat pentru VOD, care asigură dimensiune și calitate previzibile.

Întrebări frecvente

Ce este codificarea video în aplicațiile mobile?

Codificarea video — procesul de compresie a semnalului video digital cu ajutorul codecurilor pentru reducerea volumului de date. În aplicațiile mobile, codificarea permite transmiterea și stocarea video-ului, reducând dimensiunea de sute de ori fără pierdere vizibilă de calitate pe ecranul dispozitivului.

Care codec este mai bun: H.264 sau H.265?

H.264 asigură compatibilitate maximă cu dispozitivele vechi, iar H.265 este cu 40–50% mai eficient la aceeași calitate. Pentru conținut 1080p și mai jos este suficient H.264, pentru 4K se recomandă H.265 sau AV1 dacă dispozitivul le suportă.

Ce este bitrate-ul și cum să-l alegi?

Bitrate-ul — cantitatea de date pe secundă de video. Pentru 1080p, bitrate-ul optim este de 3–8 Mbps pentru H.264, 2–5 Mbps pentru H.265. Alegerea depinde de conținut: scenele dinamice (sport) necesită un bitrate mai mare, scenele statice (interviuri) — un bitrate mai mic.

Cu ce diferă VP9 de AV1?

VP9 — predecesorul AV1 de la Google, care oferă compresie la nivelul H.265. AV1 comprimă cu 20–30% mai eficient decât VP9, dar necesită de 5–10 ori mai multe resurse pentru codificare. VP9 este mai bun pentru YouTube, AV1 — pentru Netflix și serviciile moderne de streaming.

Cum să configurezi codificarea pentru transmisii live?

Pentru transmisii live folosește H.264 Baseline Profile cu GOP 1–2 secunde, fără cadre B, bitrate 2–4 Mbps pentru 1080p. Activează MP4 fragmentat (CMAF) pentru LL-HLS și folosește codificarea hardware prin MediaCodec sau VideoToolbox.

Concluzii

  • Codificarea — tehnologia fundamentală fără de care transmisia video prin internet este imposibilă din cauza volumului enorm al datelor necomprimate.
  • H.264 rămâne standardul de compatibilitate și este recomandat pentru fluxul universal în aplicațiile mobile.
  • H.265 și AV1 asigură o compresie cu 40–60% mai bună, dar necesită suport hardware pentru decodare eficientă.
  • Bitrate-ul și CRF — parametri cheie: pentru 1080p H.264 folosește 3–8 Mbps, pentru 4K H.265 — 10–25 Mbps.
  • AAC — codecul audio standard, Opus este preferat pentru transmisii live datorită latenței minime.
  • Setul ABR pentru streaming include 4–6 variante de la 144p la 1080p cu bitrate diferit.
  • Codificarea hardware este obligatorie pentru timp real pe dispozitivele mobile.

Vom dezvolta o aplicație mobilă la cheie

IT Sectr creează aplicații iOS și Android pentru startup-uri și afaceri din 2017. Vă vom consilia și vă vom propune cea mai bună soluție.

Discutați proiectul

Citiți și