-
HINTERGRUND
-
Elektronische Geräte (z.B. Tablet-Geräte, Smartphones, intelligente Armbanduhren, Laptop-Computer, PCs usw.) ermöglichen es den Benutzern, Spracheingaben, beispielsweise Sprachbefehle, gesprochene Texteingaben und dergleichen, bereitzustellen. Herkömmlicherweise wird beim Eingeben einer Spracheingabe in eine gerade aktive Anwendung (z.B. eine virtuelle Assistentenanwendung, eine Sprache-zu-Text-Anwendung usw.) die Spracheingabe verarbeitet, um Wörter für die Texteingabe oder für Befehle je nach der derzeit aktiven Anwendung zu identifizieren. In manchen Fällen fallen mehrere sprachaktivierte Aufgaben zusammen, und es ist schwierig für das System, eine passende Zielanwendung für die Spracheingabe zu bestimmen. Derartige Spracheingaben werden herkömmlicherweise der Reihe nach behandelt, beispielsweise muss ein Benutzer manuell von einer derzeit aktiven sprachaktivierten Anwendung auf eine andere sprachaktivierte Anwendung umschalten.
-
KURZDARSTELLUNG
-
Kurz gesagt stellt ein Aspekt ein Verfahren bereit, das folgende Schritte umfasst: Empfangen einer Spracheingabe an einem Audioempfänger eines Gerätes; Auswählen, unter Verwendung eines Prozessors eines Gerätes, einer aktiven angestrebten sprachaktivierten Ressource für die Spracheingabe aus einer Vielzahl von aktiven angestrebten sprachaktivierten Ressourcen; und Bereitstellen, unter Verwendung eines Prozessors des Gerätes, der Spracheingabe für die ausgewählte aktive angestrebte sprachaktivierte Ressource.
-
Ein anderer Aspekt stellt ein elektronisches Gerät bereit, welches Folgendes umfasst: einen Audioempfänger; ein Anzeigegerät; einen Prozessor, der operativ mit dem Audioempfänger und dem Anzeigegerät gekoppelt ist; und einen Speicher, der Anweisungen speichert, die durch den Prozessor ausführbar sind, zum: Empfangen einer Spracheingabe an dem Audioempfänger; Auswählen einer aktiven angestrebten sprachaktivierten Ressource für die Spracheingabe aus einer Vielzahl von aktiven angestrebten sprachaktivierten Ressourcen; und Bereitstellen der Spracheingabe für die ausgewählte aktive angestrebte sprachaktivierte Ressource.
-
Ein weiterer Aspekt stellt ein Produkt bereit, das Folgendes um fasst: ein Speichergerät, welches Code speichert, der durch einen Prozessor ausführbar ist, wobei der Code Folgendes umfasst: Code, der eine Spracheingabe an einem Audioempfänger eines Gerätes empfängt; Code, der eine aktive angestrebte sprachaktivierte Ressource für die Spracheingabe aus einer Vielzahl von aktiven angestrebten sprachaktivierten Ressourcen auswählt; und Code, der die Spracheingabe für die ausgewählte aktive angestrebte sprachaktivierte Ressource bereitstellt.
-
Das Vorstehende ist eine Zusammenfassung und kann somit Vereinfachungen, Verallgemeinerungen und fehlende Einzelheiten umfassen; folglich wird der Fachmann verstehen, dass die Kurzdarstellung rein erläuternd ist und keineswegs dazu gedacht ist, einschränkend zu sein.
-
Zum besseren Verständnis der Ausführungsformen zusammen mit anderen und weiteren Merkmalen und Vorteilen derselben wird auf die nachstehende Beschreibung in Verbindung mit den beiliegenden Zeichnungen gesehen Bezug genommen. Der Umfang der Erfindung wird in den beiliegenden Ansprüchen ausgewiesen.
-
KURZE BESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNGEN
-
Es zeigen:
-
1 ein Beispiel der Schaltungen eines elektronischen Gerätes.
-
2 ein anderes Beispiel der Schaltungen eines elektronischen Gerätes.
-
3 ein beispielhaftes Verfahren der multimodalen Disambiguierung einer sprachgestützten Texteingabe.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Es versteht sich ohne Weiteres, dass die Komponenten der Ausführungsformen, wie sie hierin allgemein beschrieben und in den Figuren abgebildet sind, zusätzlich zu den beschriebenen Ausführungsbeispielen in vielen verschiedenen Konfigurationen angeordnet und ausgelegt sein können. Somit ist die nachstehende ausführlichere Beschreibung der Ausführungsbeispiele, wie in den Figuren dargestellt, nicht dazu gedacht, den Umfang der beanspruchten Ausführungsformen einzuschränken, sondern ist nur für Ausführungsbeispiele repräsentativ.
-
Eine Bezugnahme in der gesamten vorliegenden Beschreibung auf „eine Ausführungsform” (oder ähnliche Ausdrücke) bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder ein bestimmtes Kennzeichen, das bzw. die in Verbindung mit der Ausführungsform beschrieben werden, in mindestens einer Ausführungsform enthalten ist. Somit bezieht sich das Vorkommen der Redewendungen „bei einer Ausführungsform” und dergleichen an verschiedenen Stellen in der gesamten vorliegenden Beschreibung nicht unbedingt immer auf die gleiche Ausführungsform.
-
Ferner können die beschriebenen Merkmale, Strukturen oder Kennzeichen in einer beliebigen geeigneten Art in einer oder mehreren Ausführungsformen kombiniert werden. In der nachstehenden Beschreibung werden zahlreiche spezifische Einzelheiten bereitgestellt, um ein gründliches Verständnis der Ausführungsformen bereitzustellen. Der Fachmann auf diesem Gebiet wird jedoch erkennen, dass die diversen Ausführungsformen ohne eine oder mehrere der spezifischen Einzelheiten oder mit anderen Verfahren, Bauteilen, Materialien und so weiter in die Praxis umgesetzt werden können. In anderen Fällen werden hinlänglich bekannte Strukturen, Materialien oder Vorgänge der Übersichtlichkeit halber nicht gezeigt oder ausführlich beschrieben.
-
Wie hier beschrieben, falls mehrere sprachaktivierte Aufgaben zusammenfallen, ist es schwierig für das System, ein passendes Ziel für die Spracheingabe zu bestimmen. Sprachaktivierte Aufgaben werden herkömmlicherweise der Reihe nach statt parallel behandelt. Dies ist hauptsächlich der Fall, weil sprachaktivierte Anwendungen unfähig sind, Spracheingaben zu koordinieren, was es erforderlich macht, dass der Benutzer manuell zwischen den verfügbaren sprachaktivierten Anwendungen umschaltet.
-
Entsprechend ermöglicht es eine Ausführungsform mehreren sprachaktivierten Anwendungen oder Programmen, parallel in Betrieb zu sein. Bei einer Ausführungsform wird die Verwendung von multimodalen Eingaben genutzt, um eine koordinierte Handhabung von Spracheingaben zu erreichen, so dass verschiedene Spracheingaben an eine passende Anwendung oder Aufgabe gerichtet werden. Eine Ausführungsform kann eine aktive Zielressource auswählen, z.B. eine Anwendung, ein Gerät usw. D.h. eine Ausführungsform kann ein aktives Zielgerät, eine aktive Zielanwendung, ein bestimmtes Teilsystem auswählen, oder kann eine Kombination derselben auswählen, um die Spracheingabe weiterzuleiten. In der gesamten Beschreibung werden Beispiele mit Bezug auf sprachaktivierte Anwendungen gegeben. Eine Ausführungsform kann jedoch auf verschiedene Ressourcen abzielen, z.B. auf Anwendungen, Geräte, Teilsysteme usw., um die Spracheingabe vollständig oder teilweise weiterzuleiten.
-
Beispielsweise kann es für eine Anwendung mit sprachgestützter Texteingabe, die zur gleichen Zeit aktiv ist wie eine Anwendung mit Sprache-zu-Text-Nachrichtendienst, falls ein Benutzer Text in die Anwendung mit sprachgestützter Texteingabe eingibt und eine Benachrichtigung von einer Nachrichtendienstanwendung erscheint, sein, dass der Benutzer die Antwort in Reaktion auf die Benachrichtigung sprechen möchte. Herkömmlicherweise ist der Benutzer gezwungen, ausdrücklich die Anwendung mit sprachgestützter Texteingabe auszuschalten und die Anwendung mit Sprache-zu-Text-Nachrichtendienst zu öffnen, um eine Antwort auf die Benachrichtigung oder Nachricht zu sprechen.
-
Durch mehrere Mechanismen ermöglicht es jedoch eine Ausführungsform dem Benutzer, die angestrebte sprachaktivierte Anwendung für den gesprochenen Text auszuwählen. Beispielhafte Mechanismen, die es dem Benutzer ermöglichen, die Spracheingabe auf die richtige Anwendung abzuzielen, umfassen ohne Einschränkung Augenverfolgung, Gestik, Situations- und Kontextdaten oder sogar Berührungseingabe. Die Verwendung von Auslösewörtern oder Redewendungen kann ebenfalls verwendet werden. Auslösewörter, Berührungseingabe oder andere ähnliche Mechanismen erzwingen jedoch kein Umschalten zwischen den aktiven sprachaktivierten Anwendungen. Vielmehr ermöglichen diese Mechanismen das Weiterleiten der Spracheingabe und erfordern nicht, dass der Benutzer die eingeschaltete Anwendung ausschaltet, ausdrücklich eine andere aktiviert usw. Vielmehr wird der anfänglichen Anwendung, z.B. der Anwendung mit sprachgestützter Texteingabe bei dem obigen Beispiel, die Spracheingabe zur Antwort auf die Anwendung mit Sprache-zu-Text-Nachrichtendienst nicht bereitgestellt. Stattdessen wird die Spracheingabe an die zweite Anwendung, z.B. die Anwendung mit Sprache-zu-Text-Nachrichtendienst, umgeleitet, und die erste Anwendung bleibt aktiv und horcht auf zusätzliches Audiomaterial zur Eingabe in die Anwendung mit sprachgestützter Texteingabe.
-
Beispielhaft kann der Benutzer seinen Blick von einem Eingabefenster oder Eingabebereich der Anwendung mit sprachgestützter Texteingabe auf das Benachrichtigungsfenster oder den Benachrichtigungsbereich richten, der in dem Dialogfenster von der Anwendung mit Sprache-zu-Text-Nachrichtendienst bereitgestellt wird, eine Antwort auf die Benachrichtigung sprechen und dann sein Augenmerk wieder auf das Eingabefenster oder den Eingabebereich lenken. Unter Verwendung eines Eye Tracking-Teilsystems schaltet eine Ausführungsform das Spracheingabe-Audiomaterial von dem Benutzer auf die Anwendung mit Sprache-zu-Text-Nachrichtendienst und leitet diese Eingabe um, damit sie nicht an die Anwendung mit sprachgestützter Texteingabe gegeben wird. Somit bleibt die ursprüngliche Anwendung aktiv und der Benutzer kann die Spracheingabe mit minimalem Aufwand zeitweilig auf die alternative Anwendung richten.
-
Alternativ kann der Benutzer seinen Blick von dem Eingabebereich oder Eingabefenster auf den Benachrichtigungsbereich oder das Benachrichtigungsfenster verlagern, eine Antwort sprechen und dann sein Augenmerk wieder zurück auf das Schreibfenster lenken. Eine Ausführungsform kann somit mehr als eine zusätzliche Eingabe verwenden (bei diesem Beispiel eine Berührungseingabe und eine Augenverfolgungseingabe), um das Genauigkeit der Weiterleitung der Spracheingabe zu erhöhen.
-
Eine Ausführungsform kann andere Arten oder Modi zur Eingabe verwenden, um die Spracheingabe an die passende Anwendung oder Aufgabe weiterzuleiten. Beispielsweise kann ein Benutzer eine Gesteneingabe bereitstellen, die von einer Kamera aufgenommen wird, z.B. das Hochhalten einer Hand, um dem Eingabefenster oder Eingabebereich der Anwendung mit sprachgestützter Texteingabe „Stopp” zu signalisieren, und seinen Blick auf das Benachrichtigungsfenster oder den Benachrichtigungsbereich verlagern, um eine Antwort auf die Benachrichtigung zu sprechen. Anschließend kann der Benutzer seinen Blick wieder zum Eingabefenster zurückbringen, wobei er wahlweise diese Bewegung mit einer anderen Geste untermauert.
-
Die Situations- und Kontextwahrnehmung kann unter Verwendung von Daten, die eine vorbestimmte Situation oder einen Kontext der Spracheingabe angeben, umgesetzt werden. Beispielsweise können Diskontinuitäten in einem Fluss von Wörtern oder Aktionen als vorbestimmtes Eingabemuster dienen, das mit einem Kontextwechsel verknüpft ist, z.B. das Wechseln der Zielanwendung, an welche die Spracheingabedaten zu leiten sind. Zurück zu dem zuvor erwähnten Beispiel kann der Benutzer das Diktieren einer Nachricht mitten im Satz unterbrechen, z.B. mit ganz anderen Wörtern oder Redewendungen (wie etwa „Zumachen!”), deren Ziel ein anderes sprachaktiviertes Programm, eine Anwendung oder eine Aufgabe sein soll (z.B. eine sprachaktivierte Anwendung, die ein Benachrichtigungsdialogfenster abgibt). Diskontinuitäten könnten feine Indikatoren sein, wie Zögern oder plötzliches Pausieren, die eine größere Wahrscheinlichkeit dafür darstellen, dass sich der Fokus ändert, was wiederum mit zusätzlichen Daten gekoppelt sein kann, die eine Situationswahrnehmung fördern, z.B. die Kenntnis von dem, was sich am Bildschirm im Fokus befindet, wenn der Benutzer etwas sagt. Durch die Überwachung dieser Daten kann eine Ausführungsform die Wahrscheinlichkeit oder die Genauigkeit des richtigen Identifizierens eines Ziels für die gesprochene Eingabe erhöhen.
-
Die abgebildeten Ausführungsbeispiele werden am besten mit Bezug auf die Figuren verständlich. Die nachstehende Beschreibung ist dazu gedacht, rein beispielhaft zu sein, und bildet nur gewisse Ausführungsbeispiele ab.
-
Obwohl diverse andere Schaltkreise, Schaltungen oder Bauteile in Informationshandhabungsgeräten verwendet werden können, umfasst mit Bezug auf die Schaltungen 100 eines Smartphones und/oder Tablets ein in 1 abgebildetes Beispiel eine System-on-Chip Design, welches beispielsweise bei Tablets oder in anderen mobilen Computerplattformen vorzufinden ist. Die Software und der oder die Prozessoren sind in einem einzigen Chip 110 kombiniert. Die Prozessoren umfassen interne arithmetische Einheiten, Register, Zwischenspeicher, Busse, E/A-Anschlüsse usw., wie es in der Technik wohlbekannt ist. Interne Busse und dergleichen sind von verschiedenen Herstellern abhängig, doch im Wesentlichen können alle Peripheriegeräte (120) an einem einzigen Chip 110 angebracht werden. Die Schaltungen 100 kombinieren den Prozessor, die Speichersteuerung und den E/A-Steuerknoten alle zusammen in einen einzigen Chip 110. Derartige Systeme 100 verwenden typischerweise auch kein SATA, PCI oder LPC. Übliche Schnittstellen umfassen beispielsweise SDIO und I2C.
-
Es gibt einen oder mehrere Stromverwaltungschips 130, z.B. eine Batterieverwaltungseinheit, BMU, der bzw. die den Strom verwaltet bzw. verwalten, wie er beispielsweise über eine aufladbare Batterie 140 zugeführt wird, die durch Anschließen an eine Energiequelle (nicht gezeigt) aufgeladen werden kann. Bei mindestens einer Bauform wird ein einziger Chip, wie etwa 110, verwendet, um eine BIOS-artige Funktionalität und einen DRAM-Speicher bereitzustellen.
-
Das System 100 umfasst typischerweise einen oder mehrere von einem WWAN-Transceiver 150 und einem WLAN-Transceiver 160 zum Anschließen an diverse Netzwerke, wie etwa Telekommunikationsnetzwerke und drahtlose Internet-Geräten, z.B. Zugangspunkten. Zusätzlich sind für gewöhnlich Geräte 120 enthalten, z.B. ein Audioempfänger, wie etwa ein Mikrofon, das mit einem Sprachverarbeitungssystem arbeitet, um Spracheingabe und diesbezügliche Daten bereitzustellen, wie es hierin weiter beschrieben wird, eine Kamera, die Bilddaten aufnimmt und mit einer Gestenerkennungs-Maschine arbeitet, usw. Das System 100 umfasst häufig einen Berührungsbildschirm 170 zur Dateneingabe und Anzeige/ Wiedergabe. Das System 100 umfasst typischerweise auch diverse Speichergeräte, beispielsweise einen Flash-Speicher 180 und einen SDRAM 190.
-
2 bildet ein Blockdiagramm eines anderen Beispiels der Schaltkreise, Schaltungen oder Bauteile eines Informationshandhabungsgerätes ab. Das in 2 abgebildete Beispiel kann Computersystemen, wie etwa der THINKPAD-Serie von PCs, die von Lenovo (US) Inc. aus Morrisville, NC, verkauft wird, oder anderen Geräten entsprechen. Wie es aus der vorliegenden Beschreibung hervorgeht, können die Ausführungsformen andere Merkmale oder nur einige der Merkmale des in 2 abgebildeten Beispiels umfassen.
-
Das Beispiel aus 2 umfasst einen so genannten Chipsatz 210 (eine Gruppe integrierter Schaltungen bzw. Chips, die zusammenarbeiten, Chipsätze) mit einer Architektur, die je nach Hersteller (beispielsweise INTEL, AMD, ARM usw.) unterschiedlich sein kann. INTEL ist ein eingetragenes Warenzeichen von Intel Corporation in den Vereinigten Staaten und anderen Ländern. AMD ist ein eingetragenes Warenzeichen von Advanced Micro Devices, Inc. in den Vereinigten Staaten und anderen Ländern. ARM ist ein nicht eingetragenes Warenzeichen von ARM Holdings plc in den Vereinigten Staaten und anderen Ländern. Die Architektur des Chipsatzes 210 umfasst eine Kern- und Speichersteuerungsgruppe 220 und einen E/A-Steuerknoten 250, der Informationen (beispielsweise Daten, Signale, Befehle usw.) über eine Direct Management Interface (DMI) 242 oder einen Link-Controller 244 austauscht. In 2 ist die DMI 242 eine Chip-zu-Chip-Schnittstelle (gelegentlich auch als Verknüpfung zwischen einer „Northbridge” und einer „Southbridge” bezeichnet). Die Kern- und Speichersteuerungsgruppe 220 umfasst einen oder mehrere Prozessoren 222 (beispielsweise Einzel- oder Mehrkern) und einen Speicher-Steuerknoten 226, die Informationen über einen Front Side Bus (FSB) 224 austauschen; es sei zu beachten, dass die Bauteile der Gruppe 220 in einen Chip integriert sein können, der die herkömmliche „Northbridge-”Architektur ersetzt. Ein oder mehrere Prozessoren 222 umfasst bzw. umfassen interne arithmetische Einheiten, Register, Zwischenspeicher, Busse, E/A-Anschlüsse usw., wie es in der Technik wohlbekannt ist.
-
In 2 bildet der Speicher-Steuerknoten 226 eine Schnittstelle mit dem Speicher 240 ab (um beispielsweise eine Unterstützung für eine Art von RAM bereitzustellen, die man als „Systemspeicher” oder „Speicher” bezeichnen kann). Der Speicher-Steuerknoten 226 umfasst ferner eine Niederspannungs-Differenzialsignalisierungs-(LVDS)Schnittstelle 232 für ein Anzeigegerät 292 (z.B. einen CRT, einen Flachbildschirm, einen Berührungsbildschirm usw.). Ein Block 238 umfasst eine gewisse Technik, die über die LVDS-Schnittstelle 232 unterstützt werden kann (z.B. serielles digitales Video, HDMI/DVI, Display-Anschluss). Der Speicher-Steuerknoten 226 umfasst auch eine PCI-Express-Schnittstelle (PCI-E) 234, die diskrete Grafik 236 unterstützen kann.
-
In 2 umfasst der E/A-Steuerknoten 250 eine SATA-Schnittstelle 251 (beispielsweise für HDDs, SDDs 280 usw.), eine PCI-E-Schnittstelle 252 (beispielsweise für drahtlose Verbindungen 282), eine USB-Schnittstelle 253 (beispielsweise für Geräte 284, wie etwa einen Digitalisierer, eine Tastatur, Mäuse, Kameras, Telefone, Mikrofone, Speichermittel, andere angeschlossene Geräte usw.), eine Netzwerkschnittstelle 254 (beispielsweise LAN), eine GPIO-Schnittstelle 255, eine LPC-Schnittstelle 270 (für ASICs 271, einen TPM 272, einen Super-E/A 273, einen Firmware-Hub 274, eine BIOS-Unterstützung 275 sowie diverse Arten von Speichern 276, wie etwa einen ROM 277, einen Flash 278 und einen NVRAM 279), eine Stromverwaltungsschnittstelle 261, eine Taktgeberschnittstelle 262, eine Audioschnittstelle 263 (beispielsweise für Lautsprecher 294), eine TCO-Schnittstelle 264, eine Systemverwaltungsbus-Schnittstelle 265 und SPI-Flash 266, die ein BIOS 268 und Boot-Code 290 umfassen können. Der E/A-Steuerknoten 250 kann Gigabit-Ethernet-Unterstützung umfassen.
-
Beim Einschalten kann das System konfiguriert sein, um den Boot-Code 290 für das BIOS 268 auszuführen, der in dem SPI-Flash 266 gespeichert ist, und verarbeitet anschließend Daten unter der Kontrolle von einem oder mehreren Betriebssystemen und Anwendungs-Software (wie beispielsweise im Systemspeicher 240 gespeichert). Ein Betriebssystem kann an einer beliebigen von diversen Stellen gespeichert sein und kann beispielsweise gemäß den Anweisungen des BIOS 268 zugänglich sein. Wie hierin beschrieben, kann ein Gerät eine geringere oder größere Anzahl von Merkmalen umfassen als sie in dem System aus 2 gezeigt werden.
-
Schaltungen von Informationshandhabungsgeräten, wie beispielsweise in 1 oder 2 angesprochen, können bei Geräten, wie etwa Tablets, Smartphones, Laptop-Computern oder anderen persönlichen Computergeräten allgemein und/oder anderen elektronischen Geräten, denen Benutzer eine Spracheingabe für diverse sprachaktivierte Anwendungen bereitstellen können, verwendet werden. Beispiele von sprachaktivierten Anwendungen umfassen Text-zu-Sprache-Anwendungen oder sprachgestützte Anwendungen allgemein, wobei spezifische Beispiele durch Spracheingabe unterstützte Anwendungen, wie etwa Anwendungen zum Erstellen von Notizen oder Textverarbeitungsanwendungen, durch Sprachbefehle aktivierte Anwendungen, wie etwa virtuelle Assistenten oder Navigationsanwendungen, oder Anwendungen, die Spracheingaben dafür unterstützen, wie sie von anderen Anwendungen bereitgestellt werden, sind.
-
Mit Bezug allgemein auf 3 unterstützt eine Ausführungsform einen Benutzer durch das Umsetzen eines Mechanismus, der eine Spracheingabe an eine passende sprachaktivierte Anwendung richtet. Beispielsweise beim Empfangen einer Spracheingabe bei 301, z.B. an einem Audioempfänger, wie etwa einem Mikrofon eines Smartphones oder einem Tablet-Computergerät, bestimmt eine Ausführungsform bei 302, dass mehr als eine aktive Zielressource, z.B. eine sprachaktivierte Anwendung, die Spracheingabe empfangen und darauf reagieren könnte. Falls keine andere sprachaktivierte Anwendung aktiv oder verfügbar ist, kann die Spracheingabe natürlich an die einzig mögliche Bestimmung geleitet werden. Ansonsten kann es sein, dass eine Ausführungsform die richtige sprachaktivierte Anwendung auswählen muss, an welche die Spracheingabe gerichtet ist.
-
Beispielsweise kann der Benutzer eine Spracheingabe für eine sprachgestützte Anwendung zum Erstellen von Notizen bereitstellen, wenn eine Benachrichtigung einer ankommenden Textnachricht empfangen wird. Um zu antworten, kann der Benutzer eine Eingabe sprechen und beabsichtigen, dass die Eingabe der Nachrichtendienstanwendung statt der Anwendung zum Erstellen von Notizen bereitgestellt wird. Somit bestimmt eine Ausführungsform bei 302, dass eine Spracheingabe, z.B. „Zumachen!”, die bei 301 empfangen wird, während sowohl die Anwendung zum Erstellen von Notizen als auch die Nachrichtendienstanwendung in der Lage sind, die Spracheingabe zu verwenden, auf eine der sprachaktivierten Anwendungen gerichtet ist.
-
Bei einem herkömmlichen Gerät wäre ein Benutzer gezwungen, die Anwendung zum Erstellen von Notizen auszuschalten, die Nachrichtendienstanwendung zu aktivieren und dann die Spracheingabe „Zumachen” bereitzustellen, um zu vermeiden, dass die Spracheingabe „Zumachen” in die Notiz geschrieben wird, die von der Anwendung zum Erstellen von Notizen verfasst wird. Um diesen Prozess zu rationalisieren, umfasst eine Ausführungsform eine Verarbeitungsfähigkeit, bei der multimodale Eingaben verwendet werden, um die möglichen Ziele zu disambiguieren und eine passende Zielanwendung auszuwählen.
-
Beispielsweise kann eine Ausführungsform bei 303 eine aktive angestrebte sprachaktivierte Anwendung für die Spracheingabe unter Verwendung diverser zusätzlicher Datenquellen oder Verarbeitungstechniken, die Situations- oder Kontextwahrnehmung ermöglichen, auswählen. Zum Beispiel kann eine zusätzliche Datenquelle, wie etwa Eingabedaten von einem Eye-Tracking-System, verwendet werden, um zu bestimmen, wohin der Benutzer auf der Anzeige blickt, während er die Spracheingabe bereitstellt. Falls dieser Bereich der Anzeigevorrichtung mit einer angezeigten Benachrichtigung der Nachrichtendienstanwendung zusammenfällt, kann eine Ausführungsform diese Anwendung als die passende Zielanwendung auswählen.
-
Als anderes Beispiel kann eine zusätzliche Datenquelle, wie etwa eine Eingabe von einer Kamera oder einem Gestenerkennungssystem, verwendet werden, um zu bestimmen, ob der Benutzer eine vorbestimmte Geste ausführt, während er die Spracheingabe bereitstellt. Beispielsweise kann eine vorbestimmte Handgeste verwendet werden, um die Spracheingabe praktisch an die eine oder andere Anwendung zu richten.
-
Als anderes Beispiel können Daten von einer Berührungsbildschirmanzeige verwendet werden, um zu bestimmen, wo der Benutzer den Anzeigebildschirm berührt hat, als er die Spracheingabe bereitstellte. Diese zusätzlichen Dateneingaben über alternative (d.h. Nicht-Sprach-)Kanäle können von einer Ausführungsform bei 303 bei der Auswahl einer Zielanwendung verwendet werden.
-
Eine Ausführungsform kann auch eine zusätzliche Verarbeitung, z.B. auf die Spracheingabe selber, anwenden, um bei 303 eine passende Zielanwendung auszuwählen. Beispielsweise kann eine Ausführungsform das Wort oder die Wörter analysieren, das bzw. die in der Sprachausgabe verwendet wird bzw. werden, um zu bestimmen, ob die Anwendung zum Erstellen von Notizen oder die Nachrichtendienstanwendung die passende Zielanwendung für die Spracheingabe ist. Es geht aus dem Vorstehenden hervor, dass mehr als eine Technik angewendet werden kann, um das Genauigkeit der Auswahl bei 303 zu erhöhen.
-
Sobald eine angestrebte sprachaktivierte Anwendung bei 303 ausgewählt wurde, stellt eine Ausführungsform bei 304 die Spracheingabe der ausgewählten aktiven angestrebten sprachaktivierten Anwendung bereit. Somit wird die Spracheingabe an eine der Anwendungen von den möglichen angestrebten sprachaktivierten Anwendungen gesendet. Bei einer Ausführungsform können die Sprachdaten zeitweilig gepuffert werden, während der Auswahlschritt bei 303 beendet wird, und anschließend bei 304 an die passende Anwendung gesendet werden, wodurch verhindert wird, dass die Spracheingabe eine falsche Anwendung erreicht.
-
Als spezifisches Beispiel kann das Auswählen bei 303 das Erzielen einer zusätzlichen Eingabe, wie etwa einer Augenverfolgungseingabe, umfassen. Diese Augenverfolgungseingabe kann erzielt werden, während der Benutzer die Spracheingabe bereitstellt, und ermöglicht es einer Ausführungsform zu bestimmen, dass die Spracheingabe, z.B. „Zumachen”, bereitgestellt wird, während sich der Benutzer auf eine Benachrichtigung konzentriert, die von der Nachrichtendienstanwendung angezeigt wird. Somit kann eine Ausführungsform bei 303 die Nachrichtendienstanwendung auswählen und die gepufferten Sprachdaten (oder Text oder andere Ausgaben, die von den Sprachdaten oder ihrer Verarbeitung abgeleitet werden) für die Nachrichtendienstanwendung bereitstellen. Die Anwendung zum Erstellen von Notizen kann weiter auf eine zusätzliche Spracheingabe horchen, d.h. sie muss nicht geschlossen oder deaktiviert werden, um die Spracheingabedaten an die Nachrichtendienstanwendung zu leiten.
-
Wie hierin beschrieben können viele zusätzliche Datenquellen, z.B. Gesteneingabe, Berührungseingabe und/oder Spracheingabe, alleine oder kombiniert verwendet werden, um die Auswahl bei 303 zu ermöglichen. Bei einer Ausführungsform umfasst das Auswählen bei 303 das Analysieren eines oder mehrerer Wörter der Spracheingabe mit einer zusätzlichen Analyse einer früheren Spracheingabe, z.B. um zu bestimmen, ob die Wörter der Spracheingabe ohne Zusammenhang mit den zuvor eingegebenen Wörtern in der Anwendung zum Erstellen von Notizen erscheinen. Dies kann mit einem anderen Eingabemodus kombiniert werden, z.B. Augenverfolgungsdaten oder Gestendaten, um die Genauigkeit der Analyse zu erhöhen, die bestimmt, dass die Wörter der Spracheingabe ohne Zusammenhang mit der Anwendung zum Erstellen von Notizen sind. Falls daher die Spracheingabe Wörter enthält, von denen mit einer geringeren Wahrscheinlichkeit oder einem geringeren Genauigkeit bestimmt wird, dass sie ohne Zusammenhang mit einer aktiven Spracheingabeanwendung sind, kann diese Wahrscheinlichkeit oder diese Genauigkeit erhöht werden, indem die Augenverfolgungs- oder Gestendaten analysiert werden, z.B. ob sich der Blick des Benutzers auf eine Benachrichtigung von einer Nachrichtendienstanwendung konzentriert, wenn die zusammenhanglose Spracheingabe empfangen wird.
-
Eine Ausführungsform stellt daher eine technische Verbesserung bei dem Bereitstellen von Mechanismen dar, durch die empfangene Spracheingaben passend zu sprachaktivierten Anwendungen geleitet werden können. Zusätzlich dazu, dass sie die Zeit und Komplexität der herkömmlichen Techniken reduziert, ist eine Ausführungsform dazu geeignet, die Übernahme einer Spracheingabe als eine Art der Schnittstellenbildung mit dem Gerät zu ermöglichen, weil die Benutzer nicht mehr damit belastet werden, eine Auswahl zu treffen, welche Anwendung als aktiv anzusehen ist, und die Spracheingabe empfangen soll.
-
Wie es der Fachmann verstehen wird, können diverse Aspekte als System, Verfahren oder Geräteprogrammprodukt ausgebildet sein. Entsprechend können die Aspekte die Form einer Ausführungsform ganz aus Hardware oder einer Ausführungsform mit Software, die hier allgemein als „Schaltung”, „Modul” oder „System” bezeichnet wird, annehmen. Ferner können die Aspekte die Form eines Geräteprogrammprodukts annehmen, das als ein oder mehrere gerätelesbare Medien ausgebildet ist, in denen gerätelesbarer Programmcode ausgebildet ist.
-
Es sei zu beachten, dass die hier beschriebenen diversen Funktionen unter Verwendung von Anweisungen umgesetzt werden können, die auf einem gerätelesbaren Speichermedium, wie etwa einem Nicht-Signalspeichergerät, gespeichert sind, die von einem Prozessor ausgeführt werden. Ein Speichergerät kann beispielsweise ein elektronisches, magnetisches, optisches, elektromagnetisches, infrarotes oder Halbleiter-System, e-Vorrichtung oder -Gerät oder eine beliebige geeignete Kombination derselben sein. Genauere Beispiele eines Speichermediums würden Folgendes umfassen: eine tragbare Computerdiskette, eine Festplatte, einen Arbeitsspeicher (RAM), einen Festspeicher (ROM), einen löschbaren programmierbaren Arbeitsspeicher (EPROM oder Flash-Speicher), eine Lichtleitfaser, eine tragbare Compact Disk Festwertspeicher (CD-ROM), ein optisches Speichergerät, ein magnetisches Speichergerät oder eine beliebige geeignete Kombination derselben. In Zusammenhang mit der vorliegenden Druckschrift ist ein Speichergerät kein Signal, und der Begriff „nicht vorübergehend” umfasst alle Medien außer Signalmedien.
-
Programmcode, der auf einem Speichermedium ausgebildet ist, kann unter Verwendung eines beliebigen geeigneten Mediums übertragen werden, einschließlich ohne Einschränkung drahtlos, drahtgebunden, Glasfaserkabel, HF usw. oder eine beliebige geeignete Kombination derselben.
-
Programmcode zum Ausführen von Operationen kann in einer beliebigen Kombination von einer oder mehreren Programmiersprachen verfasst sein. Der Programmcode kann vollständig auf einem einzigen Gerät, teilweise auf einem einzigen Gerät, als selbstständiges Software-Paket, teilweise auf einem einzigen Gerät und teilweise auf einem anderen Gerät oder vollständig auf dem anderen Gerät ausgeführt werden. In manchen Fällen können die Geräte über eine beliebige Art von Verbindung oder Netzwerk verbunden werden, wozu ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN) gehört, oder kann die Verbindung über andere Geräte hergestellt werden (beispielsweise über das Internet unter Verwendung eines Internet-Providers), über drahtlose Verbindungen, z.B. Nahfeldkommunikation, oder über eine verkabelte Verbindung, wie etwa über eine USB-Verbindung.
-
Es werden hierin Ausführungsbeispiele mit Bezug auf die Figuren beschrieben, die beispielhafte Verfahren, Geräte und Programmprodukte gemäß diversen Ausführungsbeispielen abbilden. Es versteht sich, dass die Aktionen und die Funktionalität mindestens teilweise durch Programmanweisungen umgesetzt werden können. Diese Programmanweisungen können einem Prozessor eines Gerätes, eines speziellen Informationshandhabungsgerätes, oder einem anderen programmierbaren Datenverarbeitungsgerät bereitgestellt werden, um eine Maschine zu ergeben, so dass die Anweisungen, die über einen Prozessor des Gerätes ausgeführt werden, die vorgegebenen Funktionen/Aktionen umsetzen.
-
Es sei zu beachten, dass obwohl spezifische Blöcke in den Figuren verwendet werden und eine bestimmte Reihenfolge von Blöcken abgebildet wurde, diese keine einschränkenden Beispiele sind. In bestimmten Zusammenhängen können zwei oder mehrere Blöcke kombiniert werden, ein Block kann in zwei oder mehrere Blöcke unterteilt werden, oder bestimmte Blöcke können je nach Bedarf umgeordnet oder umgestellt werden, da die ausdrücklich abgebildeten Beispiele nur zur Beschreibung verwendet werden und nicht als einschränkend auszulegen sind.
-
Wie sie hier verwendet wird, kann die Singularform „ein” als die Pluralform „ein oder mehrere” umfassend ausgelegt werden, soweit nicht eindeutig anderweitig angegeben.
-
Die vorliegende Offenbarung wurde zum Zweck der Erläuterung und Beschreibung vorgelegt, ist aber nicht dazu gedacht, erschöpfend oder einschränkend zu sein. Zahlreiche Modifikationen und Variationen werden für den Fachmann ersichtlich sein. Die Ausführungsbeispiele wurden gewählt und beschrieben, um die Grundlagen und die praktische Anwendung zu erklären, und um es anderen Fachleuten zu ermöglichen, die Offenbarung für diverse Ausführungsformen zu verstehen, wie sie für die bestimmte beabsichtigte Verwendung geeignet sind.
-
Obwohl somit hier erläuternde Ausführungsbeispiele mit Bezug auf die beiliegenden Figuren beschrieben wurden, versteht es sich, dass diese Beschreibung nicht einschränkend ist und dass diverse andere Änderungen und Modifikationen hier vom Fachmann vorgenommen werden können, ohne den Umfang oder Geist der Offenbarung zu verlassen.