DE102017115383A1 - Audio-slicer - Google Patents

Audio-slicer Download PDF

Info

Publication number
DE102017115383A1
DE102017115383A1 DE102017115383.7A DE102017115383A DE102017115383A1 DE 102017115383 A1 DE102017115383 A1 DE 102017115383A1 DE 102017115383 A DE102017115383 A DE 102017115383A DE 102017115383 A1 DE102017115383 A1 DE 102017115383A1
Authority
DE
Germany
Prior art keywords
voice command
command trigger
trigger term
transcription
audio data
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.)
Ceased
Application number
DE102017115383.7A
Other languages
English (en)
Inventor
Abraham Jung-Gyu Lee
Sang Soo Sung
Yeliang Zhang
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of DE102017115383A1 publication Critical patent/DE102017115383A1/de
Ceased legal-status Critical Current

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
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/005Language recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L25/87Detection of discrete points within a voice signal
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/45Aspects of automatic or semi-automatic exchanges related to voicemail messaging
    • H04M2203/4536Voicemail combined with text-based messaging

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Es werden Verfahren, Systeme und Vorrichtungen einschließlich Computerprogrammen, die auf einem Computerspeichermedium codiert sind, um Audiodaten und eine Transkription der Audiodaten in eine Datenstruktur zu kombinieren, offenbart. Bei einem Aspekt umfasst ein Verfahren die Aktionen des Empfangens von Audiodaten, die einer Äußerung entsprechen. Die Aktionen umfassen das Erzeugen einer Transkription der Äußerung. Die Aktionen umfassen das Klassifizieren eines ersten Abschnitts der Transkription als einen Triggerbegriff und eines zweiten Abschnitts als ein Objekt des Triggerbegriffs. Die Aktionen umfassen das Bestimmen, dass der Triggerbegriff mit einem Triggerbegriff übereinstimmt, für den ein Resultat des Verarbeitens daraus besteht, sowohl eine Transkription eines Objekts als auch Audiodaten des Objekts in einer erzeugten Datenstruktur einzuschließen. Die Aktionen umfassen das Isolieren der Audiodaten des Objekts. Die Aktionen umfassen das Erzeugen einer Datenstruktur, welche die Transkription des Objekts und der Audiodaten des Objekts umfasst.

