nw  

Scalable Video Streamer

Zusammenfassung

Es wurde ein Video-Player entwickelt, welcher nur Videoausschnitte abspielt, welche auch betrachtet werden.

Schlüsselbegriffe

JavaScript, C#, Python, WebGL, FFmpeg, Video Streaming, HLS

Zielsetzung

Es soll ermöglicht werden, Videos abzuspielen, welche eine Auflösung von 4096x4096 Pixel und höher haben. Dazu ist es notwendig, ein Videoplayer zu entwickeln, welcher es ermöglicht, ausschliesslich Regionen abzuspielen, welche effektiv betrachtet werden. Weiter muss beachtet werden, dass bei einer Betrachtung des ganzen Videos eine verkleinerte Auflösung abgespielt wird.

Ausgangslage

Ein Satellit der NASA und ESA macht täglich 2400 Bilder (eins alle 36 Sekunden) der Sonne in einer Auflösung von 4096x4096 Pixel. Die Bilder werden von Helioviewer.org im JPEG 2000 Format angeboten. Durch das progressive Bildformat können die aufgenommenen Bilder entsprechend der nötigen Auflösung geladen werden. Die Bilder werden auf der Seite https://helioviewer.org/ angezeigt, auf welcher Ereignisse und spezielle Eigenschaften der Sonne markiert werden. Viele Ereignisse der Sonne sind jedoch über mehrere Bilder verteilt und fallen in einem Video besser auf, als auf einzelnen Bildern.

Ergebnisse

Es konnte ein funktionierender Prototyp erstellt werden, der Videos in verschiedenen zeitlichen und räumlichen Auflösungen auf eine Kugel projiziert und abspielt. Die resultierende Performance ist zwar hardwareabhängig, erlaubt aber bei den getesteten Systemen das flüssige Abspielen von Videos auch auf der höchsten Zoomstufe. Durch den verwendeten Ansatz zur Skalierung der Auflösung mittels Zoomstufen und Tiling, ist es möglich, nur den momentan sichtbaren Bereich zu laden und abzuspielen.

Projektdaten

Projektdauer: 1 Semester, Aufwand in Personenstunden: 720h, Teamgrösse: 2, Bachelor Thesis

Auftraggeber

Institut für Data Science

Projektteam

Fabio Strappazzon
Sandro Schwager

Kontakt

André Csillagy
andre.csillaghy@fhnw.ch

Roman Bolzern

<< zurück