Si funksionon një kodek video? Pjesa 1: Bazat

Pjesa e dytë: Si funksionon kodiku i videos

Çdo raster imazh mund të paraqitet në formë matricë dydimensionale. Kur bëhet fjalë për ngjyrat, ideja mund të zhvillohet duke parë një imazh si matricë tredimensionale, në të cilën përdoren dimensione shtesë për të ruajtur të dhënat për secilën prej ngjyrave.

Nëse e konsiderojmë ngjyrën përfundimtare si një kombinim të të ashtuquajturave. ngjyrat kryesore (e kuqe, jeshile dhe blu), në matricën tonë tredimensionale ne përcaktojmë tre plane: i pari për të kuqe, i dyti për jeshil dhe i fundit për blu.
Si funksionon një kodek video? Pjesa 1: Bazat
Çdo pikë në këtë matricë do ta quajmë piksel (element imazhi). Çdo piksel përmban informacion në lidhje me intensitetin (zakonisht si vlerë numerike) të secilës ngjyrë. Për shembull, piksel i kuq do të thotë që përmban 0 jeshile, 0 blu dhe maksimumi i kuq. Pixel rozë mund të formohet duke përdorur një kombinim të tre ngjyrave. Duke përdorur një interval numerik nga 0 në 255, një piksel rozë përcaktohet si E kuqe = 255, E gjelbër = 192 и Blu = 203.

Si funksionon një kodek video? Pjesa 1: Bazat

Ky artikull është publikuar me mbështetjen e EDISON.

Ne jemi duke u zhvilluar aplikacione për mbikqyrje video, transmetim video, dhe gjithashtu jemi fejuar video incizim në dhomën e kirurgjisë.

Mënyra alternative për të koduar një imazh me ngjyra

Ka shumë modele të tjera për përfaqësimin e ngjyrave që përbëjnë një imazh. Për shembull, mund të përdorni një paletë të indeksuar, e cila kërkon vetëm një bajt për të përfaqësuar çdo piksel, në vend të treve që kërkohen kur përdorni modelin RGB. Në një model të tillë, është e mundur të përdoret një matricë 2D në vend të një matrice 3D për të përfaqësuar çdo ngjyrë. Kjo kursen kujtesën, por jep një gamë më të vogël ngjyrash.

Si funksionon një kodek video? Pjesa 1: Bazat

RGB

Për shembull, hidhini një sy kësaj fotoje më poshtë. Fytyra e parë është plotësisht e lyer. Të tjerët janë aeroplanët e kuq, jeshil dhe blu (intensiteti i ngjyrave përkatëse tregohet në shkallë gri).

Si funksionon një kodek video? Pjesa 1: Bazat

Shohim që nuancat e së kuqes në origjinal do të jenë në të njëjtat vende ku vërehen pjesët më të ndritshme të fytyrës së dytë. Ndërsa kontributi i blusë mund të shihet kryesisht vetëm në sytë e Marios (fytyra e fundit) dhe elementët e veshjes së tij. Vini re se ku kontribuojnë më pak të tre planet me ngjyra (pjesët më të errëta të imazheve) - mustaqet e Marios.

Për të ruajtur intensitetin e secilës ngjyrë, kërkohet një numër i caktuar bitash - kjo sasi quhet thellësi bit. Le të themi se shpenzohen 8 bit (bazuar në një vlerë nga 0 në 255) për plan ngjyrash. Pastaj kemi një thellësi ngjyrash 24 bit (8 bit * 3 plane R/G/B).

Një veçori tjetër e një imazhi është rezolucioni, që është numri i pikselëve në një dimension. Shpesh shënohet si gjerësia × lartësia, si në imazhin e shembullit 4 nga 4 më poshtë.
Si funksionon një kodek video? Pjesa 1: Bazat

Një tjetër pronë me të cilën merremi kur punojmë me imazhe/video është raporti i aspektit, duke përshkruar marrëdhënien normale proporcionale midis gjerësisë dhe lartësisë së një imazhi ose piksel.

Kur thonë se një film ose foto e caktuar ka përmasa 16 me 9, ata zakonisht nënkuptojnë raporti i pamjes së ekranit (DAR - nga Raporti i aspektit të ekranit). Sidoqoftë, ndonjëherë mund të ketë forma të ndryshme pikselësh individualë - në këtë rast po flasim raporti i pikselëve (PAR - nga Raporti i pamjes së pikselit).

Si funksionon një kodek video? Pjesa 1: Bazat

