DE102018130085A1 - Erzeugen eines 2d-videos aus einem 360-video - Google Patents

Erzeugen eines 2d-videos aus einem 360-video Download PDF

Info

Publication number
DE102018130085A1
DE102018130085A1 DE102018130085.9A DE102018130085A DE102018130085A1 DE 102018130085 A1 DE102018130085 A1 DE 102018130085A1 DE 102018130085 A DE102018130085 A DE 102018130085A DE 102018130085 A1 DE102018130085 A1 DE 102018130085A1
Authority
DE
Germany
Prior art keywords
content
information
consumer
video
interest
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102018130085.9A
Other languages
English (en)
Inventor
Karthik Veeramani
Rajneesh Chowdhury
Jill Boyce
Rajesh Poornachandran
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE102018130085A1 publication Critical patent/DE102018130085A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4038Scaling the whole image or part thereof for image mosaicing, i.e. plane images composed of plane sub-images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/252Processing of multiple end-users' preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services
    • H04N21/25435Billing, e.g. for subscription services involving characteristics of content or additional data, e.g. video resolution or the amount of advertising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25825Management of client data involving client display capabilities, e.g. screen resolution of a mobile phone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture

Abstract

Eine Halbleiterbaugruppenvorrichtung kann Technologie beinhalten, um Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen zu aggregieren, Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auszuwählen und ein oder mehrere zweidimensionale Videos basierend auf den ausgewählten Videoinformationen zu erzeugen. Andere Ausführungsformen werden offenbart und beansprucht.

