DE102019129896A1 - Anwendung geometrischer akustik für immersive virtuelle realität (vr) - Google Patents

Anwendung geometrischer akustik für immersive virtuelle realität (vr) Download PDF

Info

Publication number
DE102019129896A1
DE102019129896A1 DE102019129896.2A DE102019129896A DE102019129896A1 DE 102019129896 A1 DE102019129896 A1 DE 102019129896A1 DE 102019129896 A DE102019129896 A DE 102019129896A DE 102019129896 A1 DE102019129896 A1 DE 102019129896A1
Authority
DE
Germany
Prior art keywords
audio data
computer
audio
microphone
impulse response
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.)
Granted
Application number
DE102019129896.2A
Other languages
English (en)
Other versions
DE102019129896B4 (de
Inventor
Ambrish Dantrey
Anshul Gupta
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.)
Nvidia Corp
Original Assignee
Nvidia 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 Nvidia Corp filed Critical Nvidia Corp
Publication of DE102019129896A1 publication Critical patent/DE102019129896A1/de
Application granted granted Critical
Publication of DE102019129896B4 publication Critical patent/DE102019129896B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/424Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving acoustic input signals, e.g. by using the results of pitch or rhythm extraction or voice recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6063Methods for processing data by generating or executing the game program for sound processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Acoustics & Sound (AREA)
  • Stereophonic System (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Ein Virtual Reality (VR) Audio Rendering System und Verfahren umfassen eine raumbezogene Verarbeitung von mit Mikrofonen aufgenommenem Schall aus der realen Welt entsprechend einer VR Umgebung. In einem Spiele-Streaming-System wird, wenn ein Spieler durch ein Mikrofon spricht, die Stimme durch eine geometrisch-akustische (GA) Simulation verarbeitet, die für eine virtuelle Szene konfiguriert ist, und dadurch szenenspezifische, raumbezogene Audioeffekte hinzugefügt. Die GA-Simulation kann ein Generieren einer Impulsantwort unter Verwendung einer Schallausbreitungssimulation und einer dynamischen HRTF-basierten Hörer-Richtcharakteristik beinhalten. Wenn die GA-verarbeitete Stimme des Spielers abgespielt wird, können der lokale Spieler oder andere Mitspieler sie so hören, als ob sich der Schall in der Szenerie und entsprechend der Geometrien in der virtuellen Szene ausbreitet. Dieser Mechanismus kann das Chatten der Spieler vorteilhaft in der gleichen virtuellen Welt wie die im Spiel integrierten Audiodaten platzieren, wodurch dem Benutzer ein verbessertes, immersives VR-Erlebnis geboten wird.

Description

  • GEBIET DER ERFINDUNG
  • Ausführungsbeispiele der vorliegenden Erfindung stehen in Zusammenhang mit Audiodatenverarbeitung, und insbesondere mit der geometrisch-akustischen Datenverarbeitung für Computeranwendungen, wie z.B. Virtual-Reality-Anwendungen.
  • HINTERGRUND DER ERFINDUNG
  • Während die virtuelle Realität (VR) aufregende Möglichkeiten in verschiedenen Bereichen wie der Erstellung von Inhalten und der Übertragung von Sport, Unterhaltung und Spielen eröffnet, bringen VR-Anwendungen auch neue Herausforderungen mit sich, wenn es darum geht, einer breiten Basis von Nutzern immersive Erfahrungen zu bieten.
  • Geometrisch-akustische (GA) Verarbeitung ist die Simulation von Schallstrahlausbreitung in einem bestimmten räumlichen Modell (z.B. eine Umgebung in einer virtuellen Szene in einem VR-Spiel), die z.B. durch eine GA-Verarbeitungspipeline ausgeführt werden kann. Basierend auf geometrischen Informationen über die Umgebung kann die GA-Verarbeitung automatisch bestimmen, wie sich die Schallwellen in der Umgebung ausbreiten und abprallen und einen Charakter oder einen anderen Objekttyp in der Umgebung erreichen (z.B. der in Echtzeit von einem Spieler gesteuert wird), wodurch räumliche 3D-Audiodaten erzeugt werden.
  • In der Regel verarbeitet eine GA-Verarbeitungspipeline die Geometrie einer virtuellen Szene zusammen mit der Kenntnis von Schallquellen und einem Empfängerstandort unter Verwendung eines Raytracing-Algorithmus und eines Audio-Rendering-Algorithmus. Der Ray-Tracing-Algorithmus wird zur Berechnung eines räumlichen akustischen Modells und zur Erzeugung von Impulsantworten (IRs) verwendet, die die Verzögerungen und die Dämpfung von Schallwellen kodieren, die sich von einem Schallquellenobjekt über verschiedene Ausbreitungswege, die Transmission, Reflexion und Beugung repräsentieren, zu einem Schallempfängerobjekt ausbreiten. Strahlen (oder Schallwellen) werden verfolgt, um eine Impulsantwort zu erzeugen, die das zeitliche Abklingen der Audioenergie am Ort des Schallempfängers darstellt. Immer wenn sich die Schallquelle, der Empfänger oder ein anderes Objekt in der Szene bewegt, müssen diese Ausbreitungspfade neu berechnet werden - manchmal in regelmäßigen Abständen. Der Audio-Rendering-Algorithmus wird verwendet, um Audiosignale durch Faltung der Eingangs-Audiosignale mit den IRs zu erzeugen. In einer virtuellen Umgebung, wie z.B. in einem Spiel, in dem die akustische Geometrie der Szene zusammen mit den Positionen einer Schallquelle und eines Schallempfängers bekannt ist, wird die GA-Verarbeitung angewendet, um raumbezogene Audiodaten zu erzeugen.
  • Es gibt zahlreiche Bemühungen, GA-Audiodaten in rechenintensiven Spielen zu verwenden, um ein immersives VR-Erlebnis zu ermöglichen. Aber diese Bemühungen beschränken sich auf die Anwendung von GA nur auf In-Game-Audio, z.B. Audio, das vom Anwendungsprogramm generiert wird. In bestehenden Systemen kann eine verbale Interaktion zwischen mehreren Spielern, die mit Mikrofonen erfasst wird, gleichzeitig mit dem Spiel gerendert werden. Allerdings kann der von den Mikrofonen aufgenommene Schall nur einfach und unbearbeitet wiedergegeben werden und nicht in die virtuellen Szenen immersiv integriert, sondern vielmehr losgelöst von diesen wiedergegeben werden. Multiplayer-VR-Anwendungen können durchgeführt werden, indem die Interaktionen der Spieler und die Anwendung immersiver gestaltet werden.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Diese Erfindung stellt einen Mechanismus zur Verfügung, mit dem an den Mikrofonen der Benutzer aufgenommenes reales Audiomaterial in das anwendungsinterne Audiomaterial integriert werden kann, wobei ein anwendungsinternes geometrisch-akustisches (GA) Modell auf das vom Mikrofon aufgenommene Audiomaterial angewendet wird.
  • Die neuartige Lösung stellt eine Möglichkeit dar, die VR-Immersion der Spieler in einer Multiplayer-Spielumgebung zu erhöhen, indem die Anwendung von GA-Verarbeitung auf Mikrofondaten erweitert wird. In einer oder mehreren Ausführungsbeispiele beinhaltet die GA-Verarbeitung eine Modellierung einer Simulation der Schallstrahlausbreitung in einer bestimmten Umgebung. GA bestimmt mit Informationen über die Geometrie des Raumes, wie die Schallwellen in der Umgebung abprallen und den Benutzer erreichen, wodurch eine 3D-Audioräumlichkeit erreicht wird.
  • Wenn in einer oder mehreren Ausführungsbeispiele ein Benutzer/Spieler einer Multiplayer Content-Streaming-Anwendung durch ein Mikrofon spricht, wird die Stimme durch Simulation der für eine virtuelle Szene konfigurierten GA-Eigenschaften verarbeitet und dabei mit szenenspezifischen, räumlichen Audioeffekten versehen. Wenn die GA-verarbeitete Stimme z.B. durch einen Lautsprecher wiedergegeben wird, kann ein anderer Benutzer sie so hören, als ob der Schall sich entsprechend der Objekte in der Szenerie und der Geometrie in der virtuellen Szene ausgebreitet hat. Dieser Mechanismus kann die Unterhaltung der Benutzer vorteilhaft in der gleichen virtuellen Welt positionieren, genau wie ein gerendertes Spielaudio, und so dem Benutzer ein verbessertes immersives VR-Erlebnis bieten.
  • Ausführungsbeispiele der vorliegenden Offenlegung beinhalten u. a. das Falten von mit Mikrofon aufgenommenen Audiodaten mit einer für einen Tonkanal in einer virtuellen Szene charakteristischen Impulsantwort (IR), um Audio-Frames für ein Rendering zu erzeugen. Insbesondere wird die IR durch Verwendung einer Schallausbreitungssimulation und Head-Related Transfer Functions (HRTF) basierend auf den Positionen (einschließlich Orientierungen und Orte) der Schallquellen- und Schallempfängerobjekten in einer bestimmten Szene erzeugt. In einigen Ausführungsbeispiele arbeitet ein Multiplayer-Spielsystem in einem Client/Server-Modell, in dem mehrere Spielkonsolen (z.B. eine für jeden Spieler) als Clients mit einem gemeinsamen Server agieren. Jeder Client-Computer aktualisiert regelmäßig Informationen zur GA-Verarbeitung an den Server, wie z.B. die Eingaben des Spielers, die neue Kopfposition des Spielers oder die Bewegung, die von einem Head Mounted Display (HMD) erfasst wird, sowie die Stimme des Spielers, die von einem Mikrofon aufgenommen wird. Nach Erhalt der Informationen führt der Server eine GA-Verarbeitung durch, um die aktualisierten Positionen aller Spieler zu bestimmen, die sich beispielsweise in neue Positionen der Objekte in der virtuellen Szene übersetzen lassen. Der Server sendet dann eine autoritative Version dieser Positionen an alle Clients. Außerdem werden die vom Mikrofon aufgenommenen Audiodaten vom Client der Schallquelle über das Netzwerk an alle anderen Spieler übertragen. Auf diese Weise kann jeder Client-Computer Informationen über die Standorte sowie die Audiodaten aller anderen Spieler in Echtzeit empfangen.
  • Mit den Informationen anderer Spieler sowie der Geometrie, dem Standort und der Richtung des lokalen Spielers berechnet ein Client-Computer Impulsantworten (IRs), z.B. mit Hilfe einer Schallausbreitungssimulation und einer auf einer dynamischen Head-Related-Transfer-Function (HRTF) basierenden Hörer-Richtcharakteristik (engl. listener directivity). Entsprechend den Ausführungsbeispiele der vorliegenden Offenbarung werden die IRs mit den in Echtzeit vom Mikrofon erfassten Daten gefaltet, um vorteilhaft Audio-Frames für ein Rendern über Lautsprecher oder Kopfhörer, die mit dem Client-Computer verbunden sind, zu erzeugen. Die IRs können später in Reaktion auf Änderungen der Hörer- und Quellenpositionen neu berechnet werden. Die Stimme eines anderen Spielers wird in der Wahrnehmung des lokalen Spielers vorteilhaft genau in den Kontext der virtuellen Szene gesetzt und taucht so in die virtuelle Realität ein. Damit können sowohl die verbalen Interaktionen der Spieler als auch die durch das Spiel oder die Anwendung generierten Audiodaten VR-immersiv wiedergegeben werden.
  • Figurenliste
    • Ausführungsbeispiele der vorliegenden Erfindung sind exemplarisch und nicht einschränkend in den Figuren der beiliegenden Zeichnungen dargestellt, in denen sich gleiche Bezugszeichen auf ähnliche Elemente beziehen.
    • 1 ist ein Blockdiagramm, das ein exemplarisches VR-Streaming-System illustriert, das für ein Rendering von mit Mikrofon aufgenommenen Audiosignalen in einer immersiven VR-Umgebung konfiguriert ist, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung.
    • 2 illustriert den Datenfluss in einem exemplarischen VR-System, das konfiguriert ist, um eine GA-Simulation auf mit Mikrofon aufgenommene Audiosignale anzuwenden, um bei einem Client einen immersiven VR-Effekt zu erzeugen, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung.
    • 3 illustriert den Datenfluss in einem weiteren exemplarischen VR-System, konfiguriert ist, um eine GA-Simulation auf mit Mikrofon aufgenommene Audiosignale anzuwenden, um einen immersiven VR-Effekt auf einem Server zu erzeugen, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung.
    • 4 ist ein Flussdiagramm, das ein exemplarisches computerimplementiertes Verfahren zum Hinzufügen von immersiven VR-Effekten zu mit Mikrofon aufgenommen Audiosignalen, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung.
    • 5 ist ein Blockdiagramm, das ein exemplarisches Rechengerät zeigt, das VR-immersive Audio-Frames für ein Rendering aus über Mikrofon aufgenommenen Audiodaten erzeugen kann, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Im Folgenden wird im Einzelnen auf die bevorzugten Ausführungsbeispiele der vorliegenden Erfindung eingegangen, die in den beiliegenden Zeichnungen exemplarisch dargestellt sind. Obwohl die Erfindung in Verbindung mit den bevorzugten Ausführungsbeispielen beschrieben wird, ist es nicht beabsichtigt, die Erfindung auf diese Ausführungsbeispiele zu beschränken. Im Gegenteil, die Erfindung soll Alternativen, Modifikationen und Äquivalente abdecken, die im Sinne und des Umfangs der Erfindung, wie in den beigefügten Ansprüchen definiert, enthalten sein können. Darüber hinaus werden in der folgenden ausführlichen Beschreibung von Ausführungsbeispiele der vorliegenden Erfindung zahlreiche spezifische Einzelheiten dargelegt, um ein gründliches Verständnis der vorliegenden Erfindung zu ermöglichen. Eine fachkundige Person wird jedoch erkennen, dass die vorliegende Erfindung auch ohne diese spezifischen Details ausgeführt werden kann. In anderen Fällen sind bekannte Methoden, Verfahren, Komponenten und Schaltungen nicht detailliert beschrieben worden, um Aspekte der Verkörperungen der vorliegenden Erfindung nicht unnötig zu verdecken.
  • Notation und Nomenklatur:
  • Einige Teile der folgenden detaillierten Beschreibungen werden in Form von Verfahren, Schritten, logischen Blöcken, Verarbeitung und anderen symbolischen Darstellungen von Operationen auf Datenbits innerhalb eines Computerspeichers dargestellt. Diese Beschreibungen und Darstellungen sind die Mittel, die von Fachleuten auf dem Gebiet der Datenverarbeitung verwendet werden, um die Inhalte ihrer Arbeit am effektivsten an andere Fachleute weiterzugeben. Eine Prozedur, ein vom Computer ausgeführter Schritt, ein logischer Block, ein Prozess usw. ist hier und im Allgemeinen als eine selbstkonsistente Folge von Schritten oder Anweisungen zu verstehen, die zu einem gewünschten Ergebnis führt. Die Schritte sind solche, die physikalische Manipulationen physikalischer Größen erfordern. In der Regel, wenn auch nicht notwendigerweise, haben diese Größen die Form von elektrischen oder magnetischen Signalen, die in einem Computersystem gespeichert, übertragen, kombiniert, verglichen und anderweitig manipuliert werden können. Es hat sich manchmal als zweckmäßig erwiesen, diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Begriffe, Zahlen oder ähnliches zu bezeichnen, hauptsächlich im Hinblick auf den allgemeinen Gebrauch.
  • Es ist jedoch zu berücksichtigen, dass alle diese und ähnliche Begriffe mit den entsprechenden physischen Größen zu verbinden sind und lediglich bequeme Kennzeichnungen für diese Größen sind. Sofern nicht ausdrücklich anders aus den folgenden Ausführungen hervorgeht, sollen sich in der gesamten vorliegenden Erfindung Diskussionen, in denen Begriffe wie „Rendering“ oder „Verarbeitung“ oder „Zugriff“ oder „Zugriff“ oder „Durchführung“ oder „Ausführung“ oder „Umwandlung“ oder „Bestimmung“ oder ähnliches verwendet werden, auf die Wirkung und die Prozesse einer integrierten Schaltung beziehen, oder ein ähnliches elektronisches Rechengerät, das Daten, die als physikalische (elektronische) Größen in den Registern und Speichern des Computersystems repräsentiert werden, manipuliert und in andere Daten umwandelt, die ähnlich als physikalische Größen in den Speichern oder Registern des Computersystems oder anderen derartigen Geräten zur Speicherung, Übertragung oder Anzeige von Informationen repräsentiert werden.
  • ANWENDUNG GEOMETRISCHER AKUSTIK AUF MIKROFONDATEN IN MULTIPLAYER-SPIELEN FÜR IMMERSIVE VIRTUELLE REALITÄT (VR)
  • In einer Virtual Reality (VR)-Umgebung sind positionale Audiohinweise (Positional Audio Cues) sehr wichtig, um einen raumbezogenen akustischen Effekt zu erzeugen und somit ein realistisches und immersives Virtual Reality (VR)-Erlebnis für den Benutzer zu ermöglichen. Ausführungsbeispiele der vorliegenden Offenbarung beinhalten ein Verfahren zur raumbezogenen Verarbeitung von mit Mikrofon aufgenommenem Schall aus der realen Welt entsprechend einer VR-Umgebung. Wenn in einem Spiel mehrere Spielcharaktere innerhalb einer VR-Umgebung in unmittelbarer Nähe zueinander positioniert sind, wird eine geometrische Akustik (GA) Modellierung angewendet, um den mit Mikrofonen aufgenommenen Schall vorteilhaft in Audiodaten mit einem immersiven VR-Effekt umzuwandeln. Durch die Hinzufügung von positionalen Hinweisen und geometrischer Akustik zu den über das Mikrofon aufgenommenen Audiodaten können die Spieler während der verbalen Kommunikation mit den anderen Spielern verbesserte, immersive VR-Erlebnisse erfahren.
  • Die GA-Modellierung ist die Simulation von Schallstrahlausbreitung in einer bestimmten räumlichen Umgebung (z.B. einer Umgebung in einer virtuellen Szene), die z.B. durch eine GA-Verarbeitungspipeline ausgeführt werden kann. Basierend auf geometrischen Informationen über die VR-Umgebung bestimmt die GA-Verarbeitung, wie sich die Schallwellen ausbreiten und in der Umgebung abprallen, bis sie einen Charakter oder ein Objekt (z.B., das von einem Spieler in Echtzeit gesteuert wird) erreichen, und liefert so raumbezogene 3D-Audiodaten. Kopfbewegungen eines Hörers (z.B. ein simuliertes Hörerobjekt) innerhalb einer VR-Umgebung können auch die Art und Weise verändern, wie die Audiodaten vom Hörer wahrgenommen werden soll. Ein Aspekt der hier beschriebenen Erfindung ist die Erzeugung einer Impulsantwort (IR) zur dynamischen Charakterisierung eines Tonkanals für die Ausbreitung (einschließlich Übertragung, Reflexion und Beugung etc.) von mit Mikrofon aufgenommenem Audiodaten und die Erzeugung von Audio-Frames durch Faltung der IR mit dem mit Mikrofon aufgenommenen Audio. Da der Tonkanal je nach Position der Schallquelle und des Schallempfängers sowie den geometrischen Gegebenheiten der virtuellen Szene variieren kann, kann die Impulsantwort durch die Verwendung einer Schallausbreitungssimulation und einer dynamischen HRTF-basierten Hörer-Richtcharakteristik erzeugt werden.
  • Insbesondere stellen Ausführungsbeispiele der vorliegenden Offenbarung Virtual-Reality (VR)-Audio-Rendering-Systeme und -Methoden in einem Multiplayer-Spielsystem zur Verfügung, bei dem mehrere Client-Geräte regelmäßig aktualisierte Positionsinformationen und von Mikrofonen aufgenommenen Schall aus der realen Welt an den Server senden. Dementsprechend führt der Server eine GA-Verarbeitung durch, um die aktualisierten Positionen der Objekte in der virtuellen Szene zu bestimmen, und sendet eine autoritative Version dieser Positionen und des mit dem Mikrofon aufgenommenen Audios an alle Clients. So erhält jeder Client-Computer in Echtzeit Informationen über die Standorte sowie Audiosignale aller anderen Spieler. An einem bestimmten Client-Computer kann der Client-Computer, basierend auf den Positions- und Audioinformationen der anderen Spieler, der Geometrie der VR-Szene und der Position und Ausrichtung des lokalen Spielers, Impulsantworten (IRs) berechnen und die IRs mit den in Echtzeit von den Mikrofonen erfassten Daten zu Audio-Frames für das Rendern falten.
  • Gemäß Ausführungsbeispiele der vorliegenden Offenbarung, wird die verbale Kommunikation eines anderen Spielers, so wie sie vom lokalen Spieler wahrgenommen wird, in den Kontext der virtuellen Szene gesetzt. Zum Beispiel verbessert das Hinzufügen von positionalen Hinweisen und geometrisch-akustischen Effekten zu den Chat-Audiodaten die Erfahrungen der Spieler, da ein Hörer-Spieler in der Lage ist, die Position des Sprechers-Spielers in der virtuellen Szene auf der Grundlage dessen, was er oder sie während der verbalen Interaktion hört, abzuleiten. Dadurch werden die Spielerinteraktionen VR-immersiv, genauso wie die vom Spiel oder der Anwendung generierten Audiodaten.
  • Die vorliegende Offenbarung kann in einem Cloud Content Streaming System, einem Client-Server Content Streaming System, einer individuellen Spielkonsole oder individuellem Spielsystem oder jedem anderen geeigneten System, das eine GA-Simulation zur Generierung von räumlichen Audiodaten ausnutzt, angewendet werden. 1 ist ein Blockdiagramm, das ein exemplarisches VR-Streaming-System 100 illustriert, das so konfiguriert ist, dass es mit Mikrofon aufgenommene Audiodaten in einer immersiven VR-Umgebung rendert, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung.
  • Vereinfacht dargestellt umfasst das VR-Streaming-System 100 ein Server-Gerät 110 und eine Vielzahl von Client-Geräten, die über ein oder mehrere Netzwerke gekoppelt sind, z.B. Client 1 (120) und Client 2 (130). Ein VR-Spiel kann auf dem Server 110 ausgeführt werden, und es werden Video- und Audio-Frames generiert und zum Rendern an die entfernten Clients 120 und 130 gestreamt. Jedes Client-Gerät ist mit einem Audio-Wiedergabesystem (z.B. Lautsprecher 141 oder 151), einem am Kopf des Benutzers tragbaren Gerät (HMD, z.B. 152 oder 152), das die Kopfposition und Bewegung des Benutzers erfassen kann, einem Mikrofon (z.B. 143 oder 153) und einem Controller oder einem anderen Eingabegerät (z.B. 144 oder 154) zum Empfang von Benutzereingaben gekoppelt. Jedes Mikrofon kann die Stimme eines Spielers und andere reale Umgebungsgeräusche aufnehmen und das Audiosignal an das zugehörige Client-Gerät und weiter an den Server 110 senden.
  • Sofern nicht anders angegeben, bezieht sich eine Position oder Positionsinformation in Bezug auf einen Spieler oder ein Rechengerät auf eine Position und Orientierung eines Objekts in einer VR-Umgebung, die der Kontrolle durch den Spieler oder das Gerät unterliegt, wie z.B. ein Schallquellenobjekt, ein Schallempfängerobjekt oder eine andere Art von Objekt. Die Position des Objekts in der VR-Umgebung kann von einem Spieler-Benutzer über ein Eingabegerät (z.B. einen Game-Controller) und/oder die Kopfposition des Spielers in Bezug auf das zugehörige Soundsystem gesteuert werden. Eine Veränderung der Position des Objektes bewirkt eine Änderung des geographisch-akustischen Modells. Es ist zu beachten, dass die vorliegende Offenbarung nicht auf eine bestimmte Art von Gerät beschränkt ist, das Positionsinformationen erkennen und liefern kann, sondern dass jedes einer Vielzahl bekannter Geräte verwendet werden kann. So können die Positionsinformationen beispielsweise von einem HMD, einem Game-Controller, einer Tastatur, tragbaren Sensoren usw. stammen. In diesem Beispiel können die Kopfbewegungen eines Benutzers und die Eingabe des Gamecontrollers die Position eines virtuellen Objekts verändern und dadurch die geometrisch-akustischen Eigenschaften der VR-Umgebung verändern.
  • Zum Beispiel kann jedes Client-Gerät (120 oder 130) während des Betriebs Positions-Update-Informationen (einschließlich Positions- und Orientierungsinformationen z.B.) vom zugehörigen HMD und dem Game-Controller empfangen und an den Server weiterleiten. Der Server 110 ist so konfiguriert, dass er die Spielanwendung ausführt, Audio-und Videoframes auf der Grundlage der aktualisierten Positionsinformationen generiert und Audio im Auftrag der Clients rendert.
  • Insbesondere umfasst der Server 110 eine GA-Verarbeitungspipeline 150 mit einem Raytracing-Modul 151 und einem Audio-Rendering-Modul 152. Das Raytracing-Modul 151 kann ein räumlich-akustisches Modell berechnen und IRs erzeugen, die die Verzögerungen und die Dämpfung von Schallwellen kodieren. Schallwellen, die sich von einem Schallquellenobjekt zu einem Schallempfängerobjekt ausbreiten, breiten sich auf einer Vielzahl von Ausbreitungspfaden aus, die verschiedene Sequenzen von Transmission, Reflexionen, Beugungen und Brechungen an den Oberflächen der VR-Umgebung repräsentieren. Immer wenn sich ein Objekt in der virtuellen Szene bewegt, können diese Ausbreitungswege neu berechnet werden, um nachfolgende Audio-Frames für das Rendering zu erzeugen.
  • Das Audio-Rendering-Modul 152 kann Audio-Frames erzeugen, indem es die Eingangs-Audiodaten mit den IRs faltet. Dabei werden Schallwellenstrahlen verfolgt, um eine IR zu erzeugen, das die zeitliche und örtliche Verzögerung der Audioenergie des Schallempfänger-Objektes charakterisiert. Aufgrund der Geometrie der VR-Szene zusammen mit den Positionen einer Schallquelle und eines Empfängers wird eine GA-Simulation angewendet, um raumbezogene VR-Audioframes zu erzeugen. Die von der GA-Processing-Pipeline 150 durchgeführte Audioverarbeitung kann eine Framenummer oder einen Zeitstempel verwenden, um die Zeit anzugeben, zu der das verarbeitete Audio abgespielt werden muss, und auch um die entsprechende Position zu korrelieren.
  • Gemäß Ausführungsbeispielen der vorliegenden Offenbarung wird ein mit Mikrofon aufgenommenes Audiosignal durch GA-Modellierung einer virtuellen Umgebung verarbeitet, d.h. in Audiodaten umgewandelt, die einen geometrisch-akustischen Effekt und positionale Hinweise bereitstellen. In dem illustrierten Beispiel ist die GA-Pipeline 150 des Servers dafür verantwortlich, eine GA-Modellierung anzuwenden, um Audio-Frames für das integrierte Spiele-Audiosignal zu erzeugen, während eine Client-Audio-Engine dafür verantwortlich ist, eine GA-Modellierung anzuwenden, um Audio-Frames für die vom Mikrofon aufgenommene reale Audiodaten des lokalen Spielers oder eines anderen Mitspielers zu erzeugen. In einigen anderen Ausführungsbeispiele ist die GA-Pipeline 150 des Servers jedoch so konfiguriert, dass sie Audio-Frames für über das Mikrofon aufgenommene Audiosignale erzeugt und dann die Audio-Frames zum Abspielen an ein Client-Gerät sendet.
  • Wie gezeigt, verfügt das Client-Gerät 120 über eine lokale GA-Audio-Engine 121, die in der Lage ist, eine Impulsantwort (IR) zu berechnen, z.B. basierend auf der Positionsinformation der Spieler und unter Verwendung einer Schallausbreitungssimulation und einer dynamischen HRTF-basierten Hörer-Richtcharakteristik. Es können mehrere IRs für eine VR-Szene erzeugt werden, z.B. kann eine IR für jede Kombination aus einem Objekt und seinem Steuerspieler erzeugt werden. Die lokale GA Audio-Engine 121 faltet dann eine IR mit dem entsprechenden vom Mikrofon aufgenommenen Audio, um Audio-Frames für ein Rendering durch einen Lautsprecher oder einen Kopfhörer zu erzeugen, der mit dem Client-Gerät 120 verbunden ist. Die IRs können entsprechend den von den Mikrofonen und HMDs erkannten Änderungen in interaktiven Abständen neu berechnet werden.
  • In einigen Ausführungsbeispiele kann ein hörerbasierter Raytracing-Algorithmus zur Erzeugung der IRs verwendet werden. Beim hörerbasierten Ansatz werden die Strahlen von Schallwellen so behandelt, als stammten sie von einem Hörer (oder einem Schallempfänger) und nicht von einer Schallquelle. Mehrere IRs, eine für jeden Spieler, können mit einem einzigen Raytracing-Durchlauf erzeugt werden, und die IRs können dann auf vorteilhafte Weise mit dem Mikrofon-Audiosignal des jeweiligen Spielers gefaltet werden.
  • Es ist zu beachten, dass jeder beliebige andere geeignete geometrische Audioverarbeitungsalgorithmus oder -methode angewendet werden kann, um das vom Mikrofon aufgenommene Audiosignal in eine VR-Umgebung einzufügen, ohne dass der Umfang der vorliegenden Offenlegung überschritten wird.
  • Die Positionsinformationen zu einem Spieler und die über das Mikrofon aufgenommenen Audiodaten können von einem Client gesammelt und über den Server an andere Peer-Clients übertragen werden. Zum Beispiel kann jedes Client-Gerät periodisch einen Stream von Paketen an den Server senden, wobei jedes Paket eine vereinfachte Aktualisierung der Eingaben des Spielers, die über den Game-Controller empfangen werden, die neue Kopfposition oder Bewegung des Spielers, die von einem Head Mounted Display (HMD) erfasst wird, und die von den Mikrofonen aufgenommene Stimme des Spielers enthält. Nachdem die Eingangspakete empfangen wurden, führt der Server eine GA-Simulation durch, um die neuen Positionen aller relevanten Objekte in der Szene zu bestimmen, und sendet Pakete mit einer autoritativen Version dieser Positionen an alle Clients. Auf diese Weise kann jeder Client-Computer sowohl Positionsinformationen als auch Audiodaten aller anderen Spieler in Echtzeit empfangen. Es kann jedoch jeder andere bekannte Mechanismus verwendet werden, um Positionsinformationen und von Mikrofonen erfasste Audiodaten zwischen den mehreren Spielern in einem Spiel zu kommunizieren, ohne dass der Umfang der vorliegenden Offenlegung überschritten wird.
  • 2 illustriert den Datenfluss in einem exemplarischen VR-System 200, das konfiguriert ist, um eine GA-Simulation bei einem Client anzuwenden, um einen immersiven VR-Effekt zu einem mit Mikrofon aufgenommenen Audiosignal hinzuzufügen, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung. Das VR-System 200 enthält einen Server 210, der so konfiguriert ist, dass er Audio- und Videoframes einer VR-Anwendung an Client 1 (220) und Client 2 (230) über Netzwerke in einem Multiplayer-VR-Spiel streamt. Client 1 (220) ist mit Spieler 1 assoziiert und Client 2 (230) wird von Spieler 2 gesteuert. Gemäß den Ausführungsbeispielen der vorliegenden Offenbarung wird, wenn ein Spieler spricht, seine oder ihre Stimme von einem Mikrofon aufgenommen und dann gemäß Ausführungsbeispielen der vorliegenden Offenbarung verarbeitet, um einen geometrisch-akustischen Effekt hinzuzufügen. Wenn sie von einem Audio-Rendering-Gerät abgespielt wird, bietet die verarbeitete verbale Kommunikation zwischen den Spielern ein verbessertes, immersives VR-Erlebnis für die Spieler, da die Zuhörer die Stimme so wahrnehmen können, wie sie sich in der virtuellen Umgebung des Spiels ausbreitet. So können verbale Interaktionen zwischen den Spielern in Echtzeit vorteilhaft immersiver gestaltet werden.
  • Zum Beispiel erhält Client 2 (230) während einer Instanz oder Session eines Spiels von einem gekoppelten HDM oder einem Gamecontroller Positionsinformationen bezüglich Spieler 2 und empfängt ein Audiosignal, das von einem Mikrofon wie abgebildet aufgenommen wurde. Audiosignal und die Positionsinformationen (oder deren vereinfachte Aktualisierung), die sich auf Client 2 (230) beziehen, werden über ein Paket an den Server 210 übertragen. Mit dem bereitgestellten Eingangspaket wendet die GA-Verarbeitungspipeline 250 im Server 210 eine GA-Simulation an, um die neuen Positionen in Bezug auf alle Clients in der VR-Umgebung zu bestimmen (z.B. die Subjekte oder Objekte, die von den jeweiligen Clients gesteuert werden oder diese repräsentieren) und sendet eine autoritative Version dieser Positionen an alle Clients. Die über das Mikrofon erfassten Daten werden auch über das Netzwerk an alle anderen Spieler übertragen.
  • Sobald Client 1 (220) die autoritative Version der Positionsinformationen und die vom Client 2 (230) stammenden Mikrofondaten erhält, erzeugt die Audio Engine 240 im Client 1 (220) mit Hilfe des IR-Generierungsmoduls 241 eine IR für einen Tonkanal. Das Modul 241 nutzt eine Schallausbreitungssimulation und eine dynamische HRTF-basierte Hörer-Richtcharakteristik und berücksichtigt die neuen Positionen der relevanten Objekte für den Tonkanal, wie sie vom Server bereitgestellt werden, sowie alle neuen Positionsinformationen, die sich auf den Spieler 1 beziehen und lokal am Client 1 verfügbar sind. Zum Beispiel kann der Tonkanal einen Schallquellen-Charakter umfassen, der eine Stimme in das vom Mikrofon erfasste Audiosignal von Spieler 2 einbringt, und einen Schallempfänger-Charakter, der von Spieler 1 gesteuert wird, sowie beliebige andere relevante Objekte, die die Schallausbreitung zum Schallempfänger gemäß dem GA-Modell beeinflussen. Die Positionen dieser Objekte in der virtuellen Szene und die Ausrichtung des Schallempfängers relativ zur Schallquelle sind für die Schallausbreitungssimulation und die Hörer-Richtcharakteristik von Bedeutung und daher für die IR-Erzeugung relevant.
  • Das IR-Faltungsmodul 242 in der Client-Audio-Engine 240 faltet die generierte IR mit den vom Mikrofon aufgenommenen Audiodaten von Spieler 2, um daraus resultierende Audio-Frames zu generieren, die über einen oder mehrere Lautsprecher, die mit Client 1 verbunden sind, gerendert werden können. So wie es von Spieler 1 wahrgenommen wird, werden geometrisch-akustische Effekte auf die Stimme von Spieler 2 angewendet und in die VR-Umgebung immersiv eingebracht. Durch das Hören der Stimme kann Spieler 1 beispielsweise feststellen, ob sich der von Spieler 2 gesteuerte Schallquellen-Charakter nähert oder entfernt, seine (ungefähre) Richtung und Entfernung, und ob er sich in einem offenen Raum oder teilweise oder ganz eingeschlossen (z.B. in einem Tunnel) befindet, usw. In einigen Ausführungsbeispiele kann eine Audio-Engine im Client 2 ein ähnliches GA-Verfahren anwenden, einschließlich IR-Generierung und IR-Faltung, so dass das Audiosignal von Spieler 2 mit zusätzlichen geometrisch-akustischen Effekten und korrekten positionalen Hinweisen an einem Audio-Rendering-Gerät, das mit Client 2 verbunden ist, gerendert wird. Auf diese Weise kann Spieler 2 auch seine eigene Stimme mit einem verbesserten VR-Erlebnis hören.
  • 3 illustriert die Datenflüsse in einem weiteren exemplarischen VR-System 300, das konfiguriert ist, um immersive VR-Effekte zu durch Mikrofone aufgenommene Audiosignale hinzuzufügen, wobei eine GA-Simulation auf einem Server angewendet wird, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung. Das VR-System 300 umfasst einen Server 310, der konfiguriert ist, um Audio- und Videoframes einer VR-Anwendung über ein oder mehrere Netzwerke in einer Multiplayer-VR-Anwendung an Client 1 (320) und Client 2 (330) zu streamen. Client 1 (320) und Client 2 (330) sind jeweils mit Spieler 1 und Spieler 2 verbunden.
  • Zum Beispiel empfängt Client 2 (330) während des Spiels von einem gekoppelten HDM oder Game-Controller Positionsinformationen, die sich auf Spieler 2 beziehen, und empfängt ein Audiosignal, das von einem Mikrofon aufgenommen wurde, z.B. die verbale Kommunikation von Spieler 2. Das vom Mikrofon aufgenommene Audiosignal und die Positionsinformationen (oder deren vereinfachte Aktualisierung) in Bezug auf Client 2 (330) und die Positionsinformationen in Bezug auf Spieler 1 werden an den Server 310 übertragen, z. B. in Paketen.
  • Beim Empfang des Eingangspakets führt die GA-Pipeline 350 im Server 310 eine GA-Simulation durch, um die neuen Positionen in Bezug auf alle Clients in der VR-Umgebung zu bestimmen, z.B. die neuen Positionen der verschiedenen Subjekte oder Objekte, die von den jeweiligen Clients gesteuert werden oder diese repräsentieren. Das IR-Generierungsmodul 352 erzeugt eine IR eines Tonkanals für den Client 1 (320) unter Verwendung einer Schallausbreitungssimulation und einer dynamischen HRTF-basierten Hörer-Richtcharakteristik und berücksichtigt dabei die neuen Positionen der relevanten Objekte im Tonkanal, oder anderer geeigneter Verfahren. Zum Beispiel kann der Tonkanal einen Schallquellen-Charakter umfassen, der eine Stimme für den vom Mikrofon aufgenommenen Schall von Spieler 2 erzeugt, und einen Schallempfänger-Charakter, der von Spieler 1 gesteuert wird, sowie ein beliebiges anderes relevantes Objekt, das die Schallausbreitung zum Schallempfänger gemäß dem GA-Modell beeinflusst.
  • Das IR-Faltungsmodul 352 faltet die erzeugte IR mit dem vom Mikrofon aufgenommenen Audiosignal von Spieler 2 und erzeugt daraus Audio-Frames für die Übertragung an die Clients, einschließlich Client 1 (320) und Client 2 (330). Client 1 (320) rendert diese Frames über den oder die mit Client 1 (320) verbundenen Lautsprecher 331. Als Ergebnis wird die Stimme von Spieler 2 in die VR-Umgebung eingebracht, wie sie von Spieler 1 wahrgenommen wird.
  • Der Server kann auch eine weitere IR für den von Client 2 gesteuerten Charakter erzeugen, der sowohl als Schallquelle als auch als Schallhörer fungiert. Die IR wird dann mit dem Mikrofon-Audiosignal von Client 2 gefaltet, um Audio-Frames für das Rendern an den mit Client 2 verbundenen Lautsprechern zu erzeugen (330) (nicht abgebildet). Auf diese Weise kann Spieler 2 seine eigene Stimme mit einem verbesserten VR-Erlebnis hören.
  • 4 ist ein Flussdiagramm, das ein exemplarisches computerimplementiertes Verfahren 400 zur Hinzufügung eines immersiven VR-Effekts zu mit Mikrofon aufgenommenen Audiodaten darstellt, gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung. Der das Verfahren 400 kann von einem Client (in diesem Beispiel ein erstes Client-Gerät) oder einem Server (in diesem Beispiel gekoppelt an ein erstes und ein zweites Client-Gerät) oder von einem beliebigen anderen geeigneten Gerät durchgeführt werden, wie mit Bezug auf die näher beschrieben.
  • Bei 401 werden die ersten Audiodaten, die vom Mikrofon aufgenommenen Schall repräsentieren, empfangen, wobei das Mikrofon mit dem zweiten Client-Gerät gekoppelt ist. Bei 402 werden die Standortinformationen eines ersten Objekts in der virtuellen Umgebung empfangen, wobei das erste Objekt durch das zweite Client-Gerät gesteuert wird. Bei 403 wird eine IR für einen Tonkanal in der virtuellen Umgebung erzeugt. Der Tonkanal enthält das erste Objekt als Schallquelle und ein zweites Objekt als Schallempfänger, das vom ersten Client-Gerät gesteuert wird. Bei 404 wird die IR mit den ersten Audiodaten gefaltet, um daraus resultierende Audio-Frames zu erzeugen. Die Schritte 403 und 404 können lokal am ersten Client-Gerät durchgeführt werden, wie mit Bezug auf 2 näher beschrieben. Alternativ können die Schritte 403 und 404 auch vom Server durchgeführt werden. In diesem Fall werden die resultierenden Audio-Frames vom Server zum ersten Client-Gerät übertragen. In beiden Fällen werden bei 405 die resultierenden Audio-Frames für die Wiedergabe durch ein Audio-Rendering-Gerät gerendert, das an das erste Client-Gerät gekoppelt ist.
  • 5 ist ein Blockdiagramm, das ein exemplarisches Rechengerät 500 zeigt, das VR-immersive Audio-Frames für das Rendering aus mit Mikrofonen aufgenommenen Audiodaten erzeugen kann, gemäß Ausführungsbeispielen der vorliegenden Offenbarung. Das Gerät 500 kann ein allgemeiner Computer sein, der als Server oder als Client in einem VR-Spiele-Streaming-System konfiguriert ist. Das Gerät 500 besteht aus einem Prozessor 501, einem Systemspeicher 502, einer GPU 503, E/A-Schnittstellen 504 und Netzwerkschaltungen 505, einem Betriebssystem 506 und einer Anwendungssoftware 507 (einschließlich z.B. eines VR-Anwendungsprogramms 508 und eines GA-Verarbeitungsprogramms 509 mit einem IR-Modul 510 zur IR-Generierung und Faltung), die im Speicher 502 gespeichert sind. Das Gerät kann mit Peripheriegeräten wie HDM, Game-Controller, Lautsprecher und/oder Kopfhörer gekoppelt werden. Das Gerät kann auch über ein Kommunikationsnetz mit einem oder mehreren entfernten Computergeräten gekoppelt werden, z.B. einem Servergerät und/oder Clientgeräten.
  • Beim Empfang der Eingabe einschließlich der vom Mikrofon aufgenommenen Daten und der zugehörigen Positionsinformationen (z.B. wie von einem entfernten gekoppelten Client oder Server bereitgestellt) und von der CPU 501 ausgeführt, kann das GA-Verarbeitungsprogramm 509 eine GA-Simulation durchführen, um eine IR zu erzeugen und die IR mit den Daten zu falten, um Audio-Frames für die Wiedergabe an einem Audio-Rendering-Gerät zu erzeugen. Die IR ist charakteristisch für einen Tonkanal in der VR-Umgebung, einschließlich eines Schallquellenobjekts, das eine Stimme in dem vom Mikrofon aufgenommenen Schall bereitstellt, und eines Schallhörers davon. Das VR-Anwendungsprogramm 508 und das GA-Bearbeitungsprogramm 509 können verschiedene andere Funktionen ausführen, die auf dem Fachgebiet bekannt sind und die in Bezug auf die 1-4 im Detail erläutert werden.
  • Es ist zu beachten, dass das GA-Verarbeitungsprogramm und das IR-Modul 510 in 5 in einer oder mehreren geeigneten Programmiersprachen implementiert werden können, die einem Fachmann bekannt sind, wie z.B. C, C++, Java, Python, Perl, C#, SQL, etc.
  • Die vorstehenden Beschreibungen bestimmter Ausführungsbeispiele der vorliegenden Erfindung wurden zur Veranschaulichung und Beschreibung vorgelegt. Sie sollen weder erschöpfend sein noch die Erfindung auf die genau offengelegten Formen beschränken, und viele Änderungen und Variationen sind im Lichte der obigen Lehre möglich. Die Ausführungsbeispiele wurden ausgewählt und beschrieben, um die Prinzipien der Erfindung und ihre praktische Anwendung am besten zu erklären, um dadurch anderen Fachleuten die Möglichkeit zu geben, die Erfindung und die verschiedenen Ausführungsbeispiele mit verschiedenen Modifikationen, die für die beabsichtigte besondere Verwendung geeignet sind, bestmöglich zu nutzen. Der Umfang der Erfindung soll durch die beigefügten Ansprüche und deren Äquivalente definiert werden.

Claims (20)

  1. Computerimplementiertes Verfahren zur Wiedergabe von Audiosignalen, die mit einem Virtual-Reality-Anwendungsprogramm assoziiert sind, wobei das Verfahren umfasst: Empfangen, während einer Ausführung des Virtual-Reality-Anwendungsprogramms, von ersten Audiodaten, die über ein Kommunikationsnetzwerk übertragen wurden und ein erstes Audiosignal repräsentieren, das an einem ersten Mikrofon aufgenommen wurde; Anwenden eines geometrisch-akustischen Modells, das eine virtuelle Umgebung repräsentiert, auf die ersten Audiodaten, um resultierende Audiodaten zu erzeugen, wobei das Anwenden umfasst: Generieren einer Impulsantwort basierend auf dem geometrischen Modell und einer Position eines ersten Objekts in der virtuellen Umgebung; und Falten der Impulsantwort mit den ersten Audiodaten; und Übertragen der resultierenden Audiodaten an ein Audio-Wiedergabegerät.
  2. Computerimplementiertes Verfahren nach Anspruch 1, wobei während der Ausführung des Virtual-Reality-Anwendungsprogramms das erste Mikrofon kommunikativ mit einem ersten Client-Gerät gekoppelt ist; das Audio-Wiedergabegerät kommunikativ mit einem zweiten Client-Gerät gekoppelt ist; das erste Objekt von einem ersten Benutzer des ersten Client-Gerätes gesteuert wird und als ein Schallquellenobjekt der resultierenden Audiodaten konfiguriert ist; und das erste Client-Gerät und das zweite Client-Gerät über das Kommunikationsnetzwerk kommunikativ an ein Server-Gerät gekoppelt sind.
  3. Computerimplementiertes Verfahren nach Anspruch 1 oder 2, wobei das Virtual-Reality-Anwendungsprogramm ein Multiplayer-Spiel umfasst, das auf einer Vielzahl von Client-Geräten ausgeführt wird, die das erste und das zweite Client-Gerät umfassen.
  4. Computerimplementiertes Verfahren nach Anspruch 2 oder 3, das weiter ein Empfangen, durch das zweite Client-Gerät, der Position des ersten Objekts in der virtuellen Umgebung, wie sie von dem Server-Gerät bereitgestellt wird, umfasst.
  5. Computerimplementiertes Verfahren nach Anspruch 4, an dem zweiten Client-Gerät weiter umfassend: Empfangen einer aktualisierten Positionsinformation eines Spielers, der mit dem zweiten Client-Gerät assoziiert ist; und Senden eines Standorts eines zweiten Objekts in der virtuellen Umgebung an das Server-Gerät, wobei die aktualisierte Positionsinformation durch eine am Kopf montierte Vorrichtung erfasst wird, wobei das zweite Objekt durch das zweite Client-Gerät gesteuert wird, und wobei das Generieren der Impulsantwort weiter auf der aktualisierten Positionsinformation und dem Standort des zweiten Objekts basiert.
  6. Computerimplementiertes Verfahren nach einem der Ansprüche 2 bis 5, wobei das Generieren der Impulsantwort ein Ausführen eines hörerbasierten Raytracing-Algorithmus umfasst, und wobei weiter das zweite Client-Gerät ein zweites Objekt als Schallhörerobjekt steuert.
  7. Computerimplementiertes Verfahren nach Anspruch 6, wobei das Generieren der Impulsantwort weiter ein Durchführen von Schallausbreitungssimulationen und ein Anwenden einer auf einer dynamischen Head-Related Transfer Function (HRTF) basierenden Hörer-Richtcharakteristik umfasst.
  8. Computerimplementiertes Verfahren nach einem der Ansprüche 2 bis 7, an dem zweiten Client-Gerät weiterhin umfassend: Übertragen von zweiten Audiodaten, die ein zweites Audiosignal repräsentieren, das von einem zweiten Mikrofon aufgenommen wurde, das mit dem zweiten Client-Gerät assoziiert ist, an das Server-Gerät; und weiter Anwenden des geometrisch-akustischen Modells auf die zweiten Audiodaten, um die resultierenden Audiodaten zu generieren, wobei das zweite Mikrofon während der Ausführung des Virtual-Reality-Anwendungsprogramms kommunikativ mit dem zweiten Client-Gerät gekoppelt ist.
  9. Computerimplementiertes Verfahren zum Wiedergeben von Audiodaten während der Ausführung eines Virtual-Reality-Computerspiels, wobei das Verfahren umfasst: Empfangen von ersten Audiodaten, die ein erstes Audiosignal repräsentieren, das an einem ersten, mit einem ersten Computergerät gekoppelten Mikrofon aufgenommen wurde, wobei die ersten Audiodaten von einem zweiten Computergerät empfangen werden; an dem zweiten Computergerät, Anwenden eines geometrisch-akustischen Modells einer virtuellen Umgebung auf die ersten Audiodaten, um resultierende Audiodaten zu erzeugen, wobei das Anwenden umfasst: Generieren einer Impulsantwort basierend auf dem geometrischen Modell und einer Position eines ersten Objekts in der virtuellen Umgebung, wobei das erste Objekt durch das erste Computergerät gesteuert wird; und Falten der Impulsantwort mit den ersten Audiodaten; und Wiedergeben der resultierenden Audiodaten an einer Audiowiedergabe-Vorrichtung, die mit dem zweiten Computergerät gekoppelt ist, wobei das erste Computergerät und das zweite Computergerät von verschiedenen Spielern des Virtual-Reality-Computerspiels gesteuert werden.
  10. Computerimplementiertes Verfahren nach Anspruch 9, weiter umfassend ein Empfangen, durch das zweite Computergerät, des Ortes des ersten Objektes, der von einem Servergerät bereitgestellt wird, das kommunikativ mit dem ersten Computergerät und dem zweiten Computergerät gekoppelt ist.
  11. Computerimplementiertes Verfahren nach Anspruch 9 oder 10, weiter umfassend, an dem zweiten Computergerät: Empfangen einer aktualisierten Positionsinformation eines Spielers, der mit dem zweiten Computergerät verbunden ist; und Bestimmen eines Ortes eines zweiten Objektes in der virtuellen Umgebung basierend auf einer Benutzereingabe in das zweite Computergerät, wobei das Generieren der Impulsantwort weiter auf der aktualisierten Positionsinformation und dem Ort des zweiten Objektes basiert.
  12. Computerimplementiertes Verfahren nach Anspruch 11, wobei das Generieren der Impulsantwort ein Berechnen eines hörerbasierten Raytracing-Algorithmus umfasst, und wobei weiter das zweite Objekt ein Schallempfänger in Bezug auf die resultierenden Audiodaten ist.
  13. Computerimplementiertes Verfahren nach Anspruch 12, wobei das Generieren der Impulsantwort weiter ein Durchführen von Schallausbreitungssimulationen und ein Anwenden einer auf einer dynamischen Head-Related Transfer Function (HRTF) basierenden Hörer-Richtcharakteristik umfasst.
  14. Computerimplementiertes Verfahren nach einem der Ansprüche 9 bis 13, weiter an dem zweiten Computergerät umfassend: Generieren zweiter Audiodaten, die ein zweites Audiosignal repräsentieren, das von einem zweiten Mikrofon aufgenommen wurde, das während der Ausführung des Virtual-Reality-Anwendungsprogramms mit dem zweiten Computergerät gekoppelt ist; und weiter Anwenden des geometrisch-akustischen Modells auf die zweiten Audiodaten, um die resultierenden Audiodaten zu generieren.
  15. Ein Gerät, umfassend: einen Prozessor; eine oder mehrere Netzwerkschaltungen; und einen Speicher, der mit dem Prozessor gekoppelt ist und Befehle speichert, die, wenn sie von dem Prozessor ausgeführt werden, den Prozessor veranlassen, ein Verfahren auszuführen, das folgende Schritte umfasst: Empfangen erster Audiodaten, die über ein Netzwerk übertragen wurden und ein erstes Audiosignal darstellen, das an einem ersten Mikrofon aufgenommen wurde; Anwenden eines geometrisch-akustischen Modells einer virtuellen Umgebung auf die ersten Audiodaten, um resultierende Audiodaten zu erzeugen, wobei das Anwenden umfasst: Generieren einer Impulsantwort basierend auf dem geometrischen Modell und einer Position eines ersten Objekts in der virtuellen Umgebung; und Falten der Impulsantwort mit den ersten Audiodaten; und Wiedergabe der resultierenden Audiodaten an einer Audiowiedergabe-Vorrichtung, die mit dem Gerät gekoppelt ist.
  16. Gerät nach Anspruch 15, wobei während der Ausführung des Virtual-Reality-Anwendungsprogramms: das erste Mikrofon kommunikativ mit einem ersten Client-Gerät gekoppelt ist; das erste Objekt durch das erste Client-Gerät gesteuert wird und eine Schallquelle für die resultierenden Audiodaten ist; und das erste Client-Gerät und das Gerät als Clients konfiguriert sind, die über das Kommunikationsnetzwerk kommunikativ an einen Server gekoppelt sind.
  17. Gerät nach Anspruch 16, wobei das Verfahren weiter ein Empfangen der Position des ersten Objekts, das von dem Server bereitgestellt wird, umfasst.
  18. Gerät nach Anspruch 17, wobei das Verfahren weiter umfasst: Empfangen einer aktualisierten Positionsinformation eines Spielers, der mit dem zweiten Client-Gerät assoziiert ist; und Senden einer Position eines zweiten Objekts in der virtuellen Umgebung an den Server, wobei die aktualisierte Positionsinformation durch eine am Kopf montierte Vorrichtung erfasst wird, wobei das zweite Objekt durch das Gerät gesteuert wird, und wobei weiter das Generieren der Impulsantwort auf der aktualisierten Positionsinformation und der Position des zweiten Objekts basiert.
  19. Gerät nach einem der Ansprüche 16 bis 18, wobei das Generieren der Impulsantwort ein Berechnen eines hörerbasierten Raytracing-Algorithmus und einer auf einer dynamischen Head-Related-Transfer-Function (HRTF) basierenden Hörer-Richtcharakteristik umfasst, und wobei das Gerät weiter ein zweites Objekt als einen Schallempfänger in der virtuellen Umgebung steuert.
  20. Gerät nach einem der Ansprüche 16 bis 19, wobei das Verfahren weiter umfasst, Übertragen von zweiten Audiodaten, die ein zweites Audiosignal repräsentieren, das von einem zweiten, dem Gerät zugeordneten Mikrofon aufgenommen wurde, an den Server; und weiter Anwenden des geometrisch-akustischen Modells auf die zweiten Audiodaten, um die resultierenden Audiodaten zu erzeugen, wobei das zweite Mikrofon während der Ausführung des Virtual-Reality-Anwendungsprogramms kommunikativ mit dem Gerät gekoppelt ist.
DE102019129896.2A 2018-11-07 2019-11-06 Anwendung geometrischer akustik für immersive virtuelle realität (vr) Active DE102019129896B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/183,396 2018-11-07
US16/183,396 US10705790B2 (en) 2018-11-07 2018-11-07 Application of geometric acoustics for immersive virtual reality (VR)

Publications (2)

Publication Number Publication Date
DE102019129896A1 true DE102019129896A1 (de) 2020-05-07
DE102019129896B4 DE102019129896B4 (de) 2023-03-02

Family

ID=70460065

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019129896.2A Active DE102019129896B4 (de) 2018-11-07 2019-11-06 Anwendung geometrischer akustik für immersive virtuelle realität (vr)

Country Status (3)

Country Link
US (2) US10705790B2 (de)
CN (1) CN111158459A (de)
DE (1) DE102019129896B4 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2605885B (en) * 2017-02-15 2023-03-15 Google Llc Generating deeplinks for applications based on multi-level referrer data
US10871939B2 (en) * 2018-11-07 2020-12-22 Nvidia Corporation Method and system for immersive virtual reality (VR) streaming with reduced audio latency
EP3712788A1 (de) * 2019-03-19 2020-09-23 Koninklijke Philips N.V. Audiovorrichtung und verfahren dafür
US10757528B1 (en) * 2019-10-11 2020-08-25 Verizon Patent And Licensing Inc. Methods and systems for simulating spatially-varying acoustics of an extended reality world
CN112604285A (zh) * 2020-12-18 2021-04-06 上海影创信息科技有限公司 声音来源虚拟化的方法和系统
CN112882568A (zh) * 2021-01-27 2021-06-01 深圳市慧鲤科技有限公司 音频播放方法及装置、电子设备和存储介质
CN114143700B (zh) * 2021-12-01 2023-01-10 腾讯科技(深圳)有限公司 一种音频处理方法、装置、设备、介质及程序产品
GB2614567A (en) * 2022-01-07 2023-07-12 Sony Interactive Entertainment Europe Ltd 3D spatialisation of voice chat
US20230236792A1 (en) * 2022-01-27 2023-07-27 Meta Platforms Technologies, Llc Audio configuration switching in virtual reality
WO2023202551A1 (zh) * 2022-04-19 2023-10-26 北京字跳网络技术有限公司 声透射方法、装置和非易失性计算机可读存储介质
CN116048241A (zh) * 2022-06-14 2023-05-02 荣耀终端有限公司 一种提示方法、扩展现实设备及介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI116505B (fi) * 1998-03-23 2005-11-30 Nokia Corp Menetelmä ja järjestelmä suunnatun äänen käsittelemiseksi akustisessa virtuaaliympäristössä
US7876903B2 (en) * 2006-07-07 2011-01-25 Harris Corporation Method and apparatus for creating a multi-dimensional communication space for use in a binaural audio system
US8908875B2 (en) * 2012-02-02 2014-12-09 King's College London Electronic device with digital reverberator and method
GB2543276A (en) * 2015-10-12 2017-04-19 Nokia Technologies Oy Distributed audio capture and mixing
CN106919248A (zh) * 2015-12-26 2017-07-04 华为技术有限公司 应用于虚拟现实的内容传输方法以及设备
US10805757B2 (en) * 2015-12-31 2020-10-13 Creative Technology Ltd Method for generating a customized/personalized head related transfer function
KR102642275B1 (ko) * 2016-02-02 2024-02-28 디티에스, 인코포레이티드 증강 현실 헤드폰 환경 렌더링
CN106331977B (zh) * 2016-08-22 2018-06-12 北京时代拓灵科技有限公司 一种网络k歌的虚拟现实全景声处理方法
EP3530007A1 (de) * 2016-10-19 2019-08-28 Audible Reality Inc. System und verfahren zur erzeugung eines audiobilds
US10133544B2 (en) * 2017-03-02 2018-11-20 Starkey Hearing Technologies Hearing device incorporating user interactive auditory display

Also Published As

Publication number Publication date
US10705790B2 (en) 2020-07-07
US20200293273A1 (en) 2020-09-17
DE102019129896B4 (de) 2023-03-02
US11809773B2 (en) 2023-11-07
US20200142665A1 (en) 2020-05-07
CN111158459A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
DE102019129896B4 (de) Anwendung geometrischer akustik für immersive virtuelle realität (vr)
US10911882B2 (en) Methods and systems for generating spatialized audio
WO2018196469A1 (zh) 声场的音频数据的处理方法及装置
EP3149969B1 (de) Ermittlung und nutzung hörraumoptimierter übertragungsfunktionen
US11109177B2 (en) Methods and systems for simulating acoustics of an extended reality world
DE102012017296B4 (de) Erzeugung von Mehrkanalton aus Stereo-Audiosignalen
DE102013218176A1 (de) Vorrichtung und verfahren zur dekorrelation von lautsprechersignalen
CN109729109A (zh) 语音的传输方法和装置、存储介质、电子装置
DE102021103210A1 (de) Surround-Sound-Wiedergabe basierend auf Raumakustik
DE19911507A1 (de) Verfahren zur Verbesserung dreidimensionaler Klangwiedergabe
DE112021003592T5 (de) Informationsverarbeitungsvorrichtung, Ausgabesteuerverfahren und Programm
DE102019128856A1 (de) Verfahren und system für immersives virtual reality (vr) streaming mit reduzierter audiolatenz
EP3314915A1 (de) Verfahren zur schallwiedergabe in reflexionsumgebungen, insbesondere in hörräumen
Thery et al. Impact of the visual rendering system on subjective auralization assessment in VR
DE102010060940A1 (de) Erzeugung eines dreidimensionalen Klangeindrucks
EP3267621B1 (de) Verfahren zur erzeugung eines an einen realen endpunkt zu übermittelnden gesamtraumklangs, verwendung des verfahrens sowie telekonferenzsystem
EP3038319B1 (de) Kommunikationssystem für eine interaktive avatar-kommunikation
DE102016115449B4 (de) Verfahren zur Erzeugung eines Raumklangs aus einem Audiosignal, Verwendung des Verfahrens sowie Computerprogrammprodukt
DE102022000776A1 (de) Virtuelle akustische Zuschauerkulisse
CN115766950A (zh) 语音会议创建方法、语音会议方法、装置、设备及介质
Urbanietz Advances in binaural technology for dynamic virtual environments
DE102023116593A1 (de) System und verfahren zur bereitstellung eines überblendeten audioerlebnisses während des übergangs zwischen umgebungen
Rees-Jones The Impact of Multichannel Game Audio on the Quality of Player Experience and In-game Performance
CN117409804A (zh) 音频信息的处理方法、介质、服务器、客户端及系统
DE102013100289A1 (de) Verfahren zur Simulation einer virtuellen Umgebung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final