Description

  • TECHNISCHES GEBIET
  • Diese Anwendung betrifft Spracherkennung.
  • ALLGEMEINER STAND DER TECHNIK
  • Benutzer können Nachrichten durch Messaging-Anwendungen austauschen. Bei einem Beispiel kann eine Messaging-Anwendung einem Sender ermöglichen, eine Nachricht einzugeben, die an einen Empfänger gesendet wird. Messaging-Anwendungen können dem Sender auch ermöglichen, eine Nachricht zu sprechen, welche die Messaging-Anwendungen vor dem Senden an einen Empfänger transkribieren können.
  • KURZDARSTELLUNG
  • Wenn ein Sender eine Textnachricht an einen Empfänger sendet, kann ein Sender wählen, einen mit dem Messaging verbundenen Befehl zur Vorrichtung zu sprechen, anstatt eine Nachricht unter Verwendung einer Tastatur einzugeben. Ein Sender kann beispielsweise sagen „Text Liam Viel Glück.“ Als Antwort würde die Vorrichtung die Sprache des Senders transkribieren und „Text“ als den Sprachbefehltriggerbegriff, „Liam“ als den Empfänger und „Viel Glück“ als die Nutzdaten oder das Objekt des Sprachbefehltriggerbegriffs erkennen. Die Vorrichtung würde dann die Nachricht „Viel Glück“ zu einem Kontakt des Senders genannt „Liam“ senden.
  • Nur die Transkription der Nachricht zu senden, kann unzureichend sein, um den Tonfall in der Sprache des Senders zu erfassen. In diesem Fall kann es hilfreich sein, die Audiodaten des Senders, der „Viel Glück“ sagt, zusammen mit der Transkription zu senden. Um nur die Audiodaten des Objekts des Sprachbefehltriggerbegriffs und keine Audiodaten des Namens des Empfängers oder des Sprachbefehltriggerbegriffs zu senden, identifiziert die Vorrichtung zuerst den Sprachbefehltriggerbegriff in der Transkription und vergleicht ihn mit anderen Triggerbegriffen, die mit dem Senden von Audiodaten und Transkriptionen der Audiodaten kompatibel sind (z. B.: „Text“ und „sende eine Nachricht an“ und nicht „anrufen“ oder „Wecker einstellen“). Die Vorrichtung klassifiziert dann einen Abschnitt der Transkription als das Objekt des Sprachbefehltriggerbegriffs und isoliert die Audiodaten, die diesem Abschnitt entsprechen. Die Vorrichtung sendet die Audiodaten und die Transkription des Objekts des Sprachbefehltriggerbegriffs an den Empfänger. Der Empfänger kann dann die Stimme des Senders anhören, welche die Nachricht spricht, und die Transkription der Nachricht lesen. Dem gleichen Beispiel folgend isoliert die Vorrichtung die Audiodaten „Viel Glück“ und sendet diese, sodass, wenn Liam die Nachricht „Viel Glück“ liest, er auch den Sender hören kann, der „Viel Glück“ spricht
  • Gemäß einem innovativen Aspekt des in dieser Anmeldung beschriebenen Gegenstandes umfasst ein Verfahren für Audioschnitt die Aktionen des Empfangens von Audiodaten, die einer Äußerung entsprechen; des Erzeugens einer Transkription der Äußerung; des Klassifizierens eines ersten Abschnitts der Transkription als einen Sprachbefehltriggerbegriff und eines zweiten Abschnitts der Transkription als ein Objekt des Sprachbefehltriggerbegriffs; des Bestimmens, dass der Sprachbefehltriggerbegriff mit einem Sprachbefehltriggerbegriff übereinstimmt, für den ein Resultat des Verarbeitens daraus besteht, sowohl eine Transkription eines Objekts des Sprachbefehltriggerbegriffs als auch Audiodaten des Objekts des Sprachbefehltriggerbegriffs in einer erzeugten Datenstruktur einzuschließen; des Isolierens der Audiodaten des Objekts des Sprachbefehltriggerbegriffs; und des Erzeugens einer Datenstruktur, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und der Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst.
  • Diese und andere Implementierungen können jeweils optional ein oder mehrere von den folgenden Merkmalen umfassen. Die Aktionen umfassen ferner das Klassifizieren eines dritten Abschnitts der Transkription als einen Empfänger des Objekts des Sprachbefehltriggerbegriffs; und das Senden der Datenstruktur an den Empfänger. Die Aktionen umfassen ferner das Identifizieren einer Sprache der Äußerung. Die Datenstruktur wird basierend auf dem Bestimmen der Sprache der Äußerung erzeugt. Der Sprachbefehltriggerbegriff ist ein Befehl, um eine Textnachricht zu senden. Das Objekt des Sprachbefehltriggerbegriffs ist die Textnachricht. Die Aktionen umfassen ferner das Erzeugen, zum Anzeigen, einer Benutzerschnittstelle, die eine wählbare Option umfasst, um die Datenstruktur zu erzeugen, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst; und das Empfangen von Daten, die eine Auswahl der wählbaren Option anzeigen, um die Datenstruktur zu erzeugen. Die Datenstruktur wird als Reaktion auf das Empfangen der Daten, welche die Auswahl der wählbaren Option anzeigen, erzeugt, um die Datenstruktur zu erzeugen. Die Aktionen umfassen ferner das Erzeugen von Timing-Daten für jeden Begriff der Transkription der Äußerung. Die Audiodaten des Objekts des Sprachbefehltriggerbegriffs werden basierend auf den Timing-Daten isoliert. Die Timing-Daten für jeden Begriff identifizieren eine abgelaufene Zeit von einem Beginn der Äußerung zu einem Beginn des Begriffs und eine abgelaufene Zeit vom Beginn der Äußerung zu einem Beginn eines folgenden Begriffs.
  • Andere Ausführungsformen dieses Aspekts umfassen entsprechende Systeme, Vorrichtungen und Computerprogramme, die auf Computerspeichervorrichtungen aufgezeichnet sind, von denen jedes konfiguriert ist, die Operationen der Verfahren auszuführen.
  • Der in dieser Anwendung beschriebene Gegenstand kann einen oder mehrere von den folgenden Vorteilen aufweisen. Die erforderlich Netzwerkbandbreite, um den Ton einer Sprache eines Benutzers und eine Nachricht zu senden, kann reduziert sein, da der Benutzer das Audio des sprechenden Benutzers mit der Nachricht senden kann und ohne zusätzlich einen Sprachanruf zu machen, was somit den Overhead spart, der erforderlich ist, um einen Sprachanruf aufzubauen und aufrechtzuerhalten. Die erforderliche Netzwerkbandbreite kann auch reduziert sein, da die Transkription und die Audiodaten innerhalb eines Nachrichtenpakets anstatt eines Nachrichtenpakets für die Audiodaten und eines Nachrichtenpakets für die Transkription gesendet werden können. Die Netzwerkbandbreite kann erneut durch Extrahieren nur der Audiodaten der Nachricht zur Übertragung an den Empfänger reduziert sein, anstatt die Audiodaten der gesamten Äußerung zu senden.
  • Die Details von einer oder mehreren Ausführungsformen des in dieser Patentschrift beschriebenen Gegenstandes sind in den begleitenden Zeichnungen und der nachfolgenden Beschreibung dargelegt. Andere Merkmale, Aspekte und Vorteile des Gegenstands werden aus der Beschreibung, den Zeichnungen und den Ansprüchen offensichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 veranschaulicht ein beispielhaftes System, bei dem eine Vorrichtung eine Datenstruktur, die Audiodaten und eine Transkription der Audiodaten umfasst, zu einer anderen Vorrichtung sendet.
  • 2 veranschaulicht ein beispielhaftes System, das Audiodaten und eine Transkription der Audiodaten in eine Datenstruktur kombiniert.
  • 3 veranschaulicht einen beispielhaften Prozess, der Audiodaten und eine Transkription der Audiodaten in eine Datenstruktur kombiniert.
  • 4 veranschaulicht ein Beispiel einer Computervorrichtung und einer mobilen Computervorrichtung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 veranschaulicht ein beispielhaftes System 100, bei dem eine Vorrichtung 105 eine Datenstruktur 110, die Audiodaten 130 und eine Transkription 135 der Audiodaten umfasst, zu einer anderen Vorrichtung 125 sendet. Kurz gesagt, und wie nachfolgend ausführlicher beschrieben, empfängt die Vorrichtung 105 Audiodaten, die einer Äußerung 115 entsprechen, die vom Benutzer 120 gesprochen wird. Die Vorrichtung 105 transkribiert die Audiodaten, die der Äußerung 115 entsprechen, und erzeugt eine Datenstruktur 110, welche die Transkription 135 des Nachrichtenabschnitts der Äußerung 115 und die Audiodaten 130 des Nachrichtenabschnitts der Äußerung 115 umfasst. Nach Empfangen der Datenstruktur 110 kann der Benutzer 140 die Transkription 135 auf einer Anzeige der Vorrichtung 125 lesen und die Vorrichtung spielt die Audiodaten 130 ab, sodass der Benutzer 140 die Stimme des Benutzers 120 sprechen hören kann.
  • Der Benutzer 120 aktiviert eine Messaging-Anwendung auf der Vorrichtung 105. Die Vorrichtung 105 kann irgendeine Art von Computervorrichtung sein, die konfiguriert ist, Audiodaten zu empfangen. Die Vorrichtung 105 kann ein Mobiltelefon, ein Tablet, eine Uhr, ein Laptop, ein Desktopcomputer oder jede andere ähnliche Vorrichtung sein. Sobald der Benutzer 120 die Messaging-Anwendung aktiviert, kann die Vorrichtung 105 den Benutzer auffordern, zu sprechen zu beginnen. Bei einigen Implementierungen kann die Vorrichtung 105 den Benutzer auffordern, aus unterschiedlichen Messaging-Optionen auszuwählen. Die Messaging-Optionen können gegebenenfalls nur das Senden einer Transkription, das Senden einer Transkription und von Audiodaten, nur das Senden von Audiodaten oder das automatische Senden von Audiodaten umfassen. Der Benutzer spricht die Äußerung 115 und die Vorrichtung 105 empfängt die entsprechenden Audiodaten. Die Vorrichtung 105 verarbeitet die Audiodaten unter Verwendung eines Audiosubsystems, das einen A-D-Wandler und einen Audiopuffer umfassen kann.
  • Die Vorrichtung 105 verarbeitet die Audiodaten 145, die der Äußerung 115 entsprechen, und erzeugt bei einigen Implementierungen eine Transkription 150 der Audiodaten 145. Bei einigen Implementierungen erzeugt die Vorrichtung 105 während der Benutzer spricht die Transkription 150 und der erkannte Text erscheint auf einer Anzeige der Vorrichtung 105. Während der Benutzer 120 „Text Mama“ spricht, erscheinen die Worte „Text Mama“ auf der Anzeige der Vorrichtung 105. Bei einigen Implementierungen erscheint die Transkription 150 nicht auf der Anzeige der Vorrichtung 105, bis der Benutzer 120 das Sprechen beendet hat. In diesem Fall kann die Vorrichtung 105 die Audiodaten nicht transkribieren, bis der Benutzer 120 das Sprechen beendet hat. Bei einigen Implementierungen kann die Vorrichtung 105 eine Option umfassen, dass der Benutzer auswählen kann, die Transkription zu bearbeiten. Beispielsweise kann die Vorrichtung 105 „Text don“ anstatt „Text Mama“ transkribiert haben. Der Benutzer kann die Editieroption auswählen, um die Transkription in „Text Mama“ zu ändern. Bei einigen Implementierungen kann die Anzeige der Vorrichtung 105 nur eine optische Anzeige bereitstellen, dass die Vorrichtung 105 die Audiodaten 145 transkribiert, ohne die Transkription 150 anzuzeigen. Bei einigen Implementierungen stellt die Vorrichtung 105 die Audiodaten 145 an einen Server bereit und der Server erzeugt die Transkription 150. Der Server kann die Transkription 150 dann an die Vorrichtung 105 bereitstellen.
  • Sobald die Vorrichtung 105 die Transkription 150 erzeugt hat, erzeugt die Vorrichtung 105 bei einigen Implementierungen Timing-Daten 153. Die Timing-Daten 153 bestehen aus Daten, die eine abgelaufene Zeit vom Beginn der Audiodaten 145 zum Beginn jedes Wortes in der Transkription 150 anzeigen. T0 stellt beispielsweise die abgelaufene Zeit vom Beginn der Audiodaten 145 zum Beginn des Wortes „Text“ dar. Bei einigen Implementierungen kann die Vorrichtung 105 die Audiodaten 145 vorverarbeiten, sodass T0 null ist. Mit anderen Worten werden irgendwelche Zeiträume von Stille vor dem ersten Wort von den Audiodaten 145 entfernt. Als ein weiteres Beispiel stellt T2 den Zeitraum vom Beginn von Audiodaten 145 zum Beginn von „ich werde“ dar. T6 stellt den Zeitraum vom Beginn der Audiodaten 145 bis zum Ende von „bald“ dar. Bei einigen Implementierungen kann die Vorrichtung 105 die Audiodaten 145 vorverarbeiten, sodass sich T6 am Ende des letzten Wortes befindet. Mit anderen Worten werden irgendwelche Zeiträume von Stille nach dem letzten Wort von den Audiodaten 145 entfernt. Bei einigen Implementierungen erzeugt die Vorrichtung 105 die Timing-Daten 153 während des Erzeugens der Transkription 150. Bei einigen Implementierungen stellt die Vorrichtung 105 die Audiodaten 145 an einen Server bereit, anstatt dass die Vorrichtung 105 der Timing-Daten 153 erzeugt. Der Server erzeugt die Timing-Daten 153 unter Verwendung eines Prozesses, der dem Prozess der Vorrichtung 105 des Erzeugens der Timing-Daten 153 ähnlich ist. Der Server kann dann die Timing-Daten 153 an die Vorrichtung 105 bereitstellen.
  • Bei einigen Implementierungen kann die Vorrichtung 105 eine Schnittstelle anzeigen, welche die Transkription 150 bereitstellt und dem Benutzer ermöglicht, unterschiedliche Worte der Transkription 150 auszuwählen. Nach der Auswahl jedes Wortes kann die Vorrichtung 105 die entsprechenden Audiodaten für das ausgewählte Wort abspielen. Dies zu tun ermöglicht dem Benutzer, zu verifizieren, dass die Audiodaten für jedes Wort jedem transkribierten Wort richtig angeglichen wurden. Die Vorrichtung 105 kann beispielsweise „Text Mama, ich werde bald Zuhause sein“ anzeigen Der Benutzer kann das Wort „Zuhause“ auswählen und als Reaktion auf die Auswahl kann die Vorrichtung 105 die Audiodaten 145 zwischen T4 und T5 abspielen. Der Benutzer kann auch in der Lage sein, mehr als ein Wort zu einer Zeit auszuwählen. Beispielsweise kann der Benutzer „Text Mama“ auswählen. Als Antwort kann die Vorrichtung 105 die Audiodaten 145 zwischen T0 und T2 abspielen. Im Fall von Fehlern kann der Benutzer anfordern, dass die Vorrichtung die Timing-Daten 153 für die gesamte Transkription 150 oder nur für vom Benutzer ausgewählte Worte erneut erzeugt.
  • Die Vorrichtung 105 analysiert bei einigen Implementierungen die Transkription 150 und klassifiziert Abschnitte der Transkription 150 als den Sprachbefehltriggerbegriff, das Objekt des Sprachbefehltriggerbegriffs oder den Empfänger. Der Sprachbefehltriggerbegriff ist der Abschnitt der Transkription 150, der die Vorrichtung 105 anweist, eine bestimmte Aktion auszuführen. Der Sprachbefehltriggerbegriff kann beispielsweise „Text“, „sende eine Nachricht“, „Wecker einstellen“ oder „Anruf“ sein. Das Objekt des Sprachbefehltriggerbegriffs weist die Vorrichtung 105 an, die bestimmte Aktion an dem Objekt auszuführen. Beispielsweise kann das Objekt eine Nachricht, eine Zeit oder ein Datum sein. Der Empfänger weist die Vorrichtung 105 an, das Objekt zu senden oder die bestimmte Aktion beim Empfänger auszuführen. Der Empfänger kann beispielsweise „Mama“, Alice“ oder „Bob sein.“ In einigen Fällen kann eine Transkription nur einen Sprachbefehltriggerbegriff und einen Empfänger umfassen, wie beispielsweise „Anruf Alice“. In anderen Fällen kann eine Transkription nur einen Sprachbefehltriggerbegriff und ein Objekt des Sprachbefehltriggerbegriffs umfassen, wie beispielsweise „Wecker für 6:00 Uhr einstellen“. Im in 1 gezeigten Beispiel analysiert die Vorrichtung 105 die Transkription 150 „Text-Mama ich werde bald Zuhause sein“ und klassifiziert den Begriff „Text“ als den Sprachbefehltriggerbegriff 156, den Begriff „Mama“ als den Empfänger 159 und die Nachricht „Ich werde bald Zuhause sein“ als das Objekt des Sprachbefehltriggerbegriffs 162. Der Empfänger 159 umfasst eine Telefonnummer für „Mama“ basierend darauf, dass die Vorrichtung 105 auf die Kontaktdaten des Benutzers 120 zugreift. Bei einigen Implementierungen analysiert und klassifiziert ein Server die Transkription 150. Der Server kann der gleiche Server oder die gleiche Gruppe von Servern sein, der bzw. die die Timing-Daten 153 und die Transkription 150 erzeugten.
  • Wenn der Abschnitt der Transkription 150 als der Sprachbefehltriggerbegriff 156 und das Objekt des Sprachbefehltriggerbegriffs 162 identifiziert ist, stellt die Vorrichtung 105 die Timing-Daten 153, die Audiodaten 145 und den Sprachbefehltriggerbegriff 156 und das Objekt des Sprachbefehltriggerbegriffs 162 an den Audio-Slicer 165 bereit. Der Audio-Slicer 165 vergleicht den Sprachtriggerbegriff 156 mit einer Gruppe von Sprachbefehltriggerbegriffen 172, für die Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Empfänger bereitgestellt werden. Einige Beispiele 175 von Sprachbefehltriggerbegriffen 172 für die Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Empfänger bereitgestellt werden, umfassen „Text“ und „sende eine Nachricht“. Für „Text“ und „sende eine Nachricht“ werden die Transkription der Nachricht und die Audiodaten der Nachricht an den Empfänger gesendet. Ein anderes Beispiel 175 von Sprachbefehltriggerbegriffen 172, für die Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Empfänger bereitgestellt werden, umfasst „bestelle eine Pizza“. Für „bestelle eine Pizza,“ kann die Pizzeria aus einer Audioaufnahme der Bestellung in Fällen profitieren, bei denen die Äußerung falsch transkribiert wurde. Wie veranschaulicht in 1 greift die Vorrichtung 105 die Gruppe von Sprachbefehltriggerbegriffen 172 zu und identifiziert den Sprachbefehltriggerbegriff 156 „Text“ als ein Sprachbefehltriggerbegriff, für den Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Empfänger bereitgestellt werden. Die Gruppe von Sprachbefehltriggerbegriffen 172 kann lokal auf der Vorrichtung 105 gespeichert und periodisch von entweder dem Benutzer 120 oder einer Anwendungsaktualisierung aktualisiert werden. Wie veranschaulicht in 1 kann die Gruppe von Sprachbefehltriggerbegriffen 172 auch entfernt gespeichert und durch ein Netzwerk 178 darauf zugegriffen werden. In diesem Fall kann die Gruppe von Sprachbefehltriggerbegriffen 172 vom Entwickler der Anwendung periodisch aktualisiert werden, die Audiodaten und eine Transkription der Audiodaten sendet.
  • Wenn die Vorrichtung 105 bestimmt, dass der Sprachbefehltriggerbegriff 156 mit einem der Begriffe in der Gruppe von Sprachbefehltriggerbegriffen 172 übereinstimmt, für die Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Empfänger bereitgestellt werden, dann isoliert der Audio-Slicer 165 die Audiodaten, die dem Objekt des Sprachbefehltriggerbegriffs 162 entsprechen, unter Verwendung der Timing-Daten 153. Da die Timing-Daten 153 den Beginn jedes Wortes in den Audiodaten 145 identifizieren, kann der Audio-Slicer die Worte des Objekts des Sprachbefehltriggerbegriffs 162 mit den entsprechenden Zeiten der Timing-Daten 153 abgleichen und nur den Abschnitt der Audiodaten 145 isolieren, um Audiodaten des Objekts des Sprachbefehltriggerbegriffs 162 zu erzeugen. Im in 1 gezeigten Beispiel empfängt der Audio-Slicer 165 Daten, die das Objekt des Sprachbefehltriggerbegriffs 162 als „Ich werde bald Zuhause sein“ anzeigen. Der Audio-Slicer 165 identifiziert den Abschnitt von Audiodaten 145, der dem entspricht, dass „Ich werde bald Zuhause sein“ sich zwischen T2 und T6 befindet. Der Audio-Slicer 165 entfernt den Abschnitt der Audiodaten 145 vor T2. Wenn die Audiodaten 165 irgendwelche Daten nach T6 umfassen sollten, dann würde der Audio-Slicer diesen Abschnitt auch entfernen. Der Audio-Slicer 165 isoliert das Nachrichtenaudio von „Ich werde bald Zuhause sein“ als die Audiodaten, die dem Objekt des Sprachbefehltriggerbegriffs 168 entsprechen. Nach dem Isolieren des Nachrichtenaudio kann die Vorrichtung 105 eine Benutzerschnittstelle anzeigen, die eine Wiedergabetaste für den Benutzer umfasst, um die isolierten Audiodaten anzuhören.
  • Wenn die Audiodaten, die dem Objekt des Sprachbefehltriggerbegriffs 168 entsprechen, isoliert sind, erzeugt die Vorrichtung 105 die Datenstruktur 110 basierend auf den Daten 182. Die Datenstruktur 110 umfasst die Transkription des Objekts des Sprachbefehltriggerbegriffs 135 und die entsprechenden Audiodaten 130, die der Audio-Slicer 165 isolierte. In 1 umfasst die Datenstruktur 110 die Transkription „ich werde bald Zuhause sein“ und die entsprechenden Audiodaten. Die Vorrichtung 105 sendet die Datenstruktur 110 zur Vorrichtung 125. Wenn der Benutzer 140 die Nachricht öffnet, welche die Datenstruktur 140 umfasst, erscheint die Transkription des Objekts des Sprachbefehltriggerbegriffs 135 auf der Anzeige der Vorrichtung 125 und die Audiodaten 130 werden wiedergegeben. Bei einigen Implementierungen werden die Audiodaten 130 beim Öffnen der Nachricht automatisch wiedergegeben. Bei einigen Implementierungen werden die Audiodaten 130 als Reaktion auf eine Benutzerauswahl einer Wiedergabetaste oder Auswählen der Transkription des Objekts des Sprachbefehltriggerbegriffs 135 auf der Anzeige wiedergegeben. Bei einigen Implementierungen können die Audiodaten 130 in einer Audiobenachrichtigung beinhaltet sein, welche die Vorrichtung 125 als Reaktion auf das Empfangen der Datenstruktur 110 wiedergibt.
  • Bei einigen Implementierungen kann die Vorrichtung 105 den Benutzer 120 mit verschiedenen Optionen ausstatten, wenn es die Datenstruktur 110 erzeugt. Die Vorrichtung 105 kann beispielsweise an jedem Punkt nach dem Empfangen der Audiodaten der Äußerung 115 eine Option an den Benutzer bereitzustellen, Audiodaten zusammen mit der Transkription der Äußerung zu senden. Wie veranschaulicht in der Benutzerschnittstelle 185 zeigt die Vorrichtung 105 beispielsweise eine Eingabeaufforderung 186 mit wählbaren Tasten 187, 188 und 189 an. Das Auswählen der Taste 187 bewirkt, dass der Empfänger nur eine Transkription der Nachricht empfängt. Das Auswählen der Taste 188 bewirkt, dass der Empfänger nur das Audio der Nachricht empfängt. Das Auswählen der Taste 189 bewirkt, dass der Empfänger sowohl die Transkription als auch das Audio empfängt. Die Vorrichtung 105 kann die Auswahl zu einem Server senden, der die Audiodaten der Äußerung 115 verarbeitet. Bei einigen Implementierungen führt die Vorrichtung, welche die Äußerung 115 verarbeitet, ein unnötiges Verarbeiten der Äußerung 115 nicht aus oder stoppt das Ausführen davon. Die Vorrichtung 105 oder der Server kann beispielsweise die Timing-Daten 153 stoppen oder nicht erzeugen, wenn der Benutzer die Option 187 auswählt.
  • Die Vorrichtung 105 kann die Benutzerschnittstelle 185 präsentieren, um Audiodaten nach dem Abgleichen des Sprachbefehltriggerbegriffs 156 mit einem Begriff in der Gruppe von Sprachbefehltriggerbegriffen 172 zu senden. Bei einigen Implementierungen kann der Benutzer 120 bestimmte Empfänger auswählen, die Audiodaten und die Transkription der Audiodaten empfangen sollten. In diesem Fall kann die Vorrichtung 105 den Benutzer nicht auffordern, die Audiodaten zu senden und stattdessen die Einstellungen für den Empfänger zu überprüfen. Wenn der Benutzer 120 angezeigt hat, dass der Empfänger Audiodaten empfangen sollte, dann erzeugt und sendet die Vorrichtung 105 die Datenstruktur 110. Wenn der Benutzer 120 angezeigt hat, dass der Empfänger Audiodaten nicht empfangen sollte, dann sendet die Vorrichtung 105 nur die Transkription 135.
  • Bei einigen Implementierungen kann der Benutzer 140 ein Feedback durch die Vorrichtung 125 bereitstellen. Das Feedback kann einen Hinweis umfassen, dass der Benutzer fortfahren möchte, Audiodaten mit zukünftigen Nachrichten zu empfangen, oder einen Hinweis, dass der Benutzer Audiodaten mit zukünftigen Nachrichten nicht empfangen möchte. Der Benutzer 140 kann beispielsweise die Nachricht, welche die Datenstruktur 110 umfasst, auf der Vorrichtung 125 öffnen. Die Vorrichtung 125 kann eine Option anzeigen, die der Benutzer 140 auswählen kann, um weiterhin Audiodaten zu empfangen, wenn die Audiodaten verfügbar sind, und eine Option, die der Benutzer 140 auswählen kann, um Audiodaten nicht mehr zu empfangen. Nach der Auswahl kann die Vorrichtung 125 die Antwort zur Vorrichtung 105 senden. Die Vorrichtung 105 kann die Einstellungen für den Benutzer 140 automatisch aktualisieren oder sie kann die Informationen dem Benutzer 120 präsentieren und der Benutzer 120 ändert manuell die Einstellungen für den Benutzer 140. Bei einem weiteren Beispiel kann der Benutzer eine Nachricht öffnen, die nur die Transkription 135 umfasst. Die Vorrichtung 125 kann eine Option anzeigen, die der Benutzer 140 auswählen kann, um zu beginnen, Audiodaten zu empfangen, wenn die Audiodaten verfügbar sind, und eine Option, die der Benutzer 140 auswählen kann, um Audiodaten mit zukünftigen Nachrichten nicht zu empfangen. Ähnlich kann die Vorrichtung 125 nach der Auswahl die Antwort zur Vorrichtung 105 senden. Die Vorrichtung 105 kann die Einstellungen für den Benutzer 140 automatisch aktualisieren oder sie kann die Informationen dem Benutzer 120 präsentieren und der Benutzer 120 ändert manuell die Einstellungen für den Benutzer 140.
  • Bei einigen Implementierungen werden einige oder alle der Aktionen, die durch die Vorrichtung 105 ausgeführt werden, durch einen Server ausgeführt. Die Vorrichtung 105 empfängt die Audiodaten 145 vom Benutzer 120, wenn der Benutzer 120 die Äußerung 115 spricht. Die Vorrichtung 105 stellt die Audiodaten 145 an einen Server bereit, der die Audiodaten 145 unter Verwendung eines ähnlichen Prozesses als demjenigen, der durch die Vorrichtung 105 ausgeführt wird, verarbeitet. Der Server kann die Transkription 150, Timing-Daten 153, Klassifizierungsdaten und andere Daten an die Vorrichtung 105 bereitstellen, sodass der Benutzer 120 ein Feedback bezüglich der Transkription 150 und der Timing-Daten 153 bereitstellen kann. Die Vorrichtung 105 kann dann das Feedback an den Server bereitstellen.
  • 2 veranschaulicht ein beispielhaftes System 200, das Audiodaten und eine Transkription der Audiodaten in eine Datenstruktur kombiniert. Das System 200 kann auf einer Computervorrichtung wie der Vorrichtung 105 in 1 implementiert sein. Das System 200 umfasst ein Audiosubsystem 205 mit einem Mikrofon 206, um eingehendes Audio zu empfangen, wenn ein Benutzer eine Äußerung spricht. Das Audiosubsystem 205 wandelt durch das Mikrofon 206 empfangenes Audio unter Verwendung des Analog-Digital-Wandlers 207 in ein digitales Signal um. Das Audiosubsystem 205 umfasst auch die Puffer 208. Die Puffer 208 können digitalisiertes Audio z. B. in Vorbereitung für weiteres Verarbeiten durch das System 200 speichern. Bei einigen Implementierungen ist das System 200 mit unterschiedlichen Vorrichtungen implementiert. Das Audiosubsystem 205 kann sich auf einer Client-Vorrichtung, wie z. B. einem Mobiltelefon, befinden und die Module befinden sich auf dem Server 275, der eine oder mehrere Computervorrichtungen umfassen kann. Die Kontakte 250 können sich auf der Client-Vorrichtung oder dem Server 275 oder auf beiden befinden.
  • Bei einigen Implementierungen kann das Audiosubsystem 205 einen Eingangsanschluss wie einen Klinkenstecker umfassen. Der Eingangsanschluss kann mit einer externen Vorrichtung wie einem externen Mikro verbunden sein und Audio davon empfangen und mit dem Audiosubsystem 205 verbunden sein und Audio an dieses bereitstellen. Bei einigen Implementierungen kann das Audiosubsystem 205 Funktionalität zum drahtlosen Empfangen von Audiodaten umfassen. Das Audiosubsystem kann Funktionalität umfassen, die entweder in Hardware oder Software implementiert ist, um Audiodaten von einer Funkvorrichtung für kurze Reichweite, wie z. B. Bluetooth, zu empfangen. Die Audiodaten, die durch den Eingangsanschluss oder die drahtlose Verbindung empfangen werden, können einer von einem Benutzer gesprochenen Äußerung entsprechen.
  • Das System 200 stellt die Audiodaten, die durch das Audiosubsystem 205 verarbeitet werden, an Spracherkenner 210 bereit. Der Spracherkenner 210 ist konfiguriert, die Begriffe in den Audiodaten zu identifizieren. Der Spracherkenner 210 kann verschiedene Techniken und Modelle verwenden, um die Begriffe in den Audiodaten zu identifizieren. Der Spracherkenner 210 kann beispielsweise eines oder mehrere von einem akustischen Modell, einem Sprachmodell, von verborgenen Markov-Modellen oder neuronalen Netzwerken verwenden. Jedes davon kann unter Verwendung von Daten trainiert werden, die vom Benutzer bereitgestellt werden, und unter Verwendung von Benutzerfeedback, das während des Spracherkennungsprozesses und des Prozesses des Erzeugens der Timing-Daten 153 bereitgestellt wird, die beide vorstehend beschrieben sind.
  • Während oder nach dem Spracherkennungsprozess kann der Spracherkenner 210 den Takt 215 verwenden, um die Beginnpunkte in den Audiodaten zu identifizieren, an denen jeder Begriff beginnt. Der Spracherkenner 210 kann den Beginn der Audiodaten auf die Zeit Null einstellen und der Beginn jedes Wortes oder Begriffs in den Audiodaten ist mit einer abgelaufenen Zeit vom Beginn der Audiodaten bis zum Beginn des Begriffs verbunden. Beispielsweise kann bei den Audiodaten, die „sende eine Nachricht an Alice Ich bin spät dran“ entsprechen, der Begriff „Nachricht“ mit einem Zeitraum gepaart sein, der eine abgelaufene Zeit vom Beginn der Audiodaten bis zum Beginn von „Nachricht“ und eine abgelaufene Zeit vom Beginn der Audiodaten bis zum Beginn von „an“ anzeigt.
  • Bei einigen Implementierungen kann der Spracherkenner 210 die identifizierten Begriffe an den Benutzerschnittstellenerzeuger 220 bereitstellen. Der Benutzerschnittstellenerzeuger 220 kann eine Schnittstelle erzeugen, welche die identifizierten Begriffe umfasst. Die Schnittstelle kann die wählbaren Optionen zum Wiedergeben der Audiodaten umfassen, die jedem von den identifizierten Begriffen entsprechen. Unter Verwendung des vorstehenden Beispiels kann der Benutzer auswählen, die Audiodaten wiederzugeben, die „Alice“ entsprechen. Nach dem Empfangen der Auswahl gibt das System 200 die Audiodaten wieder, die dem Beginn von „Alice“ bis zum Beginn von „Ich“ entsprechen. Der Benutzer kann ein Feedback bereitstellen, wenn irgendwelche der Audiodaten nicht dem korrekten Begriff entsprechen. Der Benutzerschnittstellenerzeuger kann beispielsweise eine Audiobearbeitungsdarstellung oder ein -diagramm der Audiodaten gegenüber der Zeit bereitstellen, wo der Benutzer den Abschnitt auswählen kann, der einem bestimmten Begriff entspricht. Dies kann hilfreich sein, wenn die Audiodaten, die das System als „dran“ entsprechend identifiziert hat, tatsächlich nur „dr“ entsprechen. Der Benutzer kann dann den entsprechenden Audioabschnitt manuell erweitern, um den Abschnitt „an“ zu erfassen. Wenn der Benutzer auf diese Weise oder mit irgendeinem anderen Feedbackmechanismus ein Feedback bereitstellt, kann der Spracherkenner das Feedback verwenden, um die Modelle zu trainieren.
  • Bei einigen Implementierungen kann der Spracherkenner 210 konfiguriert sein, nur eine oder mehrere Sprachen zu erkennen. Die Sprachen können auf einer Einstellung basieren, die vom Benutzer im System ausgewählt wird. Der Spracherkenner 210 kann beispielsweise konfiguriert sein, nur Englisch zu erkennen. Wenn in diesem Fall ein Benutzer Spanisch spricht, versucht der Spracherkenner immer noch, englische Worte und Töne zu identifizieren, die der spanischen Äußerung entsprechen. Ein Benutzer kann „Text-Bob se me hace tarde“ (“Text Bob Ich bin spät dran“) sprechen und der Spracherkenner kann „Text-Bob sende Aceton“ transkribieren. Wenn der Spracherkenner beim Abgleichen des spanischen Abschnitts der Äußerung mit der „sende Aceton“-Transkription erfolglos ist, dann kann der Benutzer das Audiodiagramm verwenden, um die Audiodaten, die „se me“ entsprechen, mit der „sende“-Transkription und die Audiodaten, die „hace tarde“ entsprechen, mit der „Aceton“-Transkription abzugleichen.
  • Der Spracherkenner 210 stellt die Transkription an den Transkriptionsbegriffklassifizierer 230 bereit. Der Transkriptionsbegriffklassifizierer 230 klassifiziert jedes Wort oder jede Gruppe von Worten als ein Sprachbefehltriggerbegriff, ein Objekt eines Sprachbefehltriggerbegriffs oder einen Empfänger. Bei einigen Implementierungen kann der Transkriptionsbegriffklassifizierer 230 unfähig sein, einen Sprachbefehltriggerbegriff zu identifizieren. In diesem Fall kann das System 200 dem Benutzer einen Fehler anzeigen und anfordern, dass der Benutzer die Äußerung erneut spricht oder eine Äußerung mit einem unterschiedlichen Befehl spricht. Wie vorstehend im Zusammenhang mit 1 beschrieben, können einige Sprachbefehltriggerbegriffe kein Objekt oder keinen Empfänger erfordern. Bei einigen Implementierungen kann der Transkriptionsbegriffklassifizierer 230 auf eine Liste von Sprachbefehltriggerbegriffen zugreifen, die entweder lokal auf dem System oder entfernt gespeichert sind, um beim Identifizieren von Sprachbefehltriggerbegriffen zu unterstützen. Die Liste von Sprachbefehltriggerbegriffen umfasst eine Liste von Sprachbefehltriggerbegriffen, für die das System eine Aktion auszuführen kann. Bei einigen Implementierungen kann der Transkriptionsbegriffklassifizierer 230 auf eine Kontakteliste zugreifen, die entweder lokal auf dem System oder entfernt gespeichert ist, um beim Identifizieren von Empfängern zu unterstützen. In einigen Fällen identifiziert der Transkriptionsbegriffklassifizierer 230 den Sprachbefehltriggerbegriff und den Empfänger und es gibt immer noch Begriffe, die in der Transkription verbleiben. In diesem Fall kann der Transkriptionsbegriffklassifizierer 230 die restlichen Begriffe als das Objekt des Sprachbefehltriggerbegriffs klassifizieren. Dies kann hilfreich sein, wenn das Objekt in einer anderen Sprache gesprochen wurde. Es wird weiterhin Bezug genommen auf das Äußerungsbeispiel „Text-Bob se me hace tarde“, bei dem die Transkription „Text-Bob sende Aceton“ war. Der Transkriptionsbegriffklassifizierer 230 kann den Abschnitt „sende Aceton“ als das Objekt klassifizieren, nachdem er „Text“ als den Sprachbefehltriggerbegriff und „Bob“ als den Empfänger klassifiziert hat.
  • Der Spracherkenner 210 stellt die Transkription und die Audiodaten an den Sprachidentifikator 225 bereit. Bei einigen Implementierungen kann der Spracherkenner 210 Konfidenzpunktzahlen für jeden von den Begriffen der transkribierten Begriffe bereitstellen. Der Sprachidentifikator 225 kann die Transkription, die Audiodaten und die Konfidenzpunktzahlen vergleichen, um eine Sprache oder Sprachen der Äußerung zu bestimmen. Niedrige Konfidenzpunktzahlen können das Vorhandensein einer anderen Sprache als der durch den Spracherkenner 210 verwendeten Sprache anzeigen. Der Sprachidentifikator 225 kann eine Liste von möglichen Sprachen empfangen, die der Benutzer durch die Benutzerschnittstelle eingibt. Ein Benutzer kann beispielsweise anzeigen, dass der Benutzer in Englisch und Spanisch spricht, und dann kann der Sprachidentifikator 225 Abschnitte der Transkription als entweder Englisch oder Spanisch bezeichnen. Bei einigen Implementierungen kann der Benutzer dem System Kontakte anzeigen, bei denen es wahrscheinlich ist, dass sie eine Nachricht in einer anderen Sprache empfangen als die primäre Sprache des Spracherkenners 210. Ein Benutzer kann beispielsweise anzeigen, dass der Kontakt Bob wahrscheinlich Nachrichten in Spanisch empfängt. Der Sprachidentifikator 225 kann diese Informationen und die Konfidenzpunktzahlen verwenden, um den Abschnitt „sende Aceton“ des vorstehenden Beispiels als Spanisch zu identifizieren.
  • Der Audio-Slicer 235 empfängt Daten vom Sprachidentifikator 225, dem Transkriptionsbegriffklassifizierer 230 und dem Spracherkenner 210. Der Sprachidentifikator 225 stellt Daten bereit, die in den Audiodaten identifizierte Sprachen anzeigen. Der Transkriptionsbegriffklassifizierer 230 stellt Daten bereit, die den Sprachbefehltriggerbegriff, das Objekt des Sprachbefehltriggerbegriffs und den Empfänger anzeigen. Der Spracherkenner stellt die Transkription, die Audiodaten und die Timing-Daten bereit. Der Audio-Slicer 235 isoliert das Objekt des Sprachbefehltriggerbegriffs durch Entfernen der Abschnitte der Audiodaten, die dem Objekt des Sprachbefehltriggerbegriffs nicht entsprechen. Der Audio-Slicer 235 isoliert das Objekt unter Verwendung der Timing-Daten, um die Abschnitte der Audiodaten zu identifizieren, die dem Objekt des Sprachbefehltriggerbegriffs nicht entsprechen.
  • Der Audio-Slicer 235 bestimmt, ob das Objekt des Sprachbefehltriggerbegriffs isoliert werden soll, basierend auf einer Anzahl an Faktoren, die in jeder Kombination verwendet werden können. Einer dieser Faktoren, und bei einigen Implementierungen der einzige Faktor, kann der Vergleich des Sprachbefehltriggerbegriffs mit der Gruppe von Sprachbefehltriggerbegriffen 240 sein. Wenn der Sprachbefehltriggerbegriff mit einem in der Gruppe von Sprachbefehltriggerbegriffen 240 übereinstimmt, dann isoliert der Audio-Slicer die Audiodaten des Objekts des Sprachbefehltriggerbegriffs.
  • Ein anderer Faktor kann auf einer von der Benutzerschnittstelle empfangenen Eingabe basieren. Der Audio-Slicer 235 kann Daten an den Benutzerschnittstellenerzeuger 220 zum Anzeigen von Informationen bereitstellen, die mit dem Isolieren der Audiodaten des Objekts des Sprachbefehltriggerbegriffs verbunden sind. Der Benutzerschnittstellenerzeuger 220 kann eine Eingabeaufforderung anzeigen, die den Benutzer fragt, ob der Benutzer Audio senden möchte, das „sende Aceton“ entspricht. Die Benutzerschnittstelle kann eine Option zum Wiedergeben der Audiodaten, die „sende Aceton“ entsprechen, umfassen. In diesem Fall können die Audiodaten die Audiodaten des Objekts des Sprachbefehltriggerbegriffs probeweise isolieren und die isolierten Audiodaten an die nächste Stufe weitergeben, wenn der Benutzer dies verlangt.
  • Ein weiterer Faktor kann auf den Sprachen basieren, die durch den Sprachidentifikator 225 identifiziert werden. Ein Benutzer kann anfordern, dass der Audio-Slicer 235 die Audiodaten des Objekts des Sprachbefehltriggerbegriffs isoliert, wenn der Benutzer das Objekt des Sprachbefehltriggerbegriffs in einer unterschiedlichen Sprache spricht als die anderen Abschnitte der Äußerung, wie beispielsweise den Sprachbefehltriggerbegriff. Wenn beispielsweise ein Benutzer „Text-Bob se me hace tarde“ spricht und der Sprachidentifikator 225 die Sprachen als Spanisch und Englisch identifiziert, kann der Audio-Slicer 235 die Audiodaten des Objekts des Sprachbefehltriggerbegriffs als Reaktion auf eine durch den Benutzer eingegebene Einstellung isolieren, um die Audiodaten des Objekts des Sprachbefehltriggerbegriffs zu isolieren, wenn das Objekt in einer unterschiedlichen Sprache ist als der Triggerbegriff, oder wenn das Objekt in einer bestimmten Sprache wie Spanisch ist.
  • Ein weiterer Faktor kann auf dem Empfänger basieren. Ein Benutzer kann anfordern, dass der Audio-Slicer 235 die Audiodaten des Objekts des Sprachbefehltriggerbegriffs isoliert, wenn der Empfänger als einer identifiziert wird, der Audiodaten des Objekts empfangen soll. Der Benutzer kann beispielsweise durch eine Benutzerschnittstelle, Befehle bereitstellen, um dem Empfänger Bob Audiodaten des Objekts bereitzustellen. Wenn der Audio-Slicer 235 eine Transkription mit Bob als identifiziertem Empfänger empfängt, dann isoliert der Audio-Slicer 235 das Objekt des Sprachbefehltriggerbegriffs und stellt die Audiodaten an die nächste Stufe bereit.
  • Bei einigen Implementierungen kann der Audio-Slicer 235 die Audiodaten des Objekts des Sprachbefehltriggerbegriffs basierend sowohl auf den identifizierten Sprachen der Audiodaten als auch auf dem Empfänger isolieren. Ein Benutzer kann beispielsweise durch eine Benutzerschnittstelle, Befehle bereitstellen, um dem Empfänger Bob Audiodaten des Objekts bereitzustellen, wenn das Objekt in einer bestimmten Sprache wie Spanisch ist. Unter Verwendung des gleichen Beispiels würde der Audio-Slicer „se me hace tarde“ isolieren, da der Empfänger Bob ist und „se me hace tarde“ Spanisch ist.
  • Bei einigen Implementierungen kann der Audio-Slicer 235 dem Benutzer ermöglichen, die Audiodaten des Objekts des Sprachbefehltriggerbegriffs vor dem Senden anzuhören. Der Audio-Slicer 235 kann die Transkription des Objekts des Sprachbefehltriggerbegriffs und der Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Benutzerschnittstellenerzeuger 220 bereitstellen. Der Benutzerschnittstellenerzeuger 235 kann eine Schnittstelle bereitstellen, die dem Benutzer ermöglicht, die Transkription des Objekts auszuwählen, um die entsprechenden Audiodaten zu hören. Die Schnittstelle kann dem Benutzer auch die Option bereitstellen, die Audiodaten des Objekts an den Empfänger zu senden, die auch auf der Benutzerschnittstelle bereitgestellt werden kann.
  • Der Audio-Slicer 235 stellt die Transkription des Objekts des Sprachbefehltriggerbegriffs, die Audiodaten des Objekts des Sprachbefehltriggerbegriffs, den Empfänger und den Sprachbefehltriggerbegriff an den Datenstrukturerzeuger 245 bereit. Der Datenstrukturerzeuger 245 erzeugt eine Datenstruktur gemäß dem Sprachbefehltriggerbegriff, die zum Senden an den Empfänger bereit ist und die Audiodaten und die Transkription des Objekts des Sprachbefehltriggerbegriffs umfasst. Der Datenstrukturerzeuger 245 greift auf die Kontaktliste 250 zu, um eine Kontaktnummer oder -adresse des Empfängers zu identifizieren. Dem gleichen Beispiel folgend erzeugt der Datenstrukturerzeuger 245 durch Befolgen der Befehle, die dem „Text“ Sprachbefehltriggerbegriff entsprechen, eine Datenstruktur, welche die Transkription und die Audiodaten „se me hace tarde“ umfasst, und identifiziert die Kontaktinformationen für den Empfänger Bob in der Kontaktliste 250. Der Datenstrukturerzeuger 245 stellt die Datenstruktur an den Teil des Systems bereit, der die Datenstruktur an die Vorrichtung von Bob sendet.
  • Bei einigen Implementierungen befinden sich der Spracherkenner 210, Takt 215, Sprachidentifikator 225, Transkriptionsbegriffklassifizierer 230, Audio-Slicer 235, die Sprachbefehltriggerbegriffe 240 und der Datenstrukturerzeuger 245 auf einem Server 275, der eine oder mehrere Computervorrichtungen umfassen kann. Das Audiosubsystem 205 und die Kontakte 250 befinden sich auf einer Benutzervorrichtung. Bei einigen Implementierungen können sich die Kontakte 250 sowohl auf der Benutzervorrichtung als auch auf dem Server 275 befinden. Bei einigen Implementierungen befindet sich der Benutzerschnittstellenerzeuger 220 auf der Benutzervorrichtung. In diesem Fall stellt der Server 275 Daten zum Anzeigen auf der Benutzervorrichtung an den Benutzerschnittstellenerzeuger 220 bereit, welcher dann eine Benutzerschnittstelle für die Benutzervorrichtung erzeugt. Die Benutzervorrichtung und der Server 275 kommunizieren über ein Netzwerk wie beispielsweise das Internet.
  • 3 veranschaulicht einen beispielhaften Prozess 300, der Audiodaten und eine Transkription der Audiodaten in eine Datenstruktur kombiniert. Im Allgemeinen erzeugt der Prozess 300 eine Datenstruktur, die eine Transkription einer Äußerung und Audiodaten der Äußerung umfasst, und sendet die Datenstruktur an einen Empfänger. Der Prozess 300 wird als, durch ein Computersystem ausgeführt beschrieben, das einen oder mehrere Computer, wie beispielsweise entsprechend die Vorrichtungen 105, System 200 oder den Server 275 wie gezeigt in den 1 und 2 umfasst.
  • Das System empfängt Audiodaten, die einer Äußerung (310) entsprechen. Das System kann beispielsweise Audiodaten von einem Benutzer empfangen, der „sende eine Nachricht an Alice, dass der Scheck in der Post ist“ spricht. Das System erzeugt eine Transkription der Äußerung (320). Bei einigen Implementierungen erzeugt das System Timing-Daten für jeden Begriff der Transkription während oder nachdem das System die Transkription der Äußerung erzeugt. Die Timing-Daten können die abgelaufene Zeit vom Beginn der Äußerung bis zum Beginn jedes Begriffs anzeigen. Die Timing-Daten für „Nachricht“ wäre die Zeit vom Beginn der Äußerung bis zum Beginn von „Nachricht“.
  • Das System klassifiziert einen ersten Abschnitt der Transkription als einen Sprachbefehltriggerbegriff und einen zweiten Abschnitt der Transkription als ein Objekt des Sprachbefehltriggerbegriffs (330). Bei einigen Implementierungen klassifiziert das System einen dritten Abschnitt der Transkription als den Empfänger. Dem gleichen Beispiel folgend klassifiziert das System „sende eine Nachricht an“ als den Sprachbefehltriggerbegriff. Das System klassifiziert zudem „Alice“ als den Empfänger. Bei einigen Implementierungen kann das System „dass“ als Teil des Sprachbefehltriggerbegriffs klassifizieren, sodass der Sprachbefehltriggerbegriff „sende eine Nachricht an ..., dass“ ist. In diesem Fall klassifiziert das System das Objekt des Sprachbefehltriggerbegriffs, als „der Scheck ist in der Post“. Wie in diesem Beispiel veranschaulicht ist der Sprachbefehltriggerbegriff ein Befehl, eine Nachricht zu senden, und das Objekt des Sprachbefehltriggerbegriffs ist die Nachricht.
  • Das System bestimmt, dass der Sprachbefehltriggerbegriff mit einem Sprachbefehltriggerbegriff übereinstimmt, für den ein Resultat des Verarbeitens ist, sowohl eine Transkription eines Objekts des Sprachbefehltriggerbegriffs als auch Audiodaten des Objekts des Sprachbefehltriggerbegriffs in einer erzeugten Datenstruktur einzuschließen (340). Das System kann beispielsweise auf eine Gruppe von Sprachbefehltriggerbegriffen zugreifen, die bei Verarbeitung das System veranlassen, sowohl die Audiodaten als auch die Transkription des Objekts des Sprachbefehltriggers zu senden. Dem vorstehenden Beispiel folgend identifiziert das System eine Übereinstimmung, wenn die Gruppe den Sprachbefehltriggerbegriff „sende eine Nachricht an“ umfasst.
  • Das System isoliert die Audiodaten des Objekts des Sprachbefehltriggerbegriffs (350). Bei einigen Implementierungen isoliert das System die Audiodaten unter Verwendung der Timing-Daten. Das System entfernt beispielsweise die Audiodaten von vor „der Scheck“ und nach „Post“ durch Abgleichen der Timing-Daten von „der Scheck“ und „Post“ mit den Audiodaten. Bei einigen Implementierungen identifiziert das System die Sprache der Äußerung oder von einem Abschnitt der Äußerung. Basierend auf der Sprache kann das System die Audiodaten des Objekts des Sprachbefehltriggerbegriffs isolieren. Das System kann beispielsweise die Audiodaten isolieren, wenn ein Abschnitt der Äußerung in Spanisch gesprochen wurde.
  • Das System erzeugt eine Datenstruktur, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und der Audiodaten des Objekts des Sprachbefehltriggerbegriffs (360) umfasst. Das System kann die Datenstruktur basierend auf dem Sprachbefehltriggerbegriff erzeugen. Bei einem Sprachbefehltriggerbegriff „sende eine Nachricht an“ kann die Datenstruktur beispielsweise die Transkription und die Audiodaten von „der Scheck ist in der Post“ umfassen. Das System kann dann die Datenstruktur an den Empfänger senden. Bei einigen Implementierungen kann das System die Datenstruktur basierend auf der Sprache der Äußerung oder einem Abschnitt der Äußerung erzeugen. Das System kann beispielsweise die Datenstruktur, welche die Transkription und Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst, basierend auf dem Objekt, das in Spanisch gesprochen wird, erzeugen.
  • Bei einigen Implementierungen kann das System eine Benutzerschnittstelle erzeugen, die dem Benutzer ermöglicht, das System anzuweisen, sowohl die Transkription als auch die Audiodaten des Objekts des Sprachbefehltriggerbegriffs an den Empfänger zu senden. In diesem Fall kann das System den Befehl durch Isolieren des Sprachbefehltriggerbegriffs oder Erzeugen der Datenstruktur ansprechen.
  • 4 zeigt ein Beispiel einer Computervorrichtung 400 und einer mobilen Computervorrichtung 450, die verwendet werden können, um die hier beschriebenen Techniken zu implementieren. Die Computervorrichtung 400 soll verschiedene Formen von digitalen Computern wie Laptops, Desktops, Arbeitsstationen, Personal Digital Assistants, Fernseher, Server, Blade-Server, Mainframes und andere geeignete Computer darstellen. Die mobile Computervorrichtung 450 soll verschiedene Formen mobiler Vorrichtungen, wie Personal Digital Assistants, Mobiltelefone, Smartphones und andere ähnliche Computervorrichtungen darstellen. Die hier gezeigten Komponenten, ihre Verbindungen und Beziehungen und ihre Funktionen sollen nur Beispiele sein und sind nicht dazu beabsichtigt, zu begrenzen.
  • Die Computervorrichtung 400 umfasst einen Prozessor 402, einen Speicher 404, eine Speichervorrichtung 406, eine Hochgeschwindigkeitsschnittstelle 408, die mit dem Speicher 404 verbindet, und mehrere Hochgeschwindigkeitserweiterungsanschlüsse 410 und eine Niedergeschwindigkeitsschnittstelle 412, die mit einem Niedergeschwindigkeitserweiterungsanschluss 414 verbindet, und die Speichervorrichtung 406. Der Prozessor 402, der Speicher 404, die Speichervorrichtung 406, die Hochgeschwindigkeitsschnittstelle 408, die Hochgeschwindigkeitserweiterungsanschlüsse 410 und die Niedergeschwindigkeitsschnittstelle 412 sind jeweils unter Verwendung verschiedener Busse miteinander verbunden und können auf einer gemeinsamen Hauptplatine oder auf andere Weisen wie jeweils anwendbar angebracht sein. Der Prozessor 402 kann Befehle zur Ausführung innerhalb der Computervorrichtung 400 verarbeiten, die Befehle umfassen, die in dem Speicher 404 oder auf der Speichervorrichtung 406 gespeichert sind, um grafische Informationen für eine GUI auf einer externen Eingabe-/Ausgabevorrichtung wie einer Anzeige 416, die mit der Hochgeschwindigkeitsschnittstelle 408 verbunden ist, anzuzeigen. Bei anderen Implementierungen können mehrere Prozessoren und/oder mehrere Busse, wie jeweils anwendbar, zusammen mit mehreren Speichern und Speicherarten verwendet sein. Es können außerdem auch mehrere Computervorrichtungen verbunden sein, wobei jede Vorrichtung Teile der notwendigen Vorgänge bereitstellt (z. B. als eine Serverbank, eine Gruppe von Blade-Servern oder ein Mehrprozessorsystem).
  • Der Speicher 404 speichert Informationen innerhalb der Computervorrichtung 400. Bei einigen Implementierungen ist der Speicher 404 eine flüchtige Speichereinheit oder -einheiten. Bei einigen Implementierungen ist der Speicher 404 eine nichtflüchtige Speichereinheit oder -einheiten. Der Speicher 404 kann auch eine andere Form von computerlesbarem Medium sein, wie beispielsweise ein magnetischer oder optischer Datenträger.
  • Die Speichervorrichtung 406 ist in der Lage, Massenspeicher für die Computervorrichtungen 400 bereitzustellen. Bei einigen Implementierungen kann die Speichervorrichtung 406 ein computerlesbares Medium sein oder beinhalten, wie ein Floppy-Disk-Laufwerk, ein Festplattenlaufwerk, ein optisches Laufwerk, eine Magnetbandeinheit, ein Flash-Speicher oder eine andere ähnliche Solid-State-Speichervorrichtung oder eine Reihe von Vorrichtungen, einschließlich Vorrichtungen in einem Speichernetzwerk oder anderen Konfigurationen. Befehle können in einem Informationsträger gespeichert werden. Die Befehle führen bei Ausführung durch ein oder mehrere Verarbeitungsvorrichtungen (beispielsweise Prozessor 402) ein oder mehrere Verfahren wie diejenigen, die vorstehend beschrieben sind, aus. Die Befehle können auch durch eine oder mehrere Speichervorrichtungen wie computer - oder maschinenlesbare Medien (beispielsweise der Speicher 404, die Speichervorrichtung 406 oder Speicher auf dem Prozessor 402) gespeichert werden.
  • Die Hochgeschwindigkeitsschnittstelle 408 verwaltet bandbreitenintensive Operationen für die Computervorrichtung 400, während die Niedergeschwindigkeitsschnittstelle 412 niedrigere bandbreitenintensive Operationen verwaltet. Eine solche Zuordnung von Funktionen ist nur beispielhaft. Bei einigen Implementierungen ist die Hochgeschwindigkeitsschnittstelle 408 mit dem Speicher 404, der Anzeige 416 (z. B. durch einen Grafikprozessor oder Beschleuniger) und mit den Hochgeschwindigkeitserweiterungsanschlüssen 410 gekoppelt, die verschiedene Erweiterungskarten aufnehmen können. In der Implementierung ist die Niedergeschwindigkeitsschnittstelle 412 mit der Speichervorrichtung 406 und dem Niedergeschwindigkeitserweiterungsanschluss 414 gekoppelt. Der Niedergeschwindigkeitserweiterungsanschluss 414, der verschiedene Kommunikationsanschlüsse (z. B. USB, Bluetooth, Ethernet, drahtloses Ethernet) umfassen kann, kann mit einer oder mehreren Eingabe-/Ausgabevorrichtungen wie einer Tastatur, einer Zeigevorrichtung, einem Scanner oder einer Netzwerkvorrichtung wie einem Switch oder Router z. B. durch einen Netzwerkadapter gekoppelt sein.
  • Die Computervorrichtung 400 kann in einer Anzahl von unterschiedlichen Formen implementiert sein, wie es in der Figur gezeigt ist. So kann sie beispielsweise als ein Standardserver 420 oder in einer Gruppe solcher Server mehrfach implementiert sein. Zusätzlich kann sie in einem Personal Computer wie einem Laptop 422 implementiert sein. Sie kann außerdem als Teil eines Rackserversystems 424 implementiert sein. Alternativ können Komponenten von der Computervorrichtung 400 mit anderen Komponenten in einer mobilen Vorrichtung, wie einer mobilen Computervorrichtung 450 kombiniert werden. Jede solcher Vorrichtungen kann eine oder mehrere von der Computervorrichtung 400 und der mobilen Computervorrichtung 450 enthalten und ein vollständiges System kann aus mehreren Computervorrichtungen gebildet sein, die miteinander kommunizieren.
  • Die mobile Computervorrichtung 450 umfasst neben anderen Komponenten einen Prozessor 452, einen Speicher 464, eine Eingabe-/Ausgabevorrichtung wie eine Anzeige 454, eine Kommunikationsschnittstelle 466 und einen Transceiver 468. Die mobile Computervorrichtung 450 kann auch mit einer Speichervorrichtung, wie einem Microdrive oder einer andere Vorrichtung ausgestattet sein, um zusätzlichen Speicher bereitzustellen. Der Prozessor 452, der Speicher 464, die Anzeige 454, die Kommunikationsschnittstelle 466 und der Transceiver 468, sind jeweils unter Verwendung verschiedener Busse miteinander verbunden und mehrere von den Komponenten können auf einer gemeinsamen Hauptplatine oder auf anderen Weisen wie jeweils anwendbar angebracht sein.
  • Der Prozessor 452 kann Befehle innerhalb der mobilen Computervorrichtung 450 ausführen, einschließlich im Speicher 464 gespeicherter Befehle. Der Prozessor 452 kann als ein Chipsatz von Chips implementiert sein, die separate und mehrere analoge und digitale Prozessoren umfassen. Der Prozessor 452 kann beispielsweise die Koordination der anderen Komponenten der mobilen Computervorrichtung 450, wie beispielsweise die Steuerung von Benutzerschnittstellen, Anwendungen, die durch die mobile Computervorrichtung 450 ausgeführt werden, und drahtlose Kommunikation von der mobilen Computervorrichtung 450 bereitstellen.
  • Der Prozessor 452 kann mit einem Benutzer durch eine Steuerungsschnittstelle 458 und eine Displayschnittstelle 456, die mit der Anzeige 454 gekoppelt ist, kommunizieren. Die Anzeige 454 kann beispielsweise eine TFT- (Dünnschichttransistor-Flüssigkristallanzeige) -Anzeige oder ein OLED- (organische Leuchtdiode) -Anzeige oder eine andere geeignete Anzeigetechnologie sein. Die Anzeigeschnittstelle 456 kann geeignete Schaltungen zum Ansteuern der Anzeige 454 umfassen, um einem Benutzer grafische und andere Informationen zu präsentieren. Die Steuerschnittstelle 458 kann Befehle von einem Benutzer empfangen und sie zur Eingabe in den Prozessor 452 konvertieren. Außerdem kann eine äußere Schnittstelle 462 Kommunikation mit dem Prozessor 452 bereitstellen, um Nahbereichskommunikation der mobilen Computervorrichtung 450 mit anderen Vorrichtungen zu ermöglichen. Die externe Schnittstelle 462 kann beispielsweise bei manchen Implementierungen eine drahtgestützte Verbindung oder bei anderen Implementierungen eine drahtlose Verbindung sein, und es können auch mehrere Schnittstellen verwendet werden.
  • Der Speicher 464 speichert Informationen innerhalb der mobilen Computervorrichtung 450. Der Speicher 464 kann als ein oder mehrere von einem computerlesbaren Medium oder Medien, einem flüchtigen Speicher oder Speichern oder einem nicht flüchtigen Speicher oder Speichern implementiert sein. Ein Erweiterungsspeicher 474 kann ebenfalls bereitgestellt und mit der mobilen Computervorrichtung 450 durch eine Erweiterungsschnittstelle 472 verbunden sein, die zum Beispiel eine SIMM- (Single In Line Memory Module) -Kartenschnittstelle umfassen kann. Der Erweiterungsspeicher 474 kann zusätzlichen Speicherplatz für die mobile Computervorrichtung 450 bereitstellen oder kann auch Anwendungen oder andere Informationen für die mobile Computervorrichtung 450 speichern. Insbesondere kann der Erweiterungsspeicher 474 Befehle zum Ausführen oder Ergänzen der vorstehend beschriebenen Prozesse umfassen und er kann außerdem sichere Informationen umfassen. Daher kann der Erweiterungsspeicher 474 beispielsweise als ein Sicherheitsmodul für die mobile Computervorrichtung 450 bereitgestellt sein und er kann mit Befehlen programmiert sein, welche die sichere Verwendung der mobilen Computervorrichtung 450 erlauben. Zusätzlich dazu können über die SIMM-Karten sichere Anwendungen zusammen mit zusätzlichen Informationen, wie dem Ablegen von Identifizierungsinformationen auf der SIMM-Karte auf eine Weise, die nicht gehackt werden kann, bereitgestellt werden.
  • Der Speicher kann beispielsweise Flash-Speicher und/oder NVRAM-Speicher (nicht flüchtiger Random Access Memory) wie nachfolgend beschrieben umfassen. Bei einigen Implementierungen werden Befehle in einem Informationsträger gespeichert. Die Befehle führen bei Ausführung durch ein oder mehrere Verarbeitungsvorrichtungen (beispielsweise Prozessor 452) ein oder mehrere Verfahren wie diejenigen, die vorstehend beschrieben sind, aus. Die Befehle können auch durch eine oder mehrere Speichervorrichtungen, wie ein oder mehrere computer- oder maschinenlesbare Medien (beispielsweise der Speicher 464, der Erweiterungsspeicher 474 oder Speicher auf dem Prozessor 452) gespeichert werden. Bei einigen Implementierungen können die Befehle in einem propagierten Signal beispielsweise über den Transceiver 468 oder die externe Schnittstelle 462 empfangen werden.
  • Die mobile Computervorrichtung 450 kann durch die Kommunikationsschnittstelle 466 drahtlos kommunizieren, die wo erforderlich Digitalsignalverarbeitungsschaltungen umfassen kann. Die Kommunikationsschnittstelle 466 kann Kommunikationen unter verschiedenen Modi oder Protokollen, unter anderem beispielsweise GSM- (Global System for Mobile Communication) -Sprachverbindungen, SMS (Short Message Service), EMS (erweiterter Nachrichtenservice) oder MMS (Multimedia Messaging Service), CDMA (Code Division Multiple Access), TDMA (Time Division Multiple Access), PDC (Personal Digital Cellular System), WCDMA (Wideband Code Division Multiple Access), CDMA2000 oder GPRS (General Packet Radio System) bereitstellen. Eine derartige Kommunikation kann beispielsweise über den Transceiver 468 unter Verwendung einer Funkfrequenz erfolgen. Zusätzlich kann eine Kurzstreckenkommunikation stattfinden, wie unter Verwendung eines Bluetooth-, WLAN- oder eines anderen solchen Transceivers. Außerdem kann ein GPS- (globales Positionsbestimmungssystem) -Empfangsmodul 470 zusätzliche navigations- und ortsbezogene drahtlose Daten an die mobile Computervorrichtung 450 bereitstellen, die wie jeweils anwendbar durch Anwendungen verwendet werden können, die auf der mobilen Computervorrichtung 450 ausführen.
  • Die mobile Computervorrichtung 450 kann ebenfalls unter Verwendung eines Audiocodec 460, der gesprochene Informationen von einem Benutzer empfangen und diese in nutzbare digitale Informationen konvertieren kann, hörbar kommunizieren. Der Audiocodec 460 kann gleichermaßen einen hörbaren Ton für einen Benutzer beispielsweise über einen Lautsprecher, wie zum Beispiel in einem Handset einer mobilen Computervorrichtung 450, erzeugen. Ein derartiger Ton kann einen Ton von Sprachfernsprechverbindungen beinhalten, kann aufgenommene Töne (z. B. Sprachnachrichten, Musikdateien usw.) beinhalten und kann auch Töne, beinhalten, die von Anwendungen erzeugt werden, die auf der mobilen Computervorrichtung 450 betrieben werden.
  • Die mobile Computervorrichtung 450 kann in einer Anzahl von unterschiedlichen Formen implementiert sein, wie es in der Figur gezeigt ist. Sie kann beispielsweise als ein Mobiltelefon 480 implementiert sein. Sie kann außerdem als Teil eines Smartphones 482, Personal Digital Assistant oder einer anderen ähnlichen mobilen Vorrichtung implementiert sein.
  • Verschiedene Implementierungen der hier beschriebenen Systeme und Techniken können in digitalen elektronischen Schaltungen, integrierten Schaltungen, speziell konzipierten ASICs (anwendungsorientierten integrierten Schaltungen), Computerhardware, Firmware, Software und/oder Kombinationen davon realisiert sein. Diese verschiedenen Implementierungen können eine Implementierung in einem oder mehreren Computerprogrammen umfassen, die auf einem programmierbaren System ausführbar und/oder interpretierbar sind, das mindestens einen programmierbaren Prozessor umfasst, der ein spezieller oder für allgemeine Zwecke sein kann und der zum Empfangen von Daten und Anweisungen von und zum Übertragen von Daten und Anweisungen an ein Speichersystem, mindestens eine Eingabevorrichtung und mindestens eine Ausgabevorrichtung gekoppelt ist.
  • Diese Computerprogramme (auch bekannt als Programme, Software, Softwareanwendungen oder Code) umfassen Maschinenbefehle für einen programmierbaren Prozessor und können in einer höheren prozeduralen und/oder objektorientierten Programmiersprache und/oder in Assembler-/Maschinensprache implementiert sein. Wie hierin verwendet, bezeichnen die Begriffe „maschinenlesbares Medium“ und „computerlesbares Medium“ ein beliebiges Computerprogrammprodukt, eine beliebige Vorrichtung und/oder ein beliebiges Gerät (z. B. Magnetplatten, optische Platten, Speicher, programmierbare Logikbausteine (PLDs)), die verwendet werden, um einem programmierbaren Prozessor Maschinenbefehle und/oder Daten bereitzustellen, einschließlich eines maschinenlesbaren Mediums, das Maschinenbefehle als ein maschinenlesbares Signal empfängt. Der Begriff „maschinenlesbares Signal“ bezeichnet ein beliebiges Signal, das verwendet wird, um einem programmierbaren Prozessor Maschinenanweisungen und/oder Daten bereitzustellen.
  • Um eine Interaktion mit einem Benutzer bereitzustellen, können die hier beschriebenen Systeme und Techniken auf einem Computer implementiert werden, der eine Displayvorrichtung (wie z. B. einen CRT- (Kathodenstrahlröhre) oder LCD- (Flüssigkristallanzeige) -Monitor) aufweist, um dem Benutzer Informationen anzuzeigen, und eine Tastatur und eine Zeigeeinrichtung (z. B. eine Maus oder ein Trackball) mittels denen der Benutzer eine Eingabe an den Computer bereitstellen kann. Es können auch andere Arten von Einrichtungen verwendet werden, um für eine Interaktion mit einem Benutzer zu sorgen; beispielsweise kann eine an den Benutzer bereitgestellte Rückkopplung eine beliebige Form von sensorischer Rückkopplung sein, wie z. B. eine visuelle Rückkopplung, auditive Rückkopplung oder taktile Rückkopplung; und die Eingabe vom Benutzer kann in beliebiger Form empfangen werden, einschließlich akustischer, Sprach- oder taktiler Eingabe.
  • Die hier beschriebenen Systeme und Techniken können in einem Computersystem implementiert werden, das eine Backendkomponente (z. B. als einen Datenserver) umfasst, oder das eine Middlewarekomponente (z. B. einen Applikationsserver) umfasst, oder das eine Frontendkomponente (z. B. einen Clientcomputer mit einer grafischen Benutzerschnittstelle oder einem Webbrowser umfasst, durch die bzw. den ein Benutzer mit hier beschriebenen Systemimplementationen und Techniken interagieren kann) oder jeder Kombination aus solchen Backend-, Middleware- oder Frontendkomponenten. Die Komponenten des Systems können durch eine beliebige Form oder ein beliebiges Medium digitaler Datenkommunikation, wie z. B. ein Kommunikationsnetzwerk, miteinander verbunden sein). Beispiele von Kommunikationsnetzwerken umfassen ein lokales Netzwerk („LAN“), ein Fernnetzwerk („WAN“) und das Internet.
  • Das Computersystem kann Clients und Server umfassen. Ein Client und Server befinden sich im Allgemeinen entfernt voneinander und interagieren typischerweise über ein Kommunikationsnetzwerk. Die Beziehung zwischen Client und Server entsteht aufgrund von Computerprogrammen, die auf den jeweiligen Computern laufen und die eine Client-Server-Beziehung zueinander aufweisen.
  • Obwohl einige Implementierungen vorstehend im Detail beschrieben wurden, sind andere Modifikationen möglich. Während eine Kundenanwendung als Zugreifen auf den bzw. die Delegierten beschrieben ist, können bei anderen Implementierungen der bzw. die Delegierten durch andere Anwendungen verwendet werden, die durch einen oder mehrere Prozessoren implementiert sind, wie beispielsweise eine Anwendung, die auf einem oder mehreren Servern ausführt. Außerdem erfordern die in den Figuren dargestellten logischen Abläufe nicht die bestimmte dargestellte Reihenfolge oder sequenzielle Reihenfolge, um wünschenswerte Ergebnisse zu erzielen. Darüber hinaus können andere Aktionen vorgesehen oder Aktionen aus den beschriebenen Abläufen eliminiert werden und andere Komponenten können zu den beschriebenen Systemen hinzugefügt oder davon entfernt werden. Dementsprechend liegen andere Implementierungen im Geltungsbereich der folgenden Ansprüche.