Description

  • TECHNISCHES GEBIET
  • Ausführungsformen betreffen allgemein Videosysteme. Insbesondere betreffen Ausführungsformen das Erzeugen eines zweidimensionalen (2D) Videos aus einem 360-Video.
  • HINTERGRUND
  • In einem Dreihundertsechzig(360)-Grad-Video, das auch als 360-Video, omnidirektionales Video, Panoramavideo, immersives Video oder sphärisches Video bekannt ist, können Videoaufzeichnungen aus vielen Richtungen gleichzeitig unter Verwendung einer omnidirektionalen Kamera oder einer Sammlung von Kameras (die z. B. einen Bereich von 360 Grad abdecken) aufgenommen werden. Bei der Wiedergabe kann der Betrachter eine Ansichtsrichtung oder einen Viewport zur Betrachtung aus einer beliebigen der verfügbaren Richtungen auswählen. In Komprimierungs-/Dekomprimierungs(Codec)-Systemen können Kompressionseffizienz, Videoqualität und Recheneffizienz wichtige Performanzkriterien sein. Diese Kriterien können auch ein wichtiger Faktor bei der Veröffentlichung des 360-Videos und der Benutzererfahrung bei der Betrachtung eines derartigen 360-Videos sein.
  • Figurenliste
  • Die verschiedenen Vorteile der Ausführungsformen werden einem Fachmann auf dem Gebiet beim Lesen der folgenden Spezifikation und der angehängten Ansprüche und unter Bezugnahme auf die folgenden Zeichnungen ersichtlich werden, in denen gilt:
    • 1 ist ein Blockdiagramm eines Beispiels für ein elektronisches Verarbeitungssystem gemäß einer Ausführungsform;
    • 2 ist ein Blockdiagramm eines Beispiels für eine Halbleiterbaugruppenvorrichtung gemäß einer Ausführungsform;
    • 3A bis 3C sind Flussdiagramme eines Beispiels für ein Verfahren zum Erzeugen eines Videos gemäß einer Ausführungsform;
    • 4 ist ein Blockdiagramm eines Beispiels für eine Videoerzeugervorrichtung gemäß einer Ausführungsform;
    • 5 ist ein Blockdiagramm eines Beispiels für eine verteilte Videoumgebung gemäß einer Ausführungsform;
    • 6 ist ein Flussdiagramm eines Beispiels für ein Verfahren zur Datenerfassung gemäß einer Ausführungsform;
    • 7 ist ein veranschaulichendes Diagramm eines Beispiels für ein omnidirektionales Videoeinzelbild gemäß einer Ausführungsform;
    • 8 ist ein Flussdiagramm eines Beispiels für ein Verfahren zur Datenerfassung gemäß einer Ausführungsform;
    • 9 ist ein Flussdiagramm eines Beispiels für ein Verfahren zur Datenerfassung gemäß einer Ausführungsform; und
    • 10 ist ein Blockdiagramm eines Beispiels für ein System mit einer Navigationssteuerung gemäß einer Ausführungsform; und
    • 11 ist ein Blockdiagramm eines Beispiels für ein System mit einem kleinen Formfaktor gemäß einer Ausführungsform.
  • BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • Jetzt mit Bezug auf 1 kann eine Ausführungsform eines elektronischen Verarbeitungssystems 10 einen Prozessor 11, einen Speicher 12, der kommunikativ mit dem Prozessor 11 gekoppelt ist, und eine Logik 13, die kommunikativ mit dem Prozessor 11 gekoppelt ist, um Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt (z. B. ein 360-Video) von zwei oder mehr Quellen zu aggregieren, Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auszuwählen und ein oder mehrere 2D-Videos basierend auf den ausgewählten Videoinformationen zu erzeugen, beinhalten. Bei manchen Ausführungsformen kann die Logik 13 ferner dazu ausgelegt sein, Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten zu erfassen (z. B. Crowd-Sourcing-Informationen). Bei manchen Ausführungsformen kann die Logik 13 ferner dazu ausgelegt sein, die aggregierten Informationen des Gebiets von Interesse zu clustern, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Das System 10 kann entweder das eine oder die mehreren 2D-Videos oder den omnidirektionalen Videoinhalt zur Verteilung zu einem Inhaltskonsumenten auswählen. Die Logik 13 kann zum Beispiel ferner dazu ausgelegt sein, einen oder mehrere Parameter zu bestimmen, die mit einem Inhaltskonsumenten in Beziehung stehen, und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren 2D-Videos zur Verteilung zu dem Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern auszuwählen. Bei manchen Ausführungsformen kann die Logik 13 auch dazu ausgelegt sein, den einen oder die mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter zu überwachen und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren 2D-Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern zu wechseln. Der eine oder die mehreren Parameter können zum Beispiel einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht. Bei manchen Ausführungsformen kann Maschinenlernen angewendet werden, um an den Parametern eine Feinabstimmung basierend auf dem bisherigen Verlauf vorzunehmen.
  • Ausführungsformen von sowohl dem obigen Prozessor 11, dem obigen Speicher 12, der obigen Logik 13 als auch anderen Systemkomponenten können in Hardware, Software oder einer beliebigen geeigneten Kombination davon implementiert werden. Hardwareimplementierungen können zum Beispiel konfigurierbare Logik beinhalten, wie etwa zum Beispiel programmierbare Logik-Arrays (PLAs), feldprogrammierbare Gate-Arrays (FPGAs), komplexe programmierbare Logikeinrichtungen (CPLDs) oder Logikhardware mit fester Funktionalität unter Verwendung von Technologie, wie etwa zum Beispiel einer anwendungsspezifischen integrierten Schaltung (ASIC), eines komplementären Metalloxidhalbleiters (CMOS) oder Transistor-Transistor-Logik(TTL)-Technologie oder einer beliebigen Kombination davon.
  • Alternativ oder zusätzlich dazu können alle oder Teile dieser Komponenten in einem oder mehreren Modulen als ein Satz von Logikbefehlen implementiert werden, die in einem maschinen- oder computerlesbaren Speicherungsmedium, wie etwa einem Direktzugriffsspeicher (RAM), einem Nurlesespeicher (ROM), einem programmierbaren ROM (PROM), Firmware, einem Flash-Speicher usw. gespeichert sind, sodass sie durch einen Prozessor oder eine Datenverarbeitungseinrichtung ausgeführt werden. Ein Computerprogrammcode zum Ausführen der Operationen der Komponenten kann zum Beispiel in einer beliebigen Kombination einer oder mehrerer Betriebssystem(OS)-anwendbarer/-geeigneter Programmiersprachen geschrieben sein, einschließlich einer objektorientierten Programmiersprache, wie etwa PYTHON, PERL, JAVA, SMALLTALK, C++, C# oder dergleichen, und herkömmlicher prozeduraler Programmiersprachen, wie etwa die „C“-Programmiersprache oder ähnliche Programmiersprachen. Der Speicher 12, permanente Speicherungsmedien oder ein anderer Systemspeicher kann bzw. können zum Beispiel einen Satz von Befehlen speichern, die bei Ausführung durch den Prozessor 11 bewirken, dass das System 10 eine oder mehrere Komponenten, ein oder mehrere Merkmale oder einen oder mehrere Aspekte des Systems 10 (z. B. die Logik 13, die Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen aggregiert, Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auswählt, ein oder mehrere 2D-Videos basierend auf den ausgewählten Videoinformationen erzeugt usw.) implementiert.
  • Jetzt mit Bezug auf 2 kann eine Ausführungsform einer Halbleiterbaugruppenvorrichtung 20 ein oder mehrere Substrate 21 und Logik 22, die mit dem einen oder den mehreren Substraten gekoppelt ist, beinhalten, wobei die Logik 22 zumindest teilweise in einer konfigurierbaren Logik und/oder einer Hardwarelogik mit fester Funktionalität implementiert wird. Die mit dem einen oder den mehreren Substraten gekoppelte Logik 22 kann dazu ausgelegt sein, Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen zu aggregieren, Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auszuwählen und ein oder mehrere 2D-Videos basierend auf den ausgewählten Videoinformationen zu erzeugen. Bei manchen Ausführungsformen kann die Logik 22 ferner dazu ausgelegt sein, Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten zu erfassen (z. B. Crowd-Sourcing-Informationen). Bei manchen Ausführungsformen kann die Logik 22 ferner dazu ausgelegt sein, die aggregierten Informationen des Gebiets von Interesse zu clustern, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen. Die Logik 22 kann zum Beispiel ferner dazu ausgelegt sein, einen oder mehrere Parameter zu bestimmen, die mit einem Inhaltskonsumenten in Beziehung stehen, und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren 2D-Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern auszuwählen. Bei manchen Ausführungsformen kann die Logik 22 auch dazu ausgelegt sein, den einen oder die mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter zu überwachen und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren 2D-Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern zu wechseln. Der eine oder die mehreren Parameter können zum Beispiel einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht. Bei manchen Ausführungsformen kann Maschinenlernen angewendet werden, um an den Parametern eine Feinabstimmung basierend auf dem bisherigen Verlauf vorzunehmen.
  • Ausführungsformen der Logik 22 und anderer Komponenten der Vorrichtung 20 können in Hardware, Software oder einer beliebigen Kombination davon implementiert werden, einschließlich zumindest einer teilweisen Implementierung in Hardware. Hardwareimplementierungen können zum Beispiel konfigurierbare Logik beinhalten, wie etwa zum Beispiel PLAs, FPGAs, CPLDs oder Logikhardware mit fester Funktionalität unter Verwendung von Schaltungstechnologie, wie etwa zum Beispiel ASIC, CMOS oder TTL-Technologie oder einer beliebigen Kombination davon. Zusätzlich dazu können Teile dieser Komponenten in einem oder mehreren Modulen als ein Satz von Logikbefehlen implementiert werden, die in einem maschinen- oder computerlesbaren Speicherungsmedium, wie etwa RAM, ROM, PROM, Firmware, Flash-Speicher usw., gespeichert sind, sodass sie durch einen Prozessor oder eine Datenverarbeitungseinrichtung ausgeführt werden. Ein Computerprogrammcode zum Ausführen der Operationen der Komponenten kann zum Beispiel in einer beliebigen Kombination von einer oder mehreren OS-anwendbaren/-geeigneten Programmiersprachen geschrieben werden, einschließlich einer objektorientierten Programmiersprache, wie etwa PYTHON, PERL, JAVA, SMALLTALK, C++, C# oder dergleichen, und herkömmlicher prozeduraler Programmiersprachen, wie etwa die „C“-Programmiersprache oder ähnlicher Programmiersprachen.
  • Jetzt unter Bezugnahme auf die 3A bis 3C kann eine Ausführungsform eines Verfahrens 30 zum Erzeugen eines Videos Folgendes beinhalten: Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen bei Block 31, Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse bei Block 32 und Erzeugen eines oder mehrerer 2D-Videos basierend auf den ausgewählten Videoinformationen bei Block 33. Manche Ausführungsformen des Verfahrens 30 können auch Folgendes beinhalten: Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten bei Block 34 (z. B. Crowd-Sourcing-Informationen). Manche Ausführungsformen des Verfahrens 30 können auch Clustern der aggregierten Informationen des Gebiets von Interesse bei Block 35 beinhalten, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Manche Ausführungsformen des Verfahrens 30 können auch Folgendes beinhalten: Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, bei Block 36 und Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren 2D-Videos bei Block 37 zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern. Das Verfahren 30 kann zum Beispiel auch Folgendes beinhalten: Überwachen des einen oder der mehreren Parameter bezüglich des Inhaltskonsumenten bei Block 38 und Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren 2D-Videos bei Block 39 basierend auf einer Änderung in dem einen oder den mehreren Parametern. Bei manchen Ausführungsformen können der eine oder die mehreren Parameter bei Block 40 einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht. Manche Ausführungsformen des Verfahrens 30 können auch Verteilen des omnidirektionalen Videoinhalts und/oder des einen oder der mehreren 2D-Videos bei Block 41 beinhalten. Manche Ausführungsformen des Verfahrens 30 können auch Anwenden von Maschinenlernen beinhalten, um an den Parametern eine Feinabstimmung basierend auf dem bisherigen Verlauf vorzunehmen.
  • Ausführungsformen des Verfahrens 30 können in einem System, einer Vorrichtung, einem Computer, einer Einrichtung usw., wie etwa zum Beispiel den hierin beschriebenen, implementiert werden. Insbesondere können Hardwareimplementierungen des Verfahrens 30 konfigurierbare Logik beinhalten, wie etwa zum Beispiel PLAs, FPGAs, CPLDs oder Logikhardware mit fester Funktionalität unter Verwendung von Schaltungstechnologie, wie etwa zum Beispiel ASIC, CMOS oder TTL-Technologie oder einer beliebigen Kombination davon. Alternativ oder zusätzlich dazu kann das Verfahren 30 in einem oder mehreren Modulen als ein Satz von Logikbefehlen implementiert werden, die in einem maschinen- oder computerlesbaren Speicherungsmedium, wie etwa RAM, ROM, PROM, Firmware, Flash-Speicher usw., gespeichert sind, sodass sie durch einen Prozessor oder eine Datenverarbeitungseinrichtung ausgeführt werden. Ein Computerprogrammcode zum Ausführen der Operationen der Komponenten kann zum Beispiel in einer beliebigen Kombination von einer oder mehreren OSanwendbaren/-geeigneten Programmiersprachen geschrieben werden, einschließlich einer objektorientierten Programmiersprache, wie etwa PYTHON, PERL, JAVA, SMALLTALK, C++, C# oder dergleichen, und herkömmlicher prozeduraler Programmiersprachen, wie etwa der „C“-Programmiersprache oder ähnlicher Programmiersprachen.
  • Das Verfahren 30 kann zum Beispiel auf einem computerlesbaren Medium implementiert werden, wie in Verbindung mit den untenstehenden Beispielen 19 bis 24 beschrieben. Ausführungsformen oder Teile des Verfahrens 30 können in Firmware, Anwendungen (z. B. durch eine Anwendungsprogrammierungsschnittstelle (API)) oder Treibersoftware, die auf einem Betriebssystem (OS) ausgeführt wird, implementiert werden.
  • Jetzt mit Bezug auf 4 können manche Ausführungsformen physisch oder logisch als ein oder mehrere Module angeordnet sein. Eine Ausführungsform einer Videoerzeugervorrichtung 44 kann zum Beispiel einen Datenerfasser 45, eine Entscheidungs-Engine 46, einen Inhaltserzeuger 47 und einen Inhaltsverteiler 48 beinhalten. Der Datenerfasser 45 kann Technologie zum Aggregieren von Informationen eines Gebiets von Interesse für einen 360-Videoinhalt von zwei oder mehr Quellen beinhalten. Der Datenerfasser 45 kann zum Beispiel Technologie zum Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten beinhalten (z. B. um die Informationen des Gebiets von Interesse und/oder Informationen eines Punktes von Interesse von zwei oder mehr Inhaltskonsumenten durch Crowd-Sourcing zu erhalten). Mit einer Crowd-Sourcing-Fähigkeit kann das Gebiet von Interesse durch den Datenerfasser 45 über mehrere Inhaltskonsumenten sowie mehrere Inhaltserzeuger dynamisch erfasst werden, um die besten 2D-Teile zu identifizieren. Die Entscheidungs-Engine 46 kann Technologie zum Auswählen von Videoinformationen aus dem 360-Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse vom Datenerfasser 45 beinhalten. Die Entscheidungs-Engine kann zum Beispiel Technologie zum Clustern der aggregierten Informationen des Gebiets von Interesse beinhalten, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen. Bei manchen Ausführungsformen kann es einen Rückmeldemechanismus zwischen den Inhaltskonsumenten und der Entscheidungs-Engine 46 (z. B. entweder explizit oder implizit basierend auf einer Benutzerantwort) geben. Die empfangene Rückmeldung kann einen zusätzlichen Vektor für die Entscheidungs-Engine 46 bereitstellen, um ein geeignetes Gebiet von Interesse für einen zukünftigen Inhalt zu wählen. Die Rückmeldung kann zum Beispiel für eine personalisierte 2D-Inhaltserzeugung für spezifische Inhaltskonsumenten basierend auf ihrer bisherigen Erfahrung wirksam eingesetzt werden. Der Rückmeldemechanismus kann auch eine Verhandlungsschemamöglichkeit zwischen dem Inhaltserzeuger und dem Inhaltskonsumenten ermöglichen, um ein bestes Gebiet von Interesse zu identifizieren. Bei manchen Ausführungsformen kann der Rückmeldemechanismus richtliniengesteuert und/oder -konfiguriert sein.
  • Der Inhaltserzeuger 47 kann Technologie zum Erzeugen eines oder mehrerer 2D-Videos basierend auf den ausgewählten Videoinformationen von der Entscheidungs-Engine 46 beinhalten. Der Inhaltserzeuger 47 kann auch Technologie zum Nachbearbeiten des 2D-Einzelbildes (z. B. Korrigieren einer Verformung usw.) und zum Komprimieren des einen oder der mehreren 2D-Videos (z. B. mit einem Videocodierer) beinhalten. Der Inhaltsverteiler 48 kann Technologie zum Bestimmen, welche Art von Inhalt zu einem Inhaltskonsumenten zu verteilen ist, beinhalten. Der Inhaltsverteiler 48 kann zum Beispiel Technologie zum Bestimmen eines oder mehrerer Parameter, die mit dem Inhaltskonsumenten in Beziehung stehen, und zum Auswählen entweder des 360-Videoinhalts oder des einen oder der mehreren 2D-Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern beinhalten. Bei manchen Ausführungsformen kann der Inhaltsverteiler 48 auch Technologie zum Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter und zum dynamischen Wechseln zwischen dem 360-Videoinhalt und dem einen oder den mehreren 2D-Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern beinhalten. Bei manchen Ausführungsformen können die Parameter auf einer Richtlinie basieren und/oder können dynamisch konfigurierbar sein. Bei manchen Ausführungsformen kann Maschinenlernen angewendet werden, um an den Parametern eine Feinabstimmung basierend auf dem bisherigen Verlauf vorzunehmen. Der eine oder die mehreren Parameter können zum Beispiel einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht. Manche Parameter können auch mit Interaktionen zwischen dem Inhaltskonsumenten und der Inhaltskonsumationseinrichtung in Beziehung stehen. Eine Repräsentation des vollen 360-Videos kann zum Beispiel in einem kleinen Browserfenster gezeigt werden und Benutzer können einen Ansichtsbereich mit einer Maus um das kleine Fenster herum ziehen, um unterschiedliche Teile des Videos anzusehen. Bei manchen Ausführungsformen kann der Inhaltsverteiler 48 auch Technologie zum Verteilen des 360-Videoinhalts und/oder des einen oder der mehreren 2D-Videos beinhalten.
  • Ausführungsformen des Datenerfassers 45, der Entscheidungs-Engine 46, des Inhaltserzeugers 47, des Inhaltsverteilers 48 und anderer Komponenten der Videoerzeugervorrichtung 44 können in Hardware, Software oder einer beliebigen Kombination davon implementiert werden. Hardwareimplementierungen können zum Beispiel konfigurierbare Logik beinhalten, wie etwa zum Beispiel PLAs, FPGAs, CPLDs oder Logikhardware mit fester Funktionalität unter Verwendung von Schaltungstechnologie, wie etwa zum Beispiel ASIC, CMOS oder TTL-Technologie oder einer beliebigen Kombination davon. Zusätzlich dazu können Teile dieser Komponenten in einem oder mehreren Modulen als ein Satz von Logikbefehlen implementiert werden, die in einem maschinen- oder computerlesbaren Speichermedium gespeichert sind, wie etwa RAM, ROM, PROM, Firmware, Flash-Speicher usw., und durch einen Prozessor oder eine Datenverarbeitungseinrichtung auszuführen sind. Ein Computerprogrammcode zum Ausführen der Operationen der Komponenten kann zum Beispiel in einer beliebigen Kombination einer oder mehrerer OS-anwendbaren/-geeigneten Programmiersprachen geschrieben werden, einschließlich einer objektorientierten Programmiersprache, wie etwa PYTHON, PERL, JAVA, SMALLTALK, C++, C# oder dergleichen, und herkömmlicher prozeduraler Programmiersprachen, wie etwa der „C“-Programmiersprache oder ähnlicher Programmiersprachen.
  • Manche Ausführungsformen können vorteilhafterweise Technologie zum Erzeugen von 2D-Versionen eines Videos aus einem 360-Video zur Decodierungs- und/oder Streaming-Effizienz bereitstellen. 360-Videos können für eine Vielfalt von Quellen einschließlich YOUTUBE, FACEBOOK usw. zur Verfügung stehen. Ein 360-Video kann sich zum Beispiel auf ein Panoramavideo oder omnidirektionales Video beziehen, das eine Sphäre mit 360 Grad durch eine 180-Grad-Repräsentation repräsentieren kann. Allgemein kann ein kleinerer Viewport des 360-Videos durch einen Betrachter zu einer gegebenen Zeit angesehen werden. Der Betrachter kann derartige 360-Videos mit einer am Kopf befestigten Anzeige (HMD - Head-Mounted Display) ansehen, bei der der Betrachter seinen Kopf bewegen kann, um den Viewport auszuwählen. Der Betrachter kann außerdem 360-Videos auf einer traditionellen Anzeige als ein 2D-Fenster in das 360-Video ansehen und optional unter Verwendung seiner Maus, seines Touchscreens, seiner Tastatur usw. zu Viewport-Gebieten scrollen, die außerhalb des Bildschirms liegen.
  • 360-Videos können sich auf die Performanz eines Decodierers auswirken, da möglicherweise ein viel größeres Gebiet decodiert wird, als angesehen wird, was zu einer erhöhten Decodierungszeit führt oder effizientere/leistungsstärkere Decodierer erfordert. 360-Videos können sich auch auf die Streaming-Bandbreite (z. B. zum Streamen des codierten 360-Videos) und/oder auf Hardwareanforderungen (z. B. zum Übertragen eines transcodierten Unterabschnitts eines 360-Einzelbildes, um der Ansicht des Benutzers zu entsprechen) auswirken. Wie oben angemerkt, werden 360-Videos nicht immer in einer 360-Umgebung, wie etwa einer HMD, konsumiert. Ein erheblicher Anteil von Benutzern kann die 360-Videos gelegentlich in Browseranwendungen ansehen, bei denen der durch den Videoplayer dargestellte Ansichtspunkt begrenzt sein kann (z. B. mit manchen anderen Systemen, die dieselbe Menge an Rechen-/Bandbreitenressourcen nutzen, im Vergleich zum Codieren/Decodieren des 360-Videos für eine HMD). Manche 360-Videoformate können Metadaten unterstützen, um Informationen von Gebieten von Interesse (ROI) zum Inhalt hinzuzufügen. Die ROI-Metadaten können zum Beispiel einem Inhaltsersteller gestatten, anzugeben, was er als die interessantesten Ansichtspunkte im Video zu einer gegebenen Zeit erachtet. Videowiedergabeeinrichtungen können dann die metadatenbasierten ROIs für den Betrachter auswählen (oder z. B. anderweitig die durch den Inhaltsanbieter empfohlenen ROIs für den Betrachter angeben).
  • Manche Ausführungsformen können vorteilhafterweise 2D-Versionen des 360-Videos unter Verwendung der Informationen des Gebiets von Interesse erzeugen, um ein 2D-Video zu erzeugen und das 2D-Video Betrachtern, die den Inhalt auf 2D-Anzeigen konsumieren, darbieten. Manche Ausführungsformen können vorteilhafterweise die Codierer-/Decodiererperformanz, die Streaming-Bandbreite und/oder Hardwareanforderungen für eine gute Betrachtungserfahrung verbessern. Manche Ausführungsformen können zum Beispiel einen 2D-Inhalt aus einem 360-Format erzeugen, indem sie die verfügbaren ROI-Informationen wirksam einsetzen, wodurch der Bandbreitenverbrauch sowie Decodiererzyklen reduziert werden. Manche Ausführungsformen können vorteilhafterweise 2D-Videos zur Wiedergabe auf 2D-Anzeigen erzeugen, indem Gebiete aus 360-Videos basierend auf dem Aggregieren der Informationen von anderen Betrachtern extrahiert werden.
  • Manche Ausführungsformen können eine Datenerfassungstechnologie beinhalten, um ROI-Informationen über einen gegebenen 360-Videoinhalt, der vom Inhaltserzeuger und/oder von mehreren Inhaltskonsumenten erhalten werden kann (z. B. basierend auf den HMD-Informationen des Betrachters/inertialen Verfolgungsinformationen), zu erfassen. Basierend auf den erfassten ROIs kann eine Clustering-Technologie genutzt werden, um relevante Einzelbilder für ein 2D-Video aus dem gegebenen 360-Inhalt auszuwählen. Basierend auf den Inhaltskonsumentenbedürfnissen/der Inhaltskonsumentenfähigkeit (z. B. 2D-/3D-Verfügbarkeit) kann ein Inhaltsverteilungsserver das 2D- und/oder 360-Video zur Verteilung zusammen mit einer geeigneten Codec-Bitrate für das Streaming auswählen. Manche Ausführungsformen können entweder für eine Offline-Codierung und/oder eine On-The-Fly-Codierung genutzt werden. Für die On-The-Fly-Codierung können manche Ausführungsformen ein dynamisches Wechseln zwischen den 2D- und 360-Formaten basierend auf mehreren Parametern, wie etwa Benutzerbedürfnisse, Bandbreitenverfügbarkeit, Konsumationseinrichtungsänderung usw., bereitstellen. Manche Ausführungsformen können auf einem Server, einem Medienbeschleuniger oder einer anderen Cloud-Anordnung, die Streaming-Medien bereitstellt, implementiert werden.
  • Jetzt mit Bezug auf 5 kann eine Ausführungsform einer verteilten Videoumgebung 50 einen oder mehrere 360-Video-Clients 51 beinhalten, die einen 360-Videoinhalt 52 konsumieren. Eine Datenerfassungs-Engine 53 kann Informationen von den 360-Video-Clients 51 und den 360-Videoinhalt 52 erfassen. Der 360-Videoinhalt 52 kann zum Beispiel ROI-Metadaten beinhalten. Die 360-Video-Clients 51 können durch Crowd-Sourcing erhaltene Punkte von Interesse an die Datenerfassungs-Engine 53 bereitstellen. Die Datenerfassungs-Engine 53 kann dann die erfassten Informationen verarbeiten, um Viewport-Cluster an eine Entscheidungs-Engine 54 bereitzustellen. Die Entscheidungs-Engine 54 kann die Informationen von der Datenerfassungs-Engine 53 zusammen mit einer Benutzerrückmeldung nutzen, um einen Einzelbildschwerpunkt auszuwählen. Ein 360-zu-2D-Wandler 55 kann den 360-Videoinhalt 52 empfangen und ein 2D-Video aus dem 360-Videoinhalt 52 basierend auf dem ausgewählten Einzelbildschwerpunkt von der Entscheidungs-Engine 54 erzeugen. Der 360-zu-2D-Wandler 55 kann zum Beispiel eine Verzerrungs-Engine 55b beinhalten, die zwischen einem Decodierer 55a und einem Codierer 55c gekoppelt ist. Der 360-zu-2D-Wandler 55 kann das 2D-Video zu einem oder mehreren 2D-Video-Clients 56 streamen. Die 2D-Video-Clients 56 können zum Beispiel die Benutzerrückmeldung an die Entscheidungs-Engine 54 bereitstellen. Die Benutzerrückmeldung kann basierend auf Konfiguration/Richtlinien/usw. explizit oder implizit sein.
  • Beispiele für die Datenerfassungs-Engine
  • Wenn ein 360-Video angesehen wird, sieht der Benutzer nur einen Teil des 360-Videos an, manchmal als ein Viewport bezeichnet. Der Benutzer kann zum Beispiel den Viewport manuell (z. B. mit Cursortasten, einer Mausbewegung, Touchscreen-Gesten, wie etwa Wischen usw.) auswählen. Mit einem zweckmäßig konfigurierten Headset kann der Benutzer den Viewport auswählen, indem er seinen Kopf oder Körper (oder z. B. mit Gesten oder einer Blickverfolgung) bewegt. Eine Blickverfolgung kann zum Beispiel ferner Punkte von Interesse innerhalb des Viewports identifizieren. Welche Art und Weise der Benutzer auch immer einsetzt, um den Viewport auswählen, können die Viewport-Informationen und/oder Informationen über Punkte von Interesse anschließend als ROI-Informationen zum Inhaltsserver kommuniziert werden, um das 360-Video zu verarbeiten und dem Benutzer diesen Viewport anzuzeigen. Die 360-Videoeinzelbildinformationen können zu einem beliebigen einer Vielfalt von 2D-Einzelbildformaten projiziert werden, einschließlich zum Beispiel eines Fischaugenformats, eines äquirektangulären Projektionsformats (ERP - Equirectangular Projection), eines quadratischen Pyramidenstumpfformats (TSP - Truncated Square Pyramid), eines Würfelabbildungsformats und eines gepackten Würfelabbildungsformats. Wenn ein 360-Videoinhalt einer HMD dargeboten wird, können zum Beispiel Kopfpositions-/-drehungsinformationen und/oder Blickverfolgungsinformationen des Benutzers zurück zum Server übertragen werden, sodass der Server den richtigen Abschnitt des 360-Einzelbildes übertragen kann, um dem Blick des Benutzers zu entsprechen.
  • Manche Ausführungsformen können einen Datenerfassungsmodus unterstützen, der (z. B. durch den Benutzer, einen Administrator, einen Inhaltsanbieter, einen Dienstanbieter usw.) aktiviert/deaktiviert werden kann. Wenn eine Datenerfassung aktiviert ist, kann der Inhaltsserver anonym verfolgen, wie ein 360-Video in einer 360-Umgebung konsumiert wird. Die verfolgten Informationen können zum Beispiel den Ansichtspunkt beinhalten, an dem der Benutzer zu einer gegebenen Zeit interessiert ist. Eine gewisse Menge an Glättung kann durch die Datenerfassungs-Engine (z. B. oder später im Prozess) angewendet werden, um eine Zitterbewegung in der Kopfbewegung zu berücksichtigen. Die Glättung kann auf einem Verlauf der Drehungsdaten, einer Kenntnis über die Szene des 360-Videoinhalts usw. basieren. Maschinenlernen kann zum Beispiel bei den Glättungselementen helfen, die für einen spezifischen Inhaltserzeuger oder Inhaltskonsumenten individuell angepasst sind. Falls verfügbar, können außerdem zusätzliche Datenpunkte unter Verwendung eingebetteter ROI-Metadaten im 360-Videoinhalt für die beliebtesten Ansichtspunkte, Ansichtspunkte des Regisseurs usw. erfasst werden. Eine zusätzliche Gewichtung kann den ROI-Metadaten zum Beispiel durch die Entscheidungs-Engine gegeben werden. Ein Beispiel für eingebettete ROI-Metadaten wird im JCT-VC-Dokument (Joint Collaborative Team on Video Coding) JCTVC-AA1005 mit dem Titel „HEVC Additional Supplemental Enhancement Information (Draft 2)“, veröffentlicht am 16. Mai 2017, beschrieben.
  • Jetzt mit Bezug auf 6 kann eine Ausführungsform eines Verfahrens 60 zur Datenerfassung beinhalten, dass ein Client ein Video bei Block 61 anfordert und bei Block 62 bestimmt wird, ob der Client 360-fähig ist. Falls der Client nicht 360-fähig ist, wird keine Datenerfassung durchgeführt. Falls der Client 360-fähig ist, kann eine Datenerfassungsphase bei Block 63 aktiviert werden. Das Verfahren 60 kann dann Augen-/Kopfpositions-/-drehungsinformationen bei Block 64 erhalten und dann eine Glättung durchführen und die Daten für die Datenerfassungsphase (z. B. falls aktiviert) bei Block 65 protokollieren. Falls die für alle Zeitpunkte erfassten Daten bei Block 66 geringer oder gleich einer Schwelle sind, kann das Verfahren 60 damit fortfahren, 360-Einzelbilder basierend auf der Kopfdrehung bei Block 67 anzubieten, und kann zurück zu Block 64 gehen, bis das Video endet. Falls die für alle Zeitpunkte erfassten Daten bei Block 66 größer als die Schwelle sind, kann das Verfahren 60 eine Inhaltserzeugungsphase bei Block 68 auslösen und dann mit Block 67 fortfahren, um das Anbieten der 360-Einzelbilder fortzusetzen, bis das Video endet.
  • Beispiele für die Entscheidungs-Engine
  • Eine Entscheidungs-Engine kann zuerst bestimmen, wann genug Daten von einer ausreichenden Anzahl von Benutzern für eine ausreichende Anzahl von Zeitpunkten im 360-Video erfasst worden sind, um weitere Entscheidungen über die Verarbeitung des 360-Videos und/oder der Erzeugung eines 2D-Videos aus dem 360-Video vorzunehmen. Die durch Crowd-Sourcing erhaltenen Ansichtsdaten für jeden Zeitpunkt im Video und die ROI-Daten können zum Beispiel durch die Entscheidungs-Engine verarbeitet werden, um den besten Mittelpunkt für ein 2D-Einzelbild, das für diesen Zeitpunkt erzeugt wurde, zu bestimmen. Beim Nichtvorhandensein von durch Crowd-Sourcing erhaltenen Datenpunkten (z. B. wie etwa während des Anfangs einer Datenerfassungsphase) können ROI-Metadaten durch die Entscheidungs-Engine verwendet werden, um den Mittelpunkt für ein Einzelbild (z. B. zusammen mit Benutzerrückmeldeinformationen von einem oder mehreren 2D-Clients) zu bestimmen. Bei manchen Ausführungsformen kann die Entscheidungs-Engine einen oder mehrere Mittelpunkte für 2D-Videoeinzelbilder, die aus dem 360-Video zu erzeugen sind, ausgeben.
  • Jetzt mit Bezug auf 7 kann eine Ausführungsform eines 360-Videoeinzelbildes 71 eine Szene mit einem Drachenflieger 72 und einem Sonnenuntergang 73 beinhalten. Der Inhaltserzeuger kann der Szene im Einzelbild 71 entsprechende ROI-Metadaten einschließen, die ein erstes ROI 74 und ein zweites ROI 75 angeben (oder die ROIs 74 und 75 können z. B. durch Crowd-Sourcing erhaltenen Viewports/ROIs entsprechen). Die Datenerfassungs-Engine kann durch Crowd-Sourcing erhaltene Punkte von Interesse a bis e im ersten ROI 74 um den Drachenflieger 72 herum und durch Crowd-Sourcing erhaltene Punkte von Interesse f bis k im zweiten ROI 75 um den Sonnenuntergang 73 herum erfasst haben. Die Ansichtsdaten pro Zeitpunkt können zum Beispiel als ein Streudiagramm von Punkten angesehen werden, die alle über der X-Y-Ebene (oder z. B. X-Y-Z-Ebenen für einen 3D-Inhalt) liegen. Manche Ausführungsformen können die Punkte a bis k in ein oder mehrere Cluster gruppieren. Wenn sie gruppiert sind, kann jedes Cluster ein möglicher Kandidat für ein Videoeinzelbild für eine der erzeugten 2D-Versionen des 360-Videos sein. Mehrere Kandidaten für denselben Zeitpunkt können zum Beispiel zu mehreren Versionen des Inhalts führen. Bei manchen Ausführungsformen kann der Inhaltsserver eine Wahl zwischen den mehreren Versionen für den Inhaltskonsumenten anbieten oder kann eine der Versionen basierend auf einer Vorkenntnis über den Inhaltskonsumenten automatisch auswählen.
  • Bei manchen Ausführungsformen kann die Cluster-Bildung nicht bloß auf den Ansichtsdaten basieren. Zu einem gewissen Zeitpunkt können zum Beispiel die meisten Benutzer ein interessantes Objekt am Rand eines Ansichtseinzelbildes angeschaut haben. Die Annahme, dass sich die Ansichtsdaten in der Mitte eines Clusters befinden (somit das erzeugte Einzelbild an diesem Punkt zentriert wird), kann zu einem inkorrekten Einzelbilderscheinungsbild führen (da es z. B. eine Szenenänderung jenseits dieses Punktes geben kann) und kann bewirken, dass die linke und rechte Hälfte des Einzelbildes nicht übereinstimmen. Um dies zu mindern, können manche Ausführungsformen eine zusätzliche Videoanalyse bereitstellen. Eine Videoanalyse um eine Mitte eines Kandidaten-Clusters herum kann zum Beispiel das oben erwähnte Problem aufdecken, das unter Verwendung unterschiedlicher Optionen gemindert werden kann, wie etwa Aufteilen des Kandidaten in zwei unterschiedliche Kandidateneinzelbilder, Wählen einer unterschiedlichen Cluster-Mitte und/oder Schwenken von einem Einzelbild zum nächsten oder Anwenden von Effekten, wie etwa Einblenden/Ausblenden, um den Übergang zwischen Einzelbildern zu glätten.
  • Bei manchen Ausführungsformen kann die Entscheidungs-Engine auch Zitterbewegungen im erzeugten 2D-Video beheben. Angesichts der Anzahl von empfohlenen Viewports, zum Beispiel wenn der Schwerpunkt eines Einzelbildes bestimmt wird, kann es möglich sein, dass der Schwerpunkt eines Einzelbildes möglicherweise nicht mit dem Schwerpunkt des nächsten Einzelbildes ausgerichtet ist. Diese Drift im Schwerpunkt aufeinanderfolgender Einzelbilder wird sich möglicherweise auch mit der Zeit ansammeln. Im Laufe der Zeit kann die Drift zu einem wackeligen Video für den Endbenutzer führen. Vorteilhafterweise können manche Ausführungsformen der Entscheidungs-Engine eine zeitliche Hysterese nutzen, um die Schwerpunktauswahl aufeinanderfolgender Einzelbilder zu glätten, sodass die resultierenden erzeugten Einzelbilder bei ihrer Wiedergabe glatter erscheinen. Zusätzlich oder alternativ dazu können manche Ausführungsformen der Entscheidungs-Engine eine Rückmeldung über Zitterbewegungen von den 2D-Clients, die das erzeugte 2D-Video konsumieren, empfangen und können diese Rückmeldung anwenden, um die Hysterese und das erzeugte Video weiter zu verfeinern.
  • Beispiele für 2D-Videoinhaltserzeugung
  • Wenn die Entscheidungs-Engine einen oder mehrere Mittelpunkte für ein Einzelbild für einen speziellen Zeitstempel bestimmt hat, kann sie diese Informationen zu einem 360-zu-2D-Wandler weitergeben. Der 360-zu-2D-Wandler kann einen 360-Videodecodierer, einen 2D-Codierer und eine Verzerrungs-Engine beinhalten, um ein 360-Einzelbild in ein 2D-Einzelbild umzuwandeln. Der 360-zu-2D-Wandler kann das unbearbeitete 360-Video als Eingabe nehmen und kann ein decodiertes 2D-Einzelbild für einen speziellen Zeitstempel basierend auf den von der Entscheidungs-Engine empfangenen Mittelpunktdaten ausgeben. Manche Ausführungsformen können ein oder mehrere 2D-Videos (z. B. basierend auf unterschiedlichen Ansichts-Cluster-/Mittenauswahlen) aus dem 360-Video erzeugen. Wie oben angemerkt, können 360-Einzelbilder durch verschiedene Formate repräsentiert werden, die von verlustlos (z. B. ERP) zu verlustreich (z. B. TSP) reichen. Ausführungsformen des erzeugten 2D-Videos können zu einem geradlinigen Projektionsformat oder anderen geeigneten 2D-Videoformaten für eine bessere Betrachtung auf einem 2D-Bildschirm umgewandelt werden.
  • Jetzt mit Bezug auf 8 kann eine Ausführungsform eines Verfahrens 80 zum Erzeugen eines 2D-Videoinhalts Starten der Inhaltserzeugungsphase zu einem Zeitpunkt t = 0 bei Block 81 beinhalten. Das Verfahren 80 kann dann Auswählen von Kandidaten-Clustern von Ansichten für den Zeitpunkt t bei Block 82, Vornehmen einer Feinabstimmung von Clustern unter Verwendung einer Videoanalyse bei Block 83 und Legen jedes Kandidateneinzelbildes in eine Warteschlange für die Zeit t für eine oder mehrere finale Versionen bei Block 84 beinhalten. Falls der Zeitpunkt t bei Block 85 nicht der letzte Zeitpunkt ist, kann das Verfahren 80 zu Block 82 zurückkehren. Falls der Zeitpunkt t bei Block 85 der letzte Zeitpunkt ist, kann das Verfahren 80 zum Codieren des einen oder der mehreren 2D-Videos mit den ausgewählten Einzelbildwarteschlangen bei Block 86 übergehen.
  • Beispiele für Inhalts-Streaming
  • Wenn der Inhaltsserver detektiert, dass ein Client keine 360-Betrachtungsfähigkeit aufweist (wie etwa eine Set-Top-Box, die mit einem Fernsehgerät verbunden ist), kann er eines der erzeugten 2D-Videos, falls verfügbar, zum Streamen zum Client auswählen. Die Wahl, welche 2D-Version abzuspielen ist, kann basierend auf verschiedenen Verfahren gewählt werden, einschließlich zum Beispiel einer dem Client dargelegten Benutzeroberflächenoption, automatisches Auswählen basierend auf einer Kenntnis über den Client/Benutzer, Detektieren eines Ansichtswinkels des Benutzers unter Verwendung einer befestigten oder eingebauten Kamera, um eine Benutzerposition bezüglich des Fernsehgeräts oder Monitors zu verfolgen, und Anbieten eines 2D-Inhalts, der den besten Betrachtungswinkel liefert. Manche Ausführungsformen können vorteilhafterweise eine verminderte Verarbeitung bereitstellen, indem die 360-Version nicht decodiert werden muss. Selbst wenn die Client-Einrichtung eine minimale Fähigkeit zum Ansehen unterschiedlicher Abschnitte des 360-Videos aufweist (wie etwa ein Browser mit einer Maus), können manche Ausführungsformen zum Beispiel ein alternatives Einzelbild in einer anderen 2D-Version des 360-Videos auswählen, anstatt eine Decodierung des 360-Videos starten zu müssen. Der Inhaltserzeuger kann zum Beispiel genug Metadaten speichern, um die 2D-Einzelbilder zu den Unterabschnitten des 360-Videos abzubilden. Im schlimmsten Fall, falls es keine übereinstimmende 2D-Version gibt, die ein alternatives Einzelbild bereitstellen kann, kann der Inhaltsserver dann auf die Decodierung des 360-Videos zurückfallen, angefangen zu dem erforderlichen Zeitpunkt.
  • Jetzt mit Bezug auf 9 kann eine Ausführungsform eines Verfahrens 90 zum Streamen von Inhalt beinhalten, dass ein Client einen Videoinhalt bei Block 91 anfordert. Das Verfahren 90 kann bei Block 92 bestimmen, ob der Client einen Nicht-360-Inhalt bevorzugt, und falls dem nicht so ist, kann es die 360-Version des Videoinhalts bei Block 93 anbieten. Falls bei Block 92 bestimmt wird, dass der Client einen Nicht-360-Inhalt bevorzugt (oder z. B. nicht 360-fähig ist), kann das Verfahren 90 bei Block 94 bestimmen, ob 2D-Versionen des 360-Videoinhalts zur Verfügung stehen. Falls dem nicht so ist, kann das Verfahren 90 die 360-Version bei Block 93 anbieten. Falls eine 2D-Version bei Block 94 zur Verfügung steht, kann das Verfahren 90 ferner bei Block 95 bestimmen, ob mehr als eine Version zur Verfügung steht. Falls dem nicht so ist, kann das Verfahren 90 die verfügbare 2D-Version bei Block 96 anbieten. Ansonsten kann das Verfahren 90 bei Block 97 eine Version zum Anbieten auswählen (z. B. automatisch oder durch Benutzerwahl) und dann die ausgewählte Version bei Block 96 anbieten.
  • Während die 360-Version bei Block 93 angeboten wird, kann das Verfahren 90 bei Block 98 bestimmen, ob der Client einen Wechsel von 360 zu 2D ausgelöst hat, und falls dem so ist, kann das Verfahren 90 dazu übergehen, eine 2D-Version bei Block 97 auszuwählen und die 2D-Version bei Block 96 anzubieten. Ansonsten kann das Verfahren 90 damit fortfahren, die 360-Version bei Block 93 anzubieten. Während die 2D-Version bei Block 96 angeboten wird, kann das Verfahren 90 bei Block 99 bestimmen, ob der Client einen Wechsel von 2D zu 360 ausgelöst hat, und falls dem so ist, kann das Verfahren 90 dazu übergehen, die 360-Version bei Block 93 anzubieten. Ansonsten kann das Verfahren 90 damit fortfahren, die 2D-Version bei Block 96 anzubieten.
  • 10 veranschaulicht eine Ausführungsform eines Systems 700. Bei Ausführungsformen kann das System 700 ein Mediensystem sein, obwohl das System 700 nicht auf diesen Zusammenhang beschränkt ist. Das System 700 kann zum Beispiel in einem Personal Computer (PC), einem Laptop-Computer, einem Ultra-Laptop-Computer, einem Tablet, einem Touchpad, einem portablen Computer, einem handgehaltenen Computer, einem Palmtop-Computer, einem Personal Digital Assistant (PDA), einem zellularen Telefon, einer Zellulartelefon/PDA-Kombination, einem Fernseher, einer Smart-Einrichtung (z. B. einem Smartphone, einem Smart-Tablet oder einem Smart-Fernseher), einer mobilen Interneteinrichtung (MID), einer Messaging-Einrichtung, einer Datenkommunikationseinrichtung und so weiter, integriert sein.
  • Bei Ausführungsformen umfasst das System 700 eine Plattform 702, die mit einer Anzeige 720 gekoppelt ist, die visuellen Inhalt darstellt. Die Plattform 702 kann einen Video-Bitstrom-Inhalt von einer Inhaltseinrichtung empfangen, wie etwa einer oder mehreren Inhaltsdiensteinrichtungen 730 oder einer oder mehreren Inhaltsliefereinrichtungen 740 oder anderen ähnlichen Inhaltsquellen. Eine Navigationssteuerung 750, die ein oder mehrere Navigationsmerkmale umfasst, kann verwendet werden, um zum Beispiel mit der Plattform 702 und/oder der Anzeige 720 zu interagieren. Jede dieser Komponenten wird nachstehend ausführlicher beschrieben.
  • Bei Ausführungsformen kann die Plattform 702 eine beliebige Kombination eines Chipsatzes 705, eines Prozessors 710, eines Speichers 712, einer Speicherung 714, eines Grafikuntersystems 715, von Anwendungen 716 und/oder einer Funkvorrichtung 718 (z. B. einer Netzsteuerung) umfassen. Der Chipsatz 705 kann eine Interkommunikation zwischen dem Prozessor 710, dem Speicher 712, der Speicherung 714, dem Grafikuntersystem 715, den Anwendungen 716 und/oder der Funkvorrichtung 718 bereitstellen. Der Chipsatz 705 kann zum Beispiel einen Speicherungsadapter (nicht abgebildet) beinhalten, der in der Lage ist, eine Interkommunikation mit der Speicherung 714 bereitzustellen.
  • Der Prozessor 710 kann als CISC- (Complex Instruction Set Computer - Computer mit komplexem Befehlssatz) oder RISC-Prozessoren (Reduced Instruction Set Computer - Computer mit reduziertem Befehlssatz), x86-Befehlssatzkompatible Prozessoren, ein Mehrkern oder ein beliebiger anderer Mikroprozessor oder eine beliebige andere Zentralverarbeitungseinheit (CPU) implementiert werden. Bei Ausführungsformen kann der Prozessor 710 einen oder mehrere Doppelkernprozessoren, einen oder mehrere mobile Doppelkernprozessoren und so weiter umfassen.
  • Der Speicher 712 kann als eine flüchtige Speichereinrichtung implementiert werden, wie etwa unter anderem ein Direktzugriffsspeicher (RAM), ein dynamischer Direktzugriffsspeicher (DRAM) oder ein statischer RAM (SRAM).
  • Die Speicherung 714 kann als eine nichtflüchtige Speicherungseinrichtung implementiert werden, wie etwa unter anderem ein magnetisches Plattenlaufwerk, ein optisches Plattenlaufwerk, ein Bandlaufwerk, eine interne Speicherungseinrichtung, eine angeschlossene Speicherungseinrichtung, ein Flash-Speicher, ein Batterie-Backup-SDRAM (synchroner DRAM) und/oder eine für ein Netz zugängliche Speicherungseinrichtung. Bei Ausführungsformen kann die Speicherung 714 Technologie umfassen, um den erweiterten Speicherungsperformanz-Schutz für wertvolle digitale Medien zu erhöhen, wenn zum Beispiel mehrere Festplatten enthalten sind.
  • Das Grafikuntersystem 715 kann eine Verarbeitung von Bildern, wie etwa Standbildern oder Video, für eine Anzeige durchführen. Das Grafikuntersystem 715 kann zum Beispiel eine Grafikverarbeitungseinheit (GPU - Graphics Processing Unit) oder eine visuelle Verarbeitungseinheit (VPU - Visual Processing Unit) sein. Eine analoge oder digitale Schnittstelle kann verwendet werden, um das Grafikuntersystem 715 und die Anzeige 720 kommunikativ zu koppeln. Die Schnittstelle kann zum Beispiel eine beliebige aus HDMI (High-Definition Multimedia Interface), DisplayPort, Drahtlos-HDMI und/oder Drahtlos-HDkonformen Techniken sein. Das Grafikuntersystem 715 könnte in dem Prozessor 710 oder den Chipsatz 705 integriert sein. Das Grafikuntersystem 715 könnte eine unabhängige Karte sein, die kommunikativ mit dem Chipsatz 705 gekoppelt ist. Bei einem Beispiel beinhaltet das Grafikuntersystem 715 ein Rauschreduzierungsuntersystem, wie hierin beschrieben.
  • Die hierin beschriebenen Grafik- und/oder Videoverarbeitungstechniken können in verschiedenen Hardwarearchitekturen implementiert werden. Grafik- und/oder Videofunktionalität kann zum Beispiel innerhalb eines Chipsatzes integriert sein. Alternativ dazu kann ein diskreter Grafik- und/oder Videoprozessor verwendet werden. Als noch eine andere Ausführungsform können die Grafik- und/oder Videofunktionen durch einen Allgemeinprozessor, einschließlich eines Mehrkernprozessors, implementiert werden. Bei einer weiteren Ausführungsform können die Funktionen in einer Verbraucherelektronikeinrichtung implementiert werden.
  • Die Funkvorrichtung 780 kann eine Netzsteuerung sein, die eine oder mehrere Funkvorrichtungen beinhaltet, die in der Lage sind, Signale unter Verwendung verschiedener geeigneter Drahtloskommunikationstechniken zu übertragen und zu empfangen. Derartige Techniken können Kommunikationen über ein oder mehrere Drahtlosnetze beinhalten. Beispielhafte Drahtlosnetze beinhalten (unter anderem) drahtlose lokale Netze (WLANs), drahtlose persönliche Netze (WPANs), drahtlose städtische Netze (WMANs), zellulare Netze und Satellitennetze. Bei der Kommunikation über derartige Netze kann die Funkvorrichtung 718 gemäß einem oder mehreren gültigen Standards in einer beliebigen Version arbeiten.
  • Bei Ausführungsformen kann die Anzeige 720 einen beliebigen fernseherartigen Monitor oder eine beliebige fernseherartige Anzeige umfassen. Die Anzeige 720 kann zum Beispiel einen Computeranzeigebildschirm, eine Touchscreen-Anzeige, einen Videomonitor, eine fernseherartige Einrichtung und/oder einen Fernseher umfassen. Die Anzeige 720 kann digital und/oder analog sein. Bei Ausführungsformen kann die Anzeige 720 eine holographische Anzeige sein. Außerdem kann die Anzeige 720 eine transparente Oberfläche sein, die eine visuelle Projektion empfangen kann. Derartige Projektionen können verschiedene Formen von Informationen, Bildern und/oder Objekten übermitteln. Derartige Projektionen können zum Beispiel eine visuelle Überlagerung für eine Anwendung einer mobilen erweiterten Realität (MAR - Mobile Augmented Reality) sein. Unter der Steuerung einer oder mehrerer Softwareanwendungen 716 kann die Plattform 702 eine Benutzeroberfläche 722 auf der Anzeige 720 anzeigen.
  • Bei Ausführungsformen können eine oder mehrere Inhaltsdiensteinrichtungen 730 durch einen beliebigen nationalen, internationalen und/oder unabhängigen Dienst gehostet werden und somit für die Plattform 702 über zum Beispiel das Internet zugänglich sein. Die eine oder die mehreren Inhaltsdiensteinrichtungen 730 können mit der Plattform 702 und/oder der Anzeige 720 gekoppelt sein. Die Plattform 702 und/oder die eine oder die mehreren Inhaltsdiensteinrichtungen 730 können mit einem Netz 760 gekoppelt sein, um Medieninformationen zum und vom Netz 760 zu kommunizieren (z. B. zu senden und/oder zu empfangen). Die eine oder die mehreren Inhaltsliefereinrichtungen 740 können auch mit der Plattform 702 und/oder der Anzeige 720 gekoppelt sein.
  • Bei Ausführungsformen können die eine oder die mehreren Inhaltsdiensteinrichtungen 730 eine Kabelfernsehbox, einen Personal Computer, ein Netz, ein Telefon, internetfähige Einrichtungen oder ein internetfähiges Gerät, die bzw. das in der Lage ist bzw. sind, digitale Informationen und/oder digitalen Inhalt zu liefern, und eine beliebige andere ähnliche Einrichtung, die in der Lage ist, Inhalt unidirektional oder bidirektional zwischen Inhaltsanbietern und der Plattform 702 und/oder der Anzeige 720 über das Netz 760 oder direkt zu kommunizieren, umfassen. Es versteht sich, dass der Inhalt unidirektional und/oder bidirektional zu und von einer beliebigen der Komponenten im System 700 und einem Inhaltsanbieter über das Netz 760 kommuniziert werden kann. Beispiele für den Inhalt können beliebige Medieninformationen beinhalten, einschließlich zum Beispiel Video, Musik, medizinische Informationen und Gaming-Informationen und so weiter.
  • Die eine oder die mehreren Inhaltsdiensteinrichtungen 730 empfangen Inhalt, wie etwa ein Kabelfernsehprogramm einschließlich Medieninformationen, digitalen Informationen und/oder eines anderen Inhalts. Beispiele für Inhaltsanbieter können beliebige Kabel- oder Satellitenfernseh- oder Radio- oder Internetinhaltsanbieter beinhalten. Die bereitgestellten Beispiele sollen Ausführungsformen nicht beschränken.
  • Bei Ausführungsformen kann die Plattform 702 Steuersignale von einer Navigationssteuerung 750, die ein oder mehrere Navigationsmerkmale aufweist, empfangen. Die Navigationsmerkmale der Steuerung 750 können verwendet werden, um zum Beispiel mit der Benutzeroberfläche 722 zu interagieren. Bei Ausführungsformen kann die Navigationssteuerung 750 eine Zeigeeinrichtung sein, die eine Computerhardwarekomponente (spezifisch eine Human-Interface-Device) sein kann, die es einem Benutzer gestattet, räumliche (z. B. kontinuierliche und mehrdimensionale) Daten in einen Computer einzugeben. Viele Systeme, wie etwa grafische Benutzeroberflächen (GUI) und Fernseher und Monitore, ermöglichen dem Benutzer, den Computer oder Fernseher unter Verwendung von physischen Gesten zu steuern und Daten an diesen bereitzustellen.
  • Bewegungen der Navigationsmerkmale der Steuerung 750 können auf einer Anzeige (z. B. der Anzeige 720) durch Bewegungen eines Zeigers, eines Cursors, eines Fokusringes oder anderer visueller Indikatoren, die auf der Anzeige angezeigt werden, wiedergegeben werden. Unter der Steuerung zum Beispiel der Softwareanwendungen 716 können die auf der Navigationssteuerung 750 befindlichen Navigationsmerkmale zum Beispiel zu virtuellen Navigationsmerkmalen, die auf der Benutzeroberfläche 722 angezeigt werden, abgebildet werden. Bei Ausführungsformen ist die Steuerung 750 möglicherweise keine separate Komponente, sondern ist in die Plattform 702 und/oder die Anzeige 720 integriert. Ausführungsformen sind jedoch nicht auf die hierin dargestellten oder beschriebenen Elemente oder den hierin dargestellten oder beschriebenen Zusammenhang beschränkt.
  • Bei Ausführungsformen können Treiber (nicht dargestellt) Technologie umfassen, um Benutzern zu ermöglichen, die Plattform 702 wie einen Fernseher mit der Berührung einer Taste nach zum Beispiel einem anfänglichen Hochfahren, wenn aktiviert, unmittelbar ein- und auszuschalten. Programmlogik kann der Plattform 702 gestatten, Inhalt zu Medienadaptern oder einer oder mehreren anderen Inhaltsdiensteinrichtungen 730 oder einer oder mehreren Inhaltsliefereinrichtungen 740 zu streamen, wenn die Plattform „aus“-geschaltet ist. Zusätzlich dazu kann der Chipsatz 705 zum Beispiel eine Hardware- und/oder Softwareunterstützung für 5.1-Surround-Sound-Audio und/oder High-Definition-7.1-Surround-Sound-Audio umfassen. Treiber können einen Grafiktreiber für integrierte Grafikplattformen beinhalten. Bei Ausführungsformen kann der Grafiktreiber eine PCI(Peripheral Component Interconnect)-Express-Grafikkarte umfassen.
  • Bei verschiedenen Ausführungsformen können eine oder mehrere beliebige der im System 700 dargestellten Komponenten integriert sein. Die Plattform 702 und die eine oder die mehreren Inhaltsdiensteinrichtungen 730 können zum Beispiel integriert sein oder die Plattform 702 und die eine oder die mehreren Inhaltsliefereinrichtungen 740 können integriert sein oder die Plattform 702, die eine oder die mehreren Inhaltsdiensteinrichtungen 730 und die eine oder die mehreren Inhaltsliefereinrichtungen 740 können zum Beispiel integriert sein. Bei verschiedenen Ausführungsformen können die Plattform 702 und die Anzeige 720 eine integrierte Einheit sein. Die Anzeige 720 und die eine oder die mehreren Inhaltsdiensteinrichtungen 730 können integriert sein oder die Anzeige 720 und die eine oder die mehreren Inhaltsliefereinrichtungen 740 können zum Beispiel integriert sein. Diese Beispiele sollen die Ausführungsformen nicht beschränken.
  • Bei verschiedenen Ausführungsformen kann das System 700 als ein drahtloses System, ein verdrahtetes System oder eine Kombination beider implementiert werden. Wenn es als ein drahtloses System implementiert wird, kann das System 700 Komponenten und Schnittstellen beinhalten, die sich zur Kommunikation über drahtlose gemeinsam genutzte Medien eignen, wie etwa eine oder mehrere Antennen, Sender, Empfänger, Sendeempfänger, Verstärker, Filter, Steuerlogik und so weiter. Ein Beispiel für drahtlose gemeinsam genutzte Medien können Teile eines Drahtlosspektrums beinhalten, wie etwa das HF-Spektrum und so weiter. Wenn es als ein verdrahtetes System implementiert wird, kann das System 700 Komponenten und Schnittstellen beinhalten, die sich zur Kommunikation über verdrahtete Kommunikationsmedien eignen, wie etwa Eingabe/Ausgabe(E/A)-Adapter, physische Verbinder, um den E/A-Adapter mit einem entsprechenden verdrahteten Kommunikationsmedium zu verbinden, eine Netzwerkschnittstellenkarte (NIC), eine Plattensteuerung, eine Videosteuerung, eine Audiosteuerung und so weiter. Beispiele für verdrahtete Kommunikationsmedien können einen Draht, ein Kabel, Metallleitungen, eine Leiterplatte (PCB), eine Backplane, ein Switch-Fabric, ein Halbleitermaterial, einen Twisted-Pair-Draht, ein Koaxialkabel, Faseroptiken und so weiter beinhalten.
  • Die Plattform 702 kann einen oder mehrere logische oder physische Kanäle zum Kommunizieren von Informationen aufbauen. Die Informationen können Medieninformationen und Steuerinformationen beinhalten. Medieninformationen können sich auf beliebige Daten beziehen, die einen Inhalt repräsentieren, der für einen Benutzer gedacht ist. Beispiele für Inhalt können zum Beispiel Daten eines Gesprächs, eine Videokonferenz, ein Streaming-Video, eine elektronische Postnachricht („E-Mail“-Nachricht), eine Voicemail-Nachricht, alphanumerische Symbole, Grafiken, ein Bild, Video, Text und so weiter beinhalten. Daten eines Gesprächs können zum Beispiel Sprachinformationen, Stillezeiträume, Hintergrundgeräusche, Komfortgeräusche, Töne und so weiter sein. Steuerinformationen können sich auf beliebige Daten beziehen, die Anweisungen, Befehle oder Steuerwörter repräsentieren, die für ein automatisiertes System gedacht sind. Steuerinformationen können zum Beispiel verwendet werden, um Medieninformationen durch ein System zu routen oder einen Knoten anzuweisen, die Medieninformationen auf eine vorbestimmte Art und Weise zu verarbeiten. Die Ausführungsformen sind jedoch nicht auf die in 10 dargestellten oder beschriebenen Elemente oder den in 10 dargestellten oder beschriebenen Zusammenhang beschränkt.
  • Wie oben beschrieben, kann das System 700 in unterschiedlichen physischen Stilen oder Formfaktoren umgesetzt werden. 11 veranschaulicht Ausführungsformen einer Einrichtung 800 mit kleinem Formfaktor, in der das System 700 umgesetzt werden kann. Bei Ausführungsformen kann die Einrichtung 800 zum Beispiel als eine mobile Datenverarbeitungseinrichtung mit Drahtlosfähigkeiten implementiert werden. Eine mobile Datenverarbeitungseinrichtung kann sich auf eine beliebige Einrichtung beziehen, die zum Beispiel ein Verarbeitungssystem und eine mobile Leistungsquelle oder -versorgung, wie etwa eine oder mehrere Batterien, aufweist.
  • Wie oben beschrieben, können Beispiele für eine mobile Datenverarbeitungseinrichtung einen Personal Computer (PC), einen Laptop-Computer, einen Ultra-Laptop-Computer, ein Tablet, ein Touchpad, einen portablen Computer, einen handgehaltenen Computer, einen Palmtop-Computer, einen Personal Digital Assistant (PDA), ein zellulares Telefon, eine Zellulartelefon/PDA-Kombination, einen Fernseher, eine Smart-Einrichtung (z. B. ein Smartphone, ein Smart-Tablet oder einen Smart-Fernseher), eine mobile Interneteinrichtung (MID), eine Messaging-Einrichtung, eine Datenkommunikationseinrichtung und so weiter beinhalten.
  • Beispiele für eine mobile Datenverarbeitungseinrichtung können auch Computer beinhalten, die dazu ausgelegt sind, durch eine Person getragen zu werden, wie etwa ein Handgelenk-Computer, ein Finger-Computer, ein Ring-Computer, ein Brillen-Computer, ein Gürtelclip-Computer, ein Armband-Computer, Schuh-Computer, Bekleidungs-Computer und andere tragbare Computer. Bei Ausführungsformen kann eine mobile Datenverarbeitungseinrichtung zum Beispiel als ein Smartphone implementiert werden, das in der Lage ist, Computeranwendungen sowie Sprachkommunikationen und/oder Datenkommunikationen auszuführen. Obwohl manche Ausführungsformen mit einer mobilen Datenverarbeitungseinrichtung beschrieben werden, die beispielshalber als ein Smartphone implementiert wird, versteht es sich, dass andere Ausführungsformen auch unter Verwendung anderer drahtloser mobiler Datenverarbeitungseinrichtungen implementiert werden können. Die Ausführungsformen sind in diesem Zusammenhang nicht beschränkt.
  • Wie in 11 dargestellt, kann die Einrichtung 800 ein Gehäuse 802, eine Anzeige 804, eine Eingabe/Ausgabe(E/A)-Einrichtung 806 und eine Antenne 808 umfassen. Die Einrichtung 800 kann auch Navigationsmerkmale 812 umfassen. Die Anzeige 804 kann eine beliebige geeignete Anzeigeeinheit zum Anzeigen von Informationen umfassen, die sich für eine mobile Datenverarbeitungseinrichtung eignet. Die E/A-Einrichtung 806 kann eine beliebige geeignete E/A-Einrichtung zum Eingeben von Informationen in eine mobile Datenverarbeitungseinrichtung umfassen. Beispiele für die E/A-Einrichtung 806 können eine alphanumerische Tastatur, ein numerisches Tastenfeld, ein Touchpad, Eingabetasten, Tasten, Schalter, Kippschalter, Mikrofone, Lautsprecher, eine Spracherkennungseinrichtung und -software und so weiter beinhalten. Informationen können auch in die Einrichtung 800 mittels eines Mikrofons eingegeben werden. Derartige Informationen können durch eine Spracherkennungseinrichtung digitalisiert werden. Die Ausführungsformen sind in diesem Zusammenhang nicht beschränkt.
  • Gemäß manchen Ausführungsformen kann bzw. können das System 700 und/oder die Einrichtung 800 Technologie zum Erzeugen eines 2D-Videos aus einem 360-Videoinhalt, wie hierin beschrieben, beinhalten. Insbesondere kann bzw. können das System 700 und/oder die Einrichtung 800 einen oder mehrere Aspekte der untenstehenden Beispiele beinhalten.
  • Zusätzliche Anmerkungen und Beispiele:
  • Beispiel 1 kann ein elektronisches Verarbeitungssystem beinhalten, umfassend einen Prozessor, einen Speicher, der kommunikativ mit dem Prozessor gekoppelt ist, und Logik, die kommunikativ mit dem Prozessor gekoppelt ist, um Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen zu aggregieren, Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auszuwählen und ein oder mehrere zweidimensionale Videos basierend auf den ausgewählten Videoinformationen zu erzeugen.
  • Beispiel 2 kann das System des Beispiels 1 beinhalten, wobei die Logik ferner ausgelegt ist zum Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  • Beispiel 3 kann das System des Beispiels 1 beinhalten, wobei die Logik ferner ausgelegt ist zum Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Beispiel 4 kann das System eines der Beispiele 1 bis 3 beinhalten, wobei die Logik ferner ausgelegt ist zum Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, und zum Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  • Beispiel 5 kann das System des Beispiels 4 beinhalten, wobei die Logik ferner ausgelegt ist zum Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter und zum Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  • Beispiel 6 kann das System eines des Beispiels 5 beinhalten, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  • Beispiel 7 kann eine Halbleiterbaugruppenvorrichtung beinhalten, umfassend ein oder mehrere Substrate und Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, wobei die Logik zumindest teilweise in einer konfigurierbaren Logik und/oder Hardwarelogik mit fester Funktionalität implementiert wird, wobei die Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, ausgelegt ist zum Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen, zum Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse und zum Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen.
  • Beispiel 8 kann die Vorrichtung des Beispiels 7 beinhalten, wobei die Logik ferner ausgelegt ist zum Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  • Beispiel 9 kann die Vorrichtung des Beispiels 7 beinhalten, wobei die Logik ferner ausgelegt ist zum Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Beispiel 10 kann die Vorrichtung eines der Beispiele 7 bis 9 beinhalten, wobei die Logik ferner ausgelegt ist zum Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, und zum Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  • Beispiel 11 kann die Vorrichtung des Beispiels 10 beinhalten, wobei die Logik ferner ausgelegt ist zum Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter und zum Wechseln zwischen dem omnidirektionalen Videoinhalt und zwischen dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  • Beispiel 12 kann die Vorrichtung des Beispiels 11 beinhalten, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  • Beispiel 13 kann ein Verfahren zum Erzeugen von Video beinhalten, umfassend Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen, Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse und Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen.
  • Beispiel 14 kann das Verfahren des Beispiels 13 beinhalten, ferner umfassend Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  • Beispiel 15 kann das Verfahren des Beispiels 13 beinhalten, ferner umfassend Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Beispiel 16 kann das Verfahren eines der Beispiele 13 bis 15 beinhalten, ferner umfassend Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, und Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  • Beispiel 17 kann das Verfahren des Beispiels 16 beinhalten, ferner umfassend Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter und Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  • Beispiel 18 kann das Verfahren des Beispiels 17 beinhalten, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht
  • Beispiel 19 kann mindestens ein computerlesbares Medium beinhalten, umfassend einen Satz von Befehlen, die bei Ausführung durch eine Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen aggregiert, Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auswählt und ein oder mehrere zweidimensionale Videos basierend auf den ausgewählten Videoinformationen erzeugt.
  • Beispiel 20 kann das mindestens eine computerlesbare Medium des Beispiels 19 beinhalten, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten erfasst.
  • Beispiel 21 kann das mindestens eine computerlesbare Medium des Beispiels 19 beinhalten, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung die aggregierten Informationen des Gebiets von Interesse clustert, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Beispiel 22 kann das mindestens eine computerlesbare Medium eines der Beispiele 19 bis 21 beinhalten, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung einen oder mehrere Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, bestimmt und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern auswählt.
  • Beispiel 23 kann das mindestens eine computerlesbare Medium des Beispiels 22 beinhalten, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung den einen oder die mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter überwacht und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern wechselt.
  • Beispiel 24 kann das mindestens eine computerlesbare Medium des Beispiels 23 beinhalten, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  • Beispiel 25 kann eine Videoerzeugervorrichtung beinhalten, umfassend Mittel zum Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen, Mittel zum Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse und Mittel zum Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen.
  • Beispiel 26 kann die Vorrichtung des Beispiels 25 beinhalten, ferner umfassend Mittel zum Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  • Beispiel 27 kann die Vorrichtung des Beispiels 25 beinhalten, ferner umfassend Mittel zum Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  • Beispiel 28 kann die Vorrichtung eines der Beispiele 25 bis 27 beinhalten, ferner umfassend Mittel zum Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, und Mittel zum Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  • Beispiel 29 kann die Vorrichtung des Beispiels 28 beinhalten, ferner umfassend Mittel zum Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter und Mittel zum Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  • Beispiel 30 kann die Vorrichtung des Beispiels 29 beinhalten, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  • Beispiel 31 kann eine Videoerzeugervorrichtung beinhalten, umfassend einen Datenerfasser einschließlich Logik zum Aggregieren von Informationen eines Gebiets von Interesse für einen 360-Videoinhalt von zwei oder mehr Quellen, eine Entscheidungs-Engine einschließlich Logik zum Auswählen von Videoinformationen aus dem 360-Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse und einen Inhaltserzeuger einschließlich Logik zum Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen
  • Beispiel 32 kann die Vorrichtung des Beispiels 31 beinhalten, wobei der Datenerfasser ferner Logik zum Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten beinhaltet.
  • Beispiel 33 kann die Vorrichtung des Beispiels 31 beinhalten, wobei der Datenerfasser ferner Logik zum Erhalten von Informationen eines Gebiets von Interesse durch Crowd-Sourcing von zwei oder mehr Inhaltskonsumenten beinhaltet.
  • Beispiel 34 kann die Vorrichtung des Beispiels 33 beinhalten, wobei der Datenerfasser ferner Logik zum Erhalten von Informationen durch Crowd-Sourcing von Punkten von Interesse von zwei oder mehr Inhaltskonsumenten beinhaltet.
  • Beispiel 35 kann die Vorrichtung des Beispiels 31 beinhalten, wobei die Entscheidungs-Engine ferner Logik zum Clustern der aggregierten Informationen des Gebiets von Interesse beinhaltet, um die Videoinformationen aus dem 360-Videoinhalt auszuwählen.
  • Beispiel 36 kann die Vorrichtung des Beispiels 35 beinhalten, wobei die Entscheidungs-Engine ferner Logik zum Durchführen einer Videoanalyse um eine Mitte eines Kandidaten-Clusters herum und zum Verarbeiten des Clusters basierend auf der Videoanalyse beinhaltet, um den Kandidaten in zwei unterschiedliche Kandidateneinzelbilder aufzuteilen und/oder eine unterschiedliche Cluster-Mitte zu wählen und/oder von einem Einzelbild zum nächsten zu schwenken und/oder Effekte zum Glätten des Übergangs zwischen Einzelbildern anzuwenden.
  • Beispiel 37 kann die Vorrichtung des Beispiels 31 beinhalten, wobei die Entscheidungs-Engine ferner Logik zum Empfangen einer Benutzerrückmeldung von einem oder mehreren Inhaltskonsumenten beinhaltet.
  • Beispiel 38 kann die Vorrichtung des Beispiels 37 beinhalten, wobei die Entscheidungs-Engine ferner Logik zum Empfangen einer Benutzerrückmeldung basierend auf einer Konfiguration und/oder einer Richtlinie beinhaltet.
  • Beispiel 39 kann die Vorrichtung des Beispiels 31 beinhalten, wobei der Inhaltserzeuger ferner Logik zum Komprimieren des einen oder der mehreren zweidimensionalen Videos mit einem Videocodierer beinhaltet.
  • Beispiel 40 kann die Vorrichtung eines der Beispiele 31 bis 39 beinhalten, ferner umfassend einen Inhaltsverteiler einschließlich Logik zum Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, und zum Auswählen zwischen dem 360-Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  • Beispiel 41 kann die Vorrichtung des Beispiels 40 beinhalten, wobei der Inhaltsverteiler ferner Logik zum Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter und zum Wechseln zwischen dem 3 60-Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern beinhaltet.
  • Beispiel 42 kann die Vorrichtung des Beispiels 41 beinhalten, wobei der eine oder die mehreren Parameter auf einer Richtlinie basieren.
  • Beispiel 43 kann die Vorrichtung des Beispiels 41 beinhalten, wobei der eine oder die mehreren Parameter dynamisch konfigurierbar sind.
  • Beispiel 44 kann die Vorrichtung des Beispiels 41 beinhalten, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  • Ausführungsformen sind für die Verwendung mit allen Arten von Halbleiterchips mit integrierten Schaltungen („IC“) anwendbar. Beispiele für diese IC-Chips beinhalten unter anderem Prozessoren, Steuerungen, Chipsatzkomponenten, programmierbare Logik-Arrays (PLAs), Speicherchips, Netzwerkchips, Systeme auf einem Chip (SoCs) SSD/NAND-Steuerung-ASICs und dergleichen. Zusätzlich dazu werden Signalleiterbahnen in manchen der Zeichnungen mit Linien repräsentiert. Manche können unterschiedlich sein, um mehr Signalpfadbestandteile anzugeben, manche können eine Nummernbezeichnung aufweisen, um eine Anzahl von Signalpfadbestandteilen anzugeben, und/oder manche können Pfeile an einem oder mehreren Enden aufweisen, um eine Hauptinformationsflussrichtung anzugeben. Dies sollte jedoch nicht auf eine beschränkende Art und Weise ausgelegt werden. Vielmehr können derartige hinzugefügte Einzelheiten in Verbindung mit einem oder mehreren Ausführungsbeispielen verwendet werden, um ein leichteres Verständnis einer Schaltung zu ermöglichen. Jegliche repräsentierten Signalleitungen mit oder ohne zusätzlichen Informationen können tatsächlich ein oder mehrere Signale umfassen, die in mehreren Richtungen laufen können und mit einer beliebigen geeigneten Art von Signalschema implementiert werden können, z. B. digitalen oder analogen Leitungen, die mit Differentialpaaren, optischen Faserleitungen und/oder asymmetrischen Leitungen implementiert werden.
  • Beispielhafte Größen/Modelle/Werte/Bereiche können angegeben worden sein, obwohl Ausführungsformen nicht auf diese beschränkt sind. Da Herstellungstechniken (z. B. Photolithographie) mit der Zeit ausreifen, wird erwartet, dass Einrichtungen mit kleinerer Größe hergestellt werden könnten. Zusätzlich dazu werden wohlbekannte Leistungs-/Masseverbindungen mit IC-Chips und anderen Komponenten innerhalb der Figuren zur Vereinfachung der Veranschaulichung und Besprechung, und damit sie gewisse Aspekte der Ausführungsformen nicht undeutlich machen, möglicherweise dargestellt oder nicht. Des Weiteren können Anordnungen in Blockdiagrammform dargestellt sein, um eine Verundeutlichung von Ausführungsformen zu vermeiden, und auch hinsichtlich der Tatsache, dass Details bezüglich der Implementierung derartiger Blockdiagrammanordnungen sehr von der Plattform abhängen, in der die Ausführungsform implementiert werden soll, d. h. derartige Details sollten gut innerhalb des Zuständigkeitsbereichs eines Fachmanns auf dem Gebiet liegen. Wo spezifische Einzelheiten (z. B. Schaltungen) dargelegt sind, um Ausführungsbeispiele zu beschreiben, sollte einem Fachmann auf dem Gebiet ersichtlich werden, dass Ausführungsformen ohne oder mit einer Variation dieser spezifischen Einzelheiten umgesetzt werden können. Die Beschreibung soll somit als veranschaulichend anstatt beschränkend betrachtet werden.
  • Der Ausdruck „gekoppelt“ kann hierin verwendet werden, um sich auf eine beliebige Art von Beziehung, direkt oder indirekt, zwischen den betroffenen Komponenten zu beziehen und kann für elektrische, mechanische, fluide, optische, elektromagnetische, elektromechanische oder andere Verbindungen gelten. Zusätzlich dazu können die Ausdrücke „erster“, „zweiter“ usw. hierin verwendet werden, um nur die Diskussion zu erleichtern, und führen keine spezielle zeitliche oder chronologische Bedeutung, sofern nichts anderes angegeben ist.
  • Wie in dieser Anmeldung und in den Ansprüchen verwendet, kann eine Liste von Gegenständen, die durch den Ausdruck „ein oder mehr“ verbunden ist, eine beliebige Kombination der aufgelisteten Ausdrücke bedeuten. Zum Beispiel können sowohl die Phrase „ein oder mehrere von A, B und C“ als auch die Phrase „ein oder mehr von A, B oder C“ A; B; C; A und B; A und C; B und C; oder A, B und C bedeuten.
  • Fachleute auf dem Gebiet werden anhand der vorstehenden Beschreibung würdigen wissen, dass die umfassenden Techniken der Ausführungsformen in einer Vielfalt von Formen implementiert werden können. Obwohl die Ausführungsformen in Verbindung mit speziellen Beispielen davon beschrieben worden sind, sollte daher der wahre Schutzumfang der Ausführungsformen nicht darauf beschränkt sein, da andere Modifikationen dem Fachmann bei der Untersuchung der Zeichnungen, der Spezifikation und der folgenden Ansprüche ersichtlich werden.