Si funksionon një kodek video? Pjesa 1: Bazat

Shënim për zonjën: DVD korrespondon me DAR 4 deri në 3

Megjithëse rezolucioni aktual i DVD-së është 704x480, ai ende ruan një raport aspekti 4:3 sepse PAR është 10:11 (704x10 / 480x11).

Dhe së fundi, ne mund të përcaktojmë video si një sekuencë e n korniza për periudhën e kohës, e cila mund të konsiderohet një dimension shtesë. A n atëherë është shpejtësia e kuadrove ose numri i kornizave për sekondë (FPS - nga Kornizat për sekondë).

Si funksionon një kodek video? Pjesa 1: Bazat

Numri i biteve në sekondë që kërkohet për të shfaqur një video është i tij shpejtësia e transmetimit - shpejtësia e biteve.

shpejtësia e biteve = gjerësia * lartësia * thellësia e bitit * kornizat për sekondë

Për shembull, një video 30 fps, 24 bps, 480x240 do të kërkonte 82,944,000 bps ose 82,944 Mbps (30x480x240x24) - por kjo ndodh nëse nuk përdoret asnjë metodë kompresimi.

Nëse shpejtësia e transferimit pothuajse konstante, atëherë quhet shpejtësi konstante transmetimi (CBR - nga shpejtësia konstante e biteve). Por gjithashtu mund të ndryshojë, në këtë rast quhet shpejtësia e ndryshueshme baud (VBR - nga shpejtësia e ndryshueshme e bitit).

Ky grafik tregon VBR të kufizuar, ku jo shumë bit harxhohen në rastin e një kornize krejtësisht të errët.

Si funksionon një kodek video? Pjesa 1: Bazat

Inxhinierët fillimisht zhvilluan një metodë për të dyfishuar shpejtësinë e perceptuar të kornizës së një ekrani video pa përdorur gjerësi bande shtesë. Kjo metodë njihet si video e ndërthurur; Në thelb, ai dërgon gjysmën e ekranit në "kornizën" e parë dhe gjysmën tjetër në "kornizën" e ardhshme.

Aktualisht, skenat janë dhënë kryesisht duke përdorur teknologjitë e skanimit progresiv. Është një metodë e shfaqjes, ruajtjes ose transmetimit të imazheve në lëvizje, në të cilën të gjitha linjat e çdo kornize vizatohen në mënyrë sekuenciale.

Si funksionon një kodek video? Pjesa 1: Bazat

Epo! Tani jemi të vetëdijshëm se si një imazh përfaqësohet në mënyrë dixhitale, si janë renditur ngjyrat e tij, sa bit në sekondë shpenzojmë për të shfaqur videon, nëse shpejtësia e biteve është konstante (CBR) ose e ndryshueshme (VBR). Ne dimë për një rezolutë të caktuar duke përdorur një shpejtësi të caktuar kuadri, jemi njohur me shumë terma të tjerë, si video e ndërthurur, PAR dhe disa të tjerë.

Heqja e tepricës

Dihet që video pa kompresim nuk mund të përdoret normalisht. Një video një orë me rezolucion 720p dhe 30 korniza për sekondë do të merrte 278 GB. Ne arrijmë në këtë vlerë duke shumëzuar 1280 x 720 x 24 x 30 x 3600 (gjerësia, lartësia, bitet për pixel, FPS dhe koha në sekonda).

Përdorim algoritmet e kompresimit pa humbje, si DEFLATE (përdorur në PKZIP, Gzip dhe PNG), nuk do të zvogëlojë mjaftueshëm gjerësinë e brezit të kërkuar. Duhet të kërkojmë mënyra të tjera për të kompresuar videon.

Për ta bërë këtë, ju mund të përdorni veçoritë e vizionit tonë. Ne jemi më të mirë në dallimin e shkëlqimit sesa ngjyrës. Një video është një seri imazhesh të njëpasnjëshme që përsëriten me kalimin e kohës. Ka dallime të vogla midis kornizave ngjitur të së njëjtës skenë. Për më tepër, çdo kornizë përmban shumë zona që përdorin të njëjtën ngjyrë (ose të ngjashme).

Ngjyra, shkëlqimi dhe sytë tanë

Sytë tanë janë më të ndjeshëm ndaj shkëlqimit sesa ndaj ngjyrës. Këtë mund ta shihni vetë duke parë këtë foto.

Si funksionon një kodek video? Pjesa 1: Bazat

