7 multimedijski standardi

Document Sample
7 multimedijski standardi Powered By Docstoc
					Standardizacija in kakovost
  informacijskih sistemov

 Multimedijski standardi
             “Vsebovalniki” (containers)

• Vsebujejo prepletene podatke v več formatih - zvok, slika (video),
  podnapisi, meta-podatki
• Način kodiranja vsebine (“kodek”) ni nujno določen z izbiro
  vsebovalnika


• Audio Video Interleave (.avi)
    – zastarel Microsoftov format iz 1992
    – veliko “overheada” pri popularnih kodekih (dveurni AVI je 10MB daljši od
      Matroške)
    – težave z B-framei, zvokom z VBR
    – v osnovi ne podpira podnapisov
    – ni primeren za točenje (streaming)

    – vendar: najbolj razširjen, podpirajo ga vsi samostojni predvajalniki
• .divx
    – le nekoliko izboljšan .avi, brez posebnih prednosti
            “Vsebovalniki” (containers)

• Advanced Systems Format (.asf)
   –   Microsoftov format podoben .aviju, primeren za točenje
   –   Načelno vsebuje poljuben kodek, pogosto wmv/wma
   –   Patentiran; patent uporabljen proti VirtualDub
   –   Podpira Digital Rights Management (juhej!)
   –   Povzetek: format, ki se ga je izogibati


• QuickTime (.mov)
   –   Appleov format, podoben AVIju
   –   prva različica 1991
   –   format se še razvija
   –   danes podpira različne kodeke, B-frame, podnapise, efekte...
   –   osnova za MPEG-4
            “Vsebovalniki” (containers)

• Matroška (.mkv)
   –   odprt standard
   –   poljubni kodeki
   –   točenje
   –   podnapisi, poglavja...


• OGG (.ogg)
   – odprt
   – kodek poljuben, vendar
     navadno Vorbis (zvok) in
     Theora (video)
   – omogoča podnapise
                   “Vsebovalniki” (containers)

•   vsebovalnik MPEG-4 (.mp4)
     – Video
           • MPEG-4 Part 10 (H.264, AVC)
           • MPEG-4 Part 2 (XViD, DivX... ...)
           • MPEG-2, MPEG-1 (DVD, satelitska TV)
     – AAC, MP3, MP2

•   .mpg
     – načelno: MPEG-1 za sliko, MP1-MP3 za zvok

•   Transport Stream (.ts)
     – Eden ali več tokov (torej: več filmov) v MPEG-2
           • več tokov uporabljajo za satelitsko TV in TV prek interneta
           • en sam tok se uporablja pri točenju posnetka s spleta
     – tok je razdeljen na paketke (Packetized Elementary Stream, PES), ki vsebujejo meta-
       informacije: čas (potreben za sinhronizacijo), program, dodatne informacije (EPG...)
     – format za prenos po nezanesljivih zvezah
           • gledati lahko začnemo kadarkoli (ne potrebujemo “headerja” z začetka datoteke)
           • po prekinitvi (zaradi napak ali izpada zveze) se prenos nadaljuje
          “Vsebovalniki” (containers)

Transport Stream (.ts)
             MPEG-2
Video        Elementary               Packetizer
Source       Encoder



               MPEG encoded stream                 Systems Layer Transport
                                                   MUX           Stream

             MPEG-2
Audio        Elementary              Packetizer
Source       Encoder




 Data
                                      Packetizer
 Source
          Vsebovalniki (“Containers”)

• DVD Video-object (.vob)
   – Določeni kodeki:
      • Video: MPEG-2
      • Zvok: AC3, MPA (MP2), PCM
      • Podnapisi: .sup (subpicture)
   – Če ga preimenujemo v .mpg, dobimo .mpg :-)
      (V bistvu gre za MPEG-2 Program Stream.)
                         Stiskanje zvoka

• Principi stiskanja z izgubo: psihoakustični model
    –   rezanje visokih frekvenc
    –   rezanje tišjih/preglasnih zvokov
    –   časovno maskiranje (tišji zvoki tik pred/po glasnejšem)
    –   maskiranje istočasnih bližnjih frekvenc