Claims (24)

  1. Elektronisches Verarbeitungssystem, umfassend: einen Prozessor; einen Speicher, der kommunikativ mit dem Prozessor gekoppelt ist; und Logik, die kommunikativ mit dem Prozessor gekoppelt ist, zum: Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen, Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse, und Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen.
  2. System nach Anspruch 1, wobei die Logik ferner ausgelegt ist zum: Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  3. System nach Anspruch 1, wobei die Logik ferner ausgelegt ist zum: Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  4. System nach einem der Ansprüche 1 bis 3, wobei die Logik ferner ausgelegt ist zum: Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen; und Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  5. System nach Anspruch 4, wobei die Logik ferner ausgelegt ist zum: Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter; und Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  6. System nach Anspruch 5, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  7. Halbleiterbaugruppenvorrichtung, umfassend: ein oder mehrere Substrate; und Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, wobei die Logik zumindest teilweise in einer konfigurierbaren Logik und/oder einer Hardwarelogik mit fester Funktionalität implementiert wird, wobei die Logik mit dem einen oder den mehreren Substraten gekoppelt ist zum: Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen, Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse, und Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen.
  8. Vorrichtung nach Anspruch 7, wobei die Logik ferner ausgelegt ist zum: Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  9. Vorrichtung nach Anspruch 7, wobei die Logik ferner ausgelegt ist zum: Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  10. Vorrichtung nach einem der Ansprüche 7 bis 9, wobei die Logik ferner ausgelegt ist zum: Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen; und Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  11. Vorrichtung nach Anspruch 10, wobei die Logik ferner ausgelegt ist zum: Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter; und Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  12. Vorrichtung nach Anspruch 11, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  13. Verfahren zum Erzeugen von Video, umfassend: Aggregieren von Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen; Auswählen von Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse; und Erzeugen eines oder mehrerer zweidimensionaler Videos basierend auf den ausgewählten Videoinformationen.
  14. Verfahren nach Anspruch 13, ferner umfassend: Erfassen von Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten.
  15. Verfahren nach Anspruch 13, ferner umfassend: Clustern der aggregierten Informationen des Gebiets von Interesse, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  16. Verfahren nach einem der Ansprüche 13 bis 15, ferner umfassend: Bestimmen eines oder mehrerer Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen; und Auswählen zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern.
  17. Verfahren nach Anspruch 16, ferner umfassend: Überwachen des einen oder der mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter; und Wechseln zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern.
  18. Verfahren nach Anspruch 17, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
  19. Computerlesbares Medium bzw. computerlesbare Medien, umfassend einen Satz von Befehlen, die bei Ausführung durch eine Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung: Informationen eines Gebiets von Interesse für einen omnidirektionalen Videoinhalt von zwei oder mehr Quellen aggregiert; Videoinformationen aus dem omnidirektionalen Videoinhalt basierend auf den aggregierten Informationen des Gebiets von Interesse auswählt; und ein oder mehrere zweidimensionale Videos basierend auf den ausgewählten Videoinformationen erzeugt.
  20. Computerlesbares Medium bzw. computerlesbare Medien nach Anspruch 19, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch eine Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung: Informationen eines Gebiets von Interesse von einem Inhaltserzeuger und/oder einem Inhaltskonsumenten erfasst.
  21. Computerlesbares Medium bzw. computerlesbare Medien nach Anspruch 19, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung: die aggregierten Informationen des Gebiets von Interesse clustert, um die Videoinformationen aus dem omnidirektionalen Videoinhalt auszuwählen.
  22. Computerlesbares Medium bzw. computerlesbare Medien nach einem der Ansprüche 19 bis 21, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung: einen oder mehrere Parameter, die mit einem Inhaltskonsumenten in Beziehung stehen, bestimmt; und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos zur Verteilung zum Inhaltskonsumenten basierend auf dem einen oder den mehreren bestimmten Parametern auswählt.
  23. Computerlesbares Medium bzw. computerlesbare Medien nach Anspruch 22, umfassend einen weiteren Satz von Befehlen, die bei Ausführung durch die Datenverarbeitungseinrichtung bewirken, dass die Datenverarbeitungseinrichtung: den einen oder die mehreren mit dem Inhaltskonsumenten in Beziehung stehenden Parameter überwacht; und zwischen dem omnidirektionalen Videoinhalt und dem einen oder den mehreren zweidimensionalen Videos basierend auf einer Änderung in dem einen oder den mehreren Parametern wechselt.
  24. Computerlesbares Medium bzw. computerlesbare Medien nach Anspruch 23, wobei der eine oder die mehreren Parameter einen Parameter beinhalten, der mit einer Inhaltskonsumentenauswahl und/oder Vorinformationen bezüglich eines Inhaltskonsumenten und/oder Vorinformationen bezüglich einer Konsumationseinrichtung und/oder einer Konsumationseinrichtungsfähigkeit und/oder einer Bandbreitenverfügbarkeit und/oder einer Konsumationseinrichtungsänderung und/oder einem Ansichtswinkel zwischen einem Inhaltskonsumenten und einer Inhaltskonsumationseinrichtung in Beziehung steht.
