Durch die immer weitere Verbreitung von mobilen Geräten wie Tablets und Smartphones haben sich auch die Ansprüche an Videoplayer und deren Navigationsmethoden verändert. In vielen Fällen ist die Standardnavigationsleiste, wie sie von den vorinstallierten Videoplayer-Applikationen eingesetzt wird, nicht befriedigend. Ansätze aus dem Bereich automatischer Inhaltsanalyse und alternativer Inhaltsvisualisierung können den Nutzern auf Desktop-Computern und mobilen Geräten bei Videobrowsing und Navigation einen erheblichen Vorteil verschaffen.
Im Laufe der Arbeit werden verschiedene Grundlagen dieser Thematik aufgearbeitet und einige Applikationen, die Techniken und Methoden aus diesem Forschungsgebiet umsetzen, vorgestellt. Dies bildet das Fundament für die Anforderungen an den wischgestenbasierenden Videoplayer, der im Rahmen dieser Masterarbeit implementiert wurde.
Der vorgeschlagene Videoplayer, der mit Hilfe einer horizontalen Flick-Geste bedient wird, soll den Nutzer bei der Navigation innerhalb eines Videos unterstützen, ohne dabei vom Inhalt des Videos abzulenken. Dadurch soll erreicht werden, dass gesuchte Stellen schneller gefunden werden und weniger vom Inhalt übersehen wird. Im Rahmen einer Benutzerstudie wird der Prototyp mit einem Standardvideoplayer verglichen und evaluiert. Mit verschiedenen Suchaufgaben werden quantitative und mit einem Fragebogen qualitative Daten gesammelt. Mit den Ergebnissen aus deren Analyse sollen Aussagen über die Leistungsfähigkeit und die Nutzerakzeptanz getroffen werden.
Inhaltsverzeichnis
Kurzfassung
Abstract
Abbildungsverzeichnis
1 Einleitung
1.1 Ziel der Arbeit
1.2 Aufbau der Arbeit
2 Motivation und Grundlagen
2.1 Multimediale Inhalte
2.2 Videokonsum auf mobilen Geräten
2.3 Durchsuchbarkeit von Multimedia Dateien
2.4 Grundlagen der İOS Entwicklung
2.4.1 Model-View-Controller Konzept
2.4.2 Protokolle und Delegates
2.4.3 Observerpattern
2.4.4 AVFoundation
2.4.5 Gesturerecognizer und UIResponder
3 Videobrowsing
3.1 Navigationsunterstützung
3.1.1 Klassische Navigation
3.1.2 Automatische Inhaltsanalyse
3.1.3 Alternative Inhaltsvisualisierung und Navigation
3.2 Videobrowser Evaluierung
3.2.1 Video Browser Showdown
3.2.2 TREC Video Retrieval Evaluation
4 Videonavigation auf Tablets und Smartphones
4.1 Interface Design Guidelines
4.2 Multi-Touch Bildschirme und Gesten
4.3 Standardvideoplayer
4.4 Videobrowsing auf mobilen Geräten
5 Wischgestenbasierender Videoplayer
5.1 Spezifikationen
5.1.1 Anforderungsanalyse
5.1.2 Navigationskonzept
5.1.3 Grafische Benutzeroberfläche
5.2 Details zur Implementierung und Probleme
5.2.1 Hardware und Software
5.2.2 Probleme
5.2.3 Storyboard und Klassen
5.2.4 Umsetzung des Interaktionskonzepts
5.2.5 Logging
6 Benutzerstudie und Evaluierung
6.1 Aufbau der Studie
6.2 Durchführung
6.3 Evaluierung
6.3.1 Zielsuche
6.3.2 Zählaufgaben
6.3.3 Benutzerbewertung im NASA TLX
6.3.4 Bevorzugter Videoplayer
7 Resümee und Ausblick
Literatur
Appendix
Kurzfassung
Durch die immer weitere Verbreitung von mobilen Geräten wie Tablets und Smartphones, haben sich auch die Ansprüche an Videoplayer und deren Navigationsmethoden verändert. In vielen Fällen ist die Standardnavigationsleiste, wie sie von den vorinstallierten Videoplayer-Applikationen eingesetzt wird, nicht befriedigend. Ansätze aus dem Bereich automatischer Inhaltsanalyse und alternativer Inhaltsvisualisierung können den Nutzern auf Desktop-Computern und mobilen Geräten bei Videobrowsing und Navigation einen erheblichen Vorteil verschaffen. Im Laufe der Arbeit werden verschiedene Grundlagen dieser Thematik aufgearbeitet und einige Applikationen, die Techniken und Methoden aus diesem Forschungsgebiet Umsetzen, vorgestellt. Dies bildet das Fundament für die Anforderungen an den wischgestenbasierenden Videoplayer, der im Rahmen dieser Masterarbeit implementiert wurde. Der vorgeschlagene Videoplayer, der mit Hilfe einer horizontalen Flick-Geste bedient wird, soll den Nutzer bei der Navigation innerhalb eines Videos unterstützen, ohne dabei vom Inhalt des Videos abzulenken. Dadurch soll erreicht werden, dass gesuchte Stellen schneller gefunden werden und weniger vom Inhalt übersehen wird. Im Rahmen einer Benutzerstudie wird der Prototyp mit einem Standardvideoplayer verglichen und evaluiert. Mit verschiedenen Suchaufgaben werden quantitative und mit einem Fragebogen qualitative Daten gesammelt. Mit den Ergebnissen aus deren Analyse sollen Aussagen über die Leistungsfähigkeit und die Nutzerakzeptanz getroffen werden.
Abstract
As the usage of mobile devices such as tablets and smartphones continuously increases, the requirements for video players and their navigation methods have changed as well. In many cases, the standard navigation bar, which is used in preinstalled video player applications, is not satisfactory. Approaches from the fields of automated content analysis and alternative content visualization can create significant benefits in terms of video browsing and navigation to users of desktop computers as well as mobile devices. Within the scope of this thesis, various fundamentals of this subject matter will be considered and some applications, which incorporate techniques and methods from this particular field of research, will be presented. This will create the basis for a flick-based mobile video player, which will be implemented within the framework of this thesis. The proposed mobile video player, which can be operated with the help of a horizontal flick gesture, shall support the user with the navigation inside of a video without distracting from the actual video content. This should allow to find a specific location within the video while missing less of its content. Through a user study, the prototype will be evaluated and compared to a standard video player. Quantitative data will be gathered through different search tasks and a survey will provide further qualitative insights. A statement regarding the capability as well as user acceptance should be derived from the results of this analysis.
Abbildungsverzeichnis
2.1 Opfer des Smartphone-Booms [1]
2.2 Weltweiter Tablet Absatz [2]
2.3 Prognostizierte Marktentwicklung von Tablets bis 2019 [3]
2.4 Objektorientierte Darstellung von Medientypen [4]
2.5 Yovisto mit Tagging Box [5]
2.6 Model-View-Controller [6]
2.7 Key-Value Observer anlegen [7]
2.8 Key-Value Observer anmelden [7]
2.9 Einordnung von AVFoundation in İOS [8]
2.10 Abspielen einer Videodatei mit AVFoundation [9]
2.11 UIResponder Chain [10]
3.1 Standardvideoplayer YouTube und VLC Player im Vergleich
3.2 Video Explorer mit verschiedenen Suchleisten [11]
3.3 Zoom innerhalb der Navigationsleiste beim Video Explorer [11]
3.4 Joke-O-Mat Benutzeroberfläche [12]
3.5 Hierarchische Baumübersicht [13]
3.6 YooSee Benutzeroberfläche [14]
4.1 Standardgesten für İOS [15]
4.2 VLC Player auf einem iPad
4.3 ThumbBrowser in Benutzung [16]
4.4 PocketDRAGON mit Fußballszene [17]
4.5 Keyframebasierter Navigationsbaum [18]
4.6 Mobile ZoomSlider Schnelldurchlauf durch Speedborders [19]
4.7 Wipe’n’Watch Player mit inter-Video Navigation [20]
4.8 SwiPlayer intra-Video Navigation und Granularität [21]
5.1 Navigation innerhalb von Textdokumenten [22]
5.2 Flickplayer Wischgesteninteraktion
5.3 Benutzeroberfläche des Flickplayers
5.4 Frame-Typen der Videokodierung [23]
5.5 Storyboard des Flickplayers
5.6 Geschwindigkeitsindikator Flickplayer
5.7 Player View Stack
5.8 Flickplayer Geschwindigkeits-Intervalle
5.9 Formular für Nutzertestinformationen
6.1 Prototypen mit Adaptionen für Studie
6.2 Aufbau der Benutzerstudie
6.3 Boxplot zur Suchdauer Nachrichten Videos
6.4 Boxplot zur Suchdauer Dokumentation Videos
6.5 Boxplot zur Suchdauer Quizshow Videos
6.6 Boxplot zur Suchdauer Fußball Videos
6.7 NASA TLX Bewertungsverteilung von 1-21
6.8 Subjektive Bewertung der Videoplayer
KAPITEL
1. Einleitung
Seit der Einführung von Smartphones und Tablets im Jahr 2007 bzw. 2010, wurden diese zu einem wichtigen Bestandteil des Konsumentenmarktes. Viele verschiedene Produkte wie MP3-Player, Einsteigerkameras und Netbooks wurden vom Markt verdrängt, da deren Aufgaben von mobilen Geräten mit Bildschirmen, die eine Mehrfingererkennung ermöglichen, besser umgesetzt werden [24]. Diese Art von Verbraucherprodukten ermöglichen und verlangen völlig neue Methoden und Ansätze der Darstellung und Navigation von multimedialen Inhalten. Insbesondere bei großen Fotobibliotheken und langen Videos wurde mittlerweile erkannt, dass diese Stärken besser ausgenutzt werden können. Die Standardvideoplayer, das ist die standardmäßig installierte Software für die Videobetrachtung, setzen in der Regel auf eine zeitbasierte Leiste, auch bekannt als Seekerbar, um dem Nutzer die Möglichkeit zu bieten, sicher innerhalb eines Videos zu bewegen. Diese Navigationsleisten sind bei den meisten Videoplayern am oberen oder unteren Bildschirmrand positioniert und werden, zumindest auf mobilen Geräten mit berührungsempfindlichen Bildschirmen, mit den Fingern durch das Verschieben des Knopfes bedient. In vielen Fällen ist diese Art der Navigation vollkommen zufriedenstellend, jedoch gibt es Probleme beim Auffinden von Szenen in längeren Videos, insbesondere, wenn man nicht weiß, an welcher Stelle sich diese befinden. Es gibt viele Ansätze diese Probleme zu lösen, für die auch schon Prototypen existieren. Im Verlauf dieser Arbeit werden einige davon vorgestellt, sodass ein Überblick über die Vielfalt geschaffen wird. [25]
1.1 Ziel der Arbeit
Das Ziel dieser Arbeit ist es die Probleme von Standardvideoplayern zu analysieren und eine alternative Navigationsmethode für das Abspielen von Videos vorzustellen. Dies umfasst ebenso die Entwicklung eines Prototyps, welcher es ermöglicht mit Hilfe von Flick-Gesten durch Videos zu navigieren. Im Speziellen soll durch diesen Prototyp untersucht werden, ob sich intuitive Flick-Gesten besser für die Navigation innerhalb eines
Videos eigenen, als standardmäßige Suchleisten. Die Wahl für eine horizontale Wischgesten wurde deshalb als Navigationsmethode gewählt, da ein Video als eine Reihe von Ereignissen betrachtet wird, durch die der Nutzer sich bewegt. Dabei wurde das Prinzip einer Listennavigation übernommen, da man sich dort ebenso schnell einen Überblick über den Inhalt einer Liste verschaffen kann. Die Bewegung sollte horizontal erfolgen, da sich somit der zeitliche Fluss eines Videos besser übertragen lässt. Auf Basis einer Studie, die im Rahmen dieser Arbeit durchgeführt wird, sollen Erkenntnisse über die Benutzerfreundlichkeit und Alltagstauglichkeit gewonnen werden. Dies geschieht insbesondere durch den direkten Vergleich mit dem Standardvideoplayer von İOS. Des Weiteren wird die subjektive Wahrnehmung der Benutzer erhoben, was ebenso in die Ergebnisse mit einfließen wird. Auf der Grundlage der Daten werden dann Antworten auf die Tauglichkeit und Benutzerfreundlichkeit der alternativen Interaktion im Gegensatz zur herkömmlichen Suchleistennavigation gegeben.
1.2 Aufbau der Arbeit
Da sich diese Arbeit mit Videosuche und Videobrowsing beschäftigt, werden, um ein besseres Verständnis der Thematik zu schaffen, angrenzende Themen mit einbezogen. Um die Relevanz hervorzuheben, wird im zweiten Kapitel die dahinterstehende Motivation detailliert erläutert. Da Smartphones und Tablet-Computer heutzutage sehr weit verbreitet sind, wird hierbei auch auf die wirtschaftlichen Aspekte eingegangen. Im Anschluss daran wird eine Definition für multimediale Inhalte gegeben, sowie ein Überblick, wie diese Medien auf mobilen Geräten konsumiert werden. Um die Details der Implementierung des Prototyps besser zu verstehen, sind noch Konzepte der İOS Entwicklung, wie Designpattern und Frameworks für Gestenerkennung und Video, aufzuarbeiten.
Im dritten Kapitel wird dann das Thema Videobrowsing intensiv aufgearbeitet. Im ersten Teil dieses Kapitels werden die verschiedenen Navigationsmethoden genauer erläutert, welche im Einzelnen die klassischen Methoden mit manueller Suchleiste, die automatische Inhaltsanalyse, sowie die Umsetzung von Videoplayern mit alternativer Inhaltsvisualisierung und Navigation sind. Um diesen Forschungsbereich weiter zu fördern, gibt es Evaluierungswettbewerbe. Der Video Browser Showdown, sowie TRECVID sind die beiden wichtigsten Veranstaltungen und werden aus diesem Grund genauer beleuchtet.
Das vierte Kapitel beschreibt alle Einzelheiten über Videobrowsing und Videonavigation auf mobilen Geräten. Dabei werden Besonderheiten der Benutzeroberfläche, Techniken von Multi-Touch Bildschirmen und verschiedene Gesten und deren Anwedungsfälle geauer erläutert. Des Weiteren wird dann speziell auf die Probleme von Standardvideoplayern eingegangen und einige Konzepte von Applikationen vorgestellt, die Lösungen für diese Probleme liefern.
Da im Rahmen dieser Arbeit ein Prototyp einer mobilen Videoplayer Applikation implementiert wurde, werden die einzelnen Schritte dieses Prozesses im fünften Kapitel detailliert beschrieben. Zu Beginn werden im ersten Schritt die Spezifikationen genauer behandelt. Dies umfasst die Anforderungen an die Applikation, also welches spezifische Problem mit der Applikation gelöst werden soll, sowie eine Beschreibung des zu entwickelnden Navigationskonzepts und der Benutzeroberfläche. Im nächsten Schritt werden die Details für den Programmierteil der Applikation erläutert. Dabei werden zu Beginn die Probleme, die einen großen Einfluss auf die Art der Umsetzung hatten, erklärt und die Lösungen dazu vorgestellt. Des Weiteren werden einzelne Klassen und Methoden des Videoplayers beschrieben und welche Aufgaben diese erledigen. Dies ist Teil der Gesamtarchitektur des Projekts, welches ebenfalls im Ganzen genauer dargestellt wird. Da für die anschließende Benutzerstudie neben der qualitativen Untersuchung auch quantitative Daten erhoben werden sollten, musste ein Loggingsystem implementiert werden. Die Details zu dieser Aufgabe werden im letzten Teil des Kapitels über die Implementierung gegeben.
Die Evaluierung des Flickplayers, das ist der Name des wischgestenbasierten Videoplayers, ist ebenso Teil dieser Arbeit. Der Aufbau der Studie, sowie die Durchführung und Evaluierung und Präsentation der Ergebnisse folgt im sechsten Kapitel.
Die gewonnenen Erkenntnisse der Thematik und die Schlüsse, die aus der Studie gezogen werden können, werden im Anschluss resümiert und ein Ausblick für zukünftige Forschungsarbeiten gegeben.
KAPITEL 2 Motivation und Grundlagen
In diesem Kapitel werden die Grundlagen aufgearbeitet, die für das weitere Verständnis der folgenden Kapitel nötig sind, sowie die Motivation für die Arbeit erläutert. Als Einstieg wird das Thema aus wirtschaftlicher Perspektive beleuchtet, da die ökonomischen Aspekte aufgrund des Marktvolumens eine außerordentliche Bedeutung haben. Des Weiteren wird genauer erläutert was multimediale Inhalte sind und welche Schwierigkeiten es bei der Darstellung und Suche gibt. Im Anschluss werden noch verschiedene Methoden aus dem Bereich der Darstellung vorgestellt. Da die Entwicklung von İOS Applikation bestimmte Besonderheiten ausweist und um ein besseres Verständnis der Programmdetails zu schaffen, wird in einem zusätzlichen Unterkapitel ein kurzer Überblick über Grundlagen der İOS Entwicklung gegeben.
Im Jahr 2007 hat Apple mit der Vorstellung des iPhones den gesamten Markt der Smartphones revolutioniert und damit die Art und Weise wie die Menschen das Internet benutzen, und unterwegs Videos und Musik konsumieren, für immer verändert. Der nächste Meilenstein wurde mit der Einführung des ersten iPads im Jahr 2010 gelegt, welches mit einer Bildschirmgröße von 9,7 Zoll als Alternative zu herkömmlichen Netbooks, also Notebooks mit kleinem Bildschirm und langer Akkulaufzeit, erwerblich wurde. Einer Studie [1] zufolge sind seit 2007 die Verkaufszahlen für Geräte wie Digitalkameras, MP3-Player und Navigationssysteme kontinuierlich geschrumpft und die der Smartphones immer weiter angestiegen. Die Grafik 2.1 zeigt, wie die Smartphones eine immer größere Rolle spielen. Das liegt insbesondere daran, dass Smartphones in der Lage sind viele der Funktionen out-of-the-box zu erfüllen, oder mit Applikationen die Funktionalität nachträglich zu installieren [26]. Da der Videokonsum auf den bis 2010 sehr kleinen Smartphone Bildschirmen nur bedingt befriedigend war, wurde mit dem iPad versucht, dieses Problem zu lösen. In Abbildung 2.2 ist der weltweite Absatz quartalsweise seit Q2 2010 abgebildet. Es ist deutlich zu sehen, wie der Absatz bis einschließlich 2012 stark gewachsen ist und sich seither auf einem nur leicht sinkenden Niveau hält. Die stark er-höhten Absätze jeweils im vierten Quartal sind insbesondere auf das Weihnachtsgeschäft zurückzuführen [2]. Apple ist mit dem iPad auf dem Tablet-Markt. seit seiner Einführung Marktführer. Alleine im dritten Quartal 2015 wurden knapp 10 Millionen Geräte weltweit verkauft und erreicht somit einen Marktanteil von 20,3%. Auf dem zweiten Platz liegt der Koreanische Elektronikhersteller Samsung mit einem Marktanteil von 16,5%). Im Vergleich zum Vorjahr ist die Gesamtverkaufsmenge im dritten Quartal generell etwas geringer, die Marktanteile haben sich jedoch kaum verändert. [27] Analysten gehen jedoch davon aus, dass sich in den kommenden Jahren die Marktanteile weiter zugunsten von Microsoft mit ihren Windows-Tablets verschieben werden, da diese verglichen zu Android und İOS Geräten eher die Funktionen eines vollwertigen Laptops ersetzen können. Im Jahr 2015 liegt der Windows Marktanteil bei etwa 7%) und soll laut Prognose im Jahr 2019 bei etwa 14,1%) liegen. Generell geht die International Data Corporation davon aus, dass die weltweiten Verkaufszahlen sich bis 2019 konstant auf etwa 250 Millionen verkauften Tablets fixieren und sich das jährliche Marktwachstum einstellen wird. Diese Entwicklung ist auch in Abbildung 2.3 in einem Diagramm dargestellt. [3] Das iPad war in erster Linie für den Privatgebrauch gedacht, jedoch haben seither auch Linternehmen großes Interesse an dieser Gerätekategorie gezeigt und evaluiert, wie diese Geräte den Alltag der Angestellten vereinfachen können, was insbesondere auf die hohe Mobilität zurückzuführen ist. Aus diesem Grund kommen die Nutzer sowohl aus dem Unternehmerbereich, sowie aus dem Privatsektor. In Schulen und Universitäten haben Tablet-PCs auch eine große Verbreitung gefunden. Technologiegestütztes Lernen kann die Leistung von Schülern und Studenten fördern, da die aktive Einbindung den Lernprozess unterstützt. Des Weiteren erhöht es die Interaktionsaktivität zwischen den Lehrern und Schülern. [28]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.1: Opfer des Smartphone-Booms [1]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.2: Weltweiter Tablet Absatz [2]
Die sehr hohe Konsumentenanzahl von Videomedien macht, es deshalb interessant, die Art und Weise, wie das Medium konsumiert wird, zu analysieren und Vorschläge zu machen, wie diese Erfahrung verbessert werden kann.
2.1 Multimediale Inhalte
Der Begriff Medium bedeutet im Allgemeinen Informationsträger. So können Informationen, die in unterschiedlichster Form existieren, gespeichert, transportiert und verbreitet werden. Beispiele dafür sind Video, Audio, Text und Bilder [29]. Auf Tablets kann man viele unterschiedliche Arten von Medien konsumieren. Die hochauflösenden Bildschirme
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.3: Prognostizierte Marktentwicklung von Tablets bis 2019 [3]
können Text so scharf darstellen, dass Bücher und Magazine selbst bei Dunkelheit angenehm gelesen werden können. Zusätzlich werden vollkommen neuartige Formen der Präsentation gegeben. Die Inhalte können ทนท auch mit Audio- und Videomaterial so kombiniert werden, sodass für den Nutzer ein tatsächlicher und unkomplizierter Mehrwert kreiert wird [30]. Doch nicht nur textueller Inhalt wird vermehrt auf mobilen Geräten mit berührungsempfindlichen Bildschirmen konsumiert, sondern auch Videos und Musik. Prinzipiell besteht multimedialer Inhalt aus zwei verschiedenen Komponenten. Zum einen ist das ein statischer Inhalt, wie beispielsweise ein Foto, was zu jedem gegebenen Zeitraum gleich ist. Zum anderen gibt es noch dynamische Inhalte, die sich zeitabhängig verändern, wie beispielsweise Animationen, audiomediale Inhalte und Videos. Darüber hinaus wird zwischen visuellen und nicht-visuellen Medien unterschieden. Visuelle Medien sind für den Betrachter sichtbar, wie Standbilder und Bewegtbilder. Dem gegenüber stehen die nicht-visuellen Medien wie Tonaufnahmen. Sobald mindestens zwei Medien miteinander kombiniert werden spricht man von Multimedia, wobei mindestens eines der Medien zeitbasiert, also kontinuierlich, sein muss. Ein klassisches Beispiel hierfür ist ein Spielfilm, bei dem sowohl Audio und Video zu einem Stream zusammengeführt werden. In Grafik 2.4 ist veranschaulicht wie verschiedene Medienarten miteinander kombiniert
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.4: Objektorientierte Darstellung von Medientypen [4]
werden, zu einem Multimedia Stream. Die Abbildung gibt hier als Beispiel ein Video an, welches mit einer Audiospur unterlegt ist [4]. Standardmäßig sind Tablets mit Programmen ausgestattet, um solche Videodateien abspielen zu können. Welche Probleme im Kontext von Navigation und Darstellung existieren und mit welchen Methoden versucht wird diese zu lösen, wird in den folgenden Kapiteln aufgearbeitet.
2.2 Videokonsum auf mobilen Geräten
Der Konsum von Videos auf mobilen Geräten unterscheidet sich sehr von dem auf Desktop-PGs. Viele Fernsehsender bieten mittlerweile ihr Programm auch als Applikation an, sodass durch die oftmals permanente Internetverbindung auch unterwegs auf diese Medien zugegriffen und konsumiert werden kann. Medienquellen wie iTunes auf dem iPhone bzw. iPad oder auch Google Play für Android-Geräte sind große Konkurrenten zu den feststehenden Fernsehgeräten. Problematisch wird es, das zufriedenstellende Konsumerlebnis von den klassischen Videomedien, auf den mobilen Sektor zu übertragen, das liegt insbesondere daran, dass mobiler Videokonsum sich anders in den Alltag integriert [31]. Die Datenmengen, die über mobile Netzwerke konsumiert werden, sind heutzutage durch schnelle Internetanbindungen besonders hoch. Laut. Cisco wird bis 2018 knapp 80% des weltweiten Datenverkehrs alleine durch Videostreaming erzeugt und bis dahin der mobile Datenverkehr in Bezug auf Volumen, den von kabelgebundenen Geräten überholt haben. Im Jahr 2013 lag dieser Wert zum Vergleich noch bei 66%). Plattformen wie YouTube und Netfiix tragen hierbei eine ausschlaggebende Rolle, da Personen aufgrund von Bequemlichkeit diese Produkte eher auf Tablets und Smartphones konsumieren. Die Nutzer legen mittlerweile viel mehr Wert auf die Qualität der gelieferten Videos. Die Standardauflösung eines Fernsehers reicht daher oftmals nicht mehr aus, sondern Auflö- sungen wie FullHD, also 1920x1080 Pixel, und sogar UltrnHD was der 4-fachen Auflösung von FullHD entspricht, also 3840x2160 Pixel, werden heute von den meisten Streamingportalen unterstützt. Die hohen Displayauflösungen der mobilen Geräte haben diesen Bedarf aufkommen lassen. Daraus resultieren mehrere Herausforderungen, die es zu bewältigen gilt. Zum einen ist das die Bereitstellung der Videos auf zuverlässiger Weise, was bedeutet, dass insbesondere bei Videostreams das Video möglichst ohne Unterbrechungen bei Konsumenten ankommt und das bei einer gleichbleibend hohen Qualität. Zum anderen müssen diese Videos benutzerfreundlich wiedergeben werden, was dann von den Applikationen umgesetzt werden muss. Der Bereich, der sich mit dieser Thematik beschäftigt wird auch Quality of Experience, kurz QoE, genannt. [32]
Der Fokus dieser Arbeit liegt aber in der Durchsuchbarkeit und Darstellung der Inhalte, was in den folgenden Kapiteln weiter erörtert wird.
2.3 Durchsuchbarkeit von Multimedia Dateien
Große Videobibliotheken sowie lange Videos werden oft zum Problem, was die inhaltliche Suche betrifft. Wenn man nicht weiß wo sich eine Datei befindet oder wie diese inhaltlich strukturiert ist, kann dies den Nutzer frustrieren. Im Vergleich dazu können bei textuel- len Inhalten wie digitale Bücher einfache Suchanfragen gestartet werden, ohne dass der Nutzer komplizierte Suchanfragen erstellen muss. Große Texte können daher entweder mit Hilfe eines vorhandenen Index durchsucht werden, wie einem Inhaltsverzeichnis, oder auch mit einer Volltextsuche. Bei Videos können solche Suchanfragen, auch Queries genannt, nicht formuliert werden, weshalb manuell durchsucht werden muss und dies unter Umständen äußerst zeitaufwendig sein kann. Dazu kommt noch, dass Nutzer aufgrund der enormen Datenmengen oft gar nicht wissen, wie sie das Objekt, das sie gerne finden würden, in einer Suchanfrage beschreiben sollen [33]. In der Regel werden die Videos mit Metadaten ergänzt, sowie Tags, also Schlüsselwörter, die den Inhalt des Videos in irgendeiner Weise logisch beschreiben. So lassen sich jedoch keine bestimmten Szenen textuell beschreiben, sodass der Videoplayer automatisch zur gesuchten Stelle springt. Kollaborativ werden solche Tags auch von mehreren Nutzern gesetzt, damit diese Annotation auch zeitbezogen geschieht. Diese Technik wird auch Social Tagging genannt. Ein Beispiel für ein solches System ist das Videoportal Yovisto [5], auf dem Videos aus akademischen Vorlesungen verfügbar sind. Der Videoplayer bietet verschiedene Möglichkeiten, um die Videos durchsuchbar zu machen. Neben dem klassischen Schieberegler, welcher die aktuelle Position der zu sehenden Szene in Relation zur Gesamtlänge zeigt, gibt es noch eine Tagging Box. Diese Tagging Box beinhaltet Schlagwörter, die die Nutzer passend zum Inhalt des Videos eingetragen haben. Da jeder Nutzer dieses Videoportals solche Annotationen machen kann, werden diese, im Falle von Wiederholungen entspre- eilend gewichtet. Daher sind Schlagworte mit häufigerem Vorkommen größer dargestellt, als Worte, die weniger oft genannt wurden. Die Abbildung 2.5 zeigt eine solche Tagging Box. Mit einem Klick auf eines der Schlagwörter öffnet sich darunter eine Liste mit 01 Einführung. Kommunikationsmedium Internet
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.5: Yovisto mit Tagging Box [5]
Videos, in denen dieses Schlagwort annotiert wurde und jeweils an welchen Stellen im zeitlichen Verlauf der Videos. Von dort aus ist es dann möglich direkt zu der markierten Stelle zu springen, um sich den Inhalt anzusehen. Um das Thema oder den Inhalt des Videos schneller zu Überblicken, werden unterhalb des Videos noch Metadaten wie der Name des Vortragenden, Aufnahmedatum, Untertitel, sowie der Name der Universität aufgelistet. [34]
2.4 Grundlagen der İOS Entwicklung
Die Entwicklung für iOS Geräte unterscheidet sich von Desktopanwendungen dahingehen, dass von Beginn die eingeschränkten Ressourcen mit einkalkuliert werden müssen. Lim Applikationen für Apple’s mobiles Betriebssystem entwickeln zu können, müssen unterschiedliche Paradigmen verstanden werden. Die wichtigsten Konzepte, die für die Umsetzung des Flickplayers relevant sind, werden in diesem Kapitel behandelt.
2.4.1 Model-View-Controller Konzept
Eines der wichtigsten Paradigmen in der iOS Entwicklung ist das Model-View-Controllers Entwurfsmuster, da es tief in Cocoa Touch verwurzelt ist. Cocoa Touch umfasst das gesamte Framework, um iOS Applikationen zu entwickeln. Teile einer Applikation können in drei unterschiedlichen Kategorien eingeteilt werden, welche Model, View und Controller sind. Das Model beschreibt die Datenschicht, also alle Daten, die dem Programm zur Verfügung stehen und bearbeitet werden. In dieser Schicht ist man einzig und allein auf die Daten fokussiert, was bedeutet, dass man hier keine Informationen darüber speichert, wie diese Daten später dargestellt werden. Beispielsweise kann dies eine Datenbank sein, welche Teil der Applikation ist. Modelle werden in der Regel als Unterklasse von NS- Object erstellt, mit Instanzvariablen und Methoden, um deren Werte zu manipulieren. Die Visualisierung, also die Benutzeroberfläche, gehört zur sogenannten View. Auch hier wird sich nur auf diese eine Aufgabe beschränkt und keine Logik implementiert, die zur Abspeicherung der Daten benötigt wird. Die Kommunikation zwischen dem Model, also den Daten und der View wird vom Controller übernommen. Wenn sich beispielsweise die Daten ändern, dann wird auf dieser Ebene die Benutzeroberfläche darüber informiert, sodass diese sich dementsprechend anpassen muss. Wenn das Datenmodell besonders einfach ist, dann ist es dennoch möglich diese als Teil des Controllers zu implementieren, sodass keine zusätzliche Klasse dafür angelegt werden muss. In der iOS Entwicklung werden die Controller als Unterklasse von UlViewController angelegt. In Abbildung 2.6 ist das Konzept des Model-View-Controllers grafisch veranschaulicht. In diesem Beispiel gibt es eine Datenbank, welche eine Menge von Mitarbeitern verwaltet. Des Weiteren können die existierenden Mitarbeiter aufgelistet werden, sowie neue Mitarbeiter angelegt werden. Die strikte Modularisierung ist hier sehr gut zu sehen, da die View beispielsweise nur das Eingabeformular und einen Knopf zum Abspeichern anzeigt. Was mit den eingegeben Werte passiert, bzw. was generell passieren soll, wenn dieser Knopf gedrückt wird, wird allein vom Controller übernommen. Nach einer Aktion sind die neuen Daten ebenfalls nur in dem Model zu finden und nicht im Controller selbst. Der besondere Vorteil dabei ist, dass die Daten unabhängig verwaltet werden und so verschiedene Controller unterschiedliche Aufgaben übernehmen können. [6]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.6: Model-View-Controller [6]
Da die Kommunikation zwischen der View und dem Model nie direkt passiert, müssen Benachrichtigungen mit sogenannten Protokollen und Delegates implementiert werden. Das folgende Kapitel gibt einen kurzen Überblick, welche Bedeutung diese in der iOS Entwicklung haben und wie sie umgesetzt werden.
2.4.2 Protokolle und Delegates
Protokolle und Delegates kommen dann zum Einsatz, wenn komplexe Kommunikation zwischen zwei Objekten gefordert ist. Die Verwendung von Delegates und Protokollen ist für die iOS Entwicklung essentiell und ist daher Teil der Grundlagen. Um dieses Konzept zu verstehen, lässt es sich am besten an einem Beispiel erklären. Eine TableView, also eine Liste mit mehreren Einträgen, durch die man navigieren kann, ist Teil eines Controllers. Die TableView soll eine Übersicht von Fotos haben und mit einem Tipp auf ein einzelnes Foto soll dieses vergrößert dargestellt werden. Die TableView besitzt eine Vielzahl von Methoden, die beispielsweise erkennen, auf welche Zelle getippt wurde oder auch ob der Nutzer durch die Liste navigiert. Da eine TableView aber nicht in jedem Fall in gleicher Weise darauf reagieren soll, wird die eigentliche Funktionalität von den referenzierten Objekten implementiert. Die Funktionen werden innerhalb der TableViews mit Protokollen definiert, die an den entsprechenden Stellen aufgerufen werden. Des Weiteren hat die TableView ein sogenanntes Delegate-Property, welches vom Typ des Protokolls ist. Auf diesem Delegate-Objekt werden dann innerhalb der TableView-Klasse die Protokoll-Methoden aufgerufen. Wenn die TableView ทนท vom Controller initialisiert wird, dann wird der Controller zum Delegate dieser TableView-Instanz gesetzt. Dazu muss der Controller die Methoden, oder nur diejenigen, die auch tatsächlich benötigt werden, implementieren, um konform zum Protokoll zu sein. Wenn der Nutzer ทนท auf ein verkleinertes Foto in der Liste tippt, dann ruft die TableView die entsprechende Delegate- Methode auf und übergibt dieser die Position der Zelle. Da die Implementierung dieser Methode vom Delegate gemacht wird, in diesem Fall dem Controller, kann darin auf die Interaktion reagiert werden und mit der Information über die ausgewählte Zelle das entsprechende Foto vergrößern. Protokolle und Delegates werden nicht nur von Klassen aus dem iOS SDK eingesetzt, sondern können und sollten auch von eigenen Klassen umgesetzt werden. Der besondere Vorteil dieses Entwurfsmuster ist, dass sich so weitere Ableitungen der TableView-Klasse vermeiden lassen und sich so Beziehungen zwischen jeglicher Art von Klassen aufbauen lassen. Eine Kapselung der Logik wird so konsequent etabliert und die Logik nur dort implementiert, wo die konkreten Informationen auch verarbeitet werden. [35] [36]
2.4.3 Observerpattern
Neben den Protokollen und Delegates ist das Observer Entwurfsmuster ein ebenso wichtiger Bestandteil aus der Programmierung für iOS, um Benachrichtigungen bzw. Kommunikation zwischen mehreren Objekten umzusetzen. Der grundlegende Gedanke dahinter ist, das an unterschiedlichen Stellen im Programm auf bestimmte Ereignisse reagiert werden muss. Wie auf diese Ereignisse reagiert wird, ist in diesem Fall zweitrangig. Prinzipiell haben zwei Arten von Observern einen besonderen Stellenwert in der iOS Entwicklung, welche zum einen die Notifications und zu anderen der Key-Value Observer sind. Die iOS Foundation bietet mit der NSNotificationCenter Klasse ein mächtiges Werkzeug, um mit solchen Benachrichtigungen umzugehen. Die grundlegende Idee dahinter ist, dass ein Objekt eine Notification hinzufügen kann, welche einen Namen hat. Das NSNotificationCenter bietet mit dem defaultCenter() eine Singleton Instanz, welche diese dann verwaltet. Um neue Benachrichtigungen hinzuzufügen, muss folgende Methode verwendet werden:
Abbildung in dieser Leseprobe nicht enthalten
Andere Objekte können sich ทนท zu diesem Observer anmelden und eine Funktion implementieren, die ausgeführt wird, wenn zu dieser Notification ein Post ausgelöst wurde. Das Anmelden zu einer gegebenen Notification wird mit folgender Methode ausgeführt:
Abbildung in dieser Leseprobe nicht enthalten
Man kann diese Art von Observern wie mit einem Newsletter vergleichen. Ein Dienst schickt einen Newsletter an alle Personen aus, die sich für diesen angemeldet haben. Der Dienst an sich macht, hierbei keinen Unterschied darin, wie die einzelnen Personen darauf reagieren. Innerhalb von iOS werden viele dieser Notifications verwendet, wie beispielsweise von der Tastatur, die eine Notification postet, sobald diese zum Vorschein kommt oder wieder geschlossen wird. Auch andere Applikationsbenachrichtigung werden sehr häufig benutzt, sodass eine Applikation darauf reagieren kann, wenn sie in den Hintergrund geschoben wird. Bei Videoplayern wird dies in der Regel benutzt, um das aktuelle Video zu pausieren, sodass es nicht im Hintergrund weiterläuft. [37] [38]
Der Key-Value Observer hat eine besondere Bedeutung, da dieser unter anderem verwendet wird, um Benachrichtigung zwischen dem Model und dem Controller auszutauschen. Der Unterschied zur Notification ist hierbei, dass ein bestimmtes Attribut von einem Objekt überwacht wird und eine Benachrichtigung postet, sobald sich der Wert dieses Attributs ändern. Des Weiteren gibt es keine zentrale Stelle, die die Benachrichtigungen verwaltet. Mit Hilfe des folgenden Beispiels wird dieses Entwurfsmuster weiter erklärt. Es gibt zwei Objekte, das BankObject. und das PersonObject. Das Ba.nkOb- ject besitzt ein Attribut aecount.Balance, welches den aktuellen Kontostand einer Person wiederspiegelt. Die Instanz des BankObject fügt ทนท einen Observer hinzu, siehe Abbildung 2.7, welcher die Instanz des PersonObject benachrichtigt, sobald sich das Attribut accountBalance ändert. Wie die Instanz des PersonObject darauf reagiert, muss in der Klasse dieser definiert werden. Dazu muss die Methode in Abbildung 2.8 implemen- Connection established BankObject PersonObject -(void) observeValueForKeyPath:(NSString *)keyPoth ofObject:(id)object tiert werden. Der Methodenblock wird dann ausgeführt, sobald sich der Wert ändert. Der Vorteil hierbei ist, dass Benachrichtigungen nicht aktiv versendet werden müssen und Objekte ohne weitere Klassen miteinander verbunden werden und Informationen austauschen können. [7] [39]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.7: Key-Value Observer anlegen [7]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.8: Key-Value Observer anmelden [7]
2.4.4 AVFoundation
Für die Entwicklung des Flickplayers musste ein geeignetes Framework ausgewählt werden, welches in der Lage ist, Videos während der Laufzeit zu manipulieren. Das iOS SDK bietet mit der AVFoundation ein leistungsstarkes Framework, welches in der Lage ist, audiovisuelle Daten, also Ton- und Videoaufnahmen, zu erzeugen, editieren, untersuchen und selbstverständlich auch abzuspielen. Des Weiteren gibt es Klassen, die speziell den LTmgang Audio implementieren. In Abbildung 2.9 ist zu sehen, wie die AVFoundation in iOS integriert wurde. Das Framework verwendet Methoden aus aus Core Audio, Core Media und Core Animation, welche zu den low-level Frameworks zählen [8]. Core Audio übernimmt hier beispielsweise alle Aufgaben, um die Audiodaten zu handhaben und Core Media unterstützt die AVFoundation mit dem LTmgang von zeitbasierten Aktionen rund um CMTime [40]. Für das Abspielen eines Videos werden drei Komponenten benötigt. Zum einen ist dies ein AVAsset, also die eigentliche Datei, die abgespielt werden soll. Da dieses Objekt nicht direkt abgespielt werden kann, muss es einem AVPlayerltem übergeben werden, da dies den aktuellen Status des Videos repräsentiert. Der AVPlayer
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.9: Einordnung von AVFoundation in iOS [8]
ist dann der eigentliche Videoplayer, welcher alle Methoden zur Verfügung stellt, um das Video zu steuern. Dies sind beispielsweise einfache Funktionen, wie das Starten und Pausieren des Videos. Um das Video für den Nutzer anzuzeigen, muss die AVPlayer-Instanz
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.10: Abspielen einer Videodatei mit AVFoundation [9]
einem AVPlayerLayer übergeben werden, welcher dann in einer UlView angezeigt werden kann. In der Abbildung 2.10 sind die Referenzen zwischen den einzelnen Komponenten in einem Diagramm grafisch dargestellt. Da die eigentliche Datei, das AVAsset, nicht direkt abgespielt wird, sondern den Wrapper AVPlayerltem verwendet, kann eine Datei von unterschiedlichen AVPlayern gleichzeitig abgespielt werden und somit das auch Rendering unterschiedlich sein kann. Das Manipulieren der Abspielgeschwindigkeit während der Laufzeit ist für den Flickplaner eine essentielle Funktionalität. Der AVPlayer hat hierfür ein Attribut rate, welches zu jedem Zeitpunkt verändert werden kann. Das geht sowohl zum Beschleunigen, zum Verlangsamen, sowie zum rückwärts Abspielen des Videos. All diese Funktionen sollten Teil des Flickplayers sein und somit auch angewendet werden. Dennoch gibt es hier Limitierungen, welche in den folgenden Kapiteln genauer beleuchtet werden. [9]
2.4.5 Gesturerecognizer und UIResponder
Fehlende Peripherie wie Maus und Tastatur, zumindest als Hardware, wird bei mobilen Geräten durch einen Berührungsempfindlichen Bildschirm ersetzt. Das iOS SDK bietet viele Schnittstellen, um auf Berührungen und Gesten reagieren zu können. Nicht jedes Objekt kann auf Eingaben reagieren, denn dazu muss es eine Unterklasse von UIResponder sein. Generell gibt es hier zwei unterschiedliche Ereignisse, welche zum einen ein Berührungsereignis und zum anderen ein Bewegungsereignis sind. Das Berührungsereignis gibt an, dass eine Berührung mit einem Objekt gerade begonnen oder aufgehört hat. Eine Berührung ist zu Ende, sobald der Nutzer den Finger wieder anhebt. Für die Implementierung der Flickplayers ist diese Art von Interaktionserkennung besonders wichtig, da aus diesen Informationen der Benutzereingabe die Interaktion erst möglich wird [41]. Die sogenannte Responder Chain, siehe Abbildung 2.11, also eine Kette, macht es möglich, Ereignisse durch eine Hierarchiekette weiterzugeben. Der Sinn dahinter ist, dass ein visuelles Objekt, in der Regel eine UlView oder eine Unterklasse davon, ein Event entgegennimmt und nicht selbst darauf reagiert. Das Event wird von der UlView in der Hierarchie weitergegeben und dann von dem Objekt verarbeitet, welches die Protokollmethoden implementiert [10]. Vordefinierte Arten von Gesten können mit einem sogenannten UIGestureRecognizer direkt einem UlView zugewiesen werden. Jede Unterklasse von UIGestureRecognizer befähigt den Umgang mit genau einer Gesteninteraktion. Die einzelnen Gesten, die vom iOS SDK zur Verfügung gestellt werden, sind im Folgenden aufgelistet.
- UITapGestureRecognizer
- UIPinchGestureRecognizer
- UIRotationGestureRecognizer
- UISwipeGestureRecognizer
- UIPanGestureRecognizer
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2.11: UIResponder Chain [10]
- UIScreenEdgePanGestureRecognizer
- UILongPressGestureRecognizer
Diese sind einfache Gesten, wie die Тар-Geste, oder auch auch die Pinch-Geste, die insbesondere verwendet wird, um ein Objekt zu vergrößern bzw. zu verkleinern. Zusätzlich kann hier noch angemerkt werden, dass eine Instanz mehrere Attribute besitzt, welche beispielsweise angeben, mit wie vielen Fingern die Geste ausgeführt werden muss, um als solche erkannt zu werden. Eine Instanz von UlView hat die Methode addGestureRe- cognizer, mit der man eine Instant der oben genannten GestureRecognizer hinzufügen kann. Des Weiteren benötigt die Methode einen Selector, welcher ausgeführt wird, wenn der Nutzer diese Geste auf dem Objekt gemacht hat. [42]
In diesem Kapitel wurden die Grundlagen aufgearbeitet, um die Implementierung des Flickpayers möglich zu machen. Wie der Prototyp im Detail umgesetzt wurde, wird in Kapitel 5 behandelt. Im folgenden Kapitel wird ganze Thematik von Videobrowsing detailliert erörtert.
KAPITEL 3 Videobrowsing
Im vorherigen Kapitel hat sich herauskristallisiert, dass sich multimediale Dateien nicht ohne Weiteres durchsuchen lassen, jedenfalls nicht, wenn man eine vollständig manuelle Suche vermeiden möchte. Das Gebiet des Videobrowsings beschreibt die Aufgabe durch ein Video zu navigieren, um eine oder mehrere Szenen zu finden, oder einen Überblick über den Inhalt zu bekommen. Daher gibt es die Möglichkeiten den Inhalt zu analysieren und grafisch aufzubereiten, die Darstellung und Navigation an sich zu ändern, oder beide Methoden miteinander zu kombinieren [43]. In diesem Kapitel werden deshalb Methoden vorgestellt, die eine oder beide dieser Konzepte einsetzen.
3.1 Navigationsunterstützung
Im Bereich der Videoplayer wurden bisher einige Versuche gemacht, die Navigation zu vereinfachen, sodass auch Nutzer ohne besondere Vorkenntnisse das Werkzeug bedienen können. Insbesondere bei mobilen Geräten wie Smartphones und Tablets gibt es nur wenige Alternativen zur klassischen Bedienoberfläche. Die geringe Leistung und der Formfaktor, also die geringe Bildschirmgröße, spielen hier eine nicht unerhebliche Rolle [44].
3.1.1 Klassische Navigation
Mit der Einführung von Videorekorder, engl. Video Cassette Recorder, wurde auch der Begriff VCR controls etabliert. Diese beschreiben die Standardeingabemethoden, um einen dem Videorekorder bedienen zu können. Diese waren üblicherweise Knöpfe, welche Funktionen wie Start, Pause, vor- und zurückspulen und Stopp Übernahmen. Dieses Konzept hat sich mittlerweile so stark bei den Nutzern eingeprägt, dass es von allen gängigen Video und Musikplayern übernommen wurde. Dies wurde teilweise auch mit einer Zeitleiste kombiniert, sodass auch grafisch sichtbar wird, wo man sich momentan im Video befindet [45]. Als Beispiele zeigen die Abbildungen in 3.1 die Benutzerober fläche zweier bekannter Videoplayer. Zum einen ist das der aktuelle YouTube Player und zum anderen der VLC Media Player in der Version 2.2.1 für MacOS. Sowohl der YouTube Player, als auch der VLC Media Player haben eine sehr ähnlich strukturierte Menüführung. Beide haben in der unteren linken Ecke den Start- bzw. Pause-Knopf, sowie die Möglichkeit zum nächsten Video in der Wiedergabeliste zu springen. Des Weiteren besitzen beide die übliche Navigationsleiste, um sich schnell innerhalb des Videos zu bewegen. In Ergänzung dazu hat der YouTube Player eine Funktion, bei der der
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.1: Standardvideoplayer YouTube und VLC Player im Vergleich
Nutzer mit dem Mauszeiger über die Suchleiste geht und ohne zu klicken eine Vorschau dieser Stelle zu bekommen. Wenn der Nutzer eine bestimmte Szene finden möchte, aber nicht weiß an welcher Stelle sich diese befindet, ist diese Navigationsmethode unter Umständen weniger zufriedenstellend. Anhand eines Beispiels lässt sich das Problem von zeitleistenbasierten Videoplayern besser hervorheben. Ein Fußballspiel wird live Übertragen und während der Halbzeitpause kann man die vergangene Spielhälfte nochmals zur Analyse abspielen lassen. Für den Zuschauer sind hier offenbar nur wichtige Szenen interessant, die einen Einfluss auf das Spielergebnis haben. Das sind vor allem Tore, Fouls oder Angriffe, die fast zu einem Tor geführt haben. Bei einem 45-Minuten langem Video würde eine manuelle Suche sehr zeitaufwendig sein, da man sich in der Regel die exakten Zeitpunkte nicht merken konnte. Es gibt Videoplayer, die es während der Wiedergabe eines Videos oder Streams ermöglichen, Markierungen zu setzen. Innerhalb der Halbzeitpause kann dann von einer Markierung zur nächsten navigiert werden, ohne sich unwichtige Stellen ansehen zu müssen. Die Granularità! der Zeitleisten ist oftmals eher ungenau und lässt den Nutzer in Sekundenintervallen navigieren. Das liegt daran, dass bei besonders langen Videos die Zeitleiste aufgrund von Platzmangel auf dem Bildschirm nicht entsprechend skaliert werden kann. Die maximale Bewegungsgenauigkeit auf dem Bildschirm liegt bei einem Pixel. Die Distanz von einem Pixel zum nächsten ist daher bei kurzen Videos ebenfalls kürzer, gemessen an dem relativen Verhältnis zur Videolänge.
Dies wird zum Problem, wenn man sich eine bestimmte Szene stark verlangsamt anschauen möchte, um eine detaillierte Analyse zu machen. Das ist zum Beispiel der Fall, wenn der Ball außerhalb des Spielfeldes gelangt und es nicht sicher ist, welcher Spieler den Ball zuletzt berührt hat. Auch hier müssen Videoplayer eingesetzt werden, die über die herkömmliche Funktionalität hinausgehen und beispielsweise eine Navigationsmethode implementieren, die eine Frame-by-Frame Navigation ermöglicht, die Zeitleiste skalierbar ist, oder das Video schlichtweg langsamer abspielen lässt. [25]
In den folgenden Kapiteln werden noch weitere Tools für den Desktop-Bereich vorgestellt, die diesen konventionellen Pfad verlassen und mit Hilfe von Inhaltsanalysen und interaktiver Videosuche diesen Vorgang beschleunigen und vereinfachen.
3.1.2 Automatische Inhaltsanalyse
Bei sehr großen Ansammlungen von Multimediadaten ist eine manuelle Durchsuchbarkeit praktisch nicht gegeben. Mit Hilfe einer automatischen Inhaltsanalyse kann der Nutzer ein Video oder mehrere Videos nach bestimmten Merkmalen untersuchen, je nach dem was in dieser Situation am sinnvollsten ist. Dazu kommt noch, dass dieses Teilgebiet von Videobrowsing in der Regel nicht nur von Nutzern verwendet wird, die schnell eine bestimmte Szene innerhalb eines Videos finden möchten, sondern auch von Firmen die beispielsweise Videoüberwachungssysteme einsetzen. Denn hier steht man vor dem Problem, dass teilweise rund um die Uhr gefilmt wird und es dadurch unmöglich ist, bestimmte Aktivitäten aus dem Video hervorzuheben, die für den überwacher von Bedeutung sind. Zum Beispiel kann ein solches Video auf Bewegungsaktivitäten untersucht werden, sodass man einfach und schnell von einer aktiven Szene zur anderen navigieren kann, ohne sich den uninteressanten Inhalt dazwischen anschauen zu müssen. Da heutige Systeme zwar schon sehr ausgereift sind, kann und wird man dennoch nicht vollkommen auf menschliche Begutachtung verzichten können. Die für den Betrachter interessanten Szenen zu erkennen ist eine Sache, jedoch müssen die von dem Videobrowser gelieferten Ergebnisse auch selbst einfach und in angemessener Zeit durchsuchbar sein [46]. Daher ist eine grafisch sinnvolle Benutzeroberfläche des Tools ebenso ausschlaggebend wie der Algorithmus, der diese Ergebnisse produziert. Der ganze Vorgang wird auch Video Summarization genannt, da die wichtigen Inhalte aus dem langen Video zusammengefasst und aufbereitet werden [47] [48]. Im Folgenden werden verschiedene Tools vorgestellt: Juengling et al. [43] haben den VideoZoom vorgeschlagen. Veränderungen werden hier in zwei Phasen erkannt. Zuerst werden zur Laufzeit Änderungen von angrenzenden Bildern hervorgehoben. Dies wird in der zweiten Phase mit einem Algorithmus kombiniert, welcher die Schatten von den Objekten erkennt. So ist es möglich die interessanten Objekte zu markieren, die dann auch Tubes genannt werden. Im Anschluss kann man solche Tubes als Suchinformation übergeben und VideoZoom liefert eine Übersicht zurück, mit allen gefundenen Objekten. Mit einem Klick auf ein Ergebnis, welches ein Vorschaubild der Szene ist, navigiert man im originalen Video zur gesuchten Stelle. Im Fall der VideoZoom Studie lieferte insbesondere die Suche nach Fahrzeugen sehr genaue Ergebnisse.
Der Video Explorer von Schöffmann et al. [ff] erlaubt es mit zwei Arten ein Video zu durchsuchen. Zum einen können gesuchte Features durch Histogramme visuell dargestellt werden und zum anderen kann das Video anhand von gegeben Beispielen durchsucht werden. Bis dahin konnte man Videosuchtools in drei verschiedene Klassen aufteilen. Zum einen ist das die textuelle Suche, bei der Schrift und Sprache innerhalb der Videos extrahiert wird und als Text zur Verfügung steht, womit sich dann gewöhnliche Textsuchen durchführen lassen. Die zweite Kategorie ist, dass man ein Beispielbild als Suchparameter verwendet. Problematisch ist jedoch, dass der Nutzer oftmals kein Beispiel zur Hand hat, das er verwenden kann. Als dritte Kategorie gibt es noch die konzeptuelle Suche, welche es erlaubt semantische Konzepte als Suchparameter zu übergeben. Das bedeutet, dass der Nutzer beispielsweise nach Strand sucht und alle Stellen im Video angezeigt werden, die einen Strand zeigen. Dies geschieht anhand von Deskriptoren, die Farbe, Texturen und Kompositionen innerhalb des Videos mit einem trainierten Machine Learning Algorithmus zusammenfassen und damit das Video durchsuchen können. Ein großes Problem dabei ist, dass die Analyse eines gegebenen Videos um ein vielfaches länger dauert, als die eigentliche Videolänge. Dazu kommt noch, dass die Navigationsoberflächen solcher Tools kaum intuitiv sind, was eine Suche noch zeitaufwendiger macht. Um dieses Problem zu lösen, implementiert der Video Explorer eine Färb- und Bewegungserkennung, die während der Dekodierung des Videos schnell durchgeführt werden kann und projiziert die Ergebnisse als Histogramme zu einer Zeitleiste, die gleichzeitig als Navigationsleiste dient, wie sie auch bei Standardvideoplayern verwendet wird. In Abbildung
3.2 ist die Benutzeroberfläche des Video Explorers mit drei verschiedenen Features zu sehen, nach denen gesucht wird. Da wären zum einen die Key Frames, die dominante Farben und der Bewegungsverlauf innerhalb des Videos. Jedes einzelne Feature wird auf einer eigenen Suchleiste projiziert. Anhand des gelben Balkens weiß der Nutzer sofort, wo er sich im Video gerade befindet. Im gezeigten Beispiel ist eine Nachrichtensendung zu sehen. Hier werden verschiedene Berichte abgespielt, die immer zuvor vom Nachrichtensprecher angekündigt werden. Da sich in der Regel innerhalb der selben Sendung die Kleidung und der Hintergrund des Sprechers nicht verändern, kann mit Hilfe der aktivierten Suche für die dominanten Farben immer sehr einfach auf der Navigationsleiste erkannt werden, wo ein Beitrag zu Ende ist und eine neuer Beitrag beginnt. Hier sind die dominanten Farben Orange und Schwarz sehr deutlich zu erkennen. Die Bewegungserkennung ist in diesem Fall auch sehr hilfreich, da sich der Nachrichtensprecher nicht viel bewegt und auch keine großen Kameraschwenker gemacht werden. Auf der Navigationsleiste für diese Suche werden Bewegungen ebenfalls durch Farben dargestellt, wobei Weiß bedeutet, dass keine Bewegung vorhanden ist. Eine weitere Eigenschaft des Video Explorers ist, dass man innerhalb der Navigationsleiste hineinzoomen kann, wie in Abbildung 3.3 zu sehen ist. Das ist besonders hilfreich, wenn das Video etwas länger ist und man eine detailliertere Übersicht einer ausgewählten Sequenz bekommen möchte. Wie schon angesprochen unterstützt der Video Explorer auch eine Beispielsuche. Dafür wird ein gewünschter Bereich des Videos markiert und später dann durch den Player angezeigt, an welchen Stellen im Video dies das gesuchte Muster wiederholt. [11]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.2: Video Explorer mit verschiedenen Suchleisten [11]
Für Zielsuchaufgaben, bei denen der Nutzer vorher schon weiß, wie die gesuchte Stelle aussieht, hat Bai et al. [49] einen Videobrowser vorgeschlagen, der zu Beginn eine Videosammlung analysiert und Keyframes extrahiert. Die gewonnen Informationen werden in eine Datenbank gespeichert, die für die späteren Suchen herangezogen wird. Wenn ein Nutzer ทนท eine Szene finden möchte, dann wird die gesuchte Stelle als Suchparameter dem Suchsystem übergeben, welches passende Keyframes mit deren Zeitstempeln zurückliefert. Dieses Ergebnis wird dann vom Nutzer verwendet, um an die gesuchte Stelle zu navigieren.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.3: Zoom innerhalb der Navigationsleiste beim Video Explorer [11]
Mit den Joke-O-Mat von Friedland et al. [12] wurde ein Ansatz vorgestellt, bei dem die Audiospur einer Sitcom-Serie analysiert wird und auf dieser Grundlage verschiedene Szenen erkannt werden können. Die Analysealgorithmen können trainiert werden, sodass bestimmte Personen erkannt werden können und man mit Hilfe der Zeitstempel dann zu den Szenen springen kann, an denen die gesuchten Personen gerade Sprechen. In Abbildung 3.4 ist die Benutzeroberfläche des Joke-0-Maťs dargestellt. Die Audioanalyse ist so entwickelt worden, dass auch das Lachen der Zuschauer in der Serie erkannt wird. Davon ausgegangen, dass nach einem Satz eines Darstellers, gefolgt von Gelächter, ein Witz gemacht wurde, konnten diese Szenen auch als solche markiert werden. Der Nutzer kann damit, ebenfalls von einem Witz zum nächsten springen. Der Joke-P-Mat wurde speziell am Beispiel der Serie Seinfeld entwickelt, was auch aus der Benutzeroberfläche ersichtlich ist. In der rechten Spalte können alle Schauspieler selektiert werden, nach denen gesucht werden soll, sowie eine geschlechtsspezifische Suche. In der unteren Navigationsspalte gibt es verschiedene Menüs, die beispielsweise eine Übersicht über alle Witze gibt. Mit einem Klick auf einen Bildausschnitt gelangt der Nutzer direkt in diese Szene. Mit einer gewöhnlichen Navigationsleiste, sowie einem Knopf zum Abspielen, bzw. Pausieren ist man jederzeit in der Lage, manuell zu navigieren. Der Joke-O-Mat zeigt sehr gut, dass Videonavigation nicht nur auf Grundlage des visuellen Teils gemacht werden kann, sondern auch andere Komponenten eines Multimediums mit einbezogen werden können.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.4: Joke-O-Mat Benutzeroberfläche [12]
Im nächsten Kapitel werden Alternativen zur Inhaltsanalyse vor gestellt. Dies ist die Möglichkeit durch Veränderung der Visualisierung des Inhaltes und erweiterter Navigation ebenso die Durchsuchbar keit zu vereinfachen und beschleunigen.
3.1.3 Alternative Inhaltsvisualisierung und Navigation
Bisher bieten nur wenige Videoplayer eine Alternative zur klassischen Navigationsleiste. Wie im Kapitel zur klassischen Navigation schon gezeigt wurde, hat der YouTube Player ein kleines Vorschaufenster, welches anzeigt, wo man im Video hinspringen wird. Neben der algorithmischen Analyse von Videos ist oftmals eine andersartige Darstellung des Inhalts und auch Navigation vollkommen ausreichend, um dem Nutzer einen Vorteil zu verschaffen. Vor allem wenn der Nutzer keine geeignete Suchanfrage machen kann, da er nicht weiß, wie man das zu Suchende beschreiben soll [50]. Ein besonderes Kriterium für Massentauglichkeit ist eine einfache Handhabung des Tools. Zu flache Lernkurven können den Nutzer frustrieren und zum Aufgeben bewegen. Es gibt einige Versuche dieses Dilemma zu bewältigen, von denen im Folgenden einige vorgestellt werden. [51] Der Baumbasierte Video Browser von del Fabro [13] erlaubt es innerhalb kürzester Zeit sich einen Überblick über den Inhalt eines Videos oder Videobibliothek zu verschaffen. Am Beispiel eines einzelnen Videos wird nach dem öffnen eine Übersicht von Vorschaubildern angezeigt, die jeweils alle eine identisch lange Zeitspanne abbilden. Die Anzahl an Vorschaubildern ist frei konfigurierbar, sodass man beispielsweise eine 3 mal 3 Zellen Übersicht einstellen kann. Bei einem Video mit 90 Minuten Länge steht jedes der Bilder also für 10 Minuten des Videos. Mit einem Klick auf eines der Bilder gelangt man eine Stufe tiefer in der Hierarchie, wodurch ทนท wieder 9 Vorschaubilder angezeigt werden, die den Inhalt repräsentieren, welcher von dem ausgewählten Bild abgedeckt wurde. In dieser Hierarchieebene werden also diese 10 Minuten wieder aufgeteilt, sodass jedes Bild etwas über eine Minuten des Videoinhalts anzeigen. Abbildung 3.5 zeigt wie sich der Baum verzweigt und so der Inhalt des Videos sichtbar wird. Das besondere ist noch, dass der Nutzer mit Hilfe von Schiebereglern durch alle sichtbaren Einzelsequenzen navigieren kann und so die zu suchende Stelle schnell auffindbar machen kann.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.5: Hierarchische Baumübersicht [13]
Die Audiospur ist nur in der Einzelübersicht aktiviert, da beim Abspielen von mehreren Tonspuren gleichzeitig ein schlechtes Benutzererlebnis entsteht. Der Videoplayer wurde so implementiert, dass eine Anbindung an ein Inhaltsanalysetool möglich ist.
Der 3D Video Browser von Müller et al. [50] kombiniert eine 3-dimensionale Darstellung des Inhalts mit einer interaktiven und animierten Navigation. Ähnlich wie der baumbasierte Videobrowser von del Fabro [13] ist hier der Ansatz das Video oder die Videosammlung hierarchisch darzustellen. Durch die 3-dimensionale Anordnung lassen sich die verschiedenen Ebenen aber beliebig im Raum verteilen. Ansätze von 3D-Darstellungen gab es schon zuvor, jedoch unterstützten diese keine hierarchische Navigation, sondern waren allein auf die Darstellung der Navigationsleiste beschränkt [52]. Beim 3D Videobrowser hat der Nutzer zudem die Möglichkeit zwischen 8 verschiedenen Darstellungsoptionen zu wählen. Mit einem Klick auf ein Segment wird die Szene abgespielt. Innerhalb der Anordnung kann man sich zudem völlig frei im Raum bewegen und den gesamten Inhalt erkunden. Der 3D Videobrowser ist auch in der Lage eine komplette Videobibliothek in dieser Form abzubilden und navigierbar zu machen. [50]
Ein dritter Videobrowser, welcher den Inhalt an sich nicht verändert darstellt, sondern nur eine erweiterte Navigationsleiste implementiert, ist der ZoomSlider von Hürst und Barvers [53]. Der Grundgedanke ist, dass bei sehr langen Videos eine Navigation mit herkömmlicher Suchleiste oft unpräzise ist da beim Bewegen des Schiebereglers die Sprünge zwischen den einzelnen Sequenzen zu groß sind und der Inhalt dadurch nicht erfasst wird. Um dieses Problem zu beheben kann man während dem Anschauen des Videos das Mausrad drehen, um in die teilbasierte Navigationsleiste hineinzuzoomen. Dadurch wird der Bewegungsradius eingeschränkt und der Nutzer kann verfeinert den Inhalt erkunden und weniger Stellen werden übersprungen. Durch das nach unten drehen des Mausrades wird der Balken wieder hochskaliert, sodass die ursprüngliche Navigation wieder möglich ist. Die Benutzeroberfläche gibt während der Bedienung eine Rückmeldung und zeigt an, wie stark man in die Suchleiste hineingezoomt hat. Ein besonderer Vorteil dieser Navigationsmethode ist, dass große Videodateien genauer untersucht werden können, ohne den Vollbildmodus zu verlassen.
Azzopardi et al. [14] haben einen Videobrowser entwickelt, der sich aufgrund der Einfachheit in der Bedienung speziell an Kleinkinder im Alter zwischen zwei und sechs Jahren richtet. Die Benutzeroberfläche ist ähnlich wie ein Karussell aufgebaut. Abbildung 3.6 gibt eine Übersicht über den sogenannten YooSee Browser. Jede der drei sichtbaren Reihen entspricht einer Kategorie, die in einer Administrationsoberfläche zuvor festgelegt werden müssen. Diese sind vergleichbar mit einer Wiedergabeliste. Das mittlere Video ist dieses, welches gerade abgespielt wird. Mit einem Klick auf das Vorschaubild rechts bzw. links daneben, wird ein Video zum gleichen Kontext abgespielt. Um zu einer anderen Kategorie zu wechseln, kann das Kind auf die obere oder untere Reihe klicken. Da der Videobrowser zum Abspielen Youtube Videos verwendet, wird auch der YouTube Player für eine Navigation innerhalb eines Videos benutzt.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3.6: YooSee Benutzeroberfläche [14]
Da es sehr aufwändig ist solche Videobrowser einheitlich zu evaluieren, wurden dafür verschiedene Wettbewerbe ins Leben gerufen. Das folgende Kapitel zeigt die zwei wichtigsten Wettbewerbe, die sich in dieser Thematik spezialisiert haben.
3.2 Videobrowser Evaluierung
Benutzerstudien eignen sich sehr gut, um neue Ideen in der Praxis zu untersuchen. Da jedoch verschiedene Stärken und Schwächen haben und die Testumgebung stark variieren kann, beispielsweise durch unterschiedliches Videomaterial, Auswahl der Testkandidaten, gibt es den Bedarf eine homogene Umgebung zu schaffen, um verschiedene Videobrowser miteinander zu vergleichen. Im Rahmen von Wettbewerben wird den Forschern die Möglichkeit geboten ihre Videobrowser in einer einheitlichen Umgebung gegeneinander antreten zu lassen und so die Leistungsfähigkeit vergleichbar zu messen. In diesem Kapitel werden die zwei bekanntesten dieser Art vorgestellt und zwar der Video Browser Showdown und TREC Video Retrieval Evaluation.
3.2.1 Video Browser Showdown
Um die Forschung in Bereich der interaktiven Videosuche bzw. Interactive Video Retrieval weiter voranzutreiben, wurde im Jahr 2012 der erste Video Browser Showdown als Sonderveranstaltung der International MultiMedia Modeling Conference ins Leben gerufen. Vor allem sollen Methoden und Ideen umgesetzt werden, die sich auf den Nutzer orientieren. Der Wettbewerb findet seither auf jährlicher Basis statt. Im Allgemeinen sehen die Aufgaben so aus, dass die Teilnehmer eine Reihe von Ausschnitten gezeigt bekommen, welche sie in einem längeren Video, oder auch in einer Videosammlung finden müssen. Da der Fokus des Wettbewerbs vor allem darin liegt, interaktive Suchverfahren voranzutreiben, sind automatische Suchaufgaben, wie beispielsweise eine reine Textsuche, nicht erlaubt. Vielmehr geht es darum, durch alternative Navigation und Filtern des Inhaltes, die gesuchte Stelle so schnell wie möglich zu finden. Da alle Teilnehmer gleichzeitig in den gleichen Videos suchen, lassen sich so die Stärken und Schwächen herauskristallisieren. Die gezeigten Ausschnitte haben eine länge von 20 Sekunden, welche jeweils aus einem in etwa einstündigen Video extrahiert wurden. Dazu zählen die Aufgaben zur Kategorie KIS, also Know-Item-Search, denn die Teilnehmer wissen wie das zu suchende Objekt aussieht, wissen aber nicht wo es zu finden ist. Alle Tools sind an den VBS Server angeschlossen, welcher die Zeit misst, bis eine Lösung abgegeben wird. Dazu kommen noch sogenannte Penalties, also Strafzeiten, die bei dem Abgeben einer falschen Lösung verteilt werden. Die Zeiten werden auf Punkte pro Aufgabe umgeschichtet, woraus sich schließlich am Ende durch Addition eine Gesamtpunktzahl ergibt. Mit dieser wird dann der Gewinner ermittelt. Da die Entwickler der Videobrowser selbst Experten sind, was deren Bedienung angeht, werden insgesamt zwei Durchläufe gemacht. Die erste Runde ist die sogenannte Expertenrunde, bei denen die Entwickler selbst die Aufgaben durchführen. Die zweite Runde, die Anfänger Runde, bei der freiwillige Konferenzteilnehmer die Bedienung übernehmen, welche alle Experten im Bereich von Multimedia sind. In den ersten beiden Jahren war der VBS auf eine Stunde begrenzt, aber durch den hohen Bedarf mehr Daten und Erkenntnisse zu sammeln, wurde im Jahr 2014 die Dauer auf 5 Stunden ausgedehnt. Dadurch konnten viel mehr Aufgaben durchgeführt werden, denn pro Aufgabe wird ein 3-minütiges Zeitfenster gegeben. Viele verschiedene Systeme wurden mittlerweile seit 2012 präsentiert. Gewonnen haben sowohl Browser mit komplizierten Algorithmen, als auch Applikationen, die nur auf intuitive Bedienung gesetzt haben. [51] [54]
[...]
-
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen. -
Laden Sie Ihre eigenen Arbeiten hoch! Geld verdienen und iPhone X gewinnen.