Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Zweeten Deel: Wéi de Video Codec funktionnéiert

All Raster Bild kann an der Form vertruede ginn zweedimensional Matrixentgasung. Wann et drëms geet, fir Faarwen, kann d'Iddi vun engem Bléck op e Bild entwéckelt ginn als dräi-zweedimensional Matrixentgasung, an deenen zousätzlech Dimensiounen benotzt gi fir Daten fir jiddereng vun de Faarwen ze späicheren.

Wa mir d'Finale Faarf als Kombinatioun vun der sougenannten betruecht. primär Faarwen (rout, gréng a blo), an eiser dreidimensionaler Matrix definéiere mir dräi Fligeren: déi éischt fir rout, déi zweet fir gréng an déi lescht fir blo.
Wéi funktionnéiert e Video Codec? Deel 1: Grondlage
Mir nennen all Punkt an dëser Matrix e Pixel (Bildelement). All Pixel enthält Informatioun iwwer d'Intensitéit (normalerweis als numeresche Wäert) vun all Faarf. Zum Beispill, roude Pixel heescht, datt et enthält 0 gréng, 0 blo a maximal rout. Pink Pixel kann mat enger Kombinatioun vun dräi Faarwen geformt ginn. Mat engem numeresche Beräich vun 0 bis 255 gëtt e rosa Pixel definéiert als Rout = 255, Gréng = 192 и Blo = 203.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Dësen Artikel gouf mat der Ënnerstëtzung vun EDISON publizéiert.

Mir entwéckelen Uwendungen fir Video Iwwerwaachung, Video Streaming, an och mir sinn engagéiert Videoopnam am Chirurgieraum.

Alternativ Weeër fir e Faarfbild ze codéieren

Et gi vill aner Modeller fir d'Faarwen ze representéieren déi e Bild ausmaachen. Zum Beispill kënnt Dir eng indexéiert Palette benotzen, déi nëmmen ee Byte erfuerdert fir all Pixel ze representéieren, anstatt déi dräi néideg wann Dir de RGB Modell benotzt. An esou engem Modell ass et méiglech eng 2D Matrix ze benotzen amplaz vun enger 3D Matrix fir all Faarf ze representéieren. Dëst spuert Erënnerung, awer gëtt e méi klenge Faarfpalette.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

RGB