DE102018130085.9A 2017-12-29 2018-11-28 Erzeugen eines 2d-videos aus einem 360-video Pending DE102018130085A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/858,320 2017-12-29
US15/858,320 US10791373B2 (en) 2017-12-29 2017-12-29 Generating 2D video from 360 video

Publications (1)

Publication Number Publication Date
DE102018130085A1 true DE102018130085A1 (de) 2019-07-04

Family

ID=65231301

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018130085.9A Pending DE102018130085A1 (de) 2017-12-29 2018-11-28 Erzeugen eines 2d-videos aus einem 360-video

Country Status (2)

Country Link
US (1) US10791373B2 (de)
DE (1) DE102018130085A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11699266B2 (en) * 2015-09-02 2023-07-11 Interdigital Ce Patent Holdings, Sas Method, apparatus and system for facilitating navigation in an extended scene
KR102564729B1 (ko) * 2018-04-05 2023-08-09 삼성전자주식회사 복수의 뷰포인트들을 포함하는 3차원 컨텐트에 대한 정보를 전송하기 위한 방법 및 장치
WO2019203456A1 (ko) * 2018-04-15 2019-10-24 엘지전자 주식회사 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치
WO2020184188A1 (ja) * 2019-03-08 2020-09-17 ソニー株式会社 画像処理装置、画像処理方法及び画像処理プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140366066A1 (en) * 2013-06-06 2014-12-11 Wipro Limited Method and system for providing broadcast program recommendations in a digital television system
US9998705B2 (en) * 2013-08-09 2018-06-12 Samsung Electronics Co., Ltd. Hybrid visual communication
US9778740B2 (en) * 2015-04-10 2017-10-03 Finwe Oy Method and system for tracking an interest of a user within a panoramic visual content
US10762132B2 (en) * 2015-10-29 2020-09-01 Pixured, Inc. System for referring to and/or embedding posts, videos or digital media within another post, video, digital data or digital media within 2D, 3D, 360 degree or spherical applications whereby to reach convergence or grouping
US10360721B2 (en) * 2016-05-26 2019-07-23 Mediatek Inc. Method and apparatus for signaling region of interests