Nëse nuk e shihni se në gjysmën e majtë të figurës, ngjyrat e katrorëve A и B në fakt janë të njëjta, atëherë kjo është normale. Truri ynë na detyron t'i kushtojmë më shumë vëmendje dritës dhe hijes sesa ngjyrës. Në anën e djathtë midis katrorëve të caktuar ka një kërcyes me të njëjtën ngjyrë - kështu që ne (d.m.th. truri ynë) përcaktojmë lehtësisht se, në fakt, ato janë me të njëjtën ngjyrë.

Le të shohim (në një mënyrë të thjeshtuar) se si funksionojnë sytë tanë. Syri është një organ kompleks i përbërë nga shumë pjesë. Sidoqoftë, ne jemi më të interesuar për kone dhe shufra. Syri përmban rreth 120 milionë shufra dhe 6 milionë kone.

Le ta konsiderojmë perceptimin e ngjyrës dhe shkëlqimit si funksione të veçanta të pjesëve të caktuara të syrit (në fakt, gjithçka është disi më e ndërlikuar, por ne do ta thjeshtojmë atë). Qelizat e shufrës janë kryesisht përgjegjëse për shkëlqimin, ndërsa qelizat e konit janë përgjegjëse për ngjyrën. Konët ndahen në tre lloje, në varësi të pigmentit që përmbajnë: kone S (blu), kone M (jeshile) dhe kone L (të kuqe).

Meqenëse kemi shumë më shumë shufra (shkëlqim) sesa kone (ngjyrë), mund të konkludojmë se jemi më të aftë të dallojmë tranzicionet midis errësirës dhe dritës sesa ngjyrave.

Si funksionon një kodek video? Pjesa 1: Bazat

Karakteristikat e ndjeshmërisë së kontrastit

Studiuesit në psikologjinë eksperimentale dhe shumë fusha të tjera kanë zhvilluar shumë teori të vizionit njerëzor. Dhe njëri prej tyre quhet funksionet e ndjeshmërisë së kontrastit. Ato lidhen me ndriçimin hapësinor dhe kohor. Me pak fjalë, ka të bëjë me sa ndryshime kërkohen përpara se një vëzhgues t'i vërë re. Vini re shumësin e fjalës "funksion". Kjo për faktin se ne mund të matim funksionet e ndjeshmërisë së kontrastit jo vetëm për imazhet bardh e zi, por edhe për ato me ngjyra. Rezultatet e këtyre eksperimenteve tregojnë se në shumicën e rasteve sytë tanë janë më të ndjeshëm ndaj shkëlqimit sesa ndaj ngjyrës.

Meqenëse e dimë se jemi më të ndjeshëm ndaj ndriçimit të imazhit, mund të përpiqemi ta përdorim këtë fakt.

Modeli me ngjyra

Ne kuptuam pak se si të punojmë me imazhe me ngjyra duke përdorur skemën RGB. Ka edhe modele të tjera. Ekziston një model që ndan ndriçimin nga kroma dhe njihet si YCbCr. Nga rruga, ka modele të tjera që bëjnë një ndarje të ngjashme, por ne do ta konsiderojmë vetëm këtë.

Në këtë model ngjyrash Y është një paraqitje e shkëlqimit, dhe gjithashtu përdor dy kanale ngjyrash: Cb (blu e pasur) dhe Cr (e kuqe e pasur). YCbCr mund të rrjedh nga RGB, dhe konvertimi i kundërt është gjithashtu i mundur. Duke përdorur këtë model, ne mund të krijojmë imazhe me ngjyra të plota siç shohim më poshtë:

Si funksionon një kodek video? Pjesa 1: Bazat

Konvertoni midis YCbCr dhe RGB

Dikush do të kundërshtojë: si është e mundur të merren të gjitha ngjyrat nëse nuk përdoret jeshile?

Për t'iu përgjigjur kësaj pyetjeje, le të konvertojmë RGB në YCbCr. Le të përdorim koeficientët e miratuar në standard BT.601, e cila u rekomandua nga njësia ITU-R. Kjo ndarje përcakton standardet për videon dixhitale. Për shembull: çfarë është 4K? Cila duhet të jetë shpejtësia e kuadrove, rezolucioni, modeli i ngjyrave?

Së pari, le të llogarisim ndriçimin. Le të përdorim konstantet e propozuara nga ITU dhe të zëvendësojmë vlerat RGB.

Y = 0.299R + 0.587G + 0.114B

Pasi të kemi ndriçimin, do të ndajmë ngjyrat blu dhe të kuqe:

