av
Terje Dalen (NORUT IT) og Olav Sandstå (NTH/IDT)
Den nasjonale informasjonsmotorveg har eksistert i flere år mellom universitetene og enkelte forskningsinstitutter. Denne motorvegen, kalt Supernett, er nå i ferd med å oppgraderes til ATM teknologi. Forskningsinstituttene Norsk Regnesentral og NORUT IT samt NTH/IDT har under HUGIN1 programmet samarbeidet for å utvikle anvendelser basert på ATM. Prosjektet er kalt ``Leveranse av Video over ATM'' (LAVA) og vi har spesielt studert de teknologiske utfordringene i en ``Video på forespørsel'' tjeneste.
Slike applikasjoner setter ikke bare store krav til overføringskapasitet, men også lagring og grafisk behandling. Vi har derfor utviklet en helhetlig løsning som består av en videospiller, en videotjener og et arkiv. Videospilleren kan spille ulike typer videoformat levert av videotjeneren over en ATM basert nettjeneste. Databasen inneholder lagret video med tilhørende beskrivelse f.eks. skuespillere eller scener.
Leveranse av video skiller seg på mange områder mye fra tradisjonell databehandling. For det første blir det veldig store datamengder. En normal spillefilm vil fort kunne ta diskplass på flere GB. Videre er tidskravene mye vanskeligere å håndtere når det gjelder video. I de aller fleste datasystemer er kravet til utførelse ``så raskt som mulig''. Om en operasjon tar 10 millisekunder eller 100 er ikke så alvorlig. Video derimot stiller helt andre krav. For en video med samme rammerate som fjernsyn er kravet om at det skal leveres 25 rammer pr sekund, verken flere eller færre. Dette vil si at på brukeren sin skjerm skal bildet oppdateres hvert 40 millisekund. Dette stiller store krav til videotjeneren når det gjelder synkronisering av bilde og lyd.
For å klare dette har vi delt ansvaret for synkronisering i to. Videoserveren er ansvarlig for å 'garantere' at den klarer å levere videodataene raskt nok, mens videospilleren hos brukeren er ansvarlig for fin-synkronisering. Grunnen til at vi har valgt å dele dette ansvaret mellom videotjener og videospiller at dette forenkler videotjeneren. Videre vil det på grunn av varierende forsinkelser i nettet ikke være mulig å foreta all synkronisering kun i videotjeneren.
1Under TELECOM programmet som er finansiert av Norges Forskningsråd.
En videospiller i dette systemet er et program for å spille digital video. I tillegg til vanlig VCR funksjonalitet, som for eksempel avspilling forover og bakover, må spilleren støtte ulike videoformat. Det var et viktig krav til systemet var at spilleren skulle distribueres til mange potensielle brukere og integreres med andre verktøy (for eksempel videoredigeringes-verktøy). Derfor ble valget av format for digital koding av video og lyd som var egnet til vårt formål viktig. Vi valgte å utvikle en spiller som dekomprimerer lyd og bilde i programvare basert på MPEG-1 standarden, samt mulighet for å bruke tilgjengelig maskinvare for ``Motion JPEG''. Det siste alternativert er ikke en standard, men mer en samlebetegnelse på systemer som koder bildedelen av en digital video som en sekvens av JPEG komprimerte stillbilder. Silicon Graphics sitt ``SGI movie'' format faller inn under denne betegnelsen. LAVA spilleren benytter et eget ``Motion JPEG'' format som gjør multipleksing mellom lyd og bilde.
Dekoding av MPEG-1 video og audiodata i programvare setter store krav til implementasjon og maskinvare. CD kvalitets stereo lyd kodet på MPEG-1 audio formatet krever omtrent 32% av CPUen på en SGI Indy og 50% på en Sun Sparc 10. Fullstørrelse video krever alene mer enn en CPU. Videospilleren må derfor ``holde igjen'' eller kaste videodata ved behov for å oppnå sanntids avspilling. I tillegg ble det utviklet en metode for finsynkronisering slik at lyd og bilde er synkronisert under avspilling.
ATM teknologien gjør det mulig å overføre videodata med høy båndbredde. Dette setter store krav til endenodene (tjener og spiller) for utveksling av videodata. Det var i år (`95) hensiktsmessig å bruke de tradisjonelle Internet protokollene UDP og TCP til dette formålet. Neste år vil bruk av ATM direkte, ATM Adaption Layer 5 (AAL5), bli realisert. Ved å bruke en upålitelig tjeneste vil tap av data være en betydelig kvalitetsforringene faktor, som vil være synlig ved at bilder forsvinner (MJPEG) eller at det oppstår dekodingsfeil i selve bildet (MPEG).
Flere maskin- og programvare systemer for behandling av digital video begynner nå å bli tilgjengelig på markedet. Disse systemene gav oss ikke den fleksibilitet vi trengte. Motivert ut fra eksperimentelle hensyn, som frihet med hensyn på videospiller, eksperimentering med ATM og bruk av andre verktøy, førte til design og utvikling av egen videotjener. Fordelen med å ha en videotjener er først og fremst av vi kan lagre video på en eller flere tjenere i nettet. Brukere kan så koble seg opp til denne og få spilt av de videoene de ønsker. Mange brukere kan dermed ha tilgang til de samme videoprogrammene samtidig.
Leveranse av flere videostrømmer samtidig krever stor ytelse. Fra en maskin er det kun mulig å levere et begrenset antall videostrømmer. Antall videostrømmer en maskin klarer er begrenset av ytelse ved lesing fra disk og nettverket denne maskinen er tilkoblet. For å ha et system som er skalerbart og som kan levere til mange brukere samtidig, kan det derfor være nødvendig å benytte seg av flere maskiner for å oppnå ønsket ytelse. Vi benytter oss av en distribuert behandling der flere maskiner samarbeider om leveranse av videostrømmer. Disse maskinene er koblet sammen i et ATM kluster. Videoserveren kan dermed bestå av en eller flere maskiner alt etter hvor mange brukere som forventes å koble seg opp mot serveren samtidig. Hver maskin i serveren blir kalt en node. Til hver maskin er det koblet disker som benyttes for lagring av videoen.
For utnytte denne distribuerte arkitekturen blir videodata spredd på flere maskiner enten ved fast allokering eller striping. Ved fast allokering legges en film i sin helhet på en maskin, mens ved striping blir en film delt opp og lagt ut over flere maskiner. Når en bruker kobler seg opp mot tjeneren og ber om å få levert en videofilm, vil den eller de maskinene som har videoen lagret starte å levere videofilmen over nettet til brukeren.
Dagens versjon av videotjeneren kan lagre og levere video over ulike nettverk. For å få best mulig kvalitet på den leverte videoen er ATM mest egnet på grunn av den høye kapasiteten den tilbyr, men tjeneren kan også levere over andre nettverkstyper. Konkret har vi testet den ut med leveranse over Internett mellom Trondheim og Oslo med godt resultat. Videotjeneren har støtte for både MPEG1- og Motion-JPEG-komprimert video.
[Dette kan med fordel knyttes opp mot et bilde av en av verktøyprototypene]
Vi har samarbeidet en del med NRK, TV2 og Norsk Folkemuseum for å identifisere hvilke krav brukere av et videoarkiv har. Basert på disse har vi utviklet et demonstrasjonssystem for et digitalt videoarkiv. I tradisjonelle videoarkiv er videoen lagret på analoge videokassetter, mens informasjonen om videoen er lagret i et datasystem. Slik videoinformasjon består av både informasjon om innholdet i videoen, f.eks. avbildede personer og tema, og informasjon om selve videoen, f.eks. tittel og fotograf. I et fullt digitalt videoarkiv vil vi i tillegg til videoinformasjon ha både lyd og video på digitalisert form.
Dagens videoarkiv har store mengder analog video og film. Ved å gå over til digital lagring vil man kunne oppnå store fordeler. Den viktigste fordelen er at det vil kunne gi et enhetlig system for all videoinformasjon. Vi kan oppnå bedre integrasjon av selve videoen og den informasjon brukerne av slike systemer ønsker å registrere.
Den trolig viktigste tjenesten et digitalt videoarkiv kan tilby brukerne er søking. I dagens systemer er det mulig å foreta søk basert på lagret informasjon om de analoge videoene. Resultatet av et søk vil være referanser til videokassetter. Basert på disse referansene må brukeren finne denne videokassetten. Dette innebærer ofte at hun må hente den i ett eller annet arkiv, ta den tilbake til kontoret og ved hjelp av en videospiller lete seg frem til den delen av videokassetten som er aktuell. Dette kan ofte være en svært tidkrevende prosess. Faktisk kan det ta dager dersom brukeren sitter i Trondheim, mens videoen befinner seg i Oslo. Dersom videoen finnes på digital form vil videoen kunne være tilgjengelig på brukerens dataskjerm i løpet av sekunder.
I prosjektet har vi utviklet en prototype for et digitalt videoarkiv. Dette systemet består av et sett av videoverktøy som er integrert med den digitale videospiller. Disse kjører mot en videodatabase. Denne videodatabasen består av videotjeneren og et system for å håndtere den videoinformasjonen brukeren ønsker å registrere om videoen.
De viktigste verktøyene vi har utviklet er et verktøy for søking etter video og et verktøy for browsing av videoinformasjon. Vi har også utviklet verktøy for registrering av video og videoinformasjon. Denne prototypen ble presentert på den internasjonale konferansen Multimedia'95 i San Francisco. (For mer informasjon se http://www.idi.ntnu.no/grupper/db/research/tech_papers/ACM-MM95/).
Vi har anvendelser av denne teknologien innen ulike områder. I 1995 har vi hatt aktiviteter med digitalt TV for NRK og TV2, video for bruk i undervisning og bruk av digitale museumfilmer for Norsk Folkemuseum.
Disse aktivitetene har gitt oss verdifull erfaring til en videreføring av prosjektet. Noen av disse erfaringene er blant annet krav for bedre styring av kvalitet på kommunikasjon (tjenestekvalitet), andre videoformat som gir høyere kvalitet og er mer robust for distribusjon via telenett og til slutt krav til en mer avansert videotjener. Dette er utfordringer som vi vil utforske i 1996.