Claims (20)

  1. Computerimplementiertes Verfahren, umfassend: Empfangen von Audiodaten, die einer Äußerung entsprechen; Erzeugen einer Transkription der Äußerung; Klassifizieren eines ersten Abschnitts der Transkription als ein Sprachbefehltriggerbegriff und eines zweiten Abschnitts der Transkription als ein Objekt des Sprachbefehltriggerbegriffs; Bestimmen, dass der Sprachbefehltriggerbegriff mit einem Sprachbefehltriggerbegriff übereinstimmt, für den ein Resultat des Verarbeitens daraus besteht, sowohl eine Transkription eines Objekts des Sprachbefehltriggerbegriffs als auch Audiodaten des Objekts des Sprachbefehltriggerbegriffs in einer erzeugten Datenstruktur einzuschließen; Isolieren der Audiodaten des Objekts des Sprachbefehltriggerbegriffs; und Erzeugen einer Datenstruktur, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst.
  2. Verfahren nach Anspruch 1, umfassend: Klassifizieren eines dritten Abschnitts der Transkription als einen Empfänger des Objekts des Sprachbefehltriggerbegriffs; und Senden der Datenstruktur an den Empfänger.
  3. Verfahren nach Anspruch 1, umfassend: Identifizieren einer Sprache der Äußerung, wobei die Datenstruktur basierend auf dem Bestimmen der Sprache der Äußerung erzeugt wird.
  4. Verfahren nach Anspruch 1, wobei: der Sprachbefehltriggerbegriff ein Befehl ist, eine Textnachricht zu senden, und das Objekt des Sprachbefehltriggerbegriffs die Textnachricht ist.
  5. Verfahren nach Anspruch 1, umfassend: Erzeugen einer Benutzerschnittstelle zum Anzeigen, die eine wählbare Option umfasst, um die Datenstruktur zu erzeugen, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst; und Empfangen von Daten, die eine Auswahl der wählbaren Option zum Erzeugen der Datenstruktur anzeigen, wobei die Datenstruktur als Reaktion auf das Empfangen der Daten, welche die Auswahl der wählbaren Option zum Erzeugen der Datenstruktur anzeigen, erzeugt wird.
  6. Verfahren nach Anspruch 1, umfassend: Erzeugen von Timing-Daten für jeden Begriff der Transkription der Äußerung, wobei die Audiodaten des Objekts des Sprachbefehltriggerbegriffs basierend auf den Timing-Daten isoliert werden.
  7. Verfahren nach Anspruch 6, wobei die Timing-Daten für jeden Begriff eine abgelaufene Zeit von einem Beginn der Äußerung zu einem Beginn des Begriffs und eine abgelaufene Zeit vom Beginn der Äußerung zu einem Beginn eines folgenden Begriffs identifizieren.
  8. System, umfassend: einen oder mehrere Computer und eine oder mehrere Speichervorrichtungen, die Befehle speichern, welche bei Ausführung durch den einen oder die mehreren Computer betriebsfähig sind, den einen oder die mehreren Computer zu veranlassen, Operationen auszuführen, die umfassen: Empfangen von Audiodaten, die einer Äußerung entsprechen; Erzeugen einer Transkription der Äußerung; Klassifizieren eines ersten Abschnitts der Transkription als einen Sprachbefehltriggerbegriff und eines zweiten Abschnitts der Transkription als ein Objekt des Sprachbefehltriggerbegriffs; Bestimmen, dass der Sprachbefehltriggerbegriff mit einem Sprachbefehltriggerbegriff übereinstimmt, für den ein Resultat des Verarbeitens daraus besteht, sowohl eine Transkription eines Objekts des Sprachbefehltriggerbegriffs als auch Audiodaten des Objekts des Sprachbefehltriggerbegriffs in einer erzeugten Datenstruktur einzuschließen; Isolieren der Audiodaten des Objekts des Sprachbefehltriggerbegriffs; und Erzeugen einer Datenstruktur, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst.
  9. System nach Anspruch 8, wobei die Operationen ferner umfassen: Klassifizieren eines dritten Abschnitts der Transkription als einen Empfänger des Objekts des Sprachbefehltriggerbegriffs; und Senden der Datenstruktur an den Empfänger.
  10. System nach Anspruch 8, wobei die Operationen ferner umfassen: Identifizieren einer Sprache der Äußerung, wobei die Datenstruktur basierend auf dem Bestimmen der Sprache der Äußerung erzeugt wird.
  11. System nach Anspruch 8, wobei: der Sprachbefehltriggerbegriff ein Befehl ist, eine Textnachricht zu senden, und das Objekt des Sprachbefehltriggerbegriffs die Textnachricht ist.
  12. System nach Anspruch 8, wobei die Operationen ferner umfassen: Erzeugen einer Benutzerschnittstelle zum Anzeigen, die eine wählbare Option umfasst, um die Datenstruktur zu erzeugen, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst; und Empfangen von Daten, die eine Auswahl der wählbaren Option zum Erzeugen der Datenstruktur anzeigen, wobei die Datenstruktur als Reaktion auf das Empfangen der Daten, welche die Auswahl der wählbaren Option zum Erzeugen der Datenstruktur anzeigen, erzeugt wird.
  13. System nach Anspruch 8, wobei die Operationen ferner umfassen: Erzeugen von Timing-Daten für jeden Begriff der Transkription der Äußerung, wobei die Audiodaten des Objekts des Sprachbefehltriggerbegriffs basierend auf den Timing-Daten isoliert werden.
  14. System nach Anspruch 13, wobei die Timing-Daten für jeden Begriff eine abgelaufene Zeit von einem Beginn der Äußerung zu einem Beginn des Begriffs und eine abgelaufene Zeit vom Beginn der Äußerung zu einem Beginn eines folgenden Begriffs identifizieren.
  15. Nicht flüchtiges computerlesbares Medium, das Software speichert, die Befehle umfasst, welche durch einen oder mehrere Computer ausführbar sind, die bei einer solchen Ausführung den einen oder die mehreren Computer veranlassen, Operationen auszuführen, die umfassen: Empfangen von Audiodaten, die einer Äußerung entsprechen; Erzeugen einer Transkription der Äußerung; Klassifizieren eines ersten Abschnitts der Transkription als einen Sprachbefehltriggerbegriff und eines zweiten Abschnitts der Transkription als ein Objekt des Sprachbefehltriggerbegriffs; Bestimmen, dass der Sprachbefehltriggerbegriff mit einem Sprachbefehltriggerbegriff übereinstimmt, für den ein Resultat des Verarbeitens daraus besteht, sowohl eine Transkription eines Objekts des Sprachbefehltriggerbegriffs als auch Audiodaten des Objekts des Sprachbefehltriggerbegriffs in einer erzeugten Datenstruktur einzuschließen; Isolieren der Audiodaten des Objekts des Sprachbefehltriggerbegriffs; und Erzeugen einer Datenstruktur, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst.
  16. Medium nach Anspruch 15, wobei die Operationen ferner umfassen: Klassifizieren eines dritten Abschnitts der Transkription als einen Empfänger des Objekts des Sprachbefehltriggerbegriffs; und Senden der Datenstruktur an den Empfänger.
  17. Medium nach Anspruch 15, wobei die Operationen ferner umfassen: Identifizieren einer Sprache der Äußerung, wobei die Datenstruktur basierend auf dem Bestimmen der Sprache der Äußerung erzeugt wird.
  18. Medium nach Anspruch 15, wobei: der Sprachbefehltriggerbegriff ein Befehl ist, eine Textnachricht zu senden, und das Objekt des Sprachbefehltriggerbegriffs die Textnachricht ist.
  19. Medium nach Anspruch 15, wobei die Operationen ferner umfassen: Erzeugen einer Benutzerschnittstelle zum Anzeigen, die eine wählbare Option umfasst, um die Datenstruktur zu erzeugen, welche die Transkription des Objekts des Sprachbefehltriggerbegriffs und die Audiodaten des Objekts des Sprachbefehltriggerbegriffs umfasst; und Empfangen von Daten, die eine Auswahl der wählbaren Option zum Erzeugen der Datenstruktur anzeigen, wobei die Datenstruktur als Reaktion auf das Empfangen der Daten, welche die Auswahl der wählbaren Option zum Erzeugen der Datenstruktur anzeigen, erzeugt wird.
  20. Medium nach Anspruch 15, wobei die Operationen ferner umfassen: Erzeugen von Timing-Daten für jeden Begriff der Transkription der Äußerung, wobei die Audiodaten des Objekts des Sprachbefehltriggerbegriffs basierend auf den Timing-Daten isoliert werden.
