Structura curs
Obiectiv
nsuirea elementelor teoretice i practice care s permit dezvoltarea de aplicaii
multimedia
Cuprins
1.
2.
3.
4.
Noiuni generale
Imagine i animaie
Sunet
Video
1. Conceptul de multimedia
I. Noiuni
generale
2. Clase de aplicaii
multimedia
3. Condiii hardware /
software
4. Multimedia n context
WEB
1. Conceptul de multimedia
Multimedia din punct de vedere informatic este:
o combinaie de text, imagine, sunet, animaie, video
accesibil utilizatorului prin intermediul sistemului de calcul
Compresia
oapariia algoritmilor specifici (cu pierdere de
informaie)
oexemple: JPEG, MPEG Audio / Video
opierdere de informaie controlat
oexploateaz limitrile percepiei umane
oproces asimetric
Tehnologii
- periferice specializate pentru captur imagine /
sunet / video
- medii de stocare de mare capacitate
- tehnologii de comunicare la distan cu band larg
- procesoare specializate pentru compresie /
decompresie la nivel hardware
Aplicaie multimedia
- componentele sunt accesibile prin intermediul unui
sistem de calcul
- datele utilizate sunt n format digital (NU analogic)
- elementele sistmeului sunt integrate ntr-o interfa
unitar
- grad ridicat de interaciune cu utilizatorul
Modaliti de dezvoltare
Multimedia authoring
includ componenete preprogramate ce permit recunoaterea
mai multor formate de resurse multimedia, instrumente pentru
generarea animaiilor, pentru implementarea conceptelor de
hypertext, hypermedia
accentul cade pe scenariul de derulare a aplicaiei i pe
sincronizarea resurselor
Exemple: Flash, PowerPoint
Multimedia programming:
accentul se pune pe procesarea direct a resurselor prin
intermediul unui limbaj de programare i a unor biblioteci
specializate
2. Clase de aplicaii
multimedia
Criterii multiple de clasificare
Cele mai importante criterii
domeniu de utilizare
grad de interaciune
localizarea componentelor
Alte criterii
Grad de interaciune
aplicaii interactive
prezentri statice
Localizarea componentelor
locale
la distan
3. Condiii hardware /
software
Echipamente hardware pentru achiziie /
procesare:
imagine
sunet
video
Hardware specializat
Dispozitive periferice pentru achiziia de imagini fixe:
Scanner
transform informaia luminoas n informaie electric, iar
ulterior aceasta este convertita i salvat sub form digital
tipuri: flatbed / rotativ
Hardware specializat
Dispozitive periferice pentru achiziia de sunet:
placa de sunet: convertor analog digital i digital analog
Software specializat
Drivere
Asigur controlul i comunicarea cu perifericele specializate
Specifice pentru dispozitivul i sistemul de operare
Permit sistemului de operare s ofere aplicaiilor o interfa
uniform
Software specializat
Produse software specializate pe medii de comunicare
Achiziie i prelucrare de imagini
Permit prelucrarea imaginilor n format raster sau vectorial
Exemple: Adobe PhotoShop, Corel Draw
Software specializat
Produse software pentru creaie de aplicaii
multimedia
Clasificare bazat pe filozofia de organizare:
principiul crii - Microsoft PowerPoint
axa timpului - Adobe Flash
diagrame de flux - Adobe Authorware
4. Multimedia n context
WEB
Se dezvolt odat cu apariia standardului HTML5
Elemente multimedia suportate
Text
Imagini
Animaie
Grafic raster elementul canvas
Grafic vectorial SVG
Sunet elementul audio
Video elementul video
Grafic 3D WebGL
Avantaje
Arhitectur client-server
Client Web Browser
Trimite cererile ctre server
Gestioneaz afiarea coninutului multimedia i interaciunea cu utilizatorul
HTTP Request
Format: comanda (GET / POST / )/ parametri / eventual
coninut
Cereri iniiate de ctre browser:
Introducere adres de ctre utilizator
Navigare ctre pagin nou
Obinere resurse
Solicitat din cod
Exemplu:
GET /index.html HTTP/1.1
Host: www.test.com
User-Agent:Mozilla/5.0
HTTP Response
Format: status (200 / 404 / 500 /)/ parametri / coninut
Rspunsul este generat:
Static (coninutul este preluat din fiier)
Dinamic (coninutul este generat de ctre un program)
Exemplu:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 131
<html>
</html>
Limbaje utilizate
HTML - HyperText Markup Language
Structura documentului
Coninutul (de tip text)
Referine la alte resurse
JavaScript
Manipularea dinamic a coninutului i a modalitii de
prezentare
Gestioneaz interaciunea cu utilizatorul
Limbajul HTML
Tag
Instruciunea de creare a unui nod
Format: <test>coninut</test>
Coninutul poate fi:
Text
Alte tag-uri
Atribut
Perechi denumire valoare ataate nodurilor
<test nume1=valoare1
nume2=valoare2>coninut</test>
HTML
<head>
<title>titlu</title>
referine i parametri
</head>
<body>
HEAD
BODY
coninut
</body>
</html>
TITLE
Referine
i
paramet
ri
Coninut
Tipuri de elemente
Elemente de tip block i inline
Text
Formatare: p, em, strong, div, span, h1 h6, br, a
Liste: ul, ol, li
Tabele: table, thead, tbody, tfoot, tr, th, td
Selectori
Identific nodurile din arbore asupra crora se vor opera modificrile
Selectori simpli:
Element: NUME_ELEMENT
Identificator: #ID
Clas: .NUME_CLAS
Ali selectori:
Universal: *
Atribut: selector[atribut=valoare]
Nod copil sau descendent: selector > selector sau selector selector
Reguli de aplicare
Motenire
Propagarea valorilor de la un nod printe la nodurile copil
Nu toate proprietile sunt motenibile
Cascadare
Mecanismul de alegere aplicat n cazul n care avem mai multe
valori n conflict
Reguli de cascadare
Importan
Specificitate
Ordinea n fiierul surs
Formatare text
Proprieti:
font-family
font-size
font-weight
font-style
Color
Setare margini
Alte proprieti
Setare dimensiuni:
width,
height,
min/max-width/height,
overflow
Control layout:
display
float
Limbajul JavaScript
Caracteristici
Dinamic
Limbaj funcional
Bazat pe obiecte
Utilizare
Manipulare noduri DOM
Evenimente
Comunicare la distan
Tipuri de date
Tipuri de date de baz
Number: -3.14, 6, 2
Boolean: true, false
String: test
null, undefined
Object: { nume: Ana, varsta:7 } referin
Obiecte speciale
Function: function f() {}
Array: [1, 2, trei]
Variabile i expresii
Declarare
Prin atribuire valoare: a = 8; a =false;
Folosind var: var a = 3; var b;
Scope
Global sau local
Function vs block based
Evaluare expresii
Operatori similari cu C# (n plus === - egalitate
strict)
Funcii
Declarare:
function suma(a,b) { return a + b; }
var suma = function(a,b) { return a + b; }
Parametri:
Transmii prin valoare
Accesibili prin arguments
Closure
Obiecte
Obiect = colecie de proprieti (perechi nume = valoare)
Declarare obiecte
Literali: var ob = { nume: Ana, varsta:7 }
new: var ob = new Object();
Accesare proprieti
Citire: var v = ob.varsta; sau var v = ob[varsta]; for (v in ob) {...}
Modificare / adugare: ob.varsta = 8; ob[varsta] = 8; ob.clasa = 2;
Metode
adugare: ob.test = function() { console.log(test);}
this: ob.afisare = function() { console.log(Nume: + this.nume); }
Apel: ob.afisare();
Constructori i motenire
Funciile JavaScript pot fi utilizate pentru construirea de obiecte
Exemplu: function Persoana(nume) { this.nume = nume; this.varsta = 1; }
Apel: var ob2 = new Persoana(Maria);
prototype
Proprietate a funciei constructor
Definete proprietile disponibile n toate obiectele (instanele create)
Exemplu: Persoana.prototype.afisare = function() { console.log("Nume: " +
this.nume); };
Folosit i pentru implementarea motenirii:
function Student() { this.facultate = CSIE; }
Student.prototype = new Persoana(-);
var s = new Student(); s.afisare();
DOM - Structura
Arbore construit din obiecte
JavaScript
Fiecare nod:
Este un obiect derivat din Node
Conine o colecie de referine ctre
nodurile copil: childNodes
Conine referine ctre nodul printe
(parentNode) i nodul urmtor
(nextSibling)
Conine metode pentru manipularea
nodurilor copil: appendChild(nod),
removeChild(nod),
Rdcina:
document.documentElement
Nodurile au metode i proprieti
Sursa: http://web.stanford.edu/class/cs98si/slides/the-document-objectmodel.html
Regsire noduri
Pe baz de identificator
elem = document.getElementById(identificator)
Alte metode
lista = element.getElementsByClassName("clasa CSS");
lista = element.getElementsByTagName("tag HTML");
Manipulare noduri
Construire nod:
elem = document.createElement("tag HTML");
Accesare atribute:
elem.numeAtribut accesare valoare atribut individual
elem.attributes colecia de atribute
Exemplu:
var p = document.createElement("p");
p.innerText = "test";
document.querySelector("body").appendChild(p);
p.style.color = "red";
Tratare evenimente
Adugare event handler:
Prin atribute HTML:
<element atributEveniment=nume funcie></element>
Exemplu: <a onclick=test()>test</a>
Biblioteca jQuery
Colecie de funcii JavaScript pentru:
Regsire elemente din DOM
Manipulare elemente, atribute i
proprieti CSS
nlnuire operaii pe seturi elemente
Animaie
Comunicare HTTP
Funcia jQuery / $
1. Regsire elemente DOM: $(selector CSS)
var leg = $(a.test);
})
Exemple de operaii
Citire / modificare atribute HTML
$("#idTest").attr("href", "doc.html");
var url = $("#idTest").attr("href");
Tratare evenimente
$(#idTest).click(function(){})
Comunicare HTTP
$.getJSON(url, funcie); / $.post(url, date)
1. Modele de culoare
II. Imagine
2. Grafic raster
3. Grafic vectorial
4. Animaie
1. Modele de culoare
Model de culoare
Model matematic care descrie modalitatea de reprezentare a culorilor sub form de
tupluri numerice
Exemple: RGB, CMY
Spaiu de culori
Modelul de culoare mpreun cu instruciunile de reprezentare fizic
Exemple: sRGB, AdobeRGB, Pantone
Caracteristici
in seama de modalitatea de percepere a luminii de ctre ochiul uman
Culori de baz albastru (S), verde (M) i rou (L)
Tipuri de modele
Model aditiv
Model substractiv
Modelul RGB
Model aditiv
Bazat pe culorile de baz rou,
verde i albastru
Culoarea variaz n funcie de
dispozitiv
(n lipsa unui spaiu de culoare)
Reprezentare numeric:
Aritmetic (0-1)
Procent (0-100%)
Digital pe 8 / 16 bii (0-255, 065535)
Modelul HSB(L,V)
Reprezentare sub form de
coordonate cilindrice
Bazat pe aceleai culori de
baz:
Red - 00
Green - 1200
Blue - 2400
Modelul CMY(K)
Model substractiv
Culori utilizate: cyan,
magenta, yellow
Mascheaz culorile pe o
suprafa alb
Utilizare: materiale tiprite
Palete de culori
Tabel de coresponden
index tuplu (R, G, B)
Utilizare
Reducerea cantitii de informaie
necesar pentru reprezentarea
culorilor
Pretabil pentru imagini cu un numr
redus de culori (exemplu: diagrame
fr gradieni)
2. Grafic raster
Tipuri principale de grafic:
raster i vectorial
Sursa: http://commons.wikimedia.org/wiki/File:Rgb-raster-image.svg
Informaii generale
Caracteristici principale imagine raster
Rezoluie (numrul de linii i coloane stocate n matrice, numrul total de pixeli sau
densitate)
Adncime de culoare (cantitatea de informaie stocat de ctre fiecare pixel)
Utilizare
Reprezentare imagine pe monitor
Captare imagini din surse externe
Avantaje i dezavantaje
+Poate reprezenta orice imagine
Codaj srac n informaie (nu ia n considerare semantica imaginii)
Dimensiune mare
Nu se pot adapta unei scri variabile de vizualizare
Formate de stocare
BMP (Microsoft Windows Bitmap)
Formatul standard de stocare pe platforma Microsoft Windows
Suport date necomprimate sau comprimate folosind algoritmul RLE
Monocrom sau n culori pe 4, 8, 16, 24 sau 32 de bii
Suport palete de culori
Formate de stocare
GIF (Graphics Interchange Format)
Folosit n special pentru transferul imaginilor de maxim maxim 64K x 64K
Pretabil pentru diagrame, text logo-uri (contrast puternic i numr limitat de culori)
Suport maxim 256 culori prin intermediul unei palete de culori
Poate stoca mai multe cadre (pentru animaie)
Algoritm de compresie fr pierdere de informaie Lempel-Ziv-Welch (LZW)
Alte formate: ICO - Icon Resource File, PNG - Portable Network Graphics, DIB Device Independent Bitmap, PCX - PC PaintBrush File Format
Compresia Run-length
encoding (RLE)
Secvenele de valori identice consecutive sunt nlocuite cu
perechi de forma
(valoare, numr apariii)
Exemplu:
AAAAAAAAAAAAAABBBBBBBBBBAAAAAAAAAAAAABBBBBBCCC
14A10B13A6B3C
Caracteristici
Rat mic de compresie
Se preteaz pentru imagini cu zone mari de aceeai culoare
Utilizat n special pentru fiiere BMP cu palet de culori
Compresia LempelZivWelch
(LZW)
Algoritm de compresie universal bazat pe dicionar
Descriere compresie:
1.
2.
3.
4.
5.
Se
Se
Se
Se
Se
Compresia Huffman
Algoritm universal de
compresie
Codificare optim de lungime
variabil pentru fiecare simbol
n funcie de frecvena de
apariie
Datele salvate:
dicionarul
datele originale recodificate
Decodificare:
translaie simbol cu simbol pe baza
dicionarului salvat
Compresia JPEG
Compresie specializat cu pierdere de informaie pentru imagine
raster
Rezultate foarte bune pentru fotografii (variaii fine de
luminozitate i culoare)
Tipuri de compresie:
secvenial codaj bazat pe transformarea cosinus discret cu blocurile
procesate n ordinea apariiei
progresiv codaj bazat pe transformarea cosinus discret cu blocurile
procesate prin mai multe treceri asupra imaginii
progresiv fr pierdere folosete doar algoritmi de compresie fr
pierdere de informaie
progresiv ierarhic codific imaginea la rezoluii din ce n ce mai mari
JPEG - Cuantizare
Cq(u,v)=round[C(u,v)/N(u,v)]
235.6/16 -> 15
-22.6/12 -> -2
Exemplu:
var image = $("<img>")
.load(function () { $("body").append($(this)); })
.attr("src", "media/Penguins.jpg");
Elementul canvas
HTML includere n document:
<canvas id= "test" width= "250" height="150"></canvas>
canvas Atribute
Salvare i restaurare atribute context folosind stiva: save() i
restore()
Atribute:
fillStyle sau strokeStyle = culoare modific culoarea de desenare
ctx.fillStyle = "#FFA500";
ctx.strokeStyle = "rgba(255,165,0,1)";
Tipuri de transformri 2D
Original
Afin
(+deformar
e)
Euclidian
(translaie,
rotaie)
Proiectiv
(+paralelis
m)
Helmert
(+scalar
e)
Polinomial
(+proprieti
geometrice)
canvas Transformri
Operaii de transformare simpl:
translate(x, y) translateaz sistemul de coordonate cu numrul de
pixeli specificai
rotate(angle) rotete sistemul de coordonate cu unghiul specificat
(n radiani)
scale(x, y) scaleaz sistemul de coordonate cu factorii specificai
(n [01])
canvas - Transformri
Forma general pentru transformri afine:
canvas - Transformri
Semnificaie parametri:
m11: scalare pentru axa Ox
m12: rotire pentru axa Ox
m21: rotire pentru axa Oy
m22: scalare pentru axa Oy
dx: translatare pentru axa Ox
dy: translatare pentru axa Oy
Operaii:
getImageData(left, top, width, height): extrage o poriune din imagine ca
obiect ImageData
putImageData(imageData, x, y): aplic datele pe imaginea afiat n
canvas
Restricii de origine
rosu = imageData.data[i];
//
verde = imageData.data[i+1];
//
albastru = imageData.data[i+2];
transparenta = imageData.data[i+3];
[0..255]
[0..255]
// [0..255]
// [0..255]
Negativ
r = 255 r; g = 255 g; b = 255 b;
Modificare strlucire
r = r + valoare; if (r > 255) r = 255 else if (r < 0) r = 0;
similar pentru celelalte dou componente
Modificare contrast
r' = (((r / 255) - 0.5) * valoare + 0.5) * 255; if (r > 255) r = 255 else if (r <
0) r = 0;
similar pentru celelalte dou componente
Filtre de convoluie
Calculeaz valoarea fiecrui pixel n funcie de valorile pixelilor
alturai
Filtre de convoluie
Algoritm general:
pentru fiecare valoare v(x,y) din matricea
original
acumulator = 0
pentru fiecare valoare k(i,j) din matricea de
convoluie
acumulator = acumulator + v(x,y)*k(i,j)
v'(x,y) = acumulator (trunchiat la 0..255)
Observaii:
se aplic pe fiecare canal de culoare n parte
tratare special pentru pixelii din margine
Sharpen
Edge Detection
3. Grafic vectorial
Bazat pe descrierea matematic a obiectelor componente ale imaginii
Avantaje:
Menine semantica editare la nivel de obiect grafic
Dimensiune redus
Independente de scara de vizualizare
Dezavantaj
Nu poate reprezenta fidel orice fel de informaie
Formate de reprezentare i
stocare
SVG (Scalable Vector Graphics)
Format generic bazat pe XML pentru reprezentri vectoriale 2D
Suport animaie i interactivitate
SHP (Shapefile)
formatul firmei ESRI pentru descrierea datelor spaiale de tip: punct, polilinie i
poligon
utilizat la reprezentarea elementelor geografice n sisteme de tip GIS
Exemplu:
<!DOCTYPE html>
<html>
<body>
<svg width="400" height="180">
<rect x="50" y="20" width="150" height="150"
style="fill:red;stroke:black;stroke-width:5;opacity:0.5">
</svg>
</body>
SVG - Atribute
Setate prin intermediul CSS
Atribute de baz
stroke culoare linie
stroke-opacity opacitate linie
stroke-width dimensiune linie
fill culoare suprafa
fill-opacity opacitate suprafa
Exemplu:
$(document.createElementNS("http://www.w3.org/2000/svg", "rect"))
.attr({x:160, y:160, width:12, height:12})
.appendTo($("#desen"));
4. Animaie
Modificarea rapid a imaginii vizualizate prin modificarea
poziiei, formei sau dimensiunii unui obiect din imagine
Stocarea numeric a animaiei presupune reinerea elementelor
independente ce compun micarea n raport cu factorul timp.
Crearea iluziei de micare se realizeaz prin afiarea rapid de
imagini statice uor modificate
Tehnici principale:
Tehnica filmului
Cadre cheie
Schimbarea culorii
Animaie - JavaScript
actualizareMode
l()
MODEL
desenare()
BROWSE
R
tratareEvenimen
t()
1. Noiuni generale
III. Sunet
2. Numerizarea sunetului
3. Formate audio
4. Compresia sunetului
5. Sunetul n context Web
1. Noiuni generale
Sunetul este o vibraie propagat printr-un mediu material sub
forma unei unde mecanice.
Din punct de vedere fiziologic: senzaia produs asupra organului auditiv
de ctre vibraiile materiale ale corpurilor i transmise pe calea undelor
acustice;
Urechea uman percepe vibraii n intervalul 20-20000Hz
Zgomot: caz particular de sunet caracterizat prin lipsa ncrcturii
informaionale
Reprezentare i caracteristici
Reprezentare:
Axa X: timp
Axa Y: presiune (0 presiunea aerului
n repaus)
Compunere / descompunere
2. Numerizarea sunetului
Presupune stocarea i prelucrarea sunetului n format digital
Etape:
Convertirea sunetului n semnal electric
Eantionarea i cuantificarea semnalului
Stocarea informaiei numerice pe un suport de memorie extern conform unui
format
Avantaje
Stocare mai uoar
Permite analiza i procesarea numeric a sunetului
Nu se degradeaz n timp sau la copieri repetate
Eantionare
Prin eantionare se nelege procesul de
segmentare, cu o perioadicitate fix, a
semnalului audio analog.
Cuantificare
Cuantificarea presupune asocierea
unei valori numerice corespunztoare
amplitudinii semnalului pentru fiecare
interval de timp.
Calitatea este influenat de numrul
de bii alocai pentru fiecare eantion
(uzual 8 sau 16 bii pentru stocare i
16 32 pentru procesare)
Redarea sunetului digital:
Se reconstruiete sinusoida original
prin interpolarea valorilor numerice
stocate
Prin intermediul unui convertor digital analog
3. Formate audio
WAVE formatul standard de fiier audio pentru Microsoft i IBM; conine
sunet n reprezentare PCM necomprimat;
AIFF (Audio Interchange File Format) formatul standard pentru audio digital
utilizat pe platformele Apple (variante: necomprimat / comprimat);
MPEG (Moving Picture Experts Group) Audio - format standard pentru sunetul
digital comprimat; parte a standardului MPEG de codificare a semnalului
audio-video; cea mai cunoscut variant a lui este MP3
4. Compresia sunetului
Cel mai utilizat algoritm de compresie: MPEG-1 sau 2
Audio Layer III (MP3)
Folosete codificare perceptual
Elimin din rezultat sunetele care nu pot fi percepute de ctre
urechea uman
Mascarea temporal
Se elimin sunetele de intensitate mic care urmeaz dup sunete de
intensitate puternic n cadrul unui interval de timp
Sunetele de intensitate mic nu pot fi percepute dup sunete de
intensitate puternica datorit ineriei timpanului
Formate suportate:
mp3 type = audio/mpeg
wav type = audio/wav
ogg type = audio/ogg
Audio - atribute
Elementul <audio>:
autoplay (bool) redarea automat a sunetului
controls (string) controalele de redare sunt afiate dac atributul este
prezent
loop (bool) permite redarea continu a sunetului
src (string) permite specificarea sursei fr utilizarea de tag-uri de tip source
volume (numeric) permite modificarea volumului (n intervalul 0 1)
Elementul <source>
src (string) adresa (URL) fiierului audio
type (string) tipul MIME pentru fiierul audio
Audio obiectul
HTMLMediaElement
Proprieti:
currentSrc URL-ul absolut al fiierului redat
currentTime poziia (n secunde) n cadrul fiierului (poate fi modificat)
duration durata total a fiierului audio (n secunde)
ended boolean setat pe true la terminarea redrii
error ultima eroare (obiect MediaError) sau null dac nu a aprut nici o
eroare
paused boolean setat pe false la oprirea redrii
readyState indic starea curent a elementului
volume permite citirea / modificarea volumului
Audio obiectul
HTMLMediaElement
Metode:
canPlayType(type) permite aplicaiei s determine dac browser-ul curent
suport un anumit tip de fiier audio
load() pornete procesul de descrcare a fiierului audio de pe server; este
obligatoriu s fie apelat nainte de nceperea redrii folosind metoda play()
pause() oprete redarea (cu pstrarea poziiei curente)
play() pornete redarea de la poziia curent
Audio obiectul
HTMLMediaElement
Evenimente:
canplay a fost ncrcat o parte din fiier i poate fi pornit redarea
ended redarea s-a terminat
pause redarea a fost oprit
play redarea a nceput
volumechange modificare de volum
waiting operaia curent este suspendat pentru a ncrca date de pe
server
1. Noiuni generale
2. Compresia video
3. Video n context web
IV. Video
1. Noiuni generale
Video digital cuprinde totalitatea tehnicilor de
captur, procesare i stocare a imaginilor n micare
(precum i a sunetului asociat) prin intermediul unui
dispozitiv de calcul.
Avantaje video digital:
Poate fi procesat prin intermediul calculatorului
Pstrare n timp i rezisten la copieri repetate
Poate fi transmis la distan
Caracteristici video
Rezoluia
Spaiul de culoare i numrul de bii per pixel
Numrul de cadre pe secund
Modul de afiare (ntresut sau progresiv)
Calitatea compresiei
Formate video
Container specific structura de stocare a componentelor
video (imagine + audio) i a datelor asociate (metadate,
subtitrri, )
Advanced Systems Format ASF: container dezvoltat de Microsoft care
poate conine fluxuri codate cu orice codec (Extensii: .asf, .wma, .wmv)
Audio Video Interleave AVI: container mai vechi dezvoltat de Microsoft pe
baza Resource Interchange File Format RIFF (stocheaz datele n seciuni
identificate prin markere FourCC)
MP4 MPEG-4 Part 14: dezvoltat de ctre Motion Pictures Expert Group i
utilizat iniial de ctre QuickTime (video H.264, audio AAC)
AVCHD format utilizat n special de ctre camerele video (video H.264
AVC i sunet AC3 sau PCM)
Matroska / OGG: formate deschise; pot conine mai multe fluxuri audio /
video
Formate video
Codec specific modalitatea de compresie / decompresie
pentru un flux video / audio n cadrul unui container
H.264 / MPEG-4 AVC cel mai popular (utilizat pentru Web, BluRay,
camere video)
H.262 / MPEG-2 formatul standard pentru DVD
Windows Media Video format dezvoltat de ctre Microsoft
MJPEG (Motion JPEG) format mai vechi bazat pe compresia JPEG
2. Compresia video
Se bazeaz pe reducerea redundanei din cadrul fluxului video
Redundana spaial (intra-cadru)
tipul de redundan identificat i eliminat de algoritmii de compresie a imaginilor
Compresia MPEG
Algoritm de compresie video
Hibrid
Transformata Cosinus Discret similar JPEG pentru reducerea redundanei
spaiale
Codaj Huffman pentru comprimarea coeficienilor TCD
Codificarea micrii pentru reducerea redundanei temporale
Codaj RLE
Asimetric
Timpul de codare este mult mai mare dect cel de decodare
Etapele de compresie
mprirea imaginii n blocuri
16x16 luminan
8x8 crominan (culoare)
Tipuri de cadre
<I> Intra-picture/frame/image
Cadrele cheie
Necesare pentru cutare i poziionare
Compresie moderat
Tipuri de cadre
Formate suportate:
webm type = video/webm
mp4 type = video/mp4
.ogg type = video/ogg