• Tako delujejo MP3, Ogg, AAC, AC3, ...
• MP3 (alias MPEG-1 Layer 3):
    – kodirnik pobira po 576 ali 192 časovnih vzorcev in glede na stopnjo
       stiskanje (bit-rate) izbere, katere frekvence bo kodiral in kaj zanemaril
    – standard opisuje samo dekoder, ne pa kodirnika
    – kvaliteta zvoka je pri enakih nastavitvah odvisna od kvalitete kodirnika
       (Lame, Fraunhofer...)
    (več na: http://www.oreilly.com/catalog/mp3/chapter/ch02.html)
• AAC je podoben, vendar 1024 ali 128 vzorcev, več kanalov...
• AC3 (Dolby Digital) je nekje vmes
            Kodeki – MPEG-1 – MPEG-3

• MPEG-1 (1992)
   –   uporabljen v Video CDjih in Super Video CDjih
   –   samo neprepleten (non-interlaced) video (progressive scan)
   –   prvotno 1.5 Mbit/s, kasneje do 4 Mbit/s
   –   v glavnem ga je zamenjal MPEG-2
   –   ima tri nivoje zvočne kompresije:
        • znani “mp3” je pravzaprav “MPEG-1 Audio Layer 3”
        • mp2 je mp3, ki ne zna izkoriščati redundance med kanali in deli na manj
          frekvenčnih pasov, zato je potratnejši, a zvestejši
• MPEG-2 (ali H.262, 1994)
   –   uporabljen v DVD, satelitski in internetni televiziji
   –   dovolj preprost, da omogoča kvalitetno sprotno kodiranje
   –   podpira prepletanje (interlace)
   –   poljubno hiter (npr. 300 Mbit/s); boljši od MPEG-1 nad 3 Mbit/s
   –   pokrit s 640 patenti 20 podjetij
• MPEG-3
   – opuščen, ko so ugotovili, da je mogoče učinek izboljšav doseči z malo
     modifikacijo MPEG-2
                           Kodeki: MPEG-4

•   Zbirka standardov (Behemot!)
     –   Part 1: sinhronizacija in multipleksiranje
     –   Part 2: video (najpomembnejša: Simple Profile, Advanced Simple Profile)
     –   Part 3: avdio
     –   ...
     –   Part 10: video (Advanced Video Coding)
     –   Part 14: vsebovalnik
     –   ...
     –   Part 22: Open Format Font Specification
•   Ker je tega preveč (vsak del ima kup možnosti), so uvedli “profile”; če
    predvajalnik podpira Simple Profile, mora imeti te in te funkcije
•   Patenti: nočna mora MPEG-4
     – patenti 26 podjetij, predvsem Applea
     – obstaja posredniško podjetje, kjer lahko plačaš vse patente vsem podjetjem
       hkrati...
     – patenti so glavna cokla pri prodoru MPEG-4
•   Večina običajno uporabljanih kodekov (Div 3, DivX, XVid...) je v okviru
    MPEG-4
                   Delovanje kodekov MPEG-4
•   Slika se obravnava v prostoru YCbCr (osvetljenost/modra/rdeča) – ta barvni prostor
    sicer izvira iz začetkov barvne televizije, ki je morala biti združljiva s črno belo
•   Slika je razdeljena na makrobloke velikosti 16x16 točk za barve in 8x8 za svetlobo
    (profil 4:2:0 – za osvetljenost uporabimo dvakrat toliko bitov kot za barvno informacijo)
•   Na teh makroblokih se potem izvaja matematika (diskretna fourierova transformacija,
    kvantizacija, Huffmanovo kodiranje)
•   Trije tipi okvirov (frameov), I, P in B:
     –   I (intraframe): cela slika, stisnjena (z izgubnim algoritmom)
     –   P (forward predictive): slika samo pove, kaj se je spremenilo od prejšnje slike (denimo 10%
         velikosti I)
     –   B (bi-directional predictive): pove spremembe v primerjavi s prejšnjo in/ali naslednjo sliko (npr.
         1 %)

     –   I odstranjuje prostorsko redundanco (redundanco znotraj slike, intraframe),
         P in B pa časovno redundanco (redundanco med slikame, interframe)


•   GOP (Group of Pictures), npr. IBBPBBPBBPBBPBB (tipični DVD)
     –   Framei morajo biti shranjeni v datoteko v takem vrstnem redu, da so framei, na katerih temelji
         B-frame, pred B frameom
     –   I framei so koristni, ker tam lahko začnemo gledati (oz. je pri montaži tam lahko začetek
         sekvence)
     –   na B frameu pri montaži ne moremo končati sekvence (ne da bi na novo kodirali)


Vse to izvira že iz H.261, ki je osnova MPEG-1
                       Dodatni triki MPEG-4

•   Motion Compensation: pogosto se nek del slike ne spremeni, temveč premakne
    (skrajni primer: napisi na koncu filma). “Motion Compensation” priredi vsakemu bloku
    vektor premika
•   Global Motion Compensation (GMC): upošteva premike kamere
•   Quarter-Pixel (QPel): kompenzacija premikov se računa z natančnostjo ¼ točke
•   Običajno samostojni predvajalniki (DVD-predvajalniki, ki znajo brati “DivX/XVix”) ne
    podpirajo GMC in QPel – bolj ali manj vsi temeljijo na istem Sigminem chipsetu


•   Vse našteto je del kodiranja H.263 (ali MPEG-4 ASP)
•   H.263 je v osnovi standard za video prek telefona
•   H.263 v bistvu opisuje dekompresijo, ne pa kompresije
•   DivX3, DivX, XviD, 3ivx, navi, angelpotion..., ..., naredijo datoteko, stisnjeno po
    H.263, razlikujejo pa se v postopku stiskanja
•   Zato je mogoče film, stisnjen z DivX, načelno gledati z XviD in obratno
•   Samostojni predvajalniki v resnici ne podpirajo XviD, DivX ipd, temveč samo H.263
                        Zgodovina DivXa

• DivX 3.11alpha je Microsoftov kodek, namenjen samo .asf
• Jerome Rota “popravi” to napako; Microsoft je hud
• Taisti Rota ustanovi DivXNetworks, začne tržiti DivX4.0 in pozabi
  omeniti, da je bil to odprtokodni projekt z mnogimi avtorji;
  ostali sodelavci so hudi
• “Užaloščeni ostali” sestavijo XVid
• Rotov DivX (takrat že 5.0) se dokončno zagabi z AdWareom (in to
  najhujšim: Gator)
• Danes:
    – DivX je v verziji 6.0 in nima več SpyWarea (pa tudi uporabnikov ne)
    – XVid je odprtokodni in da pri isti dolžini datoteke boljšo kvaliteto slike
                        H.264 in VC-1

• H.264 (ali AVC) je izboljšani H.263
   – dovoli, da kodek pri stiskanju razbija 16x16-bloke na še manjše
     bloke, do 4x4
   – cena:
       • približno dvakrat počasnejše kodiranje
       • samostojni predvajalniki tega standarda (še) ne podpirajo
       • tudi Pentium < 1 GHz ima lahko težave pri predvajanju

   – H.264 je del standardov HD DVD in BluRay ter HDTV,
     torej se bodo kmalu pojavili in pocenili predvajalniki


• VC-1 (Windows Media Video 9)
   – Alternativa H.264
   – Microsoftov kodek (v sodelovanju s 15 drugimi, ki si bodo delili
     zaslužek od patentov)
   – Tudi VC-1 je (poleg H.264 in Mpeg-2) kodek v BluRay in HD DVD
                                   DV

• Kodek iz 1996, ki ga uporabljajo digitalne video kamere
• Precej podoben MPEG-2 s samimi I-framei:
   –   podvzorčevanje barv 4:1:1
   –   vsaka slika je stisnjena z diskretno Fourierovo transformacijo
   –   ni odpravljanja časovnih redundanc
   –   cca 36 MB/s
   –   v računalnik navadno prenesemo s FireWire in shranimo kot AVI
       (preden kodiramo naprej)
Original




 DivX
Original




 XviD
  Original




Ateme (AVC)
Original




XviD AVC
Original




 x.264
  Primerjava kodekov (po kvaliteti slike)

ASP                               AVC
1. XviD                           1-2. Ateme, x264
2. DivX                           3.    Elecard
3. LMP4                           4-5. XviD AVC, VP7
4. NeroDigital ASP
5. HDX4


 http://www.doom9.org/index.html?/codecs-main-105-1.htm

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:3
posted:11/1/2010
language:Slovenian
pages:22