FAV-ZCU/KIV UPG/09. Základy multimédií.md

9 KiB
Raw Blame History

Základy multimédií

Multimédia

  • neexistuje přesná definice
  • intuitivní definice
    • spojení textu, audia, obrázku, animace nebo videa se zařízením, které je shopné jej prezentovat (PC, mobil, televize)
  • pro účely UPG
    • multimédia = video (bez zvuku i se zvukem) a audio

Význam

  • komunikace mezi lidmi
  • hlasové ovládání zařízení
  • zabezpečení objektu a příbuzné
  • šíření vlastního názoru nebo umělecké produkce
  • prezentace produktu
  • vysvětlení složitějšího problému
  • upoutávky
  • ...

Digitální video

  • sekvence jednotlivých obrázků (snímků) doprovázená audiozáznamem, případně titulky
  • snímky = bitmapové obrázky
    • stejná velikost (rozlišení)
    • stejná barevný model a bitová hloubka
    • sousední snímky se odlišují jen mírně
    • snímková frekvence (fps)
      • minimálně 24 fps pro navození iluze plynulého pohybu
      • záleží na rychlosti pohybu, který chceme zachytit
  • nejjednodušší podoba - adresář s obrázky
    • nepraktické
    • mnoho souborů, velmi neefektivní přístup ke snímkům
    • informace o fps není součástí
  • lepší je využít některý ze standardních formátů

Velikost snímků (rozlišení)

  • teoreticky libovolné
  • používá se standardní rozlišení nebo jeho násobky
    • 240p 320x240 (4:3)
    • 360p 480x360 (4:3) nebo 640x360 (16:9)
    • 480p, 480i 640x480 (4:3) nebo 720x480 (3:2), resp. 704x480 (5:3) nebo 853x480 (16:9)
    • 720p 1280x720 (16:9); HD
    • 1080p, 1080i 1920x1080 (16:9); FullHD
  • progressive scan (p)
    • pixely zpracovávány řádek po řádce zleva doprava
  • interlaced scan (i)
    • pixely zpracovávány ob řádek zleva doprava
    • určeno pro CRT monitory, dnes nevhodné

Datový tok

  • počet bitů za sekundu, které je potřeba přenést
  • FullHD (1920x1080) film s 29.97 FPS při 24 bitech na pixel = cca 178 MB/s
    • velmi velký datový tok - potřeba použít kompresi

Kodek (coder-decoder)

  • algoritmus pro kompresi (coder) a dekompresi (decoder)
  • transformuje data do úspornější podoby dle nastavení
    • různé nastavitelné parametry
  • musí být k dispozici na straně příjemce
  • často součástí OS, některé lze doinstalovat

Kompresní přístupy

Barevné podvzorkování

  • zahození barevné informace (RGB na YCbCr, YCoCg, YUV, apod.)
  • redukuje barevné kanály

Statickou část scény neukládat vícekrát

  • rozsekání obrazu na makrobloky, ty uloženy vždy jen jednou
  • pro další snímek informace, kam se makroblok posunul
  • čas od času potřeba restartovat

GOP = Group of Picture Size

  • určuje, jak často se snímek má kódovat jako klíčový
    • 1 - každý je klíčový
    • 30 - 1 klíčový snímek + 29 rozdílových
      • nejčastěji používané
    • dlouhé GOP (např. 300)
      • pro archivní účely

Možnosti volby velikosti datového toku

  • konstantní velikost (CBR, constant bit rate)
    • každý snímek kódován přibližně stejným počtem bytů
    • jednoduché, obsah snímku ignorován - něco příliš kvalitně, něco nedostatečně
  • variabilní velikost (VBR, variable bit rate)
    • snímky mohou být kódovány různě velkým počtem bytů
    • udává se průměrný požadovaný tok + maximální povolený
    • složitější algoritmy, obvykle preferováno

Jednoprůchodová komprese

  • snímek okamžitě zpracován a odeslán na výstup
  • úroveň komprese pro dosažení průměrného toku nutno odhadnout
  • jediné možné pro přímý přenos TV vysílání

Víceprůchodová komprese

  • obvykle dvouprůchodová
  • v prvním zjistí složitost snímků, v dalším provede vlastní kompresi
  • vhodné pro archivační účely, využíváno ve spojitosti s VBR

Standardní formáty

MPEG-2

  • DVD filmy, digitální TV, Blu-ray
  • méně náročné dekódování

VC-1

  • vylepšený MPEG-2
  • pro internetové vysílání, Blu-ray
  • patentováno - pro vytváření potřeba licence
  • WMV, WMA kodek

MPEG-4

  • stále se vyvíjející formát s mnoha doplňky (part)
  • náročnější kódování, vyšší nároky na dekódování
  • mnohem menší datový tok
  • part 2: DivX, XviD, QuickTime kodek
  • part 10: H.264 kodeky
    • Blu-ray, YouTube, kabelová TV, vizuálně bezettrátová komprese
    • nejrozšířenější volná implementace = x264

Vytváření videa

Zdroj obrazu

  • uspořádaná množina obrázků vytvořených nějakým programem
    • animované filmy, animované vizualizace
  • oblast obrazovky
  • hardwarové zařízení (web kamera, ...)

