DE112013002838T5 - Abstimmen der Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands - Google Patents

Abstimmen der Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands Download PDF

Info

Publication number
DE112013002838T5
DE112013002838T5 DE112013002838.7T DE112013002838T DE112013002838T5 DE 112013002838 T5 DE112013002838 T5 DE 112013002838T5 DE 112013002838 T DE112013002838 T DE 112013002838T DE 112013002838 T5 DE112013002838 T5 DE 112013002838T5
Authority
DE
Germany
Prior art keywords
audio
application
mode
directional characteristic
computer
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
DE112013002838.7T
Other languages
English (en)
Other versions
DE112013002838B4 (de
Inventor
Aram Mcleod Lindahl
Ronald Isaac
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.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of DE112013002838T5 publication Critical patent/DE112013002838T5/de
Application granted granted Critical
Publication of DE112013002838B4 publication Critical patent/DE112013002838B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L2021/02161Number of inputs available containing the signal or the noise to be suppressed
    • G10L2021/02166Microphone arrays; Beamforming

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

Audio-Beamforming ist eine Technik, bei der von zwei oder mehreren Mikrofonen empfangene Töne kombiniert werden, um einen Ton von Hintergrundgeräuschen zu trennen. Es gibt verschiedene räumliche Audio-Beamforming-Charakteristiken. Die Charakteristiken können fix oder über die Zeit adaptiv sein und sich sogar je nach Frequenz unterscheiden. Die verschiedenen Charakteristiken können bei verschiedenen Geräuscharten unterschiedlich erfolgreich sein. Zur Verbesserung der Leistung beim Audio- Beamforming kann ein System auf der Grundlage einer erkannten laufenden Anwendung und/oder von Geräteeinstellungen eine Modus-Richtcharakteristik auswählen. Das System kann die Modus-Richtcharakteristik zum Konfigurieren eines Audio-Beamforming- Algorithmus benutzen. Der konfigurierte Audio-Beamforming-Algorithmus kann zum Erzeugen der verarbeiteten Audiodaten aus mehreren Audiosignalen verwendet werden. Das System kann die verarbeiteten Audiodaten dann zu der laufenden Anwendung senden.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung beansprucht die Priorität der am 8. Juni 2012 eingereichten vorläufigen US-Patentanmeldung Nr. 61/657,624 mit dem Titel „ADJUSTING AUDIO BEAMFORMING SETTINGS BASED ON SYSTEM STATE“, die durch diesen Verweis als hier komplett mit aufgenommen gilt.
  • ALLGEMEINER STAND DER TECHNIK
  • 1. Technisches Gebiet
  • Die vorliegende Offenbarung betrifft das Audio-Beamforming und insbesondere das Abstimmen von Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands.
  • 2. Einleitung
  • Viele Anwendungen, die auf Computergeräten laufen, umfassen Funktionen, für die Audioeingaben erforderlich sind. Unter typischen Umgebungsbedingungen kann ein einzelnes Mikrofon den interessierenden Ton leider aufgrund verschiedener vorhandener Hintergrundgeräusche möglicherweise nur schlecht erfassen. Aus diesem Grund nutzen viele Computergeräte meist Techniken zur Reduzierung, Unterdrückung und/oder Kompensation von Störgeräuschen. Eine häufig benutzte Technik zum Verbessern des Signal-Rausch-Verhältnisses ist das Audio-Beamforming.
  • Bei Audio-Beamforming handelt es sich um eine Technik, bei der von zwei oder mehreren Mikrofonen empfangene Töne so kombiniert werden, dass aus bestimmten Richtungen kommender Ton bevorzugt erfasst werden kann. Ein Computergerät, das Audio- Beamforming benutzt, kann ein mit einem Prozessor verbundenes Array aus zwei oder mehreren nahe beieinander liegenden Kugelmikrofonen aufweisen. Der Prozessor kann dann die von den verschiedenen Mikrofonen erfassten Signale so kombinieren, dass ein einziges Ausgangssignal entsteht und ein Ton von Hintergrundgeräuschen getrennt wird. Bei der strahlformenden Signalverarbeitung durch Summieren verzögerter Signale (Delay- Sum-Beamforming) beispielsweise empfängt jedes Mikrofon unabhängig das Tonsignal, und die empfangenen Tonsignale werden zum Bestimmen des Tonrichtungswinkels summiert. Die maximale Ausgangsamplitude wird erreicht, wenn das Signal aus einer senkrecht zum Array liegenden Quelle stammt. Das heißt, wenn die Tonquelle senkrecht zum Array liegt, kommen alle Signale zur gleichen Zeit an und korrelieren somit stark. Wenn jedoch die Tonquelle nicht senkrecht zum Array liegt, kommen die Signale zu unterschiedlichen Zeiten an und korrelieren daher weniger, was zu einer geringeren Ausgangsamplitude führt. Anhand der Ausgangsamplitude verschiedener Töne können Hintergrundgeräusche identifiziert werden, die aus einer anderen Richtung kommen als der Richtung des interessierenden Tons.
  • Es gibt etliche verschiedene Mikrofonformen, und jede Form verfügt über unterschiedliche Möglichkeiten einer Reduzierung von Störgeräuschen. Somit gibt es verschiedene räumliche Audio-Beamforming-Polardiagramme. Die Diagramme können festgelegt (fix) oder über die Zeit anpassungsfähig (adaptiv) sein und sogar je nach Frequenz variieren. Die verschiedenen Diagramme sind bei verschiedenen Geräuscharten jedoch unterschiedlich erfolgreich, was zu suboptimalen Ergebnissen führen kann.
  • KURZDARSTELLUNG
  • Weitere Merkmale und Vorteile der Offenbarung werden in der nachfolgenden Beschreibung dargelegt und ergeben sich teilweise daraus oder können durch Praktizieren der hier offenbarten Prinzipien in Erfahrung gebracht werden. Die Merkmale und Vorteile der Offenbarung lassen sich mit Hilfe der in den angehängten Ansprüchen speziell aufgezeigten Vorrichtungen und Kombinationen realisieren und erzielen. Diese und andere Merkmale der Offenbarung werden anhand der nachfolgenden Beschreibung und der angehängten Ansprüche deutlicher oder können durch Praktizieren der hier erläuterten Prinzipien in Erfahrung gebracht werden.
  • Es werden Systeme, Verfahren und nichtflüchtige computerlesbare Speichermedien zum Konfigurieren von Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands offenbart. Ein Audio-Beamforming-Algorithmus kann eine Anzahl verschiedener Einstellungen aufweisen, einschließlich eines Modus und/oder einer Richtcharakteristik. Zur Verbesserung der Ergebnisse bei der Reduzierung von Störgeräuschen kann ein Audio-Beamforming-Algorithmus auf der Grundlage eines aktuellen Zustands eines Computergeräts konfiguriert werden. Für das Konfigurieren der Audio-Beamforming-Einstellungen kann das Computersystem eine vorgegebene, aktiv laufende Anwendung wie eine Diktieranwendung, eine Spracherkennungsanwendung, eine Audiokommunikationsanwendung, eine Video-Chat-Anwendung, eine Tonaufnahmeanwendung oder eine Musikwiedergabeanwendung erkennen. Außerdem kann das System in manchen Fällen mindestens eine vorgegebene Geräteeinstellung wie die Lüfterdrehzahl, den aktuellen Audioleitweg oder eine Konfiguration von Mikrofon- und Lautsprecheranordnung erkennen.
  • Auf der Grundlage der erkannten Anwendung und/oder Geräteeinstellung kann das System eine Modus-Richtcharakteristik auswählen. Die Modus-Richtcharakteristik kann einen Modus, wie beispielsweise fix oder adaptiv, angeben. Außerdem kann die Modus- Richtcharakteristik eine Richtcharakteristik, wie beispielsweise Kugel, Niere, Hyperniere, breite Niere oder Acht, angeben. Das System kann die Modus-Richtcharakteristik zum Konfigurieren eines Audio-Beamforming-Algorithmus benutzen. Ein Beamformer kann beispielsweise auf der Grundlage der in der Modus-Richtcharakteristik angegebenen Werte einen Modus und/oder eine Richtcharakteristik laden. Nach dem Konfigurieren des Beamforming-Algorithmus kann das System mit Hilfe des Beamforming-Algorithmus von einem Array-Mikrofon empfangene Audiodaten verarbeiten. Das System kann die verarbeiteten Daten zu der laufenden Anwendung senden. Bei manchen Ausführungsformen kann das System vor dem Senden der verarbeiteten Daten zur laufenden Anwendung einen Störgeräuschunterdrückungsalgorithmus anwenden. In manchen Fällen kann der Störgeräuschunterdrückungsalgorithmus auch auf der Grundlage der erkannten laufenden Anwendung und/oder mindestens einer vorgegebenen Geräteeinstellung konfiguriert werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Zur Beschreibung der Art und Weise, auf die sich die oben genannten und andere Vorteile und Merkmale der Offenbarung erzielen lassen, erfolgt eine genauere Beschreibung der oben kurz beschriebenen Prinzipien unter Bezugnahme auf bestimmte Ausführungsformen davon, die in den beigefügten Zeichnungen veranschaulicht sind. Mit dem Verständnis, dass diese Zeichnungen lediglich Ausführungsbeispiele für die Offenbarung darstellen und daher nicht als deren Schutzumfang einschränkend betrachtet werden dürfen, werden diese Prinzipien hier anhand der beiliegenden Zeichnungen spezieller und ausführlicher beschrieben und erläutert, in denen:
  • 1 ein Systemausführungsbeispiel veranschaulicht,
  • 2 ein beispielhaftes Computergerät mit einem Mikrofonarray veranschaulicht,
  • 3 beispielhafte räumliche Polardiagramme veranschaulicht,
  • 4 einen beispielhaften Audio-Beamformer-Konfigurationsvorgang veranschaulicht,
  • 5 vier beispielhafte Darstellungen von Systeminformationen veranschaulicht,
  • 6 ein beispielhaftes Szenario mit einer Mischung aus fixer und adaptiver Richtcharakteristik veranschaulicht und
  • 7 ein Verfahrensausführungsbeispiel.
  • ALLGEMEINER STAND DER TECHNIK
  • Verschiedene Ausführungsformen der Offenbarung werden nachfolgend ausführlich erläutert. Es werden zwar bestimmte Implementierungen erläutert, es versteht sich jedoch, dass dies nur zu Veranschaulichungszwecken geschieht. Fachleute auf dem relevanten Gebiet werden erkennen, dass andere Komponenten und Konfigurationen verwendet werden können, ohne dass vom Gedanken und Schutzumfang der Offenbarung abgewichen würde.
  • Die vorliegende Offenbarung betrifft den Bedarf für eine verbesserte Audiosignalverarbeitung in der Technik zum Isolieren eines Tons von Hintergrundgeräuschen. Mit Hilfe der vorliegenden Technik ist es möglich, Ergebnisse bei der Reduzierung von Störgeräuschen durch Abstimmen eines Audio-Beamforming- Algorithmus auf der Grundlage eines oder mehrerer Attributwerte eines Computergeräts zu verbessern. Diese Offenbarung enthält zunächst eine Erläuterung eines grundlegenden Universalsystems oder -computergeräts aus 1, das zum Praktizieren der hier offenbarten Konzepte eingesetzt werden kann, bevor sie zu einer ausführlicheren Beschreibung des Audio-Beamforming zurückkehrt.
  • Ein beispielhaftes System 100 in 1 weist ein Universalcomputergerät 100 mit einer Verarbeitungseinheit (CPU oder Prozessor) 120 und einem Systembus 110 auf, der verschiedene Systemkomponenten einschließlich des Systemspeichers 130, wie beispielsweise Nurlesespeicher (ROM – Read-Only Memory) 140 und Schreiblesespeicher (RAM – Random Access Memory) 150, mit dem Prozessor 120 verbindet. Das System 100 kann einen Zwischenspeicher 122 aufweisen, der direkt mit dem Prozessor 120 verbunden ist, sich in dessen Nähe befindet oder als Bestandteil in den Prozessor 120 integriert ist. Das System 100 kopiert Daten für den Schnellzugriff durch den Prozessor 120 aus dem Speicher 130 und/oder der Speichervorrichtung 160 in den Zwischenspeicher 122. Auf diese Weise ermöglicht der Zwischenspeicher 122 eine Leistungssteigerung, durch die Verzögerungen im Prozessor 120 beim Warten auf Daten vermieden werden. Diese und andere Module können den Prozessor 120 so steuern, dass er verschiedene Vorgänge ausführt, beziehungsweise so konfiguriert werden, dass sie ihn so steuern. Es kann auch anderer Systemspeicher 130 zur Benutzung verfügbar sein. Der Speicher 130 kann mehrere verschiedene Speichertypen mit unterschiedlichen Leistungsmerkmalen umfassen. Es versteht sich, dass die Offenbarung auf einem Computergerät 100 mit mehr als einem Prozessor 120 oder einer Gruppe beziehungsweise einem Cluster vernetzter Computergeräte zwecks größerer Verarbeitungskapazität laufen kann. Der Prozessor 120 kann einen beliebigen Universalprozessor und ein Hardware- oder Softwaremodul wie das in der Speichervorrichtung 160 gespeicherte Modul 1 162, Modul 2 164 und Modul 3 166 aufweisen, die so konfiguriert sind, dass sie den Prozessor 120 steuern, sowie einen Spezialprozessor, bei dem Softwarebefehle in die eigentliche Prozessorkonstruktion integriert sind. Bei dem Prozessor 120 kann es sich im Wesentlichen um ein völlig eigenständiges Computersystem mit mehreren Kernen oder Prozessoren, einem Bus, Speichersteuerung, Zwischenspeicher usw. handeln. Ein Mehrkernprozessor kann symmetrisch oder asymmetrisch sein.
  • Der Systembus 110 kann von einem beliebigen mehrerer Busstrukturtypen sein, unter anderem ein Speicherbus oder eine Speichersteuerung, ein Peripheriebus und ein lokaler Bus, der beliebige von mehreren Busarchitekturen verwendet. Ein im ROM 140 oder dergleichen gespeichertes BIOS (Basic Input/Output System) kann die grundlegende Routine bereitstellen, mit deren Hilfe Informationen zwischen Elementen in dem Computergerät 100, wie beispielsweise beim Starten, übermittelt werden. Das Computergerät 100 weist ferner Speichervorrichtungen 160 wie ein Festplattenlaufwerk, ein Magnetplattenlaufwerk, ein optisches Laufwerk, ein Bandlaufwerk oder dergleichen auf. Die Speichervorrichtung 160 kann Softwaremodule 162, 164, 166 zum Steuern des Prozessors 120 aufweisen. Andere Hardware- oder Softwaremodule werden in Betracht gezogen. Die Speichervorrichtung 160 ist über eine Laufwerkschnittstelle mit dem Systembus 110 verbunden. Die Laufwerke und die zugehörigen computerlesbaren Speichermedien stellen nichtflüchtigen Speicher für computerlesbare Befehle, Datenstrukturen, Programmmodule und andere Daten für das Computergerät 100 bereit. Unter einem Aspekt enthält ein Hardwaremodul, das eine bestimmte Funktion ausführt, die auf einem nichtflüchtigen computerlesbaren Medium gespeicherte Softwarekomponente in Verbindung mit den zum Ausführen der Funktion erforderlichen Hardwarekomponenten, wie den Prozessor 120, den Bus 110, die Ausgabevorrichtung 170 und so weiter. Die grundlegenden Komponenten sind Fachleuten bekannt, und es werden in Abhängigkeit vom Typ des Geräts, wie beispielsweise ob es sich bei dem Gerät 100 um ein kleines Hand-Computergerät, einen Arbeitsplatzcomputer oder einen Computerserver handelt, entsprechende Variationen in Betracht gezogen.
  • Bei dem hier beschriebenen Ausführungsbeispiel kommt zwar die Festplatte 160 zum Einsatz, für Fachleute versteht sich aber, dass in der beispielhaften Betriebsumgebung auch andere Arten computerlesbarer Medien benutzt werden können, die für einen Computer zugängliche Daten speichern können, wie beispielsweise Magnetkassetten, Flash-Speicherkarten, DVDs, Kassetten, Schreiblesespeicher (RAMs) 150, Nurlesespeicher (ROM) 140, ein Kabel- oder Funksignal mit einem Bitstream und dergleichen. Nichtflüchtige computerlesbare Speichermedien schließen Medien wie Energie, Trägersignale, elektromagnetische Wellen und Signale an sich ausdrücklich aus.
  • Damit es zu einer Benutzerinteraktion mit dem Computergerät 100 kommen kann, repräsentiert eine Eingabevorrichtung 190 eine beliebige Anzahl Eingabemechanismen, wie beispielsweise ein Mikrofon für Sprache, einen berührungsempfindlichen Bildschirm für Gesten oder grafische Eingaben, Tastatur, Maus, Bewegungseingaben, Sprache und so weiter. In manchen Fällen kann es sich bei dem Mikrofon um ein Mikrofonarray handeln. Bei einer Ausgabevorrichtung 170 kann es sich auch um einen oder mehrere einer Anzahl von Ausgabemechanismen handeln, die Fachleuten bekannt sind. In manchen Fällen ermöglichen multimodale Systeme einem Benutzer das Bereitstellen mehrerer Eingabearten für die Kommunikation mit dem Computergerät 100. Die Kommunikationsschnittfläche 180 regelt und verwaltet allgemein die Benutzereingabe und die Systemausgabe. Es gibt keine Einschränkung hinsichtlich des Betriebs auf einer bestimmten Hardwareanordnung, und daher lassen sich die hier genannten Grundmerkmale problemlos durch verbesserte Hardware- oder Firmwareanordnungen ersetzen, wenn diese entwickelt werden.
  • Zur Übersichtlichkeit der Erläuterung wird das Systemausführungsbeispiel mit Hilfe einzelner Funktionsblöcke dargestellt, zu denen Funktionsblöcke gehören, die als ein „Prozessor“ oder Prozessor 120 bezeichnet sind. Die Funktionen, für die diese Blöcke stehen, können durch Verwendung gemeinsam genutzter oder dedizierter Hardware bereitgestellt werden, wozu unter anderem Hardware gehört, die Software ausführen kann, und Hardware wie beispielsweise ein Prozessor 120, die speziell dafür konstruiert ist, als Äquivalent für Software zu fungieren, die auf einem Universalprozessor ausgeführt wird. So können beispielsweise die Funktionen eines oder mehrerer Prozessoren aus 1 von einem einzigen, gemeinsam genutzten Prozessor oder mehreren Prozessoren bereitgestellt werden. (Die Verwendung des Begriffs „Prozessor“ darf nicht so interpretiert werden, dass sie sich ausschließlich auf Hardware bezieht, die Software ausführen kann.) Zu beispielhaften Ausführungsformen können Mikroprozessor- und/oder Digitalsignalprozessor(DSP)-Hardware, Nurlesespeicher (ROM) 140 zum Speichern von Software, die die nachfolgend erläuterten Operationen ausführt, und Schreiblesespeicher (RAM) 150 zum Speichern von Ergebnissen gehören. Es können auch VLSI-Hardwareausführungsformen (Very Large Scale Integration – Größtintegration) sowie maßgeschneiderte VLSI-Schaltkreise in Kombination mit einer Universal-DSP-Schaltung zur Verfügung gestellt werden.
  • Die logischen Operationen der verschiedenen Ausführungsformen werden implementiert als: (1) Abfolge von per Computer implementierten Schritten, Operationen oder Abläufen, die auf einem Universalcomputer in einer programmierbaren Schaltung laufen, (2) Abfolge von per Computer implementierten Schritten, Operationen oder Abläufen, die in einer verwendungsspezifischen programmierbaren Schaltung laufen, und/oder (3) miteinander verbundene Maschinenmodule oder Programm-Engines innerhalb der programmierbaren Schaltungen. Das in 1 gezeigte System 100 kann alle oder einen Teil der genannten Verfahren ausüben, Bestandteil der genannten Systeme sein und/oder entsprechend Befehlen in den genannten nichtflüchtigen, computerlesbaren Speichermedien arbeiten. Solche logischen Operationen können als Module implementiert werden, die so konfiguriert sind, dass sie den Prozessor 120 so steuern, dass er entsprechend der Programmierung des Moduls bestimmte Funktionen ausführt. 1 veranschaulicht beispielsweise drei Module Mod1 162, Mod2 164 und Mod3 166, bei denen es sich um Module handelt, die so konfiguriert sind, dass sie den Prozessor 120 steuern. Diese Module können in der Speichervorrichtung 160 gespeichert sein und zur Laufzeit in den RAM 150 oder den Speicher 130 geladen werden oder, wie in der Technik bekannt, an anderen computerlesbaren Speicherstellen gespeichert sein.
  • Vor dem Offenbaren einer ausführlichen Beschreibung der vorliegenden Technologie erfolgt in der Offenbarung eine kurze einführende Erläuterung dazu, wie ein Audiosignal unter Verwendung von Audio-Beamforming verarbeitet wird. Bei Audio-Beamforming handelt es sich um eine Technik, bei der von zwei oder mehreren Mikrofonen empfangene Töne so kombiniert werden, dass aus bestimmten Richtungen kommender Ton bevorzugt erfasst wird. Ein Computergerät, das Audio-Beamforming benutzt, kann ein mit einem Prozessor verbundenes Array aus zwei oder mehreren Kugelmikrofonen aufweisen. 2 veranschaulicht beispielsweise ein beispielhaftes Computersystem 200 mit einem Array aus zwei Mikrofonen 202 und 204, wie beispielsweise ein Universalcomputergerät wie System 100 aus 1. Anzahl, Abstand und/oder Anordnung der Mikrofone im Mikrofonarray können je nach Konfiguration des Computergeräts variieren. In manchen Fällen kann eine größere Anzahl Mikrofone eine präzisere räumliche Störgeräuschreduzierung ermöglichen. Eine größere Anzahl Mikrofone kann jedoch auch die Verarbeitungskosten erhöhen. In Figur 2 ist zwar ein mobiles Computergerät dargestellt, Audio-Beamforming kann jedoch bei jedem beliebigen Computergerät verwendet werden, das ein Mikrofonarray aufweist, wie beispielsweise bei einem Arbeitsplatzcomputer, einem mobilen Computer, einem Hand- Kommunikationsgerät, z.B. Mobiltelefon, Smartphone, Tablet-Computer, bei intelligentem Fernsehen, einer Set-Top-Box und/oder jedem beliebigen anderen Computergerät, das mit einem Mikrofonarray ausgestattet ist. Darüber hinaus kann ein Mikrofonarray so konfiguriert sein, dass nur eine Teilmenge der Mikrofone aktiv ist. Das heißt, eine Teilmenge der Mikrofone kann zum Beispiel deaktiviert werden, wenn Präzision nicht wichtig ist und die Verarbeitungskosten hoch sind.
  • Wie oben beschrieben wurde, können die Mikrofone ungerichtet sein. Es gibt jedoch etliche verschiedene Mikrofonformen, und jede Form kann je nach Richtung der Störgeräusche über unterschiedliche Möglichkeiten zur Unterdrückung von Störgeräuschen verfügen. Mit Hilfe verschiedener Formen können beispielsweise Störgeräusche reduziert werden, die aus bestimmten Richtungen kommen. Für die wirksame Nutzung der Vorteile verschiedener Mikrofonformen können zum Erzeugen virtueller Mikrofone Polardiagramme oder Richtcharakteristiken auf die Mikrofone angewendet werden. 3 veranschaulicht beispielsweise vier mögliche Polardiagramme: Acht 302, Niere 304, Hyperniere 306 und breite Niere 308. In jedem der Diagramme 302, 304, 306 und 308 stellt der Außenring die Verstärkung in jeder Strahlrichtung für ein Kugelmikrofon dar. Die innenliegende Form stellt die Verstärkung in jeder Richtung dar, wenn die entsprechende Charakteristik angewendet wird. So stellt das Diagramm 302 beispielsweise die Verstärkung bei Anwendung einer Achtercharakteristik dar. Das Diagramm 302 veranschaulicht auch, dass die Achtercharakteristik zum Reduzieren von Störgeräuschen aus 90- und 270-Grad-Richtung benutzt werden kann. Es können auch weitere Richtcharakteristiken benutzt werden. Darüber hinaus kann die angewendete Charakteristik fix oder adaptiv sein. Beim Audio- Beamforming auf der Grundlage einer fixen Charakteristik kann unabhängig von der Frequenz die gleiche Charakteristik angewendet werden. Wenn das Audio-Beamforming jedoch auf einer adaptiven Charakteristik beruht, kann sich diese je nach Richtung der Störgeräusche ändern. In manchen Fällen kann sich die Charakteristik auch auf der Grundlage der Frequenz ändern. Die Charakteristik kann beispielsweise von breiter Niere zu Niere wechseln, wenn sich Richtungen von Störgeräuschen auf den verschiedenen Frequenzen ändern. Bei einem weiteren Beispiel kann die Charakteristik von einer ersten gewichteten Niere zu einer zweiten gewichteten Niere wechseln.
  • Nach Eingang eines Signals von jedem aktiven Mikrofon kann der Prozessor die Signale kombinieren und ein einzelnes Ausgangssignal mit reduzierten Hintergrundgeräuschen erzeugen. In manchen Fällen kann auf die Signale eine adaptive und/oder eine fixe Richtcharakteristik angewendet werden. Darüber hinaus kann eine Anzahl verschiedener Richtcharakteristiken angewendet werden.
  • Nach dem Offenbaren einer einführenden Beschreibung dazu, wie ein Audiosignal unter Verwendung von Audio-Beamforming verarbeitet werden kann, kehrt die Offenbarung nun zu einer Erläuterung der Auswahl von Eigenschaften eines Audio-Beamforming- Algorithmus auf der Grundlage eines oder mehrerer Attributwerte eines Computergeräts zurück. Eine mögliche Einschränkung der Audio-Beamforming-Technologie kann darin bestehen, dass Audio-Beamforming zwar in dem Sinne adaptiv sein kann, dass bei sich verändernder Frequenz andere Richtcharakteristiken angewendet werden können, Audio-Beamforming jedoch keine Schwankungen in der Umgebung des Computergeräts berücksichtigt. Dies kann zu suboptimalen Ergebnissen bei der Reduzierung von Störgeräuschen führen. Das heißt, die Ergebnisse der Reduzierung von gerichteten Störgeräuschen lassen sich durch Integrieren zusätzlicher Rechenumgebungsmerkmale verbessern. So kann beispielsweise das Audio-Beamforming auf der Grundlage anpassungsfähiger Charakteristiken zu Audioergebnissen mit Artefakten führen, die für das menschliche Ohr wahrnehmbar sind, während sich die erzeugten Audiodaten trotzdem gut für die automatische Spracherkennung eignen.
  • Damit diese Einschränkung angegangen wird und bessere Ergebnisse bei der Reduzierung von Störgeräuschen erzielt werden können, lässt sich ein Audio-Beamformer dynamisch so abstimmen, dass er sich an den aktuellen Zustand des Computergeräts anpasst. Der Audio-Beamformer kann so konfiguriert werden, dass er einen adaptiven oder einen fixen Modus und/oder verschiedene vordefinierte Polardiagramme lädt. Diese Konfigurationsoptionen können auf einer aktiven Anwendung und/oder dem Systemzustand beruhen. Wenn zum Beispiel bekannt ist, dass das Eingangssignal von einer Spracherkennungsanwendung verwendet wird, kann der Audio-Beamforming-Algorithmus eine adaptive Charakteristik benutzen. Wenn, wie in einem anderen Beispiel, bekannt ist, dass das Eingangssignal von einer Anwendung verwendet wird, die die Audio- und/oder Videokommunikation zwischen einem oder mehreren Benutzern ermöglicht, kann der Audio- Beamforming-Algorithmus eine fixe Charakteristik benutzen. Darüber hinaus können die bei einem adaptiven beziehungsweise einem fixen Algorithmus angewendeten Charakteristiken auf der Grundlage weiterer Eigenschaften des Systems, wie beispielsweise der Lüfterdrehzahl und/oder des aktuellen Audioleitwegs, z.B. Kopfhörer, eingebaute Lautsprecher usw., ausgewählt werden. Weitere Systemeigenschaften, wie beispielsweise die Anordnung des Lüfters und/oder der Lautsprecher in Bezug zum Mikrofonarray, können ebenfalls wirksam genutzt werden.
  • 4 veranschaulicht einen beispielhaften Audio-Beamformer-Konfigurationsvorgang 400, zu dem es auf einem Computergerät wie dem Computergerät 200 in 2 kommen kann. Auf dem Computergerät 200 können eine oder mehrere Anwendungen laufen, wie beispielsweise eine Diktieranwendung, eine Audiokommunikationsanwendung, eine Video-Chat-Anwendung, eine Tonaufnahmeanwendung, eine Musikwiedergabeanwendung usw. In manchen Fällen kann eine Anwendung aktiv sein, während die anderen Anwendungen im Hintergrund laufen und/oder vorübergehend eingestellt werden. Darüber hinaus kann die aktive oder primäre Anwendung in manchen Fällen Audioeingangsdaten benutzen, die unter Verwendung von Audio-Beamforming verarbeitet werden können.
  • Das Computersystem 200 kann Mikrofonarray-Audiodaten 404 empfangen, die einem Beamformer 402 als Eingabe zugeführt werden können. Als Reaktion darauf, dass das Computersystem 200 Mikrofonarray-Audiodaten 404 empfängt, kann ein Steuermodul 408 in dem Computersystem 200 Systeminformationen 410 bezüglich des Zustands des Computersystems 200 erkennen. In manchen Fällen können die Systeminformationen 410 angeben, welche Anwendung gerade aktiv ist, wie beispielsweise eine Diktieranwendung, z.B. die Anwendung Siri von Apple Inc in Cupertino, CA, eine Audio- und/oder Videokommunikationsanwendung, z.B. die Anwendung FaceTime von Apple Inc, eine Tonaufnahmeanwendung oder eine Musikwiedergabeanwendung. Zusätzlich dazu können die Systeminformationen 410 den weiteren Systemzustand enthalten, wie beispielsweise ob ein Lüfter aktiv ist oder die Drehzahl eines Lüfters.
  • Die Darstellung der Systeminformationen 410 kann je nach Konfiguration des Systems und/oder Informationstyp variieren. Die Systeminformationen 410 können beispielsweise als Tabelle dargestellt sein, die Kategorien von Anwendungsarten und einen Aktivitätsgrad aufführt. Bei dem Aktivitätsgrad kann es sich um einen Binärwert handeln, der angibt, ob eine Anwendung der bestimmten Art aktiv ist. In manchen Fällen kann der Aktivitätsgrad mehrere Zustände aufweisen, wie beispielsweise aktiv, nicht aktiv, Hintergrund, vorübergehend eingestellt usw. Bei einem anderen Beispiel können die Systeminformationen 410 als Tabelle dargestellt sein, die Anwendungskennungen, wie beispielsweise die Namen bestimmter Anwendungen oder eine andere eindeutige Kennung, und einen Aktivitätsgrad aufführt. Auch hier kann der Aktivitätsgrad ein Binärwert sein, oder er kann mehrere mögliche Werte haben. 5 veranschaulicht vier beispielhafte Darstellungen von Systeminformationen 410 speziell für den Status von Anwendungen, die auf dem Computersystem 200 laufen. Es sind auch andere Darstellungen der Systeminformationen 410 möglich, wie beispielsweise eine einzelne Variable für Anwendungsinformationen. Die Variable kann auf eine eindeutige Kennung eingestellt werden, die eine bestimmte Anwendung oder Anwendungsart angibt. Andere Systemzustände können mit Hilfe ähnlicher Techniken dargestellt werden. So kann beispielsweise mit Hilfe eines Binärwerts angegeben werden, dass ein Systemlüfter ein- oder ausgeschaltet ist. Alternativ dazu kann mit Hilfe eines Werts wie einer Ganzzahl die Lüfterdrehzahl angegeben werden.
  • Im Rückgriff auf 4 kann das Steuermodul 408 mit Hilfe der Systeminformationen 410 einen Modus und/oder eine Charakteristik auswählen, der/die im Beamformer 402 zum Verarbeiten der Audiodaten 404 verwendet werden soll. In manchen Fällen kann das Steuermodul 408 Informationen dazu, welche Anwendungsart oder bestimmte Anwendung aktiv ist, zum Auswählen zwischen fixen und adaptiven Modi benutzen. Das Steuermodul 408 kann beispielsweise den fixen Modus auswählen, wenn es sich bei der Anwendungsart um Audiokommunikation handelt. Bei einem anderen Beispiel kann das Steuermodul 408 komplett adaptiv auswählen, wenn es sich bei der Anwendungsart um Spracherkennung handelt. Bei manchen Fällen kann das Steuermodul 408 zusätzlich oder alternativ dazu den weiteren Systemzustand, wie beispielsweise die Lüfterdrehzahl, zur Auswahl eines Modus benutzen.
  • Zusätzlich zum Auswählen eines Modus kann das Steuermodul 408 die Systeminformationen 410 zum wahlweisen Auswählen einer bestimmten Charakteristik oder einer Abfolge von Charakteristiken benutzen. Das Steuermodul 408 kann beispielsweise die Nierencharakteristik auswählen, wenn es sich bei der Anwendungsart um Audiokommunikation handelt. Bei einem anderen Beispiel kann das Steuermodul 408 die Hypernierencharakteristik auswählen, wenn es sich bei der Anwendungsart um Audiokommunikation handelt und das Computersystem eine bestimmte Konfiguration des Mikrofonarrays und der Lautsprecheranordnung aufweist. Bei noch einem weiteren Beispiel kann das Steuermodul 408 die Breite-Niere-Charakteristik auswählen, wenn der Lüfter mit einer höheren als der vorgegebenen Lüfterdrehzahl arbeitet. Die Auswahl zusätzlicher und/oder alternativer Charakteristiken ist ebenfalls möglich.
  • Das Steuermodul 408 kann auch eine Abfolge von Charakteristiken auswählen, die vom Beamformer 402 in einem adaptiven Modus verwendet werden sollen, bei dem es sich um eine Mischung aus fixen und adaptiven Charakteristiken handelt. 6 veranschaulicht ein beispielhaftes Szenario 600 mit einer Mischung aus fixer und adaptiver Richtcharakteristik. Die Richtcharakteristik kann, wie veranschaulicht, zwischen drei Charakteristiken (Kugel, Niere und Acht) variieren, wenn sich die Frequenz des Signals ändert. Bei diesem Beispiel variiert jedes Frequenzband zwischen zwei Charakteristikarten. Eine schräge Linie wie die Linie 602 kann angeben, dass bei steigender Frequenz ein adaptiver Modus benutzt werden kann, bei dem die Charakteristik zwischen zwei Charakteristiken variieren kann. Die Linie 602 gibt beispielsweise an, dass die Charakteristik bei steigender Frequenz von Kugel zu Niere übergeht. Eine nicht schräge Linie, wie beispielsweise Linie 604, kann angeben, dass die Charakteristik bei steigender Frequenz gleich bleiben kann. Die Linie 604 gibt beispielsweise an, dass bei steigender Frequenz die fixe Nierencharakteristik benutzt wird. Die Anzahl der Charakteristiken in der Abfolge für einen Modus mit einer Mischung aus fixen und adaptiven Charakteristiken kann je nach Konfiguration des Systems variieren und/oder auf den Systeminformationen 410 beruhen. Zusätzlich dazu kann die Geschwindigkeit der Anpassung und/oder der Frequenzbereich, für den eine Charakteristik gleich bleibt, je nach Systemkonfiguration variieren und/oder auf den Systeminformationen 410 beruhen.
  • Im Rückgriff auf 4 kann das Steuermodul 408 in 4 nach der Auswahl auf der Grundlage der Systeminformationen 410 den Modus und/oder die Richtcharakteristik 406 zum Beamformer 402 senden. Der Beamformer 402 kann dann die Audiodaten 404 verarbeiten. Nach dem Verarbeiten der Audiodaten 404 kann der Beamformer 402 wahlweise die verarbeiteten Audiodaten 404 zum einem Störgeräuschunterdrückungsmodul 414 senden. Das Steuermodul 408 kann die Systeminformationen 410 auch zum Erzeugen eines Stärkeprofils für die Unterdrückung von Störgeräuschen 412 benutzen, welches das Steuermodul 408 dem Störgeräuschunterdrückungsmodul 414 zuführen kann. Das Störgeräuschunterdrückungsmodul 414 kann unter Verwendung des Stärkeprofils für die Unterdrückung von Störgeräuschen 412 die empfangenen Audiodaten 404 verarbeiten. Nach Abschluss der Verarbeitung können die verarbeiteten Audiodaten 404 zu der aktiven Anwendung 416 gesendet werden.
  • 7 ist ein Ablaufdiagramm, das ein beispielhaftes Verfahren 700 zum Konfigurieren eines Audio-Beamforming-Algorithmus auf der Grundlage von Systemeinstellungen veranschaulicht. Zur besseren Übersichtlichkeit wird dieses Verfahren im Sinne eines beispielhaften Systems 200 erläutert, wie es in 2 gezeigt ist. In 7 sind zwar bestimmte Schritte gezeigt, bei anderen Ausführungsformen kann ein Verfahren jedoch mehr oder weniger Schritte als gezeigt aufweisen. Die Konfiguration eines Audio- Beamforming-Algorithmus kann beginnen, wenn das System 200 Audiodaten von einem Mikrofonarray (702) erhält. Nach dem Empfangen der Daten kann das System 200 eine erste vorgegebene laufende Anwendung (704) erkennen. In manchen Fällen kann es sich bei der ersten vorgegebenen laufenden Anwendung um eine Diktieranwendung, eine Spracherkennungsanwendung, eine Audiokommunikationsanwendung, eine Video-Chat- Anwendung oder eine Tonaufnahmeanwendung handeln. Bei manchen Ausführungsformen kann das System auch mindestens eine vorgegebene Geräteeinstellung erkennen. Bei der mindestens einen vorgegebenen Geräteeinstellung kann es sich um eine Lüfterdrehzahl, einen aktuellen Audioleitweg und/oder eine Konfiguration von Mikrofon- und Lautsprecheranordnung handeln.
  • Das System 200 kann überprüfen, ob die erste vorgegebene laufende Anwendung und wahlweise die mindestens eine vorgegebene Geräteeinstellung einer Modus-Richtcharakteristik (706) entsprechen. Wenn das System 200 eine entsprechende Modus-Richtcharakteristik identifizieren kann, kann es die identifizierte Modus-Richtcharakteristik (708) auswählen. Die Modus-Richtcharakteristik kann einen Modus, z.B. fix oder adaptiv, und/oder eine Richtcharakteristik, z.B. Kugel, Niere, Hyperniere, breite Niere, Acht usw., angeben. Auf der Grundlage der ausgewählten Modus-Richtcharakteristik kann das System einen Audio-Beamforming-Algorithmus (710) konfigurieren. In manchen Fällen führt das Konfigurieren dazu, dass ein Beamformer einen Modus und/oder eine Richtcharakteristik lädt, der/die in der Modus-Richtcharakteristik angegeben ist. In manchen Fällen kann das System einen solchen Vorgabemodus und/oder eine solche Vorgabecharakteristik aufweisen, dass, wenn in der Modus-Richtcharakteristik kein Modus und/oder keine Charakteristik angegeben oder keine entsprechende Modus-Richtcharakteristik zu finden ist, zum Konfigurieren des Audio-Beamforming-Algorithmus ein oder mehrere Vorgabewerte verwendet werden können. Wenn das System 200 keine entsprechende Modus-Richtcharakteristik identifizieren kann, kann es zum Verarbeiten der Audiodaten übergehen, ohne Konfigurationsabstimmungen am Audio-Beamforming-Algorithmus vorzunehmen. Alternativ dazu kann das System 200 den Audio-Beamforming-Algorithmus unter Verwendung von Vorgabewerten konfigurieren.
  • Nach dem Konfigurieren des Audio-Beamforming-Algorithmus kann das System die Audiodaten mit Hilfe des konfigurierten Beamforming-Algorithmus verarbeiten. Darüber hinaus kann das System die verarbeiteten Daten zu der ersten vorgegebenen laufenden Anwendung (712) senden. Bei manchen Ausführungsformen kann das System vor dem Senden der verarbeiteten Audiodaten zur ersten vorgegebenen laufenden Anwendung einen Störgeräuschunterdrückungsalgorithmus auf die verarbeiteten Audiodaten anwenden. Zusätzlich dazu kann das System die erste vorgegebene laufende Anwendung und/oder die mindestens eine vorgegebene Geräteeinstellung zum Erzeugen eines Stärkeprofils für die Unterdrückung von Störgeräuschen benutzen. Das System kann das Stärkeprofil für die Unterdrückung von Störgeräuschen im Störgeräuschunterdrückungsalgorithmus verwenden. In manchen Fällen kann es sich bei dem Stärkeprofil für die Unterdrückung von Störgeräuschen um Grundrauschen handeln. Nach Abschluss von Schritt 712 kann das System 200 die bisherige Verarbeitung wieder aufnehmen, wozu das Wiederholen des Verfahrens 600 gehören kann.
  • In den Schutzumfang der vorliegenden Offenbarung fallende Ausführungsformen können auch materielle und/oder nichtflüchtige computerlesbare Speichermedien umfassen, die per Computer ausführbare Befehle oder Datenstrukturen enthalten können oder auf denen diese gespeichert sind. Bei derartigen nichtflüchtigen, computerlesbaren Speichermedien kann es sich um beliebige verfügbare Medien handeln, auf die ein Universal- oder Spezialcomputer, einschließlich der oben erläuterten funktionellen Gestaltung eines beliebigen Spezialprozessors, zugreifen kann. Zu solchen nichtflüchtigen Speichermedien können unter anderem beispielsweise RAM, ROM, EEPROM, CD-ROM oder andere optische Platten-, Magnetplatten- oder andere magnetische Speichervorrichtungen oder andere beliebige Medien gehören, die gewünschte Programmcodemittel in Form von per Computer ausführbaren Befehlen, Datenstrukturen oder Prozessorchipentwurf enthalten oder speichern können. Wenn Informationen über ein Netzwerk oder eine andere Kommunikationsverbindung (festverdrahtet, drahtlos oder eine Kombination daraus) zu einem Computer übertragen oder für diesen bereitgestellt werden, betrachtet der Computer die Verbindung folgerichtig als computerlesbares Medium. Somit wird eine derartige Verbindung folgerichtig als computerlesbares Medium bezeichnet. Kombinationen des oben Genannten müssen auch in den Schutzumfang für die computerlesbaren Medien gehören.
  • Zu per Computer ausführbaren Befehlen gehören beispielsweise Befehle und Daten, die einen Universalcomputer, Spezialcomputer oder ein spezielles Verarbeitungsgerät dazu veranlassen, eine bestimmte Funktion oder Gruppe von Funktionen auszuführen. Zu per Computer ausführbaren Befehlen gehören auch Programmmodule, die von Computern in eigenständigen oder in Netzwerkumgebungen ausgeführt werden. Zu Programmmodulen gehören allgemein Routinen, Programme, Komponenten, Datenstrukturen, Objekte und die der Konstruktion von Spezialprozessoren usw. inhärenten Funktionen, welche bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Per Computer ausführbare Befehle, zugehörige Datenstrukturen und Programmmodule stellen Beispiele für die Programmcodemittel zum Ausführen von Schritten der hier offenbarten Verfahren dar. Die bestimmte Abfolge solcher ausführbaren Befehle oder zugehörigen Datenstrukturen stellt Beispiele für entsprechende Vorgänge zum Implementieren der Funktionen dar, die in solchen Schritten beschrieben sind.
  • Fachleute werden verstehen, dass andere Ausführungsformen der Offenbarung in vernetzten Rechenumgebungen mit vielen Computersystemkonfigurationstypen praktiziert werden können, einschließlich Personalcomputer, Handgeräte, Multiprozessorsysteme, auf Mikroprozessoren basierende oder programmierbare Unterhaltungselektronik, Netzwerk- PCs, Minicomputer, Großrechner und dergleichen. Ausführungsformen können auch in verteilten Rechenumgebungen praktiziert werden, in denen Aufgaben von lokalen und externen Verarbeitungseinrichtungen ausgeführt werden, die (durch festverdrahtete Verbindungen, drahtlose Verbindungen oder eine Kombination daraus) über ein Kommunikationsnetz verbunden sind. In einer verteilten Rechenumgebung können sich sowohl in lokalen als auch in externen Speichervorrichtungen Programmmodule befinden.
  • Die verschiedenen oben beschriebenen Ausführungsformen dienen nur der Veranschaulichung und sollten nicht so ausgelegt werden, dass sie den Schutzumfang der Offenbarung einschränken. Fachleuten werden ohne weiteres erkennen, dass an den hier beschriebenen Prinzipien ohne Befolgen der hier veranschaulichten und beschriebenen Ausführungsbeispiele und Anwendungen und ohne Abweichung vom Gedanken und Schutzumfang der Offenbarung verschiedene Modifikationen und Änderungen vorgenommen werden können.

Claims (20)

  1. Per Computer implementiertes Verfahren, das Folgendes umfasst: Empfangen mehrerer Audiosignale über ein Mikrofonarray, Erkennen einer ersten vorgegebenen laufenden Anwendung, Konfigurieren eines Audio-Beamforming-Algorithmus auf der Grundlage der erkannten ersten vorgegebenen laufenden Anwendung, und Senden verarbeiteter Audiodaten zu der ersten vorgegebenen laufenden Anwendung, wobei die verarbeiteten Audiodaten durch Anwenden des konfigurierten Audio-Beamforming- Algorithmus auf die mehreren Audiosignale erzeugt werden.
  2. Per Computer implementiertes Verfahren nach Anspruch 1, wobei das Konfigurieren des Audio-Beamforming-Algorithmus ferner das Einstellen einer Modus-Richtcharakteristik auf der Grundlage der erkannten ersten vorgegebenen laufenden Anwendung umfasst, wobei die Modus-Richtcharakteristik ein anpassungsfähiger Modus ist.
  3. Per Computer implementiertes Verfahren nach Anspruch 1, das ferner Folgendes umfasst: Erkennen mindestens einer vorgegebenen Geräteeinstellung.
  4. Per Computer implementiertes Verfahren nach Anspruch 1, das ferner Folgendes umfasst: Anwenden eines Störgeräuschunterdrückungsalgorithmus auf die verarbeiteten Audiodaten vor dem Senden der verarbeiteten Audiodaten zu der ersten vorgegebenen laufenden Anwendung, wobei der Störgeräuschunterdrückungsalgorithmus ein vorgegebenes Grundrauschen enthält.
  5. Per Computer implementiertes Verfahren nach Anspruch 3, wobei es sich bei der ersten vorgegebenen laufenden Anwendung um eine Diktieranwendung, eine Audiokommunikationsanwendung, eine Video-Chat-Anwendung oder eine Tonaufnahmeanwendung handelt und wobei es sich bei der vorgegebenen Geräteeinstellung um eine über einem Schwellwert liegende Lüfterdrehzahl oder eine Benachrichtigung zu aktiver Audioausgabe handelt.
  6. System, das Folgendes umfasst: einen Prozessor, ein Mikrofonarray, ein computerlesbares Speichermedium, das Befehle zum Steuern des Prozessors zum Ausführen von Schritten speichert, die Folgendes umfassen: Konfigurieren eines Audio-Beamforming-Algorithmus durch Einstellen einer Modus- Richtcharakteristik auf der Grundlage einer erkannten ersten vorgegebenen laufenden Anwendung, Erzeugen von verarbeiteten Audiodaten durch Anwenden des konfigurierten Audio- Beamforming-Algorithmus auf mehrere von dem Mikrofonarray empfangene Audiosignale und Senden der verarbeiteten Audiodaten zu der ersten vorgegebenen laufenden Anwendung.
  7. System nach Anspruch 6, wobei die Schritte ferner Folgendes umfassen: Erkennen mindestens einer vorgegebenen Systemeinstellung und Konfigurieren des Audio-Beamforming-Algorithmus auf der Grundlage der mindestens einen vorgegebenen Systemeinstellung.
  8. System nach Anspruch 7, wobei es sich bei der mindestens einen vorgegebenen Systemeinstellung um eine Lüfterdrehzahl, einen aktuellen Audioleitweg oder/und eine Konfiguration des Mikrofonarrays und einer Lautsprecheranordnung handelt.
  9. System nach Anspruch 6, wobei die Modus-Richtcharakteristik einen Modus und eine Richtcharakteristik angeben kann.
  10. System nach Anspruch 9, wobei es sich bei dem Modus um einen adaptiven Modus, einen fixen Modus oder einen Modus mit einer Mischung aus fixen und adaptiven Charakteristiken handelt.
  11. System nach Anspruch 9, wobei es sich bei der Richtcharakteristik um eine Kugel, Niere, Hyperniere, breite Niere, Acht oder um eine Abfolge davon handelt.
  12. Nichtflüchtiges computerlesbares Speichermedium, das Befehle speichert, die bei Ausführung durch ein Computergerät dieses dazu veranlassen, unter anderem folgende Schritte auszuführen: Auswählen einer Modus-Richtcharakteristik auf der Grundlage einer erkannten vorgegebenen laufenden Anwendung, Benutzen der ausgewählten Modus-Richtcharakteristik zum Konfigurieren eines Audio- Beamforming-Algorithmus, und Senden verarbeiteter Audiodaten zu der vorgegebenen laufenden Anwendung, wobei die verarbeiteten Audiodaten durch Anwenden des konfigurierten Audio-Beamforming- Algorithmus auf mehrere von einem Mikrofonarray empfangene Audiosignale erzeugt werden.
  13. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 12, wobei das Auswählen der Modus-Richtcharakteristik ferner auf mindestens einer erkannten aktuellen Geräteeinstellung beruht.
  14. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 13, das ferner Folgendes umfasst: Anwenden eines Störgeräuschunterdrückungsalgorithmus auf die verarbeiteten Audiodaten vor dem Senden der verarbeiteten Audiodaten zu der vorgegebenen laufenden Anwendung.
  15. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 14, wobei der Störgeräuschunterdrückungsalgorithmus auf der Grundlage des vorgegebenen laufenden Algorithmus oder/und der mindestens einen erkannten aktuellen Geräteeinstellung konfiguriert ist.
  16. Nichtflüchtiges computerlesbares Speichermedium nach Anspruch 12, wobei es sich bei der erkannten vorgegebenen laufenden Anwendung um eine Diktieranwendung, eine Audiokommunikationsanwendung, eine Video-Chat-Anwendung oder eine Tonaufnahmeanwendung handelt.
  17. Per Computer implementiertes Verfahren, das Folgendes umfasst: Empfangen mehrerer Audiosignale über ein Mikrofonarray, Erkennen einer vorgegebenen laufenden Anwendung und mindestens einer vorgegebenen Geräteeinstellung, Konfigurieren eines Audio-Beamforming-Algorithmus durch Einstellen einer Modus- Richtcharakteristik auf der Grundlage der erkannten vorgegebenen laufenden Anwendung und der mindestens einen vorgegebenen Geräteeinstellung, Anwenden des konfigurierten Audio-Beamforming-Algorithmus auf die mehreren Audiosignale zum Erzeugen von verarbeiteten Audiodaten, und Senden der verarbeiteten Audiodaten zu der erkannten vorgegebenen laufenden Anwendung.
  18. Per Computer implementiertes Verfahren nach Anspruch 17, wobei es sich bei der erkannten vorgegebenen laufenden Anwendung um eine Spracherkennungsanwendung handelt und wobei die Modus-Richtcharakteristik einen adaptiven Modus angibt.
  19. Per Computer implementiertes Verfahren nach Anspruch 17, wobei es sich bei der erkannten vorgegebenen laufenden Anwendung um eine Audiokommunikationsanwendung handelt und wobei die Modus-Richtcharakteristik einen fixen Modus angibt.
  20. Per Computer implementiertes Verfahren nach Anspruch 19, wobei die Modus- Richtcharakteristik eine Nierenrichtcharakteristik angibt.
DE112013002838.7T 2012-06-08 2013-05-13 Abstimmen der Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands Active DE112013002838B4 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261657624P 2012-06-08 2012-06-08
US61/657,624 2012-06-08
US13/607,568 US20130329908A1 (en) 2012-06-08 2012-09-07 Adjusting audio beamforming settings based on system state
US13/607,568 2012-09-07
PCT/US2013/040808 WO2013184299A1 (en) 2012-06-08 2013-05-13 Adjusting audio beamforming settings based on system state

Publications (2)

Publication Number Publication Date
DE112013002838T5 true DE112013002838T5 (de) 2015-03-19
DE112013002838B4 DE112013002838B4 (de) 2021-07-08

Family

ID=48614112

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112013002838.7T Active DE112013002838B4 (de) 2012-06-08 2013-05-13 Abstimmen der Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands

Country Status (5)

Country Link
US (1) US20130329908A1 (de)
CN (1) CN104335273A (de)
DE (1) DE112013002838B4 (de)
TW (1) TWI502584B (de)
WO (1) WO2013184299A1 (de)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9525938B2 (en) 2013-02-06 2016-12-20 Apple Inc. User voice location estimation for adjusting portable device beamforming settings
US9191736B2 (en) * 2013-03-11 2015-11-17 Fortemedia, Inc. Microphone apparatus
US20160150315A1 (en) * 2014-11-20 2016-05-26 GM Global Technology Operations LLC System and method for echo cancellation
CN105763956B (zh) * 2014-12-15 2018-12-14 华为终端(东莞)有限公司 视频聊天中录音的方法和终端
US9554207B2 (en) 2015-04-30 2017-01-24 Shure Acquisition Holdings, Inc. Offset cartridge microphones
US9565493B2 (en) 2015-04-30 2017-02-07 Shure Acquisition Holdings, Inc. Array microphone system and method of assembling the same
DE112015006654T5 (de) * 2015-06-26 2018-03-08 Harman International Industries, Incorporated Sportkopfhörer mit Situationsbewusstsein
CN106486147A (zh) * 2015-08-26 2017-03-08 华为终端(东莞)有限公司 指向性录音方法、装置及录音设备
US9847764B2 (en) * 2015-09-11 2017-12-19 Blackberry Limited Generating adaptive notification
US10945087B2 (en) * 2016-05-04 2021-03-09 Lenovo (Singapore) Pte. Ltd. Audio device arrays in convertible electronic devices
US10431211B2 (en) 2016-07-29 2019-10-01 Qualcomm Incorporated Directional processing of far-field audio
US10367948B2 (en) 2017-01-13 2019-07-30 Shure Acquisition Holdings, Inc. Post-mixing acoustic echo cancellation systems and methods
CN110447238B (zh) 2017-01-27 2021-12-03 舒尔获得控股公司 阵列麦克风模块及系统
US9894439B1 (en) * 2017-01-31 2018-02-13 Dell Products L.P. Adaptive microphone signal processing for a foldable computing device
CN107135443B (zh) * 2017-03-29 2020-06-23 联想(北京)有限公司 一种信号处理方法及电子设备
US10789949B2 (en) * 2017-06-20 2020-09-29 Bose Corporation Audio device with wakeup word detection
CN107967921B (zh) * 2017-12-04 2021-09-07 苏州科达科技股份有限公司 会议系统的音量调节方法及装置
US10524048B2 (en) * 2018-04-13 2019-12-31 Bose Corporation Intelligent beam steering in microphone array
EP3769206A1 (de) * 2018-05-07 2021-01-27 Google LLC Architektur mit dynamikverarbeitungseffekt
CN112335261B (zh) 2018-06-01 2023-07-18 舒尔获得控股公司 图案形成麦克风阵列
US11297423B2 (en) 2018-06-15 2022-04-05 Shure Acquisition Holdings, Inc. Endfire linear array microphone
WO2020061353A1 (en) 2018-09-20 2020-03-26 Shure Acquisition Holdings, Inc. Adjustable lobe shape for array microphones
US11109133B2 (en) 2018-09-21 2021-08-31 Shure Acquisition Holdings, Inc. Array microphone module and system
CN109599104B (zh) * 2018-11-20 2022-04-01 北京小米智能科技有限公司 多波束选取方法及装置
CN113841419A (zh) 2019-03-21 2021-12-24 舒尔获得控股公司 天花板阵列麦克风的外壳及相关联设计特征
WO2020191380A1 (en) 2019-03-21 2020-09-24 Shure Acquisition Holdings,Inc. Auto focus, auto focus within regions, and auto placement of beamformed microphone lobes with inhibition functionality
US11558693B2 (en) 2019-03-21 2023-01-17 Shure Acquisition Holdings, Inc. Auto focus, auto focus within regions, and auto placement of beamformed microphone lobes with inhibition and voice activity detection functionality
CN114051738B (zh) 2019-05-23 2024-10-01 舒尔获得控股公司 可操纵扬声器阵列、系统及其方法
US11302347B2 (en) 2019-05-31 2022-04-12 Shure Acquisition Holdings, Inc. Low latency automixer integrated with voice and noise activity detection
WO2021041275A1 (en) 2019-08-23 2021-03-04 Shore Acquisition Holdings, Inc. Two-dimensional microphone array with improved directivity
US12028678B2 (en) 2019-11-01 2024-07-02 Shure Acquisition Holdings, Inc. Proximity microphone
US11552611B2 (en) 2020-02-07 2023-01-10 Shure Acquisition Holdings, Inc. System and method for automatic adjustment of reference gain
WO2021243368A2 (en) 2020-05-29 2021-12-02 Shure Acquisition Holdings, Inc. Transducer steering and configuration systems and methods using a local positioning system
EP4285605A1 (de) 2021-01-28 2023-12-06 Shure Acquisition Holdings, Inc. Hybrides audiostrahlformungssystem
US20240112690A1 (en) * 2022-09-26 2024-04-04 Cerence Operating Company Switchable Noise Reduction Profiles

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001043062A (ja) * 1999-07-27 2001-02-16 Nec Corp パーソナルコンピュータ、その音量調整方法及び記録媒体
CN100477704C (zh) * 2000-05-26 2009-04-08 皇家菲利浦电子有限公司 用于与自适应波束形成组合的回声抵消的方法和设备
US6748086B1 (en) * 2000-10-19 2004-06-08 Lear Corporation Cabin communication system without acoustic echo cancellation
US7171008B2 (en) * 2002-02-05 2007-01-30 Mh Acoustics, Llc Reducing noise in audio systems
ATE405925T1 (de) * 2004-09-23 2008-09-15 Harman Becker Automotive Sys Mehrkanalige adaptive sprachsignalverarbeitung mit rauschunterdrückung
US7877406B2 (en) * 2005-03-11 2011-01-25 Apteryx, Inc. System and method for name grabbing via optical character reading
WO2007013525A1 (ja) * 2005-07-26 2007-02-01 Honda Motor Co., Ltd. 音源特性推定装置
US20080259731A1 (en) * 2007-04-17 2008-10-23 Happonen Aki P Methods and apparatuses for user controlled beamforming
US20090010453A1 (en) * 2007-07-02 2009-01-08 Motorola, Inc. Intelligent gradient noise reduction system
WO2009102811A1 (en) * 2008-02-11 2009-08-20 Cochlear Americas Cancellation of bone conducted sound in a hearing prosthesis
US20100123785A1 (en) * 2008-11-17 2010-05-20 Apple Inc. Graphic Control for Directional Audio Input
US8416964B2 (en) * 2008-12-15 2013-04-09 Gentex Corporation Vehicular automatic gain control (AGC) microphone system and method for post processing optimization of a microphone signal
US8320974B2 (en) 2010-09-02 2012-11-27 Apple Inc. Decisions on ambient noise suppression in a mobile communications handset device
EP2437517B1 (de) * 2010-09-30 2014-04-02 Nxp B.V. Klangszenenmanipulation
US8929564B2 (en) * 2011-03-03 2015-01-06 Microsoft Corporation Noise adaptive beamforming for microphone arrays

Also Published As

Publication number Publication date
US20130329908A1 (en) 2013-12-12
WO2013184299A1 (en) 2013-12-12
TW201401269A (zh) 2014-01-01
CN104335273A (zh) 2015-02-04
TWI502584B (zh) 2015-10-01
DE112013002838B4 (de) 2021-07-08

Similar Documents

Publication Publication Date Title
DE112013002838B4 (de) Abstimmen der Audio-Beamforming-Einstellungen auf der Grundlage des Systemzustands
DE112009002617B4 (de) Wahlweises Schalten zwischen mehreren Mikrofonen
DE112019003211T9 (de) System aus Strahlformer und akustischem Echokompensator (AEC)
DE112020004631T5 (de) Techniken zum unterdrücken eines nichtlinearen echos in akustischen echokompensatoren
DE112009001003B4 (de) Geräuschunterdrückungssystem mit zwei Mikrophonen
DE112016000545T5 (de) Kontextabhängiges schalten von mikrofonen
DE112015003945T5 (de) Mehrquellen-Rauschunterdrückung
US10115411B1 (en) Methods for suppressing residual echo
US10553236B1 (en) Multichannel noise cancellation using frequency domain spectrum masking
DE112016006126T5 (de) Okklusionsreduzierung und Rauschunterdrückung auf der Grundlage einer Dichtqualität
DE102011001409B4 (de) Verfahren zum Steuern eines in der Umgebung betriebenen Geräts sowie Kommunikationseinrichtung und computerlesbares Medium, welches selbiges einsetzt
DE112018002871T5 (de) System und verfahren zur audiomustererkennung
DE112012000052T5 (de) Verfahren und Vorrichtung zum Ausblenden von Windgeräuschen
CN110111805B (zh) 远场语音交互中的自动增益控制方法、装置及可读存储介质
DE112015006654T5 (de) Sportkopfhörer mit Situationsbewusstsein
DE112017000378T5 (de) Akustisches echoauslöschungs-referenzsignal
DE102014002899A1 (de) Verfahren, Vorrichtung und Herstellung zur Zwei-Mikrofon-Array-Sprachverbesserung für eine Kraftfahrzeugumgebung
DE102014214052A1 (de) Virtuelle Verdeckungsmethoden
DE112016006334T5 (de) Verfahren und systeme zur erreichung einer konsistenz bei der rauschunterdrückung während sprachphasen und sprachfreien phasen
CN107333093A (zh) 一种声音处理方法、装置、终端及计算机可读存储介质
DE102015220400A1 (de) Sprachempfangssystem im fahrzeug mittels audio-beamforming und verfahren zum steuern desselben
DE112019000916T5 (de) Adaptive näherungsgrenzwerte zur dynamischen echounterdrückung
DE112014004898T5 (de) Clustergebiet mit adaptiven Sendern für Ultraschallortungssystem
DE112019002337T5 (de) Architektur für Dynamikbearbeitungseffekte
DE202019107201U1 (de) Binaurales Hörgerät für eine verbesserte räumliche Hörwahrnehmung

Legal Events

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

Representative=s name: BARDEHLE PAGENBERG PARTNERSCHAFT MBB PATENTANW, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final