Cb = 0.564(B - Y)

Cr = 0.713(R - Y)

Dhe ne gjithashtu mund të kthejmë përsëri dhe madje të marrim gjelbër duke përdorur YCbCr:

R = Y + 1.402Cr

B = Y + 1.772Cb

G = Y - 0.344Cb - 0.714Cr

Në mënyrë tipike, ekranet (monitorë, televizorë, ekrane, etj.) përdorin vetëm modelin RGB. Por ky model mund të organizohet në mënyra të ndryshme:

Si funksionon një kodek video? Pjesa 1: Bazat

Nënmostrimi me ngjyra

Me një imazh të përfaqësuar si një kombinim i ndriçimit dhe krominancës, ne mund të shfrytëzojmë ndjeshmërinë më të madhe të sistemit vizual të njeriut ndaj ndriçimit sesa ndaj krominancës duke hequr në mënyrë selektive informacionin. Nën-kampionimi i kromës është një metodë e kodimit të imazheve duke përdorur më pak rezolucion për ngjyrën sesa për ndriçimin.

Si funksionon një kodek video? Pjesa 1: Bazat

Sa lejohet zvogëlimi i rezolucionit të ngjyrave?! Rezulton se tashmë ka disa diagrame që përshkruajnë se si të trajtohet rezolucioni dhe bashkimi (Ngjyra që rezulton = Y + Cb + Cr).

Këto skema njihen si sistemet e zvogëlimit të mostrave dhe shprehen si një raport 3-fish - a:x:y, i cili përcakton numrin e mostrave të sinjaleve të ndriçimit dhe ndryshimit të ngjyrave.

a — Standardi i kampionimit horizontal (zakonisht i barabartë me 4)
x — numri i mostrave të kromës në rreshtin e parë të pikselëve (rezolucion horizontal në lidhje me a)
y — numri i ndryshimeve në mostrat e kromës midis rreshtave të parë dhe të dytë të pikselëve.

Përjashtim është 4:1:0, duke siguruar një mostër krome në çdo bllok rezolucioni të ndriçimit 4 me 4.

Skemat e zakonshme të përdorura në kodekët modernë:

  • 4:4:4 (pa zbritje të mostrave)
  • 4:2:2
  • 4:1:1
  • 4:2:0
  • 4:1:0
  • 3:1:1

YCbCr 4:2:0 - shembull i shkrirjes

Këtu është një imazh i bashkuar duke përdorur YCbCr 4:2:0. Vini re se ne po shpenzojmë vetëm 12 bit për pixel.

Si funksionon një kodek video? Pjesa 1: Bazat

Kështu duket i njëjti imazh, i koduar me llojet kryesore të nënmostrimit të ngjyrave. Rreshti i parë është YCbCr përfundimtar, rreshti i poshtëm tregon rezolucionin e kromit. Rezultate shumë të mira, duke marrë parasysh humbjen e lehtë në cilësi.

Si funksionon një kodek video? Pjesa 1: Bazat

E mbani mend kur numëruam 278 GB hapësirë ​​ruajtëse për të ruajtur një skedar video një orë në rezolucion 720p dhe 30 korniza për sekondë? Nëse përdorim YCbCr 4:2:0, atëherë kjo madhësi do të zvogëlohet përgjysmë - 139 GB. Deri më tani, është ende larg nga një rezultat i pranueshëm.

Ju mund ta merrni vetë histogramin YCbCr duke përdorur FFmpeg. Në këtë imazh, bluja dominon mbi të kuqen, e cila është qartë e dukshme në vetë histogramin.

Si funksionon një kodek video? Pjesa 1: Bazat

Ngjyra, shkëlqimi, gamë ngjyrash - rishikim video

Ju rekomandojmë të shikoni këtë video fantastike. Ai shpjegon se çfarë është shkëlqimi, dhe në përgjithësi të gjitha pikat janë me pika ё në lidhje me shkëlqimin dhe ngjyrën.

Llojet e kornizave

Le të vazhdojmë. Le të përpiqemi të eliminojmë tepricën e kohës. Por së pari, le të përcaktojmë disa terminologji bazë. Le të themi se kemi një film me 30 korniza në sekondë, këtu janë 4 kornizat e para të tij:

Si funksionon një kodek video? Pjesa 1: Bazat Si funksionon një kodek video? Pjesa 1: Bazat Si funksionon një kodek video? Pjesa 1: Bazat Si funksionon një kodek video? Pjesa 1: Bazat

