NOVE TEHNOLOGIJE<>
032001<><>

DivX ;-)

MP3 za video

Ideja da se celovečernji film smesti na samo jedan CD, sa zanemarljivim gubicima kvaliteta, izgleda neverovatno. Međutim...

I) Originalni kadar sa DVD-a (maksimalan kvalitet), II) isti kadar kompresovan Fast Motion kodekom (bitrate 2000) i III) Low Motion kodekom (bitrate 400)
Otkako su kompjuteri postali multimedijalne sprave, gledanje filmova na njima je već postala uobičajena pojava. Počelo je sa VCD (Video CD) diskovima, da bi se najzad stiglo i do DVD-a. Ali, kako DVD sporo krči put do publike, prvenstveno zbog visoke cene, u poslednje vreme je DivX reč koja odzvanja u ušima filmofila. Reklamiran kao „MP3 za video” ili „Filmovi DVD kvaliteta na jednom CD-u”, DivX je napravio pravu pomamu među zaljubljenicima u film. Kako i ne bi, kad su DVD diskovi još uvek skupi, snimače da i ne spominjemo, pa i sama pomisao smeštanja filma na samo jedan CD sa zanemarljivim gubicima u kvalitetu, izgleda neverovatno. Pokušaćemo da damo odgovor da li je zaista tako i šta se može očekivati od novog formata.

Šta je u stvari DivX?

Sve je počelo u decembru 1999. godine, kada je MPEG organizacija („Motion Pictures Expert Group”) ustanovila novi standard za kompresiju video signala – MPEG4 v3. Novi format doneo je značajna poboljšanja u kompresiji slike, što ga čini veoma pogodnim za primenu na Internetu, VoD (Video On Demand, video na zahtev), video-telefone i slične stvari. Uvidevši velike potencijale, „Microsoft” je napravio besplatni Windows Media Tools koji je, pored ostalog, sadržao i kodek (codec, koder-dekoder) zvani MS-MPEG4, baziran na najnovijem MPEG standardu. Taj kodek je prvobitno mogao da snima AVI fajlove, ali se „Microsoft” kasnije predomislio i umesto njega napravio potpuno nov format ASF (Advanced Streaming Format). Sve to ne bi bilo ništa loše da „Microsoft” zatim nije, ne bi li zgrnuo još malo para, taj novi format patentirao i zabranio programerima da ga ugrađuju u svoje programe. Cilj je bio jasan – ako ASF postane dominantan format, „Microsoft” bi imao punu kontrolu nad kreiranjem i distribucijom digitalnih medija.

Princip kompozicije lejera (slojeva) u MPEG4 kompresiji
No, mogućnost da se mnogo kvalitetne slike smesti na malom prostoru takođe se dopala i piratskoj industriji. Slobodoumni ljudi tako su napravili mali (hakerski) zahvat na „Microsoftovom” kodeku i omogućili snimanje u AVI formatu, čime je otvoren put najmoćnijem kompresoru današnjice. Novi kodek nazvan je DivX ;-) (sa sve smajlijem), a piratska industrija jedva ga je dočekala. Ostalo je istorija.

Naravno, jasno je da se ovim kodekom može kompresovati bilo koja video slika, ali je svakako najzanimljivija mogućnost presnimavanje filmova sa DVD-a na CD, pa ćemo se time najviše pozabaviti. Neki su zagovornici ideje da se filmovi snimaju na dva CD-a, uz bolji kvalitet (kao što je to bio slučaj sa VCD filmovima), ali je pravi izazov smestiti film na jedan CD što, kao što ćemo videti, nije nimalo lako.

Pogledajmo najpre kako DivX postiže toliko bolju kompresiju, da može nekoliko gigabajta filma da sabije na samo jedan CD. DivX (tj. MPEG4), generalno se zasniva na istom principu kao i prethodni MPEG formati, a to je kosinusna transformacija i predviđanje kretanja, ali ide i korak dalje od uobičajene kompresije, tako što raščlanjuje sliku na slojeve. Sofisticiran algoritam potom slojeve (tzv. vizuelne objekte), tretira kao sprajtove koji se pomeraju ispred statične pozadine (kao npr. teniser na slici), čime se postiže značajna ušteda, jer se pamti samo položaj kamere i pojedini delovi slike. Znači, što je scena mirnija, ušteda je veća i obrnuto.

Low motion