Also Published As

Publication number Publication date
US10791373B2 (en) 2020-09-29
US20190045268A1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
CN113301439B (zh) 用于处理视频图像的装置
US11627280B2 (en) Techniques for video analytics of captured video content
DE102018130085A1 (de) Erzeugen eines 2d-videos aus einem 360-video
DE112017002119T5 (de) Augenkontaktkorrektur in Echtzeit unter Verwendung von auf neuronalen Netzwerken basierendem maschinellem Lernen
TWI528787B (zh) 用於管理視訊串流之技術
DE112013004778T5 (de) Kodierung von Bildern unter Verwendung eines 3D-Netzes von Polygonen und entsprechenden Strukturen
DE112016002377T5 (de) Streamen von sphärischem video
DE102020129800A1 (de) Interaktive segmentierung mit hoher wiedergabetreue für videodaten mit tief faltenden tessellationen und kontextsensitiven skip-verbindungen
US20220256140A1 (en) Video encoding method and apparatus, computer device, and storage medium
Li et al. A log-rectilinear transformation for foveated 360-degree video streaming
DE112015006587T5 (de) Adaptive Batch-Codierung für Slow-Motion-Videoaufzeichnung
DE102015001814A1 (de) Farbkomprimierung unter Verwendung einer selektiven Farbtransformation
DE112012007037T5 (de) Verarbeiten von Videoinhalt
CN112102462A (zh) 图像的渲染方法、装置
DE102021109050A1 (de) Durch ein neuronales generative adversarial netzwerk unterstützte videokompression und -übertragung
DE102022112157A1 (de) Echtzeit-verbesserung für streaming-inhalt
DE102021119882A1 (de) Videohintergrundschätzung unter verwendung von räumlich-zeitlichen modellen
CN112261408B (zh) 用于头戴显示设备的图像处理方法、装置及电子设备
DE102019122181B4 (de) Generalisierte niedriglatenzbenutzerinteraktion mit video auf verschiedenen transporteinrichtungen
DE102015002125A1 (de) Streaming-Komprimierungs-Antialiasing-Vorgehensweise bei deferred Shading
CN111937043B (zh) 将文件格式对象和基于超文本传输协议的动态自适应流媒体(dash)对象进行关联
WO2022230253A1 (ja) 情報処理装置及び情報処理方法
DE112016002638T5 (de) Videocodierung mit niedriger Bitrate
WO2022259632A1 (ja) 情報処理装置及び情報処理方法
DE102018119626A1 (de) Codec für Mulitkamera-Komprimierung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: HGF EUROPE LLP, DE

Representative=s name: HGF EUROPE LP, DE