Pakatun videovirran kehystyypit ovat menetelmiä seuraavan kehyksen tietojen koodaamiseksi ja tallentamiseksi , ja ne eroavat toisistaan sen suhteen, onko tällä kehyksellä riippuvuuksia edellisistä ja myöhemmistä.
Kehys on peruskoodausrakenne. Seuraavat parametrit liittyvät kehykseen: aika, kehystyyppi, puskurin alustuslippu, liikevektorien resoluutio ja niiden järjestys sekä käyttäjätiedot
Tyypillisesti kehys jaetaan neliömäisiin makrolohkoihin ja linkkityyppi kullekin makrolohkolle määritetään erikseen, mutta koko kehyksen tyypin mukaan:
Uusi MPEG-4 AVC/H.264 -standardi esittelee myös SI- ja SP-kehysten käsitteen .
I-kehykset koodataan samalla tavalla kuin JPEG -kehykset . Algoritmin variantissa, jossa on vain I-kehyksiä, videosekvenssi muunnetaan M-JPEG :ksi . I-kehyksiä voidaan käyttää satunnaiskäyttöön, koska ne eivät vaadi lisätietoja. I-kehyksillä on alhaisin pakkaussuhde.
P-kehykset koodataan käyttämällä aiempia I- ja P-kehyksiä. Esimerkiksi kehys, joka seuraa välittömästi I-kehystä, käyttää muuttumatonta tietoa kyseisestä I-kehyksestä ja täyttää sen kehysten välisellä erollaan. Jos tätä P-kehystä seuraa toinen P-kehys, se puolestaan ottaa muuttumattoman tiedon edellisestä P-kehyksestä (joka puolestaan käytti muuttumatonta I-kehysinformaatiota) ja täydentää sitä kehysten välisellä erollaan.
B-kehyksiä käytetään interpolointina sekä I- että P-tyypin edellisten ja seuraavien kehysten välillä.
MPEG-1 :llä on ainutlaatuinen kehystyyppi, jota ei löydy myöhemmistä videostandardeista. D-kehyksiin ei viitata koskaan I-, P- tai B-kehyksillä. D-kehyksiä käytetään vain nopeaan videon esikatseluun, kuten halutun videon nopeaan etsimiseen.
Hieman paremmalla dekoodauslaitteistolla esikatselu voidaan tehdä dekoodaamalla I-kehyksiä D-kehysten sijaan. Tämä tarjoaa paremman esikatselun, koska I-kehykset pakataan pienemmillä häviöillä. Jos kooderi voi olettaa, että I-kehysten nopea dekoodaus on saatavilla dekoodereissa, se voi säästää bittejä olemalla lähettämättä D-kehyksiä (täten parantaa videosisällön pakkausta). Tästä syystä D-kehyksiä käytetään harvoin MPEG-1-videokoodauksessa, eikä D-frame-ominaisuutta ole sisällytetty mihinkään myöhempään videokoodausstandardiin.
Kuvien ryhmä (GOP) on pienin itsenäinen koodausrakenne videojaksossa. Satunnaispääsy videojaksoon on mahdollista kehysryhmään saakka. Kehysryhmään liittyvät tiedot sisältävät aikakoodin, suljetun lipun ja käyttäjätiedot.
GOP-rakennetta merkitään usein kahdella numerolla, kuten M = 3, N = 12. Ensimmäinen numero ilmaisee kahden ankkurikehyksen välisen etäisyyden (I tai P). Toinen kertoo kahden täydellisen kuvan (I-kehyksen) välisen etäisyyden: tämä on GOP:n koko. Esimerkiksi M = 3, N = 12, GOP-rakenne on IBBBPBBPBBPBBI. M-parametrin sijasta voit käyttää B-kehysten enimmäismäärää kahden peräkkäisen ankkurikehyksen välillä.
Esimerkiksi sekvenssissä, jonka kuvio on IBBBPBBBBPBBBBBI, GOP-koko ( N-arvo ) on 15 (kahden I-kehyksen välinen pituus) ja kahden ankkurikehyksen välinen etäisyys ( M-arvo ) on 5 (I- ja P-kehysten välinen pituus, tai kahden peräkkäisen P-kehyksen välinen pituus ).
Videovirran MJPEG- ja DV - koodekeissa kaikki kehykset ovat I-tyyppisiä.
"Kolmannen version" MPEG4-koodekkien perheessä (suosituin oli DivX 3.11, DivX 4.12 ja OpenDivX tunnetaan myös) on kahden tyyppisiä kehyksiä - I ja P. B-kehyksiä ei tarjota. Tilanne on sama On2 :n koodekkiperheessä: VP3 , VP6 , VP8 .
Lisäksi monissa nykyaikaisissa koodekeissa on mahdollisia asetuksia, jotka estävät B-kehysten luomisen prosessorin tehon kustannusten vähentämiseksi reaaliaikaisessa käsittelyssä.
ITU-T VCEG :n ja ISO / IEC MPEG :n hyväksymät videon pakkausstandardit pakkaavat tyypillisesti vain kehysten väliset erot. Esimerkiksi kohtauksessa, jossa henkilö kävelee paikallaan olevien esineiden taustaa vasten, on tallennettava vain tiedot muuttuvista alueista (esim. käyttämällä liikekompensaatiota , joka tallentaa lohkon sijainnin muutosvektorin tai jos vastaavaa aluetta ei ole löytyi edellisestä kehyksestä, tämä alue on pakattu itsenäiseksi kuvaksi). Kohtauksen osia, jotka eivät muutu, ei tallenneta streamiin, mikä lisää huomattavasti pakkaussuhdetta verrattuna muotoihin, jotka käyttävät kunkin kehyksen itsenäistä pakkausta.
Esimerkiksi virran I- ja P-kehyksille IPPPPPPPPPPPP… -ketjut muodostuvat, kun ensimmäinen kehys kompressoidaan itsenäisesti, ja seuraavat kompressoidaan ensimmäiseen kehykseen viitaten. Tämä on yksinkertaisin esimerkki erityyppisten kehysten käyttämisestä streamissa.
Vaikka P-kehysten käytön tärkein etu on pakkaussuhteen kasvu, niiden suurin haitta on dramaattisesti kasvava kehysten pääsyaika, koska koko kehysketju lähimmästä I-kehyksestä on purettava kokonaan halutun kehyksen saamiseksi. Erityisesti, jos pakkaus on asetettu parametreihin, jotka maksimoivat pakkaussuhteen siten, että I-kehykset ovat harvinaisia, mielivaltaisen kehyksen näyttämisen viive virrassa voi olla hyvin havaittavissa.
MPEG-2- , MPEG-4- , H.261- , H.263- ja H.264 -standardien mukaisella videokoodekilla pakatussa streamissa käytetään kolmea päätyyppiä kehyksiä : I-frames ( englanninkielisistä Intra-kuvista ), P -kehykset ( ennustetuista kuvista ) ja B-kehykset ( kaksiennusteisista kuvista tai kaksisuuntaisista kuvista ).
B-kehysten käyttö tarkoittaa, että annettu kehys viittaa kahteen vierekkäiseen I- tai P-kehykseen virrassa, jolloin kehysketju voi näyttää tältä: IBPBPBPBPBPBPBPBP . Yleisimmin käytettyjä ketjuja ovat IBBBPBBPBBPBBPBBPBBPBBPBBP, joissa B-kehykset viittaavat edelleen kahteen lähimpään I- tai P-kehykseen ja ovat toisistaan riippumattomia.
Tämän rakenteen avulla on mahdollista nopeuttaa mielivaltaisen kehyksen saamista virrassa 2-3 kertaa, koska sen saamiseksi on tarpeen purkaa vain joka toinen (kolmas) kehys (joka on P-kehys ), alkaen I-kehyksestä. Myös "keikka eteenpäin esityksen kanssa" nopeus kasvaa useita kertoja.
Xvid - koodekilla sopivilla asetuksilla voit saada 4 tai useampia B-kehystä peräkkäin. Ja tällainen virta toistetaan oikein itse, samoin kuin ffdshow -dekooderi . Jotkut dekooderit eivät pysty toistamaan oikein useampaa kuin yhtä B-kehystä peräkkäin.[ tosiasian merkitys? ]
Puristusmenetelmät _ | |||||||
---|---|---|---|---|---|---|---|
Teoria |
| ||||||
Häviötön |
| ||||||
Audio |
| ||||||
Kuvat |
| ||||||
Video |
|