DivX kodek sastoji se iz dva dela, tzv. Low Motion i Fast Motion, a razlika između njih je u načinu na koji se određuje potrebna količina podataka za sliku (bitrate). Tako Low Motion ima uslovno rečeno konstantan bitrate, ali to se pre može shvatiti kao limit, jer ako je na primer zadato 1000 Kbit/s, a za neku scenu je dovoljno i manje, ona će zauzeti onoliko koliko je dovoljno. Međutim, ako zadati bitrate manji nego što je potrebno (a mora da bude, da bi film stao na CD), pošto se svaka slika generiše na osnovu prethodnih, dekoder nema dovoljno podataka da detaljno opiše kretanje, pa počinju da se pojavljuju greške. To se najbolje može primetiti kada, na primer, glumac stoji pa se naglo pomeri. U tom slučaju pojaviće se mrljavi tragovi na mestu gde je stajao, što izgleda ružno.

Zato se na svakih nekoliko sekundi (obično svakih 5-10 sec) moraju postavljati tzv. ključni frejmovi (key-frames) koji će regenerisati sliku. Logično je: što su češći key-frejmovi, manje su greške koje nastaju zbog naglih promena i slika je bolja. Međutim, pošto key-frejmovi sadrže kompletnu informaciju o slici, povećava se i protok (bitrate), pa treba naći pravi odnos.

Nažalost, koliko god česti key-frejmovi bili, redovno se dešava da kad se promeni kadar između dva key-frejma ostanu mrlje od prethodne scene, no i za to postoji rešenje – DivX VKI (Variable Keyframe Interval). On omogućava da se ključni frejmovi postavljaju proizvoljno, a najlogičnije je da to bude na početku svakog kadra, čime se obezbeđuje da frejmovi koji dolaze uvek proističu iz sličnog frejma, pa su onda i greške manje. Poslednja verzija DivX kodeka (3.22) sadrži mogućnost detekcije promene kadra da bi se tu postavili key-frejmovi, ali to ne radi baš najbolje – postavlja ih i tamo gde nije potrebno. Postoje programi koji to rade daleko bolje jer se može podešavati i osetljivost detekcije, kao što su AviUtl, Lotus M4c, Dvd2AviAR i drugi.

Pomenuti metod dovoljan je ako je kretanje u kadru malo. Međutim, prilikom naglih pokreta kamere, recimo u intenzivnim akcionim scenama, skoro svaki frejm se drastično razlikuje, pa se javlja izražena pikselizacija veličine 8x8 tačaka, što izgleda loše i neupotrebljivo. Zato se Low Motion pri malim bitrejtovima može koristiti isključivo za statične scene – u suprotnom, jedino rešenje je dodavanje još key-frejmova, smanjivanje rezolucije ili povećavanje bitrejta. U praksi, za smeštanje filma na jedan CD ne vredi ni razmišljati o Low Motionu.

Fast Motion

Fast Motion ima drugačiji pristup, jer koristi varijabilni bitrate. Za svaki frejm dozira se protok podataka koliki je potreban i tako se štedi. Međutim, ni to ne radi uvek dobro. Ovde akcione scene izgledaju odlično, ali je kod statičnih bitrate previše mali pa se opet javlja „mozaik”. Povećavanje bitratea ne pomaže, jer se on dodaje samo kad ima kretanja. Ako niste ograničeni prostorom (npr. snimate film na dva CD-a), uvek se može postići bolja slika sa Low Motion kodekom, ako mu se dodeli dovoljan bitrate.

Iz ovoga sledi da ako je Low Motion dobar za statične scene, a Fast Motion za akciju, bilo bi idealno kombinovati ih da bi se dobio maksimalni kvalitet na što manjem prostoru. Tako je nastala tehnika zvana MM4 (Multipass MPEG4). Ona se zasniva na tome da se film dva (ili više) puta kompresuje, jednom sa Low Motion, a jednom sa Fast Motion kodekom, a zatim propusti kroz poseban program (Project DivX, MakeFilm, AviRevolution i sl.), koji upoređuje scene i bira one koje su bolje. Tako se definitivno dobija bolji kvalitet, ali to dodatno komplikuje proces i zahteva više vremena.