DE102017115383.7A 2016-07-13 2017-07-10 Audio-slicer Ceased DE102017115383A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/209,064 2016-07-13
US15/209,064 US20180018961A1 (en) 2016-07-13 2016-07-13 Audio slicer and transcription generator

Publications (1)

Publication Number Publication Date
DE102017115383A1 true DE102017115383A1 (de) 2018-01-18

Family

ID=59276923

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017115383.7A Ceased DE102017115383A1 (de) 2016-07-13 2017-07-10 Audio-slicer

Country Status (5)

Country Link
US (1) US20180018961A1 (de)
EP (1) EP3469583A1 (de)
CN (1) CN107622768B (de)
DE (1) DE102017115383A1 (de)
WO (1) WO2018013343A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11164570B2 (en) * 2017-01-17 2021-11-02 Ford Global Technologies, Llc Voice assistant tracking and activation
US10579641B2 (en) * 2017-08-01 2020-03-03 Salesforce.Com, Inc. Facilitating mobile device interaction with an enterprise database system
CN108039175B (zh) * 2018-01-29 2021-03-26 北京百度网讯科技有限公司 语音识别方法、装置及服务器
US10621983B2 (en) 2018-04-20 2020-04-14 Spotify Ab Systems and methods for enhancing responsiveness to utterances having detectable emotion
US10964324B2 (en) 2019-04-26 2021-03-30 Rovi Guides, Inc. Systems and methods for enabling topic-based verbal interaction with a virtual assistant
JP6774120B1 (ja) * 2019-05-14 2020-10-21 株式会社インタラクティブソリューションズ 自動報告書作成システム
CN111901538B (zh) * 2020-07-23 2023-02-17 北京字节跳动网络技术有限公司 一种字幕生成方法、装置、设备及存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173259B1 (en) * 1997-03-27 2001-01-09 Speech Machines Plc Speech to text conversion
US6738745B1 (en) * 2000-04-07 2004-05-18 International Business Machines Corporation Methods and apparatus for identifying a non-target language in a speech recognition system
JP3980331B2 (ja) * 2001-11-20 2007-09-26 株式会社エビデンス 多言語間会話支援システム
KR20040024354A (ko) * 2002-09-14 2004-03-20 삼성전자주식회사 이동통신 단말기에서의 다국어 지원방법 및 그를 위한통신 시스템
TWI281145B (en) * 2004-12-10 2007-05-11 Delta Electronics Inc System and method for transforming text to speech
EP1679867A1 (de) * 2005-01-06 2006-07-12 Orange SA Anpassung von VoiceXML Anwendungen
US8565810B1 (en) * 2007-10-24 2013-10-22 At&T Mobility Ii Llc Systems and methods for managing event related messages using a mobile station
US8351581B2 (en) * 2008-12-19 2013-01-08 At&T Mobility Ii Llc Systems and methods for intelligent call transcription
CN101944090B (zh) * 2009-07-10 2016-09-28 阿尔派株式会社 电子设备及显示方法
US9662676B2 (en) * 2010-03-26 2017-05-30 Medmix Systems Ag Luer-connector with retaining screw for attachment to an administration device
US9129591B2 (en) * 2012-03-08 2015-09-08 Google Inc. Recognizing speech in multiple languages
JP5904827B2 (ja) * 2012-03-09 2016-04-20 日立オートモティブシステムズ株式会社 回転電機
CN103067265B (zh) * 2012-12-19 2016-04-06 上海市共进通信技术有限公司 应用于家庭网关的多语言web用户界面显示控制方法
US9058805B2 (en) * 2013-05-13 2015-06-16 Google Inc. Multiple recognizer speech recognition
CN104575499B (zh) * 2013-10-09 2019-12-20 上海携程商务有限公司 移动终端的声控方法及移动终端
US9292488B2 (en) * 2014-02-01 2016-03-22 Soundhound, Inc. Method for embedding voice mail in a spoken utterance using a natural language processing computer system