Zum Beispill, kuckt op dëst Bild hei drënner. Déi éischt Gesiicht ass komplett gemoolt. Déi aner sinn déi rout, gréng a blo Fligeren (d'Intensitéit vun den entspriechende Faarwen ginn a Grauskala gewisen).

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Mir gesinn datt d'Schatten vu roude am Original op déiselwecht Plazen sinn, wou déi hellste Deeler vum zweete Gesiicht beobachtet ginn. Wärend dem blo säi Bäitrag haaptsächlech nëmmen am Mario sengen Aen (lescht Gesiicht) an Elementer vu senger Kleeder ze gesinn ass. Notéiert wou all dräi Faarffliger am mannsten bäidroen (déi däischtersten Deeler vun de Biller) - dem Mario seng Moustache.

Fir d'Intensitéit vun all Faarf ze späicheren, ass eng gewëssen Unzuel u Bits néideg - dës Quantitéit gëtt genannt bëssen Déift. Loosst eis soen datt 8 Bits ausginn (baséiert op engem Wäert vun 0 bis 255) pro Faarfplang. Dann hu mir eng Faarfdéift vu 24 Bits (8 Bits * 3 R/G/B Fligeren).

Eng aner Eegeschafte vun engem Bild ass besuergen, wat d'Zuel vun de Pixel an enger Dimensioun ass. Oft bezeechent als Breet × Héicht, wéi am 4 vun 4 Beispill Bild hei drënner.
Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Eng aner Immobilie déi mir beschäftegen wa mir mat Biller / Videoen schaffen ass Aspekt Verhältnis, déi normal proportional Relatioun tëscht der Breet an Héicht vun engem Bild oder Pixel beschreift.

Wann se soen datt e bestëmmte Film oder Bild 16 op 9 grouss ass, mengen se normalerweis Display Aspekt Verhältnis (DAR - vun Display Aspekt Verhältnis). Wéi och ëmmer, heiansdo kënne verschidde Forme vun eenzel Pixelen sinn - an dësem Fall schwätzen mir iwwer Pixel Verhältnis (PAR - vun Pixel Aspekt Verhältnis).

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Notiz un d'Hostin: DVD entsprécht DAR 4 bis 3

Och wann déi aktuell DVD-Resolutioun 704x480 ass, hält se ëmmer nach en 4:3 Aspekt Verhältnis well de PAR 10:11 ass (704x10 / 480x11).

An endlech kënne mir bestëmmen видео wéi eng Sequenz vun n Rummen fir d'Period Zäit, wat als zousätzlech Dimensioun ugesi ka ginn. A n dann ass de Frame Taux oder d'Zuel vun de Frames pro Sekonn (sozial a finanziell - vun Rummen pro Sekonn).

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

D'Zuel vu Bits pro Sekonn néideg fir e Video ze weisen ass seng Transmissioun Vitesse - bitrate.

bitrate = Breet * Héicht * Bit Déift * Frames pro Sekonn

Zum Beispill, en 30 fps, 24 bps, 480x240 Video géif 82,944,000 bps oder 82,944 Mbps (30x480x240x24) erfuerderen - awer dat ass wann keng Kompressiounsmethod benotzt gëtt.

Wann der Transfert Vitesse bal konstant, dann heescht et konstant Transmissioun Vitesse (CBR - vun konstante Bitrate). Mee et kann och variéieren, an dësem Fall heescht et variabelen Baud Taux (VBR - vun verännerleche Bitrate).

Dës Grafik weist limitéiert VBR, wou net ze vill Stécker am Fall vun engem komplett donkel Frame verschwenden.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

D'Ingenieuren hunn am Ufank eng Method entwéckelt fir de erkannten Frame-Rate vun engem Videodisplay ze verduebelen ouni zousätzlech Bandbreedung ze benotzen. Dës Method ass bekannt als interlaced Video; Prinzipiell schéckt et d'Halschent vum Bildschierm am éischte "Frame" an déi aner Halschent am nächste "Frame".

Momentan gi Szenen meeschtens benotzt progressiv Scannen Technologien. Et ass eng Method fir bewegt Biller ze weisen, ze späicheren oder ze vermëttelen an deenen all d'Linnen vun all Frame sequenziell gezeechent ginn.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Gutt! Elo si mir bewosst wéi e Bild digital duergestallt gëtt, wéi seng Faarwen arrangéiert sinn, wéivill Bits pro Sekonn mir verbréngen fir Video ze weisen, wann de Bitrate konstant (CBR) oder variabel (VBR) ass. Mir wëssen iwwer eng gegebene Resolutioun mat engem bestëmmte Frame Taux, mir si vertraut mat villen anere Begrëffer, wéi interlaced Video, PAR an e puer anerer.

Redundanz ewechhuelen

Et ass bekannt datt Video ouni Kompressor net normalerweis benotzt ka ginn. Eng Stonn laang Video bei 720p Opléisung an 30 Rummen pro Sekonn géif huelen 278 GB. Mir komme bei dësem Wäert duerch Multiplizéieren 1280 x 720 x 24 x 30 x 3600 (Breet, Héicht, Bits pro Pixel, FPS an Zäit a Sekonnen).

Benotzt lossless Kompressioun Algorithmen, wéi DEFLATE (benotzt an PKZIP, Gzip an PNG), wäert déi néideg Bandbreedung net genuch reduzéieren. Mir mussen no anere Weeër sichen fir Video ze kompriméieren.

Fir dëst ze maachen, kënnt Dir d'Features vun eiser Visioun benotzen. Mir si besser fir Hellegkeet ze ënnerscheeden wéi Faarf. E Video ass eng Serie vu sequentiellen Biller déi mat der Zäit widderhuelen. Et gi kleng Differenzen tëscht ugrenzend Rummen vun der selwechter Szen. Zousätzlech enthält all Frame vill Beräicher déi déiselwecht (oder ähnlech) Faarf benotzen.

Faarf, Hellegkeet an eis Aen

Eis Ae si méi empfindlech op Hellegkeet wéi op Faarf. Dir kënnt dat selwer gesinn andeems Dir dës Foto kuckt.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Wanns de dat net op der lénker Halschent vum Bild gesäis d'Faarwen vun de Quadraten A и B sinn eigentlech d'selwecht, dann ass dat normal. Eist Gehir forcéiert eis méi Opmierksamkeet op Liicht a Schiet ze bezuelen anstatt Faarf. Op der rietser Säit tëscht den designéierte Quadrate gëtt et e Jumper vun der selwechter Faarf - sou datt mir (dh eise Gehir) einfach bestëmmen datt se tatsächlech déiselwecht Faarf sinn.

Loosst eis (op eng vereinfacht Manéier) kucken wéi eis Ae funktionnéieren. D'Ae ass e komplext Organ dat aus villen Deeler besteet. Mir sinn awer am meeschten interesséiert fir Kegelen a Staang. D'Ae enthält ongeféier 120 Millioune Staang a 6 Millioune Kegel.

Loosst eis d'Perceptioun vu Faarf an Hellegkeet als separat Funktiounen vu verschiddenen Deeler vum Auge betruechten (tatsächlech ass alles e bësse méi komplizéiert, awer mir vereinfachen et). Staangzellen sinn haaptsächlech verantwortlech fir Hellegkeet, während Kegelzellen fir Faarf verantwortlech sinn. Kegel sinn an dräi Typen opgedeelt, jee no dem Pigment, deen se enthalen: S-Kegel (blo), M-Kegel (gréng), a L-Kegel (rout).

Well mir vill méi Staang (Hellegkeet) hunn wéi Kegel (Faarf), kënne mir schléissen datt mir méi fäeg sinn tëscht donkel a Liicht z'ënnerscheeden wéi mir Faarwen sinn.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Kontrast Sensibilitéit Features

Fuerscher an der experimenteller Psychologie a villen anere Felder hunn vill Theorien vun der mënschlecher Visioun entwéckelt. An ee vun hinnen ass genannt Kontrastempfindlechkeet Funktiounen. Si si mat raimlecher an zäitlecher Beliichtung verbonnen. Kuerz gesot, et geet drëm wéivill Ännerungen néideg sinn ier en Beobachter se bemierkt. Notéiert de Plural vum Wuert "Funktioun". Dëst ass wéinst der Tatsaach datt mir Kontrastempfindlechkeetsfunktiounen net nëmme fir schwaarz-wäiss Biller moosse kënnen, awer och fir Faarf. D'Resultater vun dësen Experimenter weisen datt eis Aen an de meeschte Fäll méi empfindlech op d'Hellegkeet sinn wéi op d'Faarf.

Well mir wëssen datt mir méi empfindlech fir d'Bildhellegkeet sinn, kënne mir probéieren dës Tatsaach ze benotzen.

Faarf Modell

Mir hunn e bëssen erausfonnt wéi een mat Faarfbiller mam RGB Schema schafft. Et ginn och aner Modeller. Et gëtt e Modell deen d'Liichtkraaft vu Chroma trennt an et ass bekannt als YCbCr. Iwwregens, et ginn aner Modeller déi eng ähnlech Divisioun maachen, awer mir wäerten nëmmen dës berücksichtegen.

An dësem Faarfmodell Y ass eng Duerstellung vun der Hellegkeet, a benotzt och zwee Faarfkanäl: Cb (räich blo) an Cr (räich rout). YCbCr kann aus RGB ofgeleet ginn, an déi ëmgedréint Konversioun ass och méiglech. Mat dësem Modell kënne mir voll Faarf Biller erstellen wéi mir hei ënnen gesinn:

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Konvertéiert tëscht YCbCr an RGB

Eppes wäert Objeten: Wéi ass et méiglech all d'Faarwen ze kréien wann gréng net benotzt gëtt?

Fir dës Fro ze beäntweren, loosst eis RGB op YCbCr konvertéieren. Loosst eis d'Koeffizienten benotzen, déi am Standard ugeholl goufen BT.601, déi vun der Eenheet recommandéiert gouf ITU-R. Dës Divisioun setzt d'Standarden fir digital Video. Zum Beispill: wat ass 4K? Wat soll de Frame Taux, Resolutioun, Faarf Modell ginn?

Als éischt loosse mer d'Hellegkeet berechnen. Loosst eis d'Konstanten benotzen, déi vun der ITU proposéiert ginn an d'RGB Wäerter ersetzen.

Y = 0.299R + 0.587G + 0.114B

Nodeems mir d'Hellegkeet hunn, trennen mir déi blo a rout Faarwen:

Cb = 0.564(B - Y)

Cr = 0.713(R - Y)

A mir kënnen och zréck konvertéieren a souguer gréng ginn mat YCbCr:

R = Y + 1.402Cr

B = Y + 1.772Cb

G = Y - 0.344Cb - 0.714Cr

Typesch, Affichage (Monitoren, Fernseher, Schiirme, etc.) benotzen nëmmen de RGB Modell. Awer dëse Modell kann op verschidde Manéieren organiséiert ginn:

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Faarf subsampling

Mat engem Bild representéiert als Kombinatioun vu Luminanz a Chrominanz, kënne mir d'mënschlech visuell System méi grouss Sensibilitéit fir d'Liichtkraaft ausnotzen wéi d'Chrominanz duerch selektiv Informatioun ewechzehuelen. Chroma Ënnersampling ass eng Method fir Biller ze kodéieren mat manner Resolutioun fir Chroma wéi fir Luminanz.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Wéi vill ass et erlaabt d'Faarfléisung ze reduzéieren?! Et stellt sech eraus datt et schonn e puer Diagrammer sinn déi beschreiwen wéi d'Resolutioun an d'Fusioun behandelen (Resultatend Faarf = Y + Cb + Cr).

Dës Schemaen sinn bekannt als Downsampling Systemer a ginn als 3-fache Verhältnis ausgedréckt - a:x:y, déi d'Zuel vun de Proben vu Luminanz a Faarfdifferenzsignaler bestëmmt.

a - horizontale Probestandard (normalerweis gläich wéi 4)
x - Zuel vu Chroma-Proben an der éischter Zeil vu Pixelen (horizontal Opléisung relativ zu a)
y - d'Zuel vun den Ännerungen an de Chroma-Proben tëscht der éischter an der zweeter Zeile vu Pixelen.

Ausnam ass 4:1:0, liwwert eng Chromprobe an all 4-by-4 Luminanzopléisungsblock.

Allgemeng Schemaen, déi a modernen Codecs benotzt ginn:

  • 4:4:4 (keng Downsampling)
  • 4:2:2
  • 4:1:1
  • 4:2:0
  • 4:1:0
  • 3:1:1

YCbCr 4:2:0 - Fusioun Beispill

Hei ass e fusionéiert Bild mat YCbCr 4:2:0. Notéiert datt mir nëmmen 12 Bits pro Pixel verbréngen.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Dëst ass wéi datselwecht Bild ausgesäit, kodéiert mat den Haaptarten vu Faarfsubsampling. Déi éischt Zeil ass déi lescht YCbCr, déi ënnescht Zeil weist d'Chroma Resolutioun. Ganz uerdentlech Resultater, wann een de klenge Qualitéitsverloscht berücksichtegt.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Denkt drun datt mir 278 GB Späicherplatz gezielt hunn fir eng Stonn laang Videodatei mat 720p Opléisung an 30 Frames pro Sekonn ze späicheren? Wa mir YCbCr 4:2:0 benotzen, da gëtt dës Gréisst ëm d'Halschent reduzéiert - 139 GB. Bis elo ass et nach wäit vun engem akzeptablen Resultat.

Dir kënnt de YCbCr Histogram selwer mat FFmpeg kréien. An dësem Bild dominéiert Blo iwwer Rout, wat kloer am Histogramm selwer ze gesinn ass.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Faarf, Hellegkeet, Faarfpalette - Video Bewäertung

Mir recommandéieren dëse fantastesche Video ze kucken. Et erkläert wat d'Hellegkeet ass, an allgemeng sinn all d'Punkte punktéiert ё iwwer Hellegkeet a Faarf.

Spillt Video

Frame Typen

Loosst eis weidergoen. Loosst eis probéieren d'Zäitredundanz ze eliminéieren. Awer als éischt, loosst eis e puer grondleeënd Terminologie definéieren. Loosst eis soen, mir hunn e Film mat 30 Frames pro Sekonn, hei sinn déi éischt 4 Frames:

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage Wéi funktionnéiert e Video Codec? Deel 1: Grondlage Wéi funktionnéiert e Video Codec? Deel 1: Grondlage Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Mir gesinn vill Widderhuelung an de Rummen: zum Beispill e bloen Hannergrond, deen net vu Kader zu Kader ännert. Fir dëse Problem ze léisen, kënne mir se abstrakt an dräi Aarte vu Rummen klasséieren.

I-Frame (Intro Frame)

I-Frame (Referenzrahmen, Schlësselrahmen, banneschten Frame) ass selbstänneg. Egal wat Dir wëllt visualiséieren, en I-Frame ass wesentlech eng statesch Foto. Den éischte Frame ass normalerweis en I-Frame, awer mir wäerte regelméisseg I-Frames beobachten och ënnert net den éischte Frames.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

P-Frame (Predicted Frame)

P-Frame (Predictive Frame) profitéiert vun der Tatsaach datt bal ëmmer dat aktuellt Bild mam fréiere Frame reproduzéiert ka ginn. Zum Beispill, am zweete Frame ass déi eenzeg Ännerung de Ball no vir. Mir kënnen de Frame 2 kréien andeems Dir de Frame 1 liicht ännert, nëmmen den Ënnerscheed tëscht dëse Rummen benotzt. Fir de Frame 2 ze konstruéieren, bezéie mir op de viregte Frame 1.

Wéi funktionnéiert e Video Codec? Deel 1: GrondlageWéi funktionnéiert e Video Codec? Deel 1: Grondlage

B-Frame (Bi-predictive Frame)

Wat iwwer Linken net nëmmen op d'Vergaangenheet, awer och op zukünfteg Rummen fir nach besser Kompressioun ze bidden?! Dëst ass am Fong e B-Frame (bidirektional Frame).

Wéi funktionnéiert e Video Codec? Deel 1: GrondlageWéi funktionnéiert e Video Codec? Deel 1: GrondlageWéi funktionnéiert e Video Codec? Deel 1: Grondlage

Tëschenzäit Réckzuch

Dës Frame Typen gi benotzt fir déi bescht méiglech Kompressioun ze bidden. Mir kucken wéi dëst an der nächster Rubrik geschitt. Fir elo, loosst eis feststellen datt déi "teier" a punkto Erënnerung verbraucht den I-Frame ass, de P-Frame ass merkbar méi bëlleg, awer déi rentabelst Optioun fir Video ass de B-Frame.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Temporal Redundanz (Inter-Frame Prediction)

Loosst eis kucken wéi eng Optiounen mir hunn fir Widderhuelung mat der Zäit ze minimiséieren. Mir kënnen dës Zort vu Redundanz léisen mat Cross-Prediction Methoden.

Mir probéieren esou wéineg wéi méiglech Bits ze verbréngen fir eng Sequenz vu Frames 0 an 1 ze codéieren.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Mir kënne produzéieren subtraktioun, mir subtrahéieren einfach de Frame 1 vum Frame 0. Mir kréien de Frame 1, benotzt nëmmen den Ënnerscheed tëscht him an dem fréiere Frame, tatsächlech codéiere mir nëmmen de resultéierende Rescht.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Awer wat wann ech Iech soen datt et eng nach besser Method gëtt déi nach manner Bits benotzt?! Als éischt, loosst eis de Frame 0 an e klore Gitter briechen, besteet aus Blocken. An da wäerte mir probéieren d'Blöcke vum Frame 0 mat Frame 1 ze passen. An anere Wierder, mir schätzen d'Bewegung tëscht Frames.

Vun Wikipedia - blockéiert Bewegungskompensatioun

Blockbewegungskompensatioun deelt den aktuelle Frame an net iwwerlappend Blocken an de Bewegungskompensatiounsvektor bericht den Urspronk vun de Blocken (e gemeinsame Mëssverständnis ass datt virdrun de Frame ass an net iwwerlappend Blöcke opgedeelt, a Bewegungskompensatiounsvektore soen wou dës Blöcke goen. Awer tatsächlech ass et ëmgedréint - et ass net de fréiere Frame deen analyséiert gëtt, awer deen nächsten ass net kloer wou d'Blöcke bewegt, awer wou se hierkommen). Typesch iwwerlappen d'Quellblocken am Quellframe. E puer Videokompressiounsalgorithmen sammelen den aktuelle Frame aus Deeler vun net emol een, awer e puer virdrun iwwerdroe Frames.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Wärend dem Evaluatiounsprozess gesi mir datt de Ball vun (x= 0, y=25) vum (x= 6, y=26), Wäerter x и y bestëmmt de Bewegungsvektor. En anere Schrëtt dee mir maache kënnen fir d'Bits ze konservéieren ass nëmmen den Ënnerscheed vu Bewegungsvektoren tëscht der leschter Blockpositioun an der virausgesoter ze codéieren, sou datt de finalen Bewegungsvektor wäert sinn (x=6-0=6, y=26-25= 1).

An enger realer Situatioun géif dëse Ball ënnerdeelt ginn n blockéiert, awer dëst ännert net d'Essenz vun der Matière.

Objeten am Frame plënneren an dräi Dimensiounen, also wann de Ball sech beweegt, kann et visuell méi kleng ginn (oder méi grouss wann et Richtung Betrachter beweegt). Et ass normal datt et net e perfekte Match tëscht de Blocken gëtt. Hei ass eng kombinéiert Vue vun eiser Schätzung an dat richtegt Bild.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Awer mir gesinn datt wa mir Bewegungsschätzung benotzen, et bemierkbar manner Daten fir Kodéierung gëtt wéi wann Dir eng méi einfach Method benotzt fir den Delta tëscht Frames ze berechnen.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Wéi eng real Bewegungskompensatioun géif ausgesinn

Dës Technik gëtt op all Block gläichzäiteg applizéiert. Dacks gëtt eise bedingte bewegende Ball an e puer Block gläichzäiteg opgedeelt.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Dir kënnt e Gefill fir dës Konzepter selwer benotzen jupyter.

Fir Bewegungsvektoren ze gesinn, kënnt Dir en externe Prognosevideo erstellen mat ffmpeg.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Dir kënnt och benotzen Intel Video Pro Analyser (et ass bezuelt, awer et gëtt e gratis Test deen nëmmen op déi éischt zéng Rummen limitéiert ass).

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Raumlech Redundanz (intern Prognose)

Wa mir all Frame an engem Video analyséieren, fanne mir vill verbonne Beräicher.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Loosst eis dëst Beispill duerchgoën. Dës Szen besteet haaptsächlech aus blo a wäiss Faarwen.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Dëst ass en I-Frame. Mir kënnen net virdrun Rummen fir Prognose huelen, mee mir kënnen et kompriméieren. Loosst eis d'Auswiel vum roude Block codéieren. Wa mir seng Noperen kucken, bemierken mir datt et e puer Faarftrends ronderëm sinn.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Mir huelen un datt d'Faarwen vertikal am Kader verbreet sinn. Wat heescht datt d'Faarf vun den onbekannte Pixel d'Wäerter vun hiren Noperen enthalen.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Esou eng Prognose ka falsch ausfalen. Et ass aus dësem Grond datt Dir dës Method (intern Prognose) benotze musst an dann déi reell Wäerter subtrahéieren. Dëst wäert eis e Reschtblock ginn, wat zu enger vill méi kompriméierter Matrix am Verglach zum Original resultéiert.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Wann Dir wëllt mat internen Prognosen üben, kënnt Dir e Video vu Makroblocks an hir Prognosen mat ffmpeg erstellen. Fir d'Bedeitung vun all Blockfaarf ze verstoen, musst Dir d'ffmpeg Dokumentatioun liesen.

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Oder Dir kënnt den Intel Video Pro Analyzer benotzen (wéi ech uewen ernimmt, déi gratis Testversioun ass limitéiert op déi éischt 10 Rummen, awer dëst wäert Iech am Ufank genuch sinn).

Wéi funktionnéiert e Video Codec? Deel 1: Grondlage

Zweeten Deel: Wéi de Video Codec funktionnéiert

Source: will.com

Kaaft zouverlässeg Hosting fir Site mat DDoS Schutz, VPS VDS Server 🔥 Kaaft zouverléissegt Websäithosting mat DDoS-Schutz, VPS VDS Server | ProHoster