Uzgred, treba napomenuti i da kod DivX-a generalno postoji problem – kako podesiti bitrate pre kompresije da bi se dobio fajl određene dužine. Postoje razni programi za bitrate kalkulaciju, ali su svi oni beskorisni, jer na dužinu fajla utiče više parametara (bitrate je promenljiv, broj key-frejmova, vrsta scene itd.), pa je praktično nemoguće izračunati koliki će fajl ispasti posle kompresije. Zato je MM4 jedini način da se uvek precizno natempira konačna dužina AVI fajla tako da ispunjava čitav CD.

Uopšte, pošto su filmovi mahom wide screen formata (ne ispunjavaju ceo ekran), na jedan CD uglavnom može da se smesti film do dva sata. Što se kvaliteta slike tiče, obično je bolje da slika bude malo mutnija nego da po njoj budu mrlje koje bodu oči. U praksi to znači da se DVD rezolucija od 720x480 mora spustiti na 640 ili manje, ali to je za svaki film drugačije i zavisi od dužine i vrste filma. MM4 postupkom može se „iscediti” bolji kvalitet, samo je pitanje da li se isplati utrošiti toliko vremena. Generalno, slika je lošija od DVD-a, ali je kvalitetnija od uobičajenih VCD filmova ili čak od VHS-a, što i ne izgleda tako loše, naročito ako se posmatra sa distance.

Kompresovanje slike

Kada znamo kako funkcioniše DivX, možemo prionuti i na prebacivanje filma. Prvi korak u prebacivanju DVD filma na CD jeste ripovanje. Pošto su filmovi na DVD-u zaštićeni 40-bitnom enkripcijom, moraju se prvo „otključati” posebnim programom (VobDec, DeCSS itd.) i presnimiti na disk. Svi podaci o filmu nalaze se u VOB (Video Object) fajlovima, koji pored slike sadrže i titlove, višekanalni AC3 zvuk itd.

Kad imamo VOB, potreban nam je i program koji može da ga pročita i snimi u AVI. Jedan od prvih programa koji su omogućili kompresovanje VOB-ova jeste Flask (http://go.to/flaskmpeg). Treba odmah naglasiti da je kompresovanje celog filma dugotrajan proces, za koji je potreban procesor bar na 700 MHz. Čak i tada, kompresovanje filma od dva sata traje 7 do 8 sati! Proces je toliko zahtevan da je Flask počeo da služi kao referenca za testiranje brzine novih procesora (postoje i optimizovane verzije za Intel i AMD). Međutim, time nije sve gotovo, jer ako niste dobro procenili rezoluciju i dužinu fajla, vrlo je verovatno da ćete morati da ponovite ceo postupak.

Još jedan program vredan pažnje jeste AviRevolution (http://go.to/avirevolution). Pored toga što omogućava miksovanje dva fajla, sadrži i unapređenu verziju enkodera Mpeg2Avi, koji ima dual output, tako da istovremeno dobijate dva različita fajla. Najnovija verzija poseduje i tzv. kvazivarijabilni bitrate, koji koristi različitu vrednost bitratea između key-frejmova, povećavajući tako kvalitet Low Motion kodeka.

DVD2AVI takođe može da kompresuje direktno iz VOB-a, ali je njegova najvažnija primena dekodiranje AC3 zvuka, normalizacija i konverzija u WAV format, a tu su i drugi korisni programi kao VirtualDub, AviUtl, FairUse i slični.

Kompresovanje zvuka

Zvuk je takođe bitna stavka u svakom filmu. I ovde DivX donosi napredak, jer omogućava da se zvuk kompresuje nezavisno od slike i to bilo kojom kompresorom. Naravno, najbolji kvalitet postiže dobri stari MP3, ali ako vam kvalitet zvuka nije preterano bitan, možda je bolji izbor WMA (Windows Media Audio). On ima nešto lošiji kvalitet, ali i bolju kompresiju, tako da ostavlja više prostora za sliku. Dobitna kombinacija za zvuk jeste da se dekoduje i normalizuje pomoću alata DVD2AVI, pa onda Virtual Dubom zapakuje i spoji sa slikom, samo treba biti oprezan, jer može doći do desinhronizacije.

Na kraju, da bi ceo film bio kao na DVD-u nedostaje još jedino titl. Kako se on takođe nalazi u VOB fajlovima, i to u vidu slike, treba i njega ripovati. Za to može da posluži, recimo, SubRip ili VobSE koji OCR metodom(!) mogu da prebace titl u kompaktniji tekstualni fajl, koji se zatim lako prikazuje iz, recimo, MicroDVD plejera, zajedno sa poglavljima. Baš kao na pravom DVD-u.

Uživanje ;-)

Za prikazivanje filmova potreban je bar Celeron na 300 MHz. Kvalitet slike može se i poboljšati prilikom prikazivanja, tako što se pomoću bilinearnog filtriranja ublaži pikselizacija. Takođe, treba reći i da postoje razlike u kvalitetu slike u zavisnosti od grafičke kartice na kojoj se gleda. Pošto se za prikaz koristi DirectShow, znači da kartica u toku prikazivanja može da primeni ugrađene efekte kao što su filtriranje, antialiasing i slično, a to se najbolje vidi kod skaliranja slike pri gledanju preko celog ekrana ili u prozoru koji je veći ili manji od stvarne rezolucije snimka.

Kada se sve uzme u obzir, da bi se kvalitetno prebacio film sa DVD-a treba dosta truda i vremena. Slika nije idealna i mogućnosti za unapređenje svakako još ima. Već su najavljeni i drugi kodeci bazirani na MPEG4 specifikaciji poput Angel Potiona, 3ivX-a, OpenDivX-a, Windows Media Playera 8 itd. koji najavljuju i 30% manje fajlove, uz isti kvalitet. Mada se zvanična filmska industrija još nije oglasila, mogućnost lake distribucije kvalitetnih filmova može joj postati ozbiljna pretnja, slično onome što je MP3 učinio muzičkoj industriji.

• • •

Jedno je sigurno – DivX je doneo značajan pomak i posle njega ništa više neće biti kao pre. Na Internetu ćemo razmenjivati video snimke, filmove, razgovarati uživo telefonom, za pojasom nositi minijaturne video uređaje i ko zna šta još. A dotle – živeo DivX ;-)