Also Published As

Publication number Publication date
WO2018013343A1 (en) 2018-01-18
CN107622768B (zh) 2021-09-28
US20180018961A1 (en) 2018-01-18
CN107622768A (zh) 2018-01-23
EP3469583A1 (de) 2019-04-17

Similar Documents

Publication Publication Date Title
DE102017115383A1 (de) Audio-slicer
DE102017121086B4 (de) Zusammenwirkende sprachgesteuerte geräte
DE202017105669U1 (de) Modalitätslernen an mobilen Vorrichtungen
DE102017125396B4 (de) Abfrage-Endpunktbestimmung auf Basis der Lippenerkennung
DE202017104895U1 (de) Hotword-Detektion bei mehreren Vorrichtungen
DE102015110621B4 (de) Intelligente Untertitel
DE102016125812A1 (de) Erlernen von Aussprachen einer personalisierten Entität
DE102011054197B4 (de) Selektive Übertragung von Sprachdaten
DE212015000207U1 (de) Verbesserung der automatischen Spracherkennung basierend auf Benutzerrückmeldungen
CN109147779A (zh) 语音数据处理方法和装置
DE102016125954A1 (de) Sprachwiedererkennung mit externen Datenquellen
DE202017105741U1 (de) Automatisierte Sprachaussprachezuteilung
DE112005000924T5 (de) Stimme über Short Message Service
DE112013000760B4 (de) Automatisches korrigieren von Sprechfehlern in Echtzeit
DE102020202489A1 (de) Verfahren und system zur sehr genauen schlüsselausdruckserkennung für vorrichtung mit geringen ressourcen
DE102016125141A1 (de) Suchergebnis unter vorherigem Abrufen von Sprachanfragen
CN110619878B (zh) 用于办公系统的语音交互方法和装置
DE102017129484A1 (de) Spracherkennung ohne unterbrechen der audiowiedergabe
CN109361527A (zh) 语音会议记录方法及系统
DE102016109521A1 (de) Multimodale Disambiguierung einer sprachunterstützten Eingabe
DE112019000305T5 (de) Automatische ausführung von aktionen durch eine mobile computervorrichtung
DE112019001058T5 (de) Stimmeneffekte basierend auf gesichtsausdrücken
DE102018131713A1 (de) Routing von Audioströmen basierend auf semantisch erzeugten Ergebnismengen
DE102017120698A1 (de) Sprachliche Ausgabe von schriftlichen Kommunikationen in einer Stimme eines Senders
US8775163B1 (en) Selectable silent mode for real-time audio communication system

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, GB

Representative=s name: KILBURN & STRODE LLP, NL

Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, DE

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, GB

Representative=s name: KILBURN & STRODE LLP, NL

R082 Change of representative

Representative=s name: KILBURN & STRODE LLP, NL

R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final