Mund të shohim shumë përsëritje në korniza: për shembull, një sfond blu që nuk ndryshon nga korniza në kornizë. Për të zgjidhur këtë problem, ne mund t'i klasifikojmë ato në mënyrë abstrakte në tre lloje kornizash.

I-korniza (IKorniza ntro)

I-frame (korniza e referencës, korniza kryesore, korniza e brendshme) është e pavarur. Pavarësisht nga ajo që dëshironi të vizualizoni, një kornizë I është në thelb një fotografi statike. Korniza e parë është zakonisht një kornizë I, por ne do të vëzhgojmë rregullisht kornizat I edhe midis kornizave jo të para.

Si funksionon një kodek video? Pjesa 1: Bazat

korniza P (PKorniza e redikuar)

Korniza P (korniza parashikuese) përfiton nga fakti se pothuajse gjithmonë imazhi aktual mund të riprodhohet duke përdorur kornizën e mëparshme. Për shembull, në kornizën e dytë ndryshimi i vetëm është që topi të ecë përpara. Mund të marrim kornizën 2 thjesht duke modifikuar pak kornizën 1, duke përdorur vetëm ndryshimin midis këtyre kornizave. Për të ndërtuar kornizën 2, i referohemi kornizës së mëparshme 1.

Si funksionon një kodek video? Pjesa 1: BazatSi funksionon një kodek video? Pjesa 1: Bazat

korniza B (Bi-korniza parashikuese)

Po lidhjet jo vetëm me të kaluarën, por edhe me kornizat e ardhshme për të siguruar kompresim edhe më të mirë?! Ky është në thelb një kornizë B (kornizë me dy drejtime).

Si funksionon një kodek video? Pjesa 1: BazatSi funksionon një kodek video? Pjesa 1: BazatSi funksionon një kodek video? Pjesa 1: Bazat

Tërheqja e ndërmjetme

Këto lloje të kornizave përdoren për të siguruar kompresimin më të mirë të mundshëm. Ne do të shohim se si ndodh kjo në seksionin tjetër. Tani për tani, le të theksojmë se më "i shtrenjti" për sa i përket memories së konsumuar është korniza I, korniza P është dukshëm më e lirë, por opsioni më fitimprurës për video është korniza B.

Si funksionon një kodek video? Pjesa 1: Bazat

Tepricë e përkohshme (parashikim ndërkornizor)

Le të shohim se cilat opsione kemi për të minimizuar përsëritjen me kalimin e kohës. Ne mund ta zgjidhim këtë lloj tepricë duke përdorur metoda të parashikimit të kryqëzuar.

Ne do të përpiqemi të shpenzojmë sa më pak bit të jetë e mundur për të koduar një sekuencë kornizash 0 dhe 1.

Si funksionon një kodek video? Pjesa 1: Bazat

Ne mund të prodhojmë zbritje, thjesht zbresim kornizën 1 nga korniza 0. Marrim kornizën 1, përdorim vetëm ndryshimin midis tij dhe kornizës së mëparshme, në fakt ne kodojmë vetëm mbetjen që rezulton.

Si funksionon një kodek video? Pjesa 1: Bazat

Po sikur t'ju thosha se ekziston një metodë edhe më e mirë që përdor edhe më pak pjesë?! Së pari, le të ndajmë kornizën 0 në një rrjet të qartë të përbërë nga blloqe. Dhe pastaj ne do të përpiqemi të përputhim blloqet nga korniza 0 me kornizën 1. Me fjalë të tjera, ne do të vlerësojmë lëvizjen midis kornizave.

Nga Wikipedia - kompensimi i lëvizjes së bllokut

Kompensimi i lëvizjes së bllokut ndan kornizën aktuale në blloqe që nuk mbivendosen dhe vektori i kompensimit të lëvizjes raporton origjinën e blloqeve (një keqkuptim i zakonshëm është se i mëparshëm korniza është e ndarë në blloqe që nuk mbivendosen, dhe vektorët e kompensimit të lëvizjes tregojnë se ku shkojnë ato blloqe. Por në fakt, është e kundërta - nuk është korniza e mëparshme që analizohet, por tjetra; nuk është e qartë se ku po lëvizin blloqet, por nga kanë ardhur). Zakonisht blloqet e burimit mbivendosen në kornizën burimore. Disa algoritme të kompresimit të videove mbledhin kornizën aktuale nga pjesë të as edhe një, por disa kornizave të transmetuara më parë.

