I november i fjor feiret NRK Bergensbanens 100 årsjubileum med å sende 7 og en halv time sammenhengene video tatt fra lokomotivet. Vi fikk en utsikt over en av Europas vakreste strekninger som beveger mellom Bergen og Oslo. Programmet var overraskende populært, og gikk senere i reprise. I ettertid har NRKBeta gitt ut hele opptaket i HD, lisensiert under Creative Commons. Dette gjørt det mulig for hvem som helst å bruke materialet til det de ønsker, så lenge de opp få kravene som settes.
NRKBeta lyste også ut en konkurranse, i forbindelse med lanseringen, der man skal bearbeide dette materialet til noe annet. Mitt bidrag til denne konkurransen presenterer jeg nå;
Interaktivt kart over Bergensbanen
På denne siden har jeg satt sammen flere data-sett slik at man kan se på Bergensbanen på en helt ny måte. Toget starter fra Bergen og beveger seg mot Oslo. Underveis vil kartet hele tiden vise hvor toget er, hvor høyt over havet man er, hvilken kommune, og ikke minst hvilke fylke. Hver stasjon er merket med ett ikon, som igjen gir litt informasjon, og linker videre til Wikipedia.
For å få til dette har jeg hentet informasjon fra flere tjenester på nettet. Informasjonen om traseen har jeg hentet ut fra Open Street Map, der jeg gikk hardt til verks på selve rådataen siden jeg ikke kunne finne noen vettug måte å hente ut det jeg ville ha. Med litt regex-magi, og tålmodighet satt jeg igjen med et godt sett med koordinater som viste traseen, sammenhengende fra Bergen til Oslo. Denne dataen innehold litt mer enn det jeg ville ha (slikt som dobbeltspor og flere plattformer på stasjoner), så litt vasking måtte til. Høyde informasjon er hentet fra geonames.org som også har masse informasjon tilgjenglig under Creative Commons lisensen. Koordinatene til hver stasjon hentet jeg ut fra Wikipedia.
Bildene fra togturen er hentet fra NRKs opptak fra 27. november. Jeg bruke ffmpeg til å hente ut en frame hvert halve sekund, noe som ga meg over 52000 bilder å holde styr på. For å servere disse på en effektiv måte har jeg tatt i bruk perlbal, en rask og event-basert server, for å servere bildene fra en stor stor fil. Fordelen med dette er at jeg slipper unna med mye færre IO-operasjoner i forhold til å servere ett og ett bilde fra disk.
Det vanskeligste her var å plassere hver enkelt ramme på kartet. Jeg satt kun med bildene og traseen, og var nødt til å manuelt gå igjennom hele ruta fra Bergen til Oslo for å finne nøkkel-rammer som jeg kunne binde til et gjenkjennelig sted på kartet (det er da man lærer seg rare ting som at traseen går igjennom 21 kommuner og 5 fylker). Etter dette måtte jeg ekstrapolere de manglende rammende mellom hver enkelt nøkkel-ramme ned på traseen. Resultatet ble bedre enn jeg trodde, men likevel ganske unøyaktig i enkelte områder, særlig på fjellet der Google Maps dekning med flyfoto er meget begrenset.
Når det gjelder brukergrensesnittet så har jeg brukt jQuery, et open source javascript bibliotek. For å servere HTML har jeg brukt Catalyst Web Framework
Om du nå sitter med tanker om å stjele noe av denne dataen fra meg, så må jeg nok skuffe deg. Jeg -gir- deg gjerne det du vil ha om du kontakter meg og spesifiserer hva du ønsker, så vil jeg sende deg det jeg kan under samme lisens som verkene jeg har hentet det fra.
Jeg har testet siden i siste normale versjon av Opera, Chrome, Firefox og Internet Explorer. Bruker du noe annet enn dette, rapporter gjerne problemer du kommer over i kommentarfeltet under. Det samme gjelder forøvrig både ris og ros.
Utrolig kult! :)
Posted on January 23, 2010 at 08:52.
Jeg er veldig imponert. Godt jobbet.
Posted on January 24, 2010 at 13:53.
Kult!
Som videoopplevelse er det ikke stort, men det er vel en del av konseptet. Videoen ser man der videoen er. (Med forbehold om at det er mitt problem — jeg ser OL samtidig.)
Når jeg trykker på kartet, kommer det opp koordinater. Det hadde kanskje vært vel så interessant å få toget flytta dit?
Men, det er råkult! Definitivt!
Posted on February 25, 2010 at 22:26.
Nei, det er nok ikke meningen at “video”-delen skal være en stor opplevelse. Jeg har rippet ett bilde per 0.5 sekund igjennom hele turen, og viser hver frame som ett bilde. Det hadde vært en ide å mekket en flv av hele turen, men vet ikke om det er verdt det, siden poenget her egentlig er å binde turen til et kart.
Men om noen skulle ønske det, så gir jeg gjerne ut en fil med tidskoder vs. koordinater :)
Posted on February 26, 2010 at 16:13.
Bergensbanen konkurranse says:
[...] Obs. Kan ta litt tid før all videoen laster i kartet. Funker ikke i alle nettlesere. Les mer om hvordan det ble gjort på Kays nettsider. [...]
Posted on April 6, 2010 at 13:36.