2016-05-19 24 views
1

Ich versuche zu lernen, wie 360-Grad-Videos derzeit in VR-Headsets wie Oculus oder Samsung Gear VR arbeiten. Offenbar verwenden sie den Begriff der Panorama-Videos (360-Grad-Video). Ich machte einige Tests und bemerkte, dass das rohe Video eine größere Auflösung hat, und in VR wird zunächst eine spezielle Region (die den Augen zugewandt ist) angezeigt, die sich innerhalb des Ansichtsfensters befindet. Benutzer kann die Ansicht auch wie gewünscht ändern. HierViewport in 360 Videos und Panorama-Videos in VR-Headsets

ist eine Probe des rohen 360 Panorama-Video: enter image description here

Und hier wie in einem VR-Headset wie Zahnrad VR es zu sehen ist (die Hauptansichtsfenster): enter image description here

Nun meine Frage ist das, wenn es Möglichkeiten gibt zu erkennen, welcher Teil des Rohvideos gerade im Darstellungsbereich ist? Ich meine, können wir (fast) erkennen, welcher Teil eines 360-Grad-Videos gerade gesehen wird? Gibt es eine API, die VR-Headsets wie Gear VR, Oculus, Unity3D oder ein anderes VR-bezogenes Tool bereitstellen, um das zu wissen, vielleicht mithilfe einiger Sensoren oder anderer Informationen?

Ich habe begrenzte Informationen, so dass jede Art von Informationen in dieser Hinsicht nützlich für mich ist.

Antwort

1

Wenn Sie meinen, der Spieler kann erkennen, welcher Teil der Kugel in der Sichtlinienansicht des Benutzers ist, dann ist die Antwort ja, da der Spieler die Transformation des Rohvideos durchführen muss, um die Ansicht des Benutzers zu erstellen in diesem Moment tatsächlich zu sehen.

Dazu werden die Sensoren des Geräts oder das Tastenfeld, wenn es z. B. in einem Browser angezeigt wird, ausgewählt und daraus bestimmt, wo sich der Benutzer gerade befindet.

Basierend auf diesem wird der Spieler Transformationen auf das rohe Video anwenden, um auf dem Bildschirm nur den Teil des Videos anzuzeigen, der in der Sichtlinie des Benutzers liegen sollte.

Wenn Sie fragen, ob der Server, der das Video "bedient", weiß, wo sich die Sichtlinie eines Benutzers befindet, dann ist die Antwort nein, da es einfach das volle 360 ​​Raw Video bedient (für die meisten Implementierungen bei diesmal sowieso).

Es wäre möglich, dass der Player Analysen an den Server zurückmeldet, die anzeigen, dass die Benutzer Änderungen anzeigen und melden, dies hängt jedoch von jedem einzelnen Player ab. Es gibt definitiv Unternehmen, die bereits die Fähigkeit zur Bereitstellung von 360-Grad-Videoanalysen in Partnerschaft oder auf bestimmten Playern hervorheben.

+0

Kühl. Insgesamt wird also das gesamte Video gestreamt und der Spieler (auf der Client-Seite) entscheidet, welcher Teil der Sensoren und andere angezeigt werden soll. Die Sache ist, dass ich jetzt die 360 ​​Videos mit der Gear VR auschecke und immer, wenn ich meinen Kopf drehe, sehe ich zunächst ein Video von geringerer Qualität, das sich schnell verbessert. Bedeutet das nicht, dass sie irgendwie mit dem Server kommunizieren, um die Ansicht des Benutzers zu melden ?! –

+0

Wenn es ein in Echtzeit erstelltes Video ist dann möglicherweise, aber wenn es nur 360-Grad-Video ist, dann sehen Sie möglicherweise nur einen Effekt verursacht durch die Video-Pipeline (der Satz von Frames wird vorbereitet und angezeigt) plötzlich flush und füllen wieder mit der neuen Ansicht. Die Algorithmen können schlau genug sein, zuerst einen Grobpass zu machen und dann mehr Details zu geben (nicht sicher - der Effekt, den du erwähnst, ist interessant, so dass hoffentlich jemand anders dies bestätigen kann). Abgesehen davon, weil das Auge so nah und Bildschirm vergrößert ist die meisten aktuellen 360-Grad-Video auf Headsets hat ziemlich körnige Qualität, wie Sie wahrscheinlich gesehen haben. – Mick