Dejan STEPANOVIĆ

 
 NOVE TEHNOLOGIJE
Minijaturni roboti
i Robot LE
DivX ;-)
Šta mislite o ovom tekstu?

Kratak opis MPEG formata

MPEG format sastoji se od Intra (I), Bidirectional (B) i Prediction (P) frejmova koji zajedno sačinjavaju strukturu zvanu GOP (Group Of Pictures). I-frejmovi sadrže kompletnu informaciju o slici i zauzimaju najviše prostora. P-frejmovi su rezultat složene analize kretanja i sadrže samo promene u odnosu na već postojeće frejmove. B-frejmovi iz I i P frejmova analiziraju kretanje, na osnovu čega se nalazi najbolji način da se opiše ta promena. Na taj način B i P frejmovi opisuju kako ostali frejmovi evoluiraju iz početnog I-frejma, zauzimajući tako što manje prostora. Logično je da je, što je više I-frejmova, potrebna sve veća količina podataka, ali I-frejmovi su neophodni da bi se održala stabilnost procesa. Ako njih nema, počinju da se pojavljuju greške koje se vremenom akumuliraju.

Na slici je prikazano kako se određuje vektor procene kretanja za objekat koji se pomera. Frejm se prvo deli na polja veličine 8 x 8 piksela, a zatim se za svako polje traži slično u prethodnim frejmovima. Na primer, polje 6 u frejmu 2 slično je polju 2 u frejmu 1, tako da ne mora opet da se pamti, već se pamti samo vektor koji ga povezuje sa sličnim poljem 2 zajedno sa razlikama između ta dva polja. Međutim, ako se neki objekat pomera preko pozadine i otkriva deo slike koji ranije nije postojao, algoritam za procenu kretanja neće biti u stanju da pronađe ekvivalentno polje. Zato B-frejmovi omogućavaju povezivanje i sa sledećim frejmovima, da bi se održala kompaktnost (zato se i zovu bidirectional, dvosmerni). U slučaju da algoritam ni tada ne može da nađe sličan deo, taj frejm se kodira kao I-frejm.

Korisne adrese
www.mydivx.com
www.go.to/doom9
www.divx-digest.com
www.divxsubtitles.com
Home / Novi brojArhiva • Opšte temeInternetTest driveTest runPD kutakCeDetekaWWW vodič • Svet igara
Svet kompjutera Copyright © 1984-2018. Politika a.d. • RedakcijaKontaktSaradnjaOglasiPretplata • Help • English
SKWeb 3.22
Opšte teme
Internet
Test Drive
Test Run
PD kutak
CeDeteka
WWW vodič
Svet igara



Naslovna stranaPrethodni brojeviOpšte informacijeKontaktOglašavanjePomoćInfo in English

Svet kompjutera