Již při vytváření je nutné rozhondout, jak bude video distribuováno:

  • soubor uložený na pevném médiu
    • na začátku hlavička (rozlišení, frekvence, ...)
    • poté vlastní video, často menší soubory
  • streamovaně prostřednictvím TV nebo internetu
    • datový proud rozdělen na drobné úseky (např. několik ms)
    • hlavička před každým úsekem, větší soubory

Audio

  • zvuk = mechanické vlnění
  • digitální audio = sekvence amplitud mechanického vlnění (tzv. vzorků)

Vzorkovací frekvence

  • zavisí na rychlosti zachycovaného zvuku
  • 16 kHz - stačí pro mluvené slovo
  • 44.1 kHz - obsáhne celý slyšitelný rozsah
    • zkresluje zabarvení tónu
    • používáno v audio CD
  • 48 kHz - nejčastěji užívaná frekvence
  • 96 kHz, 192 kHz - DVD a Blu-ray
    • umožňuje další editaci zvuku

Datový tok

  • počet bitů za sekundu, které je potřeba přenést
  • hudba se vzorkovací frekvencí 192 kHz při 8 bytech na vzorek = cca 1.5 MB/s
  • písnička typické délky (4 min) = cca 350 MB
  • hudba k filmu (120 min) = cca 10 GB

Audio kanály

  • audio může obsahovat více kanálů
  • ukládány nezávisle
  • datový tok roste lineárně s počtem kanálů
  • monofonní zvuk = 1 kanál
  • stereofonní zvuk = 2 kanály
  • domácí kino = 6 kanálů

Snížení datového toku

  • nižší vzorkovací frekvence (ztráta kvality)
  • komprese dat
    • zvukové kodeky
    • obvykle specifikována požadovaná velikost toku a kodek automaticky určí snížení kvality
  • snížení počtu bytů vzorku
    • kvantizace rozsahu
    • nejčastěji 16 bitů / vzorek (-32768 ... 32767)
  • další kompresní přístupy

Standardní formáty

WAV

  • pouze kvantizace na 16 nebo 8 bitů
  • vhodné pro audio CD nebo další zpracování

Windows Media Audio (WMA)

  • patentováno - potřeba licence
  • umožňuje digitální ochranu
  • kompresní poměry běžně až 10:1

MPEG-1 Audio Part 3 (MP3) nebo MPEG-2 Audio Advanced Audio Coding (AAC)

  • patentováno
  • nízké nároky na dekódování
  • podporuje nejen CBR, ale i VBR

OGG Vorbis

  • open-source
  • srovnatelné s předchozím

Kontejnery

  • audio i video v jednom souboru
  • vyžadují dva programy
    • multiplexor (muxer) - odesílací strana
      • slučuje proudy videa, zvuku a titulkových stop do jednoho proudu dat
      • podporuje typicky různé video a audio kodeky
      • informace o rozlišení, typu komprese pro video/audio, počet audio kanálů a jejich mapování na reproduktory jsou součástí proudu dat
    • demultiplexor (demuxer, splitter) - přijímací strana
      • separuje ze složitého proudu data, o které je zájem
      • systém správy multimédií (typicky součást OS) předá separované proudy příslušným kodekům a jejich výstupy výstupním zařízením

Nejčastější kontejnerové struktury

  • Audio Video Interleave (AVI)
  • MPEG, např. MPEG-2 Transport Stream (MPEG-TS) nebo MPEG-4 (ASF)
  • Matroska (MKV, WebM)
  • Flash Video (FLV)
  • Windows Media Video (WMV)

Pro samostatné audio

  • lze použít obecné kontejnery pro video
  • specializované audio kontejnery
    • WAV, MP3, ...

Pro zjištění obsahu kontejneru je potřeba použít utilitu.

Úprava videa

Živé video

  • veškeré úpravy se provádí hned při vytváření

Uložené video

  • větší možnosti
  • změna datového toku, změna velikosti obrazu, oříznutí snímků, komprese lepším kodekem, střih, odšumění, ...

Komerční nástroje

  • určeny pro profesionální úpravy
  • např. Adobe Premiere, Camtasia Studio, Pinnacle Studio, ...

Volně dostupné

  • určeno pro amaterské úpravy
  • např. FFmpeg, ShotCut, ...

Multimediální prezentace

  • interaktivní prezentace s videosekvencemi

Řešení 1.

  • celá prezentace uložená jako jedno video v běžném formátu
  • interakce není k dispozici, videosoubor lze snadno distribuovat a zpřístupnit

Řešení 2.

  • uložit prezentaci v DVD nebo Blu-ray formátu
  • omezené možnosti interakce
    • DVD - pouze menu ke spuštění částí a výběru zvukové stopy či titulků
    • Blu-ray - totéž jako DVD + vykreslování vektorové grafiky přes video s možností reakce na ovladač BR přehráče
  • vše distribuovat na DVD nebo Blu-ray

Řešení 3.

  • napsat si vlastní interaktivní aplikaci v nějakém programovacím jazyce (Java, C++, C#, ...)
  • maximální možnost interakce, složitější vývoj
  • funguje na pratformách, pro které je přeložena
  • videosekvence mohou být součástí aplikace nebo přehrávány z internetu
    • vlastní server nebo CDN