Si funksionon një kodek video? Pjesa 1: Bazat

Gjatë procesit të vlerësimit, ne shohim se topi ka lëvizur nga (x= 0, y= 25) në (x= 6, y=26), vlerat x и y përcaktoni vektorin e lëvizjes. Një hap tjetër që mund të bëjmë për të ruajtur bitet është të kodojmë vetëm ndryshimin e vektorëve të lëvizjes midis pozicionit të bllokut të fundit dhe atij të parashikuar, kështu që vektori i lëvizjes përfundimtare do të jetë (x=6-0=6, y=26-25=1 ).

Në një situatë reale, ky top do të ndahej në n bllokon, por kjo nuk e ndryshon thelbin e çështjes.

Objektet në kornizë lëvizin në tre dimensione, kështu që kur topi lëviz, ai mund të bëhet vizualisht më i vogël (ose më i madh nëse lëviz drejt shikuesit). Është normale që nuk do të ketë një përputhje të përsosur midis blloqeve. Këtu është një pamje e kombinuar e vlerësimit tonë dhe tablosë reale.

Si funksionon një kodek video? Pjesa 1: Bazat

Por ne shohim se kur përdorim vlerësimin e lëvizjes, ka dukshëm më pak të dhëna për kodim sesa kur përdorim një metodë më të thjeshtë të llogaritjes së deltës midis kornizave.

Si funksionon një kodek video? Pjesa 1: Bazat

Si do të dukej kompensimi real i lëvizjes

Kjo teknikë zbatohet për të gjitha blloqet menjëherë. Shpesh topi ynë lëvizës i kushtëzuar do të ndahet në disa blloqe menjëherë.

Si funksionon një kodek video? Pjesa 1: Bazat

Ju mund të merrni një ndjenjë për këto koncepte vetë duke përdorur Jupiteri.

Për të parë vektorët e lëvizjes, mund të krijoni një video parashikimi të jashtëm duke përdorur ffmpeg.

Si funksionon një kodek video? Pjesa 1: Bazat

Ju gjithashtu mund të përdorni Intel Video Pro Analyzer (është e paguar, por ka një provë falas që është e kufizuar vetëm në dhjetë kornizat e para).

Si funksionon një kodek video? Pjesa 1: Bazat

Teprica hapësinore (parashikim i brendshëm)

Nëse analizojmë çdo kornizë në një video, do të gjejmë shumë zona të ndërlidhura.

Si funksionon një kodek video? Pjesa 1: Bazat

Le të kalojmë përmes këtij shembulli. Kjo skenë përbëhet kryesisht nga ngjyrat blu dhe të bardha.

Si funksionon një kodek video? Pjesa 1: Bazat

Ky është një kornizë I. Ne nuk mund të marrim kornizat e mëparshme për parashikim, por mund ta kompresojmë atë. Le të kodojmë zgjedhjen e bllokut të kuq. Nëse shikojmë fqinjët e saj, vëmë re se rreth saj ka disa tendenca ngjyrash.

Si funksionon një kodek video? Pjesa 1: Bazat

Supozojmë se ngjyrat përhapen vertikalisht në kornizë. Që do të thotë se ngjyra e pikselëve të panjohur do të përmbajë vlerat e fqinjëve të saj.

Si funksionon një kodek video? Pjesa 1: Bazat

Një parashikim i tillë mund të rezultojë i pasaktë. Është për këtë arsye që ju duhet të aplikoni këtë metodë (parashikim i brendshëm), dhe më pas të zbritni vlerat reale. Kjo do të na japë një bllok të mbetur, i cili do të rezultojë në një matricë shumë më të ngjeshur në krahasim me origjinalin.

Si funksionon një kodek video? Pjesa 1: Bazat

Nëse dëshironi të praktikoni me parashikime të brendshme, mund të krijoni një video të makroblloqeve dhe parashikimet e tyre duke përdorur ffmpeg. Për të kuptuar kuptimin e secilës ngjyrë të bllokut, do t'ju duhet të lexoni dokumentacionin ffmpeg.

Si funksionon një kodek video? Pjesa 1: Bazat

Ose mund të përdorni Intel Video Pro Analyzer (siç e përmenda më lart, versioni i provës falas është i kufizuar në 10 kornizat e para, por kjo do t'ju mjaftojë në fillim).

Si funksionon një kodek video? Pjesa 1: Bazat

Pjesa e dytë: Si funksionon kodiku i videos

Burimi: www.habr.com

Shto një koment