Codec
Resumé
Af Jens Ebbe Thomsen, UNI-C20/01 2003
Codec er en sammentrækning af code og decode og dækker over de algoritmer, der bruges til at formatere video/audio, når det skal lagres, og dekode når det senere skal vises/høres. Læs mere om codec og streaming af video i denne artikel.
Hvor dårligt det end ser ud, så kræver vores traditionelle fjernsyn en storbåndbredde. Omsætter man kvaliteten i det analoge signal til digitalt, svarer det i runde tal til 25 Mbytes/sek., hvilket betyder, at der kan være 25 sekunders video på en cd. Som sammenligning svarer en lyd-cd til 150 Kbytes/sek. og 4440 sekunders spilletid. Grunden til at fjernsynet på trods af de store krav til båndbredde fungerer er, at al behandling foregår analogt. Når man skal over til en digital behandling, er man nødt til at komprimere, i hvert tilfælde når det drejer sig om video. Når man skal digitalisere video, skal denne komprimering ske i real tid. Det vil sige, at der er 1/25 sek. til at komprimere hvert billede. Det kræver en meget kraftig CPU, så derfor indeholder digitaliseringskortet speciel hardware, som foretager komprimeringen til et kortspecifik codec.
Codec er en sammentrækning af code og decode og dækker over de algoritmer, der bruges til at formatere video/audio, når det skal lagres, og dekode når det senere skal vises/høres.
Komprimeringen er en del af en codec, det er valg af farvemodel også, hvis det drejer sig om video. De fleste komprimeringer er ikke tabsfrie, og valg af farvemodel kan også føre til informationstab.
Om Hvad er codec?
Nyhedsbrev
Det er normalt først, når man ikke er i stand til at spille en video på enpc, at man begynder at interessere sig for, hvilke codec der er brugt til at komprimere en videofil med og hvilke codec, der er installeret på maskinen. Det første er nemt at se, hvis det er en.avi fil. Så vil alle nyere udgaver af Windows i egenskaber for filen vise, hvilken codec der er brugt. For at finde ud af, hvilke codec der er installeret på maskinen, skal man i de forskellige udgaver bruge lidt forskellige metoder. De ligner dog hinanden ved, at man starter i kontrolpanel og finder multimedier. I egenskaber for multimedier, eventuelt under hardware, vil der være et punkt, der hedder noget i stil med 'Codec til videoenheder', og i dens egenskaber er der en liste over installerede codec. For at vise en video skal det codec, der er brugt til filmen, være installeret på maskinen. Hvis ikke, kan man normalt finde det savnede codec på internettet, hvor et godt sted at starte er: http://www.moviecodec.com/.
Der er ingen codec, der på en gang er velegnet til de tre formål: arkivering, download og streaming.
- Ved arkivering forstås lagringen af videoen/audioen på digital form med henblik på, at man senere kan redigere den. Det vil sige, at der ikke må forekomme kvalitetstab. Det er ikke det samme som, at man ikke må vælge en tabsfri kompression - det kan endda være nødvendigt af pladshensyn. Generelt kan man under en arbejdsproces benytte sig af hardwarespecifik codec mens man til arkivering for en længere periode bør vælge en standardiseret software codec.
- Ved download forstår man, at videoen/audioen i sin helhed overføres til brugerens system, inden den vises. Det betyder først og fremmest, at transmissionen til brugeren ikke behøver at foregå med tilnærmelsesvis konstant hastighed. Som regel kan man også acceptere, at overførslen tager længere tid, end videoen/audioen varer. For video skal man ikke regne med, at man kan vælge en codec uden kvalitetstab - filerne vil blive for store, hvis billedstørrelsen er over et frimærke. Man er ligeledes nødt til at tage hensyn til, hvilke krav visningen af videoen stiller til brugerens maskine.
- Ved streaming foregår visningen af videoen/audioen samtidig med, at den overføres til brugeren. Da streaming er en forholdsvis ny teknik, så er der en tendens til kun at have formater, der dækker både audio og video. Det betyder også, at der sker en løbende udvikling af strategier til komprimering og frem for alt omkring håndtering af copyright. Det, man gerne vil frem til, er mulighed for at styre adgangen til materialet: hvem må høre og se, må man gemme, skal der betales, osv.?
Det kræver en meget hård komprimering for, at det overhovedet er muligt. Ligeledes kan det også være ønskeligt, at der dynamisk kan foregå en optimering af kvaliteten i forhold til den transmissionskapacitet, der er til rådighed. Ved video skal man normalt regne med, at codec beregnet på streaming reducerer i antal billeder pr. sekund.
Softwaremæssigt består en streamingløsning af tre komponenter: en producer, en server og en player.
En producer har til opgave at generere en fil, der indeholder en eller flere udgaver af billederne og lyden. Hver udgave svarer til en bestemt transmissionshastighed. Udgangspunktet er den færdigredigerede video skrevet med et af de codec, som findes på maskinen. Igen er det vigtigt, at udgangspunktet har en god kvalitet for at gøre det nemmere for produceren at lave den endelige udgave med mindst muligt tab af kvalitet.
Den resulterende fil placeres på en server.
Visningen af videoen sker i et samspil mellem server og player. Opkoblingen er vist på den følgende skitse, hvor http, rtsp og udp angiver de internet-protokoller, der benyttes til transmission. Det interessante er udp, som er en protokol, hvor der er defineret, at klienten ikke skal sende kvittering på modtagne pakker. Herved mere end halveres tiden til transmission. Mistede pakker er mistet; men man fortsætter tidsmæssigt rigtigt i videoen med de næste billeder. Problemet med udp er, at en firewall opfatter en udp-pakke som 'noget', der er sendt udefra, uden at clienten har bedt om det, da http-protokollen er brugt til at starte udp-transmissionen. Er firewall'en sat til at afvise alt der kommer uopfordret, så kan man ikke transmittere videoen igennem firewall'en.

En del af videoen sendes fra server over til playeren, inden afspilningen starter, og derefter bliver der løbende overført billeder og lyd. Falder den mulige transmissionshastighed, bruges først playerens buffer, derefter sendes i en kvalitet svarende til en lavere transmissionshastighed, først på billedsiden derefter på lyden.
Den største ulempe ved streamingløsningerne er, at der anvendes transmissionsprotokoller, f.eks. udp, som administratorerne af FireWalls tit blokerer for.

Udskriv…
Hjælp til udskrift
Om…
Nyhedsbrev
Sitemap
Teknik
Skriv til
RSS
Søg
