[go: up one dir, main page]

US20150031416A1 - Method and Device For Command Phrase Validation - Google Patents

Method and Device For Command Phrase Validation Download PDF

Info

Publication number
US20150031416A1
US20150031416A1 US14/142,234 US201314142234A US2015031416A1 US 20150031416 A1 US20150031416 A1 US 20150031416A1 US 201314142234 A US201314142234 A US 201314142234A US 2015031416 A1 US2015031416 A1 US 2015031416A1
Authority
US
United States
Prior art keywords
mobile device
contact
call
voice
validation
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.)
Abandoned
Application number
US14/142,234
Inventor
Michael P. Labowicz
Kazuhiro Ondo
Andrew K. Wells
Hideki Yoshino
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 Technology Holdings LLC
Original Assignee
Motorola Mobility 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 Motorola Mobility LLC filed Critical Motorola Mobility LLC
Priority to US14/142,234 priority Critical patent/US20150031416A1/en
Assigned to MOTOROLA MOBILITY LLC reassignment MOTOROLA MOBILITY LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LABOWICZ, MICHAEL P, ONDO, KAZUHIRO, WELLS, ANDREW K
Assigned to Google Technology Holdings LLC reassignment Google Technology Holdings LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MOTOROLA MOBILITY LLC
Publication of US20150031416A1 publication Critical patent/US20150031416A1/en
Abandoned 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/20Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/60Substation equipment, e.g. for use by subscribers including speech amplifiers
    • H04M1/6033Substation equipment, e.g. for use by subscribers including speech amplifiers for providing handsfree use or a loudspeaker mode in telephone sets
    • H04M1/6041Portable telephones adapted for handsfree use
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • 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/28Constructional details of speech recognition systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/271Devices whereby a plurality of signals may be stored simultaneously controlled by voice recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/74Details of telephonic subscriber devices with voice recognition means
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present disclosure relates to processing audio signals and, more particularly, to methods and devices for audio signals including voice or speech.
  • speech recognition has been around for decades, the quality of speech recognition software and hardware has only recently reached a high enough level to appeal to a large number of consumers.
  • One area in which speech recognition has become very popular in recent years is the smartphone and tablet computer industry.
  • a speech recognition-enabled device a consumer can perform such tasks as making phone calls, writing emails, and navigating with GPS, strictly by voice.
  • Speech recognition in such devices is far from perfect, however.
  • the user may need to “train” the speech recognition software to recognize his or her voice.
  • the speech recognition functions may not work well in all sound environments.
  • An unintended call that is placed may results from inaccurate voice recognition of audio that is captured. Occurrences of these types of calls could result in negative financial, legal and social implications, and may lead to user avoiding the use of a voice recognition system for making calls.
  • FIG. 1 is a block diagram illustrating a mobile device, according to an embodiment
  • FIG. 2 is a block diagram of example components of a mobile device, according to an embodiment
  • FIGS. 3 , 4 , and 5 illustrate a process flow of a method for validating a command phrase that may be performed by the mobile device of FIG. 1 , according to an embodiment
  • FIG. 6 is a process flow of a method for automatically dialing a priority contact that may be performed by the mobile device of FIG. 1 , according to an embodiment
  • FIG. 7 is a process flow of a method for automatically dialing a phone number that may be performed by the mobile device of FIG. 1 , according to an embodiment.
  • Avoidance of placing of unintended calls is particularly relevant for mobile devices that provide an “always on” voice recognition system.
  • the mobile device may be configured to monitor or listen for a trigger phrase spoken by a user of the mobile device, followed by a command phrase. Trigger phrases spoken by the user, such as “OK, Google Now” may be previously “learned” in a training session for the mobile device; however, the trigger phrase may be incorrectly identified due to various factors, such as background noise or obstructions between the user and the mobile device.
  • the command phrase for placing a call includes a call command and a call parameter.
  • the mobile device may detect “OK Google Now, Call Bob on his cell phone.” In this case, “OK Google Now” is the trigger phrase, “Call” is the call command, and “Bob on his cell phone” is the call parameter.
  • the mobile device may detect “OK Google Now, Call Charlie.” In this case, the trigger phrase and call command are the same as the previous example, but the call parameter is simply “Charlie.”
  • the mobile device may detect “OK Google Now, Dial 1-800-555-1234.” In this case, “OK Google Now” is the trigger phrase, “Dial” is the call command, and “1-800-555-1234” is the call parameter.
  • the various embodiments described herein allow a mobile device to validate the command phrase for placing a call. For example, if the call parameter is readily recognized as “Charlie”, the mobile device may validate the command phrase by searching an address book. If the address book includes a frequently called contact with a name of “Charlie”, the mobile device may automatically place a call to that contact without further action by the user. Alternatively, if the call parameter is recognized as spoken digits such as “1-800-555-1234”, the mobile device may validate the digits against a phone numbering plan prior to placing the call.
  • a set of target contacts are selected based on respective voice validation scores and respective contact confidence scores.
  • a phone call is automatically placed to a priority contact if a voice validation score and contact confidence score for the priority contact meet a validation threshold.
  • numeric digits detected in a command phrase are validated as a phone number against a predetermined numbering plan. A call is automatically placed to the phone number if the phone number is validated.
  • the mobile device 100 may be any type of device capable of storing and executing multiple applications. Examples of the mobile device 100 include, but are not limited to, mobile devices, smart phones, smart watches, wireless devices, tablet computing devices, personal digital assistants, personal navigation devices, touch screen input device, touch or pen-based input devices, portable video and/or audio players, and the like. It is to be understood that the mobile device 100 may take the form of a variety of form factors, such as, but not limited to, bar, tablet, flip/clam, slider, rotator, and wearable form factors.
  • the mobile device 100 has a housing 101 comprising a front surface 103 which includes a visible display 105 and a user interface.
  • the user interface may be a touch screen including a touch-sensitive surface that overlays the display 105 .
  • the user interface or touch screen of the mobile device 100 may include a touch-sensitive surface supported by the housing 101 that does not overlay any type of display.
  • the user interface of the mobile device 100 may include one or more input keys 107 . Examples of the input key or keys 107 include, but are not limited to, keys of an alpha or numeric keypad or keyboard, a physical keys, touch-sensitive surfaces, mechanical surfaces, multipoint directional keys and side buttons or keys 107 .
  • the mobile device 100 may also comprise a speaker 109 and microphone 111 for audio output and input at the surface. It is to be understood that the mobile device 100 may include a variety of different combination of displays and interfaces.
  • the mobile device 100 includes one or more sensors 113 positioned at or within an exterior boundary of the housing 101 .
  • the sensor or sensors 113 may be positioned at the front surface 103 and/or another surface (such as one or more side surfaces 115 ) of the exterior boundary of the housing 101 .
  • the sensor or sensors 113 may include an exterior sensor supported at the exterior boundary to detect an environmental condition associated with an environment external to the housing.
  • the sensor or sensors 113 may also, or in the alternative, include an interior sensors supported within the exterior boundary (i.e., internal to the housing) to detect a condition of the device itself. Examples of the sensors 113 are described below in reference to FIG. 2 .
  • the example components may include one or more communication components 201 , one or more processors 203 , one or more memories 205 , one or more output components 207 , and one or more input components 209 .
  • Each component may include a user interface that comprises one or more input components 209 .
  • Each communication component 201 may include a wireless receiver, transmitter or transceiver.
  • Each communication component 201 may utilize wireless technology for communication, such as, but are not limited to, cellular-based communications such as analog communications (using AMPS), digital communications (using CDMA, TDMA, GSM, iDEN, GPRS, or EDGE), and next generation communications (using UMTS, WCDMA, LTE, or IEEE 802.16) and their variants, as represented by cellular transceiver 211 .
  • Each communication component 201 may also utilize wireless technology for communication, such as, but are not limited to, peer-to-peer or ad hoc communications such as HomeRF, Bluetooth and IEEE 802.11(a, b, g or n); and other forms of wireless communication such as infrared technology, as represented by WLAN transceiver 213 .
  • each communication component 201 may be a receiver, a transmitter or both.
  • the example components 200 may further include a device interface 215 to provide a direct connection to auxiliary components or accessories for additional or enhanced functionality.
  • the example components 200 may include a power source or supply 217 , such as a portable battery, for providing power to the other example components and allow portability of the mobile device 100 .
  • the processor 203 may generate commands based on information received from one or more communication components 201 and/or one or more input components 209 .
  • the processor 203 may process the received information alone or in combination with other data, such as the information stored in the memory 205 .
  • the memory 205 of the example components 200 may be used by the processor 203 to store and retrieve data.
  • the data that may be stored by the memory 205 include, but is not limited to, operating systems, applications, and data.
  • Each operating system includes executable code that controls basic functions of the mobile device, such as interaction among the components of the example components 200 , communication with external devices via each communication component 201 and/or the device interface (see below), and storage and retrieval of applications and data to and from the memory 205 .
  • the memory 205 includes multiple applications, and each application includes executable code utilizes an operating system to provide more specific functionality for the mobile device.
  • Data is non-executable code or information that may be referenced and/or manipulated by an operating system or application for performing functions of the mobile device.
  • the input components 209 may produce an input signal in response to detecting a predetermined gesture at a first input component 219 , such as a gesture sensor.
  • a gesture sensor is, but not limited to, a touch-sensitive sensor having a touch-sensitive surface substantially parallel to the display.
  • the touch-sensitive sensor may include at least one of a capacitive touch sensor, a resistive touch sensor, an acoustic sensor, an ultrasonic sensor, a proximity sensor, or an optical sensor.
  • the input components 209 may also include other sensors, such as the visible light sensor, the motion sensor and the proximity sensor described above.
  • the output components 207 of the example components 200 may include one or more video, audio and/or mechanical outputs.
  • the output components 207 may include a video output component such as a cathode ray tube, liquid crystal display, plasma display, incandescent light, fluorescent light, front or rear projection display, and light emitting diode indicator.
  • Other examples of output components 207 include an audio output component such as a speaker, alarm and/or buzzer, and/or a mechanical output component such as vibrating or motion-based mechanisms.
  • FIG. 2 is provided for illustrative purposes only and for illustrating components of a mobile device in accordance with the present invention, and is not intended to be a complete schematic diagram of the various components required for a mobile device. Therefore, a mobile device may include various other components not shown in FIG. 2 , or may include a combination of two or more components or a division of a particular component into two or more separate components, and still be within the scope of the present invention.
  • process flows 300 , 400 , and 500 illustrate an embodiment of a method for validation of a command phrase that may be performed by the mobile device 100 .
  • the mobile device 100 monitors an audio input, such as an audio input from the microphone 111 .
  • a trigger phrase e.g., “OK Google Now”
  • the mobile device 100 stores a command phrase that follows the trigger phrase.
  • the command phrase or a portion thereof in one example is buffered in the memory 205 and provided to the processor 203 .
  • the command phrase is provided directly to the processor 203 .
  • the mobile device 100 determines whether the command phrase includes a call command for a current call. Examples of a call command include “Call”, “Dial”, “Place a call to”, and other words or phrases that will be apparent those skilled in the art.
  • the call commands in one example are included in a call command whitelist.
  • the mobile device 100 determines a command confidence score for the call command.
  • the mobile device 100 analyzes the command phrase or a portion thereof (e.g., only the call command) with a voice recognition engine, such as those provided by Nuance (Nuance Communications, Inc.; Burlington, Mass.), or other processing algorithm to determine the command confidence score.
  • the command confidence score in this case is a numerical value (e.g., between 0 and 100 with 100 being most confident) that indicates a relative confidence level of the detection of a call command.
  • the mobile device 100 in one example provides the call command whitelist and the call command to the voice recognition engine to receive the command confidence score.
  • the call command whitelist may be provided to the voice recognition engine prior to the call command (e.g., during installation, configuration, initialization, etc.).
  • the mobile device 100 determines ( 304 ) whether the command confidence score meets a command threshold (e.g., is greater than or equal to 40).
  • the command confidence score is determined or received as a valid or invalid indication, or a tiered response indication (e.g., high confidence, medium confidence, low confidence).
  • a command threshold e.g., is greater than or equal to 40.
  • the command confidence score is determined or received as a valid or invalid indication, or a tiered response indication (e.g., high confidence, medium confidence, low confidence).
  • a tiered response indication e.g., high confidence, medium confidence, low confidence
  • the mobile device 100 may also compare the call command to a list of predetermined words or phrases that may be misidentified as call commands. For example, the mobile device 100 may use a blacklist of words or phrases such as “How tall is . . . ” or “denial” which may be misidentified as “Call” or “Dial”, respectively. If the command phrase is a closer match to the blacklist phrase than to a legitimate call command (e.g., on the whitelist), then the mobile device 100 proceeds to step 306 . Additionally, the mobile device 100 may determine whether the command phrase is located in the middle of a conversation.
  • a blacklist of words or phrases such as “How tall is . . . ” or “denial” which may be misidentified as “Call” or “Dial”, respectively. If the command phrase is a closer match to the blacklist phrase than to a legitimate call command (e.g., on the whitelist), then the mobile device 100 proceeds to step 306 . Additionally, the mobile device 100 may determine whether the command phrase is
  • the mobile device 100 determines whether an audio length of the command phrase is longer than a predetermined threshold, such as five seconds, to prevent an attempt to validate a user's conversation.
  • the mobile device 100 invalidates the call command if the audio length exceeds the predetermined threshold and proceeds to step 306 .
  • the mobile device 100 analyzes ( 306 ) the command phrase with a voice command engine (e.g., engines provided by Google Now, Sensory, or Nuance), for example, to provide general command recognition instead of call command validation.
  • a voice command engine e.g., engines provided by Google Now, Sensory, or Nuance
  • the command confidence score indicates that the call command may have been incorrectly identified. For example, if the command phrase is “How tall is Mount Everest?”, “How tall is” may be recognized as a blacklist phrase, but additional processing by the voice command engine may allow a response to be provided.
  • the mobile device 100 determines ( 308 ) whether the call parameter includes spoken digits (e.g., “1-800-555-1234”). If spoken digits are detected (YES at 308 ), the mobile device 100 validates ( 310 ) the spoken digits (e.g., the call parameter) against a predetermined phone numbering plan. Examples of phone numbering plans include the North American Numbering Plan, E.164, satellite phone number plans, or private numbering plans (e.g., for a private branch exchange). The mobile device 100 in one example selects a numbering plan based on its current geographic location (e.g., North America or Europe). In another example, the numbering plan includes a blacklist of phone numbers.
  • the blacklist includes phone numbers that should not be automatically dialed, such as emergency response numbers (e.g., 9-1-1), international phone numbers, or phone numbers that may incur additional fees.
  • the blacklist may be populated by a wireless service provider, government entity, or by the user of the mobile device 100 . If the call parameter is not validated (NO at 310 ), the mobile device 100 proceeds to step 306 . If the call parameter is validated and thus contains a phone number (YES at 310 ), the mobile device 100 proceeds to step 504 ( FIG. 5 ).
  • the mobile device 100 determines a voice validation score for the phone number that indicates a relative confidence level of the detection of phone number (e.g., to avoid mistaken detections such as detecting a “five” as a “nine”).
  • the mobile device 100 uses the voice recognition engine for determination of the voice validation score.
  • the mobile device 100 validates the call parameter against a set of call contacts, such as an address book associated with the mobile device 100 .
  • the mobile device 100 generates ( 312 ) a set of voice validation scores that correspond to the set of call contacts in the address book.
  • the voice validation scores indicate a relative confidence level of the detection of the corresponding contact's spoken name.
  • the mobile device 100 provides the set of call contacts to the voice recognition engine along with the call parameter.
  • the set of call contacts may be provided to the voice recognition engine prior to the call parameter (e.g., during installation, configuration, initialization, etc.).
  • the set of voice validation scores in one example are numerical values (e.g., 0 to 100).
  • the voice validation score received as a valid or invalid indication, or a tiered response indication (e.g., high confidence, medium confidence, low confidence). Other implementations of the voice validation score will be apparent to those skilled in the art.
  • the mobile device 100 selects ( 314 ) a set of target contacts from the set of call contacts based on the voice validation scores. For example, the mobile device 100 selects only those contacts with a voice validation score within a selected range of a highest voice validation score.
  • the user may have call contacts in his address book including Andrea, Brad, Brent, and Charlie. In this case, if the user speaks “OK Google Now, Call Brent at his home”, the voice validation scores may be 0, 85, 95, and 0, respectively. If the selected range is 10, the target contacts are Brad and Brent (Brent having the highest voice validation score of 95). If the selected range is 5, the target contact is only Brent.
  • the selected range may be predetermined or dynamically determined by the mobile device 100 (e.g., based on prior voice recognition history). In alternative implementations, the selected range may include “high confidence” voice validation scores or both “high confidence” and “medium confidence” scores. Other selected ranges will be apparent to those skilled in the art, for example, based on the type of voice validation score used.
  • the mobile device 100 Once the set of target contacts have been selected (e.g., those with a sufficiently high voice validation score), the mobile device 100 generates a contact confidence score for the target contacts.
  • the contact confidence scores indicate a relative importance of the corresponding contact to the user of the mobile device 100 and may be a numbered value (e.g., 0 to 100), a ranked list, or other relative indicator for comparison of the contacts.
  • the mobile device 100 in one example generates the contact confidence scores for each of the set of target contacts based on a user context associated with the user.
  • the user context of a contact includes one or more of a recency of last communication (e.g., phone calls, text messages, emails, etc.), frequency of communication, placement on a “favorites list” by the user, relation to a calendar event or appointment (e.g., a current calendar event of “Call Brent at 10:00 AM”), or other contextual indicators as will be apparent to those skilled in the art.
  • a recency of last communication e.g., phone calls, text messages, emails, etc.
  • frequency of communication e.g., placement on a “favorites list” by the user
  • relation to a calendar event or appointment e.g., a current calendar event of “Call Brent at 10:00 AM”
  • the mobile device 100 generates the contact confidence scores prior to recognizing ( 312 ) the call command.
  • the mobile device 100 may use a context engine that analyzes the user context to update contact confidence scores on a schedule-driven basis (e.g., a predetermined schedule or dynamic schedule) or on an event-driven basis (e.g., when a communication is sent to a contact).
  • the mobile device 100 e.g., the context engine
  • the context engine in one example is an application or service that is executed by the mobile device 100 .
  • the mobile device 100 selects ( 318 ) respective phone numbers for the set of target contacts.
  • the call parameter is “Brent at his home”
  • the mobile device 100 detects a phone type specified within the call parameter, such as “at his home”.
  • the mobile device 100 in one example uses a whitelist of words or phrases that specify phone types, such as for a cell or mobile phone, home phone, business phone, or others as will be apparent to those skilled in the art.
  • the call parameter may not include a phone type and simply identify a contact (e.g., “Call Brent”).
  • the mobile device 100 selects a most likely phone number based on the specified phone type (if available) and the user context.
  • the mobile device 100 queries the context engine with the specified phone type to receive the most likely phone number. If the specified phone type is not available or if no phone number is received from a query with the specified phone type (e.g., “at his home” but no home phone number is listed in the contact), the mobile device 100 queries without the phone type specified.
  • the context engine may provide a most likely number based on user context or selected from a predetermined priority order as available (e.g., mobile phone as highest priority, then home, then work). Where the user context is not available for a contact or if the contact is not on the VIP list, the mobile device 100 selects the phone number based on the predetermined priority order.
  • the mobile device 100 determines ( 402 ) whether the set of target contacts contains only a single contact without a specified phone type. In this case (YES at 402 ), the mobile device 100 obtains each of the phone numbers stored (e.g., in the address book) for the single contact and proceeds to step 408 . If the set of target contacts contains more than one contact or has a specified phone type, the mobile device 100 determines ( 406 ) whether a priority contact for the current call has been found, based on the voice validation score, the contact confidence score, or a combination thereof.
  • a priority contact is a contact with a voice validation score that meets a validation threshold (e.g., at least 60), a contact confidence score that meets a confidence threshold (e.g., at least 60), or with both thresholds met.
  • the mobile device 100 uses a weighting algorithm based on the voice validation score and contact confidence score to provide a higher likelihood of “priority” status for a contact on the VIP list. If the validation and confidence thresholds are met and a priority contact is found, the mobile device 100 proceeds to step 502 ( FIG. 5 ).
  • the mobile device 100 sorts the target contacts and phone numbers.
  • the mobile device 100 in one example sorts the contacts and numbers using a weighting algorithm based on the voice validation score and contact confidence score. After sorting, the mobile device 100 proceeds to step 502 ( FIG. 5 ).
  • the mobile device 100 determines ( 502 ) whether the set of target contacts contains a single entry (e.g., a single contact with a single selected phone number). If a single entry is not found (NO at 502 ), the mobile device 100 prompts ( 506 ) the user to indicate that multiple entries (e.g., multiple target contacts or multiple phone numbers) have been found.
  • the communication ( 506 ) in one example is a notification that multiple entries have been found and a prompt for further input. In another example, the communication is a list of the multiple entries (or a portion thereof).
  • the mobile device 100 communicates the multiple entries by a visual interface (e.g., on the display 105 ), a text-to-speech interface (e.g., via the speaker 109 ), or a combination thereof.
  • the mobile device 100 communicates only a portion of the multiple entries selected based on their relative voice validation scores or contact confidence scores.
  • the communication includes a prompt for the user to select one or more user interface options, such as communicating all of the entries found, sequentially listing the entries, or selecting an entry for placement of the current call. If the user selects an option for communicating the entries (YES at 508 ), the mobile device 100 communicates ( 510 ) the found entries (e.g., contacts or phone numbers) via the visual or text-to-speech interface.
  • the mobile device 100 determines ( 512 ) whether an entry has been selected by the user. Upon selection of an entry (YES at 512 ), the mobile device 100 places ( 514 ) a call to the selected entry. If the user does not select an entry within a predetermined timeout period such as five seconds (NO at 512 ), the process ends for the current call.
  • a predetermined timeout period such as five seconds
  • the mobile device 100 determines ( 504 ) whether the single entry is a priority contact based on the voice validation score, the contact confidence score, or a combination thereof.
  • a priority contact may be a contact with a voice validation score that meets the validation threshold or a contact confidence score that meets the contact threshold.
  • the mobile device 100 may determine that a valid phone number (YES at 310 ) is a priority contact if the corresponding voice validation score meets the validation threshold.
  • other thresholds may be used at step 504 for determination of the priority contact.
  • the mobile device 100 dynamically determines at least one of the validation threshold or contact threshold based on a device context for the mobile device 100 .
  • the mobile device 100 selects a higher threshold when the mobile device 100 is currently stowed (e.g., in a pocket or bag), the user is currently driving, the user is currently in a meeting, whether a headset (e.g., Bluetooth or wired headset) is currently connected, or other criteria, as will be apparent to those skilled in the art.
  • a headset e.g., Bluetooth or wired headset
  • the mobile device 100 Upon determination that a priority contact has been found (YES at 504 ), the mobile device 100 communicates ( 516 ) that an automatic call placement is (or will) take place, for example, via the visual or text-to-speech interface (e.g., “Calling Brent at home”). This provides an opportunity for the user to cancel the call prior to automatic placement of the call.
  • the mobile device 100 determines ( 518 ) whether the user has canceled the call, for example, within a predetermined timeout period (e.g., four seconds). If the user cancels the call (YES at 518 ), for example, via a spoken command (“Cancel”) or other interaction with the mobile device 100 , the process ends for the current call. If the user does not cancel the call (NO at 518 ), the mobile device 100 automatically places the call to the priority contact.
  • a predetermined timeout period e.g., four seconds
  • the mobile device 100 prompts ( 520 ) the user with a call confirmation via the visual or text-to-speech interface (e.g., “Should I call Brent at home?” or “Press here to place call”).
  • the mobile device 100 determines ( 522 ) whether the user has confirmed the call, for example, within a predetermined timeout period (e.g., ten seconds). If the user confirms the call (YES at 522 ), for example, via a spoken command (“Yes”) or other interaction with the mobile device 100 , the mobile device 100 places ( 514 ) the call. If the user does not confirm the call (NO at 522 ), the process ends for the current call.
  • a predetermined timeout period e.g., ten seconds
  • the mobile device 100 monitors ( 602 ) an audio input (e.g., the microphone 111 ) for a trigger phrase spoken by a user of the mobile device 100 .
  • the mobile device 100 performs the monitoring in a low power mode, such as with a low power digital signal processor while an application processor is in a low power state.
  • the mobile device 100 buffers ( 604 ) a command phrase spoken by the user after the trigger phrase ( 604 ).
  • the command phrase corresponds to a call command and a call parameter.
  • the mobile device 100 in one example wakes from the low power mode (e.g., wakes the application processor) upon detection of the trigger phrase and buffers the command phrase while the application processor is initialized.
  • the mobile device 100 selects ( 606 ) a set of target contacts associated with the mobile device based on respective voice validation scores and respective contact confidence scores.
  • the respective voice validation scores are based on the call parameter and the respective contact confidence scores are based on a user context associated with the user.
  • the mobile device 100 determines ( 608 ) whether the voice validation score and contact confidence score for a priority contact meet corresponding validation and contact thresholds.
  • the mobile device 100 automatically places ( 610 ) the call to the priority contact if the thresholds are met (YES at 608 ).
  • the mobile device 100 monitors ( 702 ) an audio input (e.g., the microphone 111 ) for a trigger phrase spoken by a user of the mobile device 100 .
  • the mobile device 100 performs the monitoring in a low power mode, such as with a low power digital signal processor while an application processor is in a low power state.
  • the mobile device 100 buffers ( 704 ) a command phrase spoken by the user after the trigger phrase ( 604 ).
  • the command phrase corresponds to a call command and a call parameter.
  • the mobile device 100 in one example wakes from the low power mode (e.g., wakes the application processor) upon detection of the trigger phrase and buffers the command phrase while the application processor is initialized. If numeric digits are detected in the call parameter, the mobile device 100 validates ( 706 ) the numeric digits as a phone number against a predetermined phone numbering plan. If the digits are validated (YES at 708 ), the mobile device 100 automatically places ( 710 ) a call to the phone number.
  • the low power mode e.g., wakes the application processor
  • the apparatus described herein may include a processor, a memory for storing program data to be executed by the processor, a permanent storage such as a disk drive, a communications port for handling communications with external devices, and user interface devices, including a display, touch panel, keys, buttons, etc.
  • these software modules may be stored as program instructions or computer readable code executable by the processor on a non-transitory computer-readable media such as magnetic storage media (e.g., magnetic tapes, hard disks, floppy disks), optical recording media (e.g., CD-ROMs, Digital Versatile Discs (DVDs), etc.), and solid state memory (e.g., random-access memory (RAM), read-only memory (ROM), static random-access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), flash memory, thumb drives, etc.).
  • the computer readable recording media may also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. This computer readable recording media may be read by the computer, stored in the memory, and executed by the processor.
  • the disclosed embodiments may be described in terms of functional block components and various processing steps. Such functional blocks may be realized by any number of hardware and/or software components configured to perform the specified functions.
  • the disclosed embodiments may employ various integrated circuit components, e.g., memory elements, processing elements, logic elements, look-up tables, and the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices.
  • the elements of the disclosed embodiments are implemented using software programming or software elements
  • the disclosed embodiments may be implemented with any programming or scripting language such as C, C++, JAVA®, assembler, or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A method on a mobile device for a wireless network is described. An audio input is monitored for a trigger phrase spoken by a user of the mobile device. A command phrase spoken by the user after the trigger phrase is buffered. The command phrase corresponds to a call command and a call parameter. A set of target contacts associated with the mobile device is selected based on respective voice validation scores and respective contact confidence scores. The respective voice validation scores are based on the call parameter. The respective contact confidence scores are based on a user context associated with the user. A call to a priority contact of the set of target contacts is automatically placed if the voice validation score of the priority contact meets a validation threshold and the contact confidence score of the priority contact meets a confidence threshold.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • The present application claims priority to U.S. Provisional Patent Application 61/889,938, filed Oct. 11, 2013 and to U.S. Provisional Patent Application 61/857,696, filed Jul. 23, 2013, the contents of all of which are hereby incorporated by reference herein.
  • TECHNICAL FIELD
  • The present disclosure relates to processing audio signals and, more particularly, to methods and devices for audio signals including voice or speech.
  • BACKGROUND
  • Although speech recognition has been around for decades, the quality of speech recognition software and hardware has only recently reached a high enough level to appeal to a large number of consumers. One area in which speech recognition has become very popular in recent years is the smartphone and tablet computer industry. Using a speech recognition-enabled device, a consumer can perform such tasks as making phone calls, writing emails, and navigating with GPS, strictly by voice.
  • Speech recognition in such devices is far from perfect, however. When using a speech recognition-enabled device for the first time, the user may need to “train” the speech recognition software to recognize his or her voice. Even after training, however, the speech recognition functions may not work well in all sound environments. An unintended call that is placed may results from inaccurate voice recognition of audio that is captured. Occurrences of these types of calls could result in negative financial, legal and social implications, and may lead to user avoiding the use of a voice recognition system for making calls.
  • BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
  • While the appended claims set forth the features of the present techniques with particularity, these techniques, together with their objects and advantages, may be best understood from the following detailed description taken in conjunction with the accompanying drawings of which:
  • FIG. 1 is a block diagram illustrating a mobile device, according to an embodiment;
  • FIG. 2 is a block diagram of example components of a mobile device, according to an embodiment;
  • FIGS. 3, 4, and 5 illustrate a process flow of a method for validating a command phrase that may be performed by the mobile device of FIG. 1, according to an embodiment;
  • FIG. 6 is a process flow of a method for automatically dialing a priority contact that may be performed by the mobile device of FIG. 1, according to an embodiment;
  • FIG. 7 is a process flow of a method for automatically dialing a phone number that may be performed by the mobile device of FIG. 1, according to an embodiment.
  • DETAILED DESCRIPTION
  • Turning to the drawings, wherein like reference numerals refer to like elements, techniques of the present disclosure are illustrated as being implemented in a suitable environment. The following description is based on embodiments of the claims and should not be taken as limiting the claims with regard to alternative embodiments that are not explicitly described herein.
  • Avoidance of placing of unintended calls (e.g., “ghost calls”) is particularly relevant for mobile devices that provide an “always on” voice recognition system. In an always-on system, the mobile device may be configured to monitor or listen for a trigger phrase spoken by a user of the mobile device, followed by a command phrase. Trigger phrases spoken by the user, such as “OK, Google Now” may be previously “learned” in a training session for the mobile device; however, the trigger phrase may be incorrectly identified due to various factors, such as background noise or obstructions between the user and the mobile device.
  • Validation of the command phrase allows for a reduction in the placement of unintended calls. The command phrase for placing a call includes a call command and a call parameter. As one example, the mobile device may detect “OK Google Now, Call Bob on his cell phone.” In this case, “OK Google Now” is the trigger phrase, “Call” is the call command, and “Bob on his cell phone” is the call parameter. As another example, the mobile device may detect “OK Google Now, Call Charlie.” In this case, the trigger phrase and call command are the same as the previous example, but the call parameter is simply “Charlie.” As a third example, the mobile device may detect “OK Google Now, Dial 1-800-555-1234.” In this case, “OK Google Now” is the trigger phrase, “Dial” is the call command, and “1-800-555-1234” is the call parameter.
  • The various embodiments described herein allow a mobile device to validate the command phrase for placing a call. For example, if the call parameter is readily recognized as “Charlie”, the mobile device may validate the command phrase by searching an address book. If the address book includes a frequently called contact with a name of “Charlie”, the mobile device may automatically place a call to that contact without further action by the user. Alternatively, if the call parameter is recognized as spoken digits such as “1-800-555-1234”, the mobile device may validate the digits against a phone numbering plan prior to placing the call.
  • In one embodiment, a set of target contacts are selected based on respective voice validation scores and respective contact confidence scores. A phone call is automatically placed to a priority contact if a voice validation score and contact confidence score for the priority contact meet a validation threshold.
  • In another embodiment, numeric digits detected in a command phrase are validated as a phone number against a predetermined numbering plan. A call is automatically placed to the phone number if the phone number is validated.
  • Referring to FIG. 1, there is illustrated a perspective view of an example mobile device 100. The mobile device 100 may be any type of device capable of storing and executing multiple applications. Examples of the mobile device 100 include, but are not limited to, mobile devices, smart phones, smart watches, wireless devices, tablet computing devices, personal digital assistants, personal navigation devices, touch screen input device, touch or pen-based input devices, portable video and/or audio players, and the like. It is to be understood that the mobile device 100 may take the form of a variety of form factors, such as, but not limited to, bar, tablet, flip/clam, slider, rotator, and wearable form factors.
  • For one embodiment, the mobile device 100 has a housing 101 comprising a front surface 103 which includes a visible display 105 and a user interface. For example, the user interface may be a touch screen including a touch-sensitive surface that overlays the display 105. For another embodiment, the user interface or touch screen of the mobile device 100 may include a touch-sensitive surface supported by the housing 101 that does not overlay any type of display. For yet another embodiment, the user interface of the mobile device 100 may include one or more input keys 107. Examples of the input key or keys 107 include, but are not limited to, keys of an alpha or numeric keypad or keyboard, a physical keys, touch-sensitive surfaces, mechanical surfaces, multipoint directional keys and side buttons or keys 107. The mobile device 100 may also comprise a speaker 109 and microphone 111 for audio output and input at the surface. It is to be understood that the mobile device 100 may include a variety of different combination of displays and interfaces.
  • The mobile device 100 includes one or more sensors 113 positioned at or within an exterior boundary of the housing 101. For example, as illustrated by FIG. 1, the sensor or sensors 113 may be positioned at the front surface 103 and/or another surface (such as one or more side surfaces 115) of the exterior boundary of the housing 101. The sensor or sensors 113 may include an exterior sensor supported at the exterior boundary to detect an environmental condition associated with an environment external to the housing. The sensor or sensors 113 may also, or in the alternative, include an interior sensors supported within the exterior boundary (i.e., internal to the housing) to detect a condition of the device itself. Examples of the sensors 113 are described below in reference to FIG. 2.
  • Referring to FIG. 2, a block diagram representing example components 200 that may be used for one or more embodiments is shown. The example components may include one or more communication components 201, one or more processors 203, one or more memories 205, one or more output components 207, and one or more input components 209. Each component may include a user interface that comprises one or more input components 209. Each communication component 201 may include a wireless receiver, transmitter or transceiver. Each communication component 201 may utilize wireless technology for communication, such as, but are not limited to, cellular-based communications such as analog communications (using AMPS), digital communications (using CDMA, TDMA, GSM, iDEN, GPRS, or EDGE), and next generation communications (using UMTS, WCDMA, LTE, or IEEE 802.16) and their variants, as represented by cellular transceiver 211. Each communication component 201 may also utilize wireless technology for communication, such as, but are not limited to, peer-to-peer or ad hoc communications such as HomeRF, Bluetooth and IEEE 802.11(a, b, g or n); and other forms of wireless communication such as infrared technology, as represented by WLAN transceiver 213. Also, each communication component 201 may be a receiver, a transmitter or both.
  • The example components 200 may further include a device interface 215 to provide a direct connection to auxiliary components or accessories for additional or enhanced functionality. In addition, the example components 200 may include a power source or supply 217, such as a portable battery, for providing power to the other example components and allow portability of the mobile device 100.
  • The processor 203 may generate commands based on information received from one or more communication components 201 and/or one or more input components 209. The processor 203 may process the received information alone or in combination with other data, such as the information stored in the memory 205. Thus, the memory 205 of the example components 200 may be used by the processor 203 to store and retrieve data. The data that may be stored by the memory 205 include, but is not limited to, operating systems, applications, and data. Each operating system includes executable code that controls basic functions of the mobile device, such as interaction among the components of the example components 200, communication with external devices via each communication component 201 and/or the device interface (see below), and storage and retrieval of applications and data to and from the memory 205. The memory 205 includes multiple applications, and each application includes executable code utilizes an operating system to provide more specific functionality for the mobile device. Data is non-executable code or information that may be referenced and/or manipulated by an operating system or application for performing functions of the mobile device.
  • The input components 209, such as components of the user interface, may produce an input signal in response to detecting a predetermined gesture at a first input component 219, such as a gesture sensor. An example of a gesture sensor is, but not limited to, a touch-sensitive sensor having a touch-sensitive surface substantially parallel to the display. The touch-sensitive sensor may include at least one of a capacitive touch sensor, a resistive touch sensor, an acoustic sensor, an ultrasonic sensor, a proximity sensor, or an optical sensor.
  • The input components 209 may also include other sensors, such as the visible light sensor, the motion sensor and the proximity sensor described above. Likewise, the output components 207 of the example components 200 may include one or more video, audio and/or mechanical outputs. For example, the output components 207 may include a video output component such as a cathode ray tube, liquid crystal display, plasma display, incandescent light, fluorescent light, front or rear projection display, and light emitting diode indicator. Other examples of output components 207 include an audio output component such as a speaker, alarm and/or buzzer, and/or a mechanical output component such as vibrating or motion-based mechanisms.
  • It is to be understood that FIG. 2 is provided for illustrative purposes only and for illustrating components of a mobile device in accordance with the present invention, and is not intended to be a complete schematic diagram of the various components required for a mobile device. Therefore, a mobile device may include various other components not shown in FIG. 2, or may include a combination of two or more components or a division of a particular component into two or more separate components, and still be within the scope of the present invention.
  • Turning to FIGS. 3, 4, and 5, process flows 300, 400, and 500 illustrate an embodiment of a method for validation of a command phrase that may be performed by the mobile device 100. As a user of the mobile device 100 is speaking, the mobile device 100 monitors an audio input, such as an audio input from the microphone 111. Upon detection of a trigger phrase (e.g., “OK Google Now”), the mobile device 100 stores a command phrase that follows the trigger phrase. The command phrase or a portion thereof in one example is buffered in the memory 205 and provided to the processor 203. In another example, the command phrase is provided directly to the processor 203. The mobile device 100 determines whether the command phrase includes a call command for a current call. Examples of a call command include “Call”, “Dial”, “Place a call to”, and other words or phrases that will be apparent those skilled in the art. The call commands in one example are included in a call command whitelist.
  • When the mobile device 100 recognizes (302) a call command, the mobile device 100 determines a command confidence score for the call command. In one example, the mobile device 100 analyzes the command phrase or a portion thereof (e.g., only the call command) with a voice recognition engine, such as those provided by Nuance (Nuance Communications, Inc.; Burlington, Mass.), or other processing algorithm to determine the command confidence score. The command confidence score in this case is a numerical value (e.g., between 0 and 100 with 100 being most confident) that indicates a relative confidence level of the detection of a call command. The mobile device 100 in one example provides the call command whitelist and the call command to the voice recognition engine to receive the command confidence score. Alternatively, the call command whitelist may be provided to the voice recognition engine prior to the call command (e.g., during installation, configuration, initialization, etc.). The mobile device 100 determines (304) whether the command confidence score meets a command threshold (e.g., is greater than or equal to 40). In alternative embodiments, the command confidence score is determined or received as a valid or invalid indication, or a tiered response indication (e.g., high confidence, medium confidence, low confidence). Other implementations of the command confidence score will be apparent to those skilled in the art.
  • In addition to determining (304) the command confidence score, the mobile device 100 may also compare the call command to a list of predetermined words or phrases that may be misidentified as call commands. For example, the mobile device 100 may use a blacklist of words or phrases such as “How tall is . . . ” or “denial” which may be misidentified as “Call” or “Dial”, respectively. If the command phrase is a closer match to the blacklist phrase than to a legitimate call command (e.g., on the whitelist), then the mobile device 100 proceeds to step 306. Additionally, the mobile device 100 may determine whether the command phrase is located in the middle of a conversation. In this case, the mobile device 100 determines whether an audio length of the command phrase is longer than a predetermined threshold, such as five seconds, to prevent an attempt to validate a user's conversation. The mobile device 100 invalidates the call command if the audio length exceeds the predetermined threshold and proceeds to step 306.
  • If the command threshold is not met (NO at 304), the mobile device 100 analyzes (306) the command phrase with a voice command engine (e.g., engines provided by Google Now, Sensory, or Nuance), for example, to provide general command recognition instead of call command validation. In this case, the command confidence score indicates that the call command may have been incorrectly identified. For example, if the command phrase is “How tall is Mount Everest?”, “How tall is” may be recognized as a blacklist phrase, but additional processing by the voice command engine may allow a response to be provided.
  • If the command threshold is met (YES at 304), the mobile device 100 determines (308) whether the call parameter includes spoken digits (e.g., “1-800-555-1234”). If spoken digits are detected (YES at 308), the mobile device 100 validates (310) the spoken digits (e.g., the call parameter) against a predetermined phone numbering plan. Examples of phone numbering plans include the North American Numbering Plan, E.164, satellite phone number plans, or private numbering plans (e.g., for a private branch exchange). The mobile device 100 in one example selects a numbering plan based on its current geographic location (e.g., North America or Europe). In another example, the numbering plan includes a blacklist of phone numbers. The blacklist includes phone numbers that should not be automatically dialed, such as emergency response numbers (e.g., 9-1-1), international phone numbers, or phone numbers that may incur additional fees. The blacklist may be populated by a wireless service provider, government entity, or by the user of the mobile device 100. If the call parameter is not validated (NO at 310), the mobile device 100 proceeds to step 306. If the call parameter is validated and thus contains a phone number (YES at 310), the mobile device 100 proceeds to step 504 (FIG. 5). Optionally, the mobile device 100 determines a voice validation score for the phone number that indicates a relative confidence level of the detection of phone number (e.g., to avoid mistaken detections such as detecting a “five” as a “nine”). The mobile device 100 uses the voice recognition engine for determination of the voice validation score.
  • If spoken digits are not detected (NO at 308), the mobile device 100 validates the call parameter against a set of call contacts, such as an address book associated with the mobile device 100. The mobile device 100 generates (312) a set of voice validation scores that correspond to the set of call contacts in the address book. The voice validation scores indicate a relative confidence level of the detection of the corresponding contact's spoken name. In one example, the mobile device 100 provides the set of call contacts to the voice recognition engine along with the call parameter. The set of call contacts may be provided to the voice recognition engine prior to the call parameter (e.g., during installation, configuration, initialization, etc.). The set of voice validation scores in one example are numerical values (e.g., 0 to 100). In alternative embodiments, the voice validation score received as a valid or invalid indication, or a tiered response indication (e.g., high confidence, medium confidence, low confidence). Other implementations of the voice validation score will be apparent to those skilled in the art.
  • The mobile device 100 selects (314) a set of target contacts from the set of call contacts based on the voice validation scores. For example, the mobile device 100 selects only those contacts with a voice validation score within a selected range of a highest voice validation score. As one example, the user may have call contacts in his address book including Andrea, Brad, Brent, and Charlie. In this case, if the user speaks “OK Google Now, Call Brent at his home”, the voice validation scores may be 0, 85, 95, and 0, respectively. If the selected range is 10, the target contacts are Brad and Brent (Brent having the highest voice validation score of 95). If the selected range is 5, the target contact is only Brent. The selected range may be predetermined or dynamically determined by the mobile device 100 (e.g., based on prior voice recognition history). In alternative implementations, the selected range may include “high confidence” voice validation scores or both “high confidence” and “medium confidence” scores. Other selected ranges will be apparent to those skilled in the art, for example, based on the type of voice validation score used.
  • Once the set of target contacts have been selected (e.g., those with a sufficiently high voice validation score), the mobile device 100 generates a contact confidence score for the target contacts. The contact confidence scores indicate a relative importance of the corresponding contact to the user of the mobile device 100 and may be a numbered value (e.g., 0 to 100), a ranked list, or other relative indicator for comparison of the contacts. The mobile device 100 in one example generates the contact confidence scores for each of the set of target contacts based on a user context associated with the user. The user context of a contact includes one or more of a recency of last communication (e.g., phone calls, text messages, emails, etc.), frequency of communication, placement on a “favorites list” by the user, relation to a calendar event or appointment (e.g., a current calendar event of “Call Brent at 10:00 AM”), or other contextual indicators as will be apparent to those skilled in the art.
  • In an alternative implementation, the mobile device 100 generates the contact confidence scores prior to recognizing (312) the call command. For example, the mobile device 100 may use a context engine that analyzes the user context to update contact confidence scores on a schedule-driven basis (e.g., a predetermined schedule or dynamic schedule) or on an event-driven basis (e.g., when a communication is sent to a contact). In this case, the mobile device 100 (e.g., the context engine) may maintain a “VIP” list of contacts with their respective contact confidence scores. The context engine in one example is an application or service that is executed by the mobile device 100.
  • The mobile device 100 selects (318) respective phone numbers for the set of target contacts. As one example where the call parameter is “Brent at his home”, the mobile device 100 detects a phone type specified within the call parameter, such as “at his home”. The mobile device 100 in one example uses a whitelist of words or phrases that specify phone types, such as for a cell or mobile phone, home phone, business phone, or others as will be apparent to those skilled in the art. As another example, the call parameter may not include a phone type and simply identify a contact (e.g., “Call Brent”).
  • The mobile device 100 selects a most likely phone number based on the specified phone type (if available) and the user context. In one example, the mobile device 100 queries the context engine with the specified phone type to receive the most likely phone number. If the specified phone type is not available or if no phone number is received from a query with the specified phone type (e.g., “at his home” but no home phone number is listed in the contact), the mobile device 100 queries without the phone type specified. In this case, the context engine may provide a most likely number based on user context or selected from a predetermined priority order as available (e.g., mobile phone as highest priority, then home, then work). Where the user context is not available for a contact or if the contact is not on the VIP list, the mobile device 100 selects the phone number based on the predetermined priority order.
  • Referring to FIG. 4, after selection (318) of the phone numbers, the mobile device 100 determines (402) whether the set of target contacts contains only a single contact without a specified phone type. In this case (YES at 402), the mobile device 100 obtains each of the phone numbers stored (e.g., in the address book) for the single contact and proceeds to step 408. If the set of target contacts contains more than one contact or has a specified phone type, the mobile device 100 determines (406) whether a priority contact for the current call has been found, based on the voice validation score, the contact confidence score, or a combination thereof. In one example, a priority contact is a contact with a voice validation score that meets a validation threshold (e.g., at least 60), a contact confidence score that meets a confidence threshold (e.g., at least 60), or with both thresholds met. In another example, the mobile device 100 uses a weighting algorithm based on the voice validation score and contact confidence score to provide a higher likelihood of “priority” status for a contact on the VIP list. If the validation and confidence thresholds are met and a priority contact is found, the mobile device 100 proceeds to step 502 (FIG. 5).
  • If a priority contact is not found (NO at 406), or after obtaining (404) the phone numbers, the mobile device 100 sorts the target contacts and phone numbers. The mobile device 100 in one example sorts the contacts and numbers using a weighting algorithm based on the voice validation score and contact confidence score. After sorting, the mobile device 100 proceeds to step 502 (FIG. 5).
  • Referring to FIG. 5, the mobile device 100 determines (502) whether the set of target contacts contains a single entry (e.g., a single contact with a single selected phone number). If a single entry is not found (NO at 502), the mobile device 100 prompts (506) the user to indicate that multiple entries (e.g., multiple target contacts or multiple phone numbers) have been found. The communication (506) in one example is a notification that multiple entries have been found and a prompt for further input. In another example, the communication is a list of the multiple entries (or a portion thereof).
  • The mobile device 100 communicates the multiple entries by a visual interface (e.g., on the display 105), a text-to-speech interface (e.g., via the speaker 109), or a combination thereof. In one example, the mobile device 100 communicates only a portion of the multiple entries selected based on their relative voice validation scores or contact confidence scores. In a further example, the communication includes a prompt for the user to select one or more user interface options, such as communicating all of the entries found, sequentially listing the entries, or selecting an entry for placement of the current call. If the user selects an option for communicating the entries (YES at 508), the mobile device 100 communicates (510) the found entries (e.g., contacts or phone numbers) via the visual or text-to-speech interface.
  • The mobile device 100 determines (512) whether an entry has been selected by the user. Upon selection of an entry (YES at 512), the mobile device 100 places (514) a call to the selected entry. If the user does not select an entry within a predetermined timeout period such as five seconds (NO at 512), the process ends for the current call.
  • If a single entry is found (YES at 502), or if a valid phone number is found (YES at 310), the mobile device 100 determines (504) whether the single entry is a priority contact based on the voice validation score, the contact confidence score, or a combination thereof. As described above, a priority contact may be a contact with a voice validation score that meets the validation threshold or a contact confidence score that meets the contact threshold. The mobile device 100 may determine that a valid phone number (YES at 310) is a priority contact if the corresponding voice validation score meets the validation threshold. However, other thresholds may be used at step 504 for determination of the priority contact. In one example, the mobile device 100 dynamically determines at least one of the validation threshold or contact threshold based on a device context for the mobile device 100. In this case, the mobile device 100 selects a higher threshold when the mobile device 100 is currently stowed (e.g., in a pocket or bag), the user is currently driving, the user is currently in a meeting, whether a headset (e.g., Bluetooth or wired headset) is currently connected, or other criteria, as will be apparent to those skilled in the art.
  • Upon determination that a priority contact has been found (YES at 504), the mobile device 100 communicates (516) that an automatic call placement is (or will) take place, for example, via the visual or text-to-speech interface (e.g., “Calling Brent at home”). This provides an opportunity for the user to cancel the call prior to automatic placement of the call. The mobile device 100 determines (518) whether the user has canceled the call, for example, within a predetermined timeout period (e.g., four seconds). If the user cancels the call (YES at 518), for example, via a spoken command (“Cancel”) or other interaction with the mobile device 100, the process ends for the current call. If the user does not cancel the call (NO at 518), the mobile device 100 automatically places the call to the priority contact.
  • If a priority contact has not been found (NO at 504), the mobile device 100 prompts (520) the user with a call confirmation via the visual or text-to-speech interface (e.g., “Should I call Brent at home?” or “Press here to place call”). The mobile device 100 determines (522) whether the user has confirmed the call, for example, within a predetermined timeout period (e.g., ten seconds). If the user confirms the call (YES at 522), for example, via a spoken command (“Yes”) or other interaction with the mobile device 100, the mobile device 100 places (514) the call. If the user does not confirm the call (NO at 522), the process ends for the current call.
  • Turning to FIG. 6, a process flow 600 for automatically dialing a priority contact that may be performed by the mobile device 100 is shown. The mobile device 100 monitors (602) an audio input (e.g., the microphone 111) for a trigger phrase spoken by a user of the mobile device 100. In one example, the mobile device 100 performs the monitoring in a low power mode, such as with a low power digital signal processor while an application processor is in a low power state. The mobile device 100 buffers (604) a command phrase spoken by the user after the trigger phrase (604). The command phrase corresponds to a call command and a call parameter. The mobile device 100 in one example wakes from the low power mode (e.g., wakes the application processor) upon detection of the trigger phrase and buffers the command phrase while the application processor is initialized. The mobile device 100 selects (606) a set of target contacts associated with the mobile device based on respective voice validation scores and respective contact confidence scores. The respective voice validation scores are based on the call parameter and the respective contact confidence scores are based on a user context associated with the user. The mobile device 100 determines (608) whether the voice validation score and contact confidence score for a priority contact meet corresponding validation and contact thresholds. The mobile device 100 automatically places (610) the call to the priority contact if the thresholds are met (YES at 608).
  • Turning to FIG. 7, a process flow 700 for automatically dialing a phone number that may be performed by the mobile device 100 is shown. The mobile device 100 monitors (702) an audio input (e.g., the microphone 111) for a trigger phrase spoken by a user of the mobile device 100. In one example, the mobile device 100 performs the monitoring in a low power mode, such as with a low power digital signal processor while an application processor is in a low power state. The mobile device 100 buffers (704) a command phrase spoken by the user after the trigger phrase (604). The command phrase corresponds to a call command and a call parameter. The mobile device 100 in one example wakes from the low power mode (e.g., wakes the application processor) upon detection of the trigger phrase and buffers the command phrase while the application processor is initialized. If numeric digits are detected in the call parameter, the mobile device 100 validates (706) the numeric digits as a phone number against a predetermined phone numbering plan. If the digits are validated (YES at 708), the mobile device 100 automatically places (710) a call to the phone number.
  • It can be seen from the foregoing that a method and system for validation of a command phrase for placing a call have been described. In view of the many possible embodiments to which the principles of the present discussion may be applied, it should be recognized that the embodiments described herein with respect to the drawing figures are meant to be illustrative only and should not be taken as limiting the scope of the claims. Therefore, the techniques as described herein contemplate all such embodiments as may come within the scope of the following claims and equivalents thereof.
  • The apparatus described herein may include a processor, a memory for storing program data to be executed by the processor, a permanent storage such as a disk drive, a communications port for handling communications with external devices, and user interface devices, including a display, touch panel, keys, buttons, etc. When software modules are involved, these software modules may be stored as program instructions or computer readable code executable by the processor on a non-transitory computer-readable media such as magnetic storage media (e.g., magnetic tapes, hard disks, floppy disks), optical recording media (e.g., CD-ROMs, Digital Versatile Discs (DVDs), etc.), and solid state memory (e.g., random-access memory (RAM), read-only memory (ROM), static random-access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), flash memory, thumb drives, etc.). The computer readable recording media may also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. This computer readable recording media may be read by the computer, stored in the memory, and executed by the processor.
  • The disclosed embodiments may be described in terms of functional block components and various processing steps. Such functional blocks may be realized by any number of hardware and/or software components configured to perform the specified functions. For example, the disclosed embodiments may employ various integrated circuit components, e.g., memory elements, processing elements, logic elements, look-up tables, and the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices. Similarly, where the elements of the disclosed embodiments are implemented using software programming or software elements, the disclosed embodiments may be implemented with any programming or scripting language such as C, C++, JAVA®, assembler, or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements. Functional aspects may be implemented in algorithms that execute on one or more processors. Furthermore, the disclosed embodiments may employ any number of conventional techniques for electronics configuration, signal processing and/or control, data processing and the like. Finally, the steps of all methods described herein may be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context.
  • For the sake of brevity, conventional electronics, control systems, software development and other functional aspects of the systems (and components of the individual operating components of the systems) may not be described in detail. Furthermore, the connecting lines, or connectors shown in the various figures presented are intended to represent exemplary functional relationships and/or physical or logical couplings between the various elements. It should be noted that many alternative or additional functional relationships, physical connections or logical connections may be present in a practical device. The words “mechanism”, “element”, “unit”, “structure”, “means”, “device”, “controller”, and “construction” are used broadly and are not limited to mechanical or physical embodiments, but may include software routines in conjunction with processors, etc.
  • No item or component is essential to the practice of the disclosed embodiments unless the element is specifically described as “essential” or “critical”. It will also be recognized that the terms “comprises,” “comprising,” “includes,” “including,” “has,” and “having,” as used herein, are specifically intended to be read as open-ended terms of art. The use of the terms “a” and “an” and “the” and similar referents in the context of describing the disclosed embodiments (especially in the context of the following claims) are to be construed to cover both the singular and the plural, unless the context clearly indicates otherwise. In addition, it should be understood that although the terms “first,” “second,” etc. may be used herein to describe various elements, these elements should not be limited by these terms, which are only used to distinguish one element from another. Furthermore, recitation of ranges of values herein are merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, unless otherwise indicated herein, and each separate value is incorporated into the specification as if it were individually recited herein.
  • The use of any and all examples, or exemplary language (e.g., “such as”) provided herein, is intended merely to better illuminate the disclosed embodiments and does not pose a limitation on the scope of the disclosed embodiments unless otherwise claimed. Numerous modifications and adaptations will be readily apparent to those of ordinary skill in this art.

Claims (20)

We claim:
1. A method in a mobile device, the method comprising:
monitoring an audio input for a trigger phrase spoken by a user of the mobile device;
buffering a command phrase spoken by the user after the trigger phrase, wherein the command phrase corresponds to a call command and a call parameter;
selecting a set of target contacts associated with the mobile device based on respective voice validation scores and respective contact confidence scores, wherein the respective voice validation scores are based on the call parameter, wherein the respective contact confidence scores are based on a user context associated with the user;
automatically placing a call to a priority contact of the set of target contacts if
the voice validation score of the priority contact meets a validation threshold and
the contact confidence score of the priority contact meets a confidence threshold.
2. The method of claim 1 wherein monitoring the audio input comprises:
automatically monitoring the audio input in a low power mode of the mobile device;
waking the mobile device from the low power mode upon detection of the trigger phrase; and
buffering the command phrase while the mobile device wakes from the low power mode.
3. The method of claim 1 wherein selecting the set of target contacts comprises:
generating a set of voice validation scores that correspond to a set of call contacts associated with the mobile device based on the command phrase;
selecting the set of target contacts, from the set of call contacts, with a voice validation score within a selected range of a highest voice validation score of the set of voice validation scores.
4. The method of claim 3 wherein generating the set of voice validation scores comprises:
providing the set of call contacts to a voice recognition engine;
providing the call parameter to the voice recognition engine;
receiving the set of voice validation scores from the voice recognition engine, wherein each voice validation score of the set of voice validation scores indicates a detection likelihood of the corresponding call contact within the call parameter.
5. The method of claim 3 further comprising:
generating a set of contact confidence scores, that correspond to target contacts of the set of target contacts, based on the user context associated with the user, wherein the user context comprises at least one of a recency of last communication, frequency of communication, placement on a favorites list by the user, relation to a calendar event or appointment for the user;
selecting respective phone numbers for the set of target contacts.
6. The method of claim 5 wherein automatically placing the call to the priority contact comprises:
determining whether only a single contact of the set of target contacts has a voice validation score that meets the validation threshold and a contact confidence score that meets the confidence threshold; and
automatically placing the call to the phone number for the single contact.
7. The method of claim 5 further comprising:
selecting a set of phone numbers that correspond to a single contact of the set of target contacts if the set of target contacts has only the single contact;
automatically placing the call to a single phone number if
the single contact has only the single phone number and
the voice validation score of the single contact meets the validation threshold and
the contact confidence score of the single contact meets the confidence threshold;
prompting the user to enter the single phone number if the single contact has only the single phone number but the voice validation score of the single contact does not meet the validation threshold or the contact confidence score of the single contact does not meet the confidence threshold.
8. The method of claim 5 further comprising:
sorting the set of target contacts based on the set of contact confidence scores and the set of voice validation scores;
prompting the user to select a contact from the set of target contacts if the set of target contacts has more than one target contact.
9. The method of claim 1 further comprising validating the call command based on an audio length of the command phrase.
10. A method in a mobile device, the method comprising:
monitoring an audio input for a trigger phrase spoken by a user of the mobile device;
buffering a command phrase spoken by the user after the trigger phrase, wherein the command phrase corresponds to a call command and a call parameter;
validating a plurality of numeric digits detected in the call parameter as a phone number against a predetermined phone numbering plan;
automatically placing a call to the phone number if the phone number is validated.
11. The method of claim 10 wherein monitoring the audio input comprises:
automatically monitoring the audio input in a low power mode of the mobile device;
waking the mobile device from the low power mode upon detection of the trigger phrase;
buffering the command phrase while the mobile device wakes from the low power mode.
12. The method of claim 10 further comprising analyzing the command phrase with a voice command engine if the plurality of numeric digits is not validated as a phone number.
13. A mobile device for a wireless network, the mobile device comprising:
a non-transitory memory;
a processor configured to retrieve instructions from the memory;
wherein:
the mobile device is configured to monitor an audio input for a trigger phrase spoken by a user of the mobile device;
the mobile device is configured to buffer a command phrase spoken by the user after the trigger phrase, wherein the command phrase corresponds to a call command and a call parameter;
the mobile device is configured to select a set of target contacts associated with the mobile device based on respective voice validation scores and respective contact confidence scores, wherein the respective voice validation scores are based on the call parameter, wherein the respective contact confidence scores are based on a user context associated with the user;
the mobile device is configured to automatically place a call to a priority contact of the set of target contacts if
the voice validation score of the priority contact meets a validation threshold and
the contact confidence score of the priority contact meets a confidence threshold.
14. The mobile device of claim 13 wherein the mobile device is configured to automatically monitor the audio input in a low power mode of the mobile device;
wherein the mobile device is configured to wake the mobile device from the low power mode upon detection of the trigger phrase; and
wherein the mobile device is configured to buffer the command phrase while the mobile device wakes from the low power mode.
15. The mobile device of claim 13 wherein the mobile device is configured to generate a set of voice validation scores that correspond to a set of call contacts associated with the mobile device based on the command phrase;
wherein the mobile device is configured to select the set of target contacts, from the set of call contacts, with a voice validation score within a selected range of a highest voice validation score of the set of voice validation scores.
16. The mobile device of claim 15 wherein the mobile device is configured to provide the set of call contacts to a voice recognition engine;
wherein the mobile device is configured to provide the call parameter to the voice recognition engine;
wherein the mobile device is configured to receive the set of voice validation scores from the voice recognition engine, wherein each voice validation score of the set of voice validation scores indicates a detection likelihood of the corresponding call contact within the call parameter.
17. The mobile device of claim 15 wherein the mobile device is configured to generate a set of contact confidence scores, that correspond to target contacts of the set of target contacts, based on the user context associated with the user, wherein the user context comprises at least one of a call history or a favorite contact list;
wherein the mobile device is configured to select respective phone numbers for the set of target contacts.
18. The mobile device of claim 17 wherein the mobile device is configured to determine whether only a single contact of the set of target contacts has a voice validation score that meets the validation threshold and a contact confidence score that meets the confidence threshold; and
wherein the mobile device is configured to automatically place the call to the phone number for the single contact.
19. The mobile device of claim 17 wherein the mobile device is configured to select a set of phone numbers that correspond to a single contact of the set of target contacts if the set of target contacts has only the single contact;
wherein the mobile device is configured to automatically place the call to a single phone number if
the single contact has only the single phone number and
the voice validation score of the single contact meets the validation threshold and
the contact confidence score of the single contact meets the confidence threshold;
wherein the mobile device is configured to prompt the user to place the call to the single phone number if the single contact has only the single phone number but the voice validation score of the single contact does not meet the validation threshold or the contact confidence score of the single contact does not meet the confidence threshold.
20. The mobile device of claim 17 wherein the mobile device is configured to sort the set of target contacts based on the set of contact confidence scores and the set of voice validation scores;
wherein the mobile device is configured to prompt the user to select a contact from the set of target contacts if the set of target contacts has more than one target contact.
US14/142,234 2013-07-23 2013-12-27 Method and Device For Command Phrase Validation Abandoned US20150031416A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/142,234 US20150031416A1 (en) 2013-07-23 2013-12-27 Method and Device For Command Phrase Validation

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361857696P 2013-07-23 2013-07-23
US201361889938P 2013-10-11 2013-10-11
US14/142,234 US20150031416A1 (en) 2013-07-23 2013-12-27 Method and Device For Command Phrase Validation

Publications (1)

Publication Number Publication Date
US20150031416A1 true US20150031416A1 (en) 2015-01-29

Family

ID=52390940

Family Applications (5)

Application Number Title Priority Date Filing Date
US14/142,234 Abandoned US20150031416A1 (en) 2013-07-23 2013-12-27 Method and Device For Command Phrase Validation
US14/142,190 Abandoned US20150032238A1 (en) 2013-07-23 2013-12-27 Method and Device for Audio Input Routing
US16/703,003 Active 2034-04-01 US11363128B2 (en) 2013-07-23 2019-12-04 Method and device for audio input routing
US17/833,446 Active US11876922B2 (en) 2013-07-23 2022-06-06 Method and device for audio input routing
US18/537,386 Active US12407771B2 (en) 2013-07-23 2023-12-12 Method and device for audio input routing

Family Applications After (4)

Application Number Title Priority Date Filing Date
US14/142,190 Abandoned US20150032238A1 (en) 2013-07-23 2013-12-27 Method and Device for Audio Input Routing
US16/703,003 Active 2034-04-01 US11363128B2 (en) 2013-07-23 2019-12-04 Method and device for audio input routing
US17/833,446 Active US11876922B2 (en) 2013-07-23 2022-06-06 Method and device for audio input routing
US18/537,386 Active US12407771B2 (en) 2013-07-23 2023-12-12 Method and device for audio input routing

Country Status (2)

Country Link
US (5) US20150031416A1 (en)
WO (1) WO2015013201A2 (en)

Cited By (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9437188B1 (en) 2014-03-28 2016-09-06 Knowles Electronics, Llc Buffered reprocessing for multi-microphone automatic speech recognition assist
US9508345B1 (en) 2013-09-24 2016-11-29 Knowles Electronics, Llc Continuous voice sensing
US9679497B2 (en) 2015-10-09 2017-06-13 Microsoft Technology Licensing, Llc Proxies for speech generating devices
US20170177908A1 (en) * 2015-12-17 2017-06-22 Ncr Corporation Input peripheral device security
DK201770032A1 (en) * 2016-06-10 2018-01-15 Apple Inc Intelligent digital assistant in a multi-tasking environment
US9953634B1 (en) 2013-12-17 2018-04-24 Knowles Electronics, Llc Passive training for automatic speech recognition
US9986419B2 (en) 2014-09-30 2018-05-29 Apple Inc. Social reminders
CN108369476A (en) * 2015-12-11 2018-08-03 索尼公司 Information processing equipment, information processing method and program
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10049675B2 (en) 2010-02-25 2018-08-14 Apple Inc. User profiling for voice input processing
US10079014B2 (en) 2012-06-08 2018-09-18 Apple Inc. Name recognition system
US10083690B2 (en) 2014-05-30 2018-09-25 Apple Inc. Better resolution when referencing to concepts
US10108612B2 (en) 2008-07-31 2018-10-23 Apple Inc. Mobile device having human language translation capability with positional feedback
US10148808B2 (en) * 2015-10-09 2018-12-04 Microsoft Technology Licensing, Llc Directed personal communication for speech generating devices
US10262555B2 (en) 2015-10-09 2019-04-16 Microsoft Technology Licensing, Llc Facilitating awareness and conversation throughput in an augmentative and alternative communication system
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10311871B2 (en) 2015-03-08 2019-06-04 Apple Inc. Competing devices responding to voice triggers
US10332518B2 (en) 2017-05-09 2019-06-25 Apple Inc. User interface for correcting recognition errors
US10356243B2 (en) 2015-06-05 2019-07-16 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10354652B2 (en) 2015-12-02 2019-07-16 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10381016B2 (en) 2008-01-03 2019-08-13 Apple Inc. Methods and apparatus for altering audio output signals
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10403283B1 (en) 2018-06-01 2019-09-03 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10410637B2 (en) 2017-05-12 2019-09-10 Apple Inc. User-specific acoustic models
US10417344B2 (en) 2014-05-30 2019-09-17 Apple Inc. Exemplar-based natural language processing
US10417405B2 (en) 2011-03-21 2019-09-17 Apple Inc. Device access using voice authentication
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10431204B2 (en) 2014-09-11 2019-10-01 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10438595B2 (en) 2014-09-30 2019-10-08 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10453443B2 (en) 2014-09-30 2019-10-22 Apple Inc. Providing an indication of the suitability of speech recognition
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10482874B2 (en) 2017-05-15 2019-11-19 Apple Inc. Hierarchical belief states for digital assistants
US10497365B2 (en) 2014-05-30 2019-12-03 Apple Inc. Multi-command single utterance input method
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US10529332B2 (en) 2015-03-08 2020-01-07 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US10580409B2 (en) 2016-06-11 2020-03-03 Apple Inc. Application integration with a digital assistant
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10643611B2 (en) 2008-10-02 2020-05-05 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10657961B2 (en) 2013-06-08 2020-05-19 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10684703B2 (en) 2018-06-01 2020-06-16 Apple Inc. Attention aware virtual assistant dismissal
US10699717B2 (en) 2014-05-30 2020-06-30 Apple Inc. Intelligent assistant for home automation
US10714117B2 (en) 2013-02-07 2020-07-14 Apple Inc. Voice trigger for a digital assistant
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10741185B2 (en) 2010-01-18 2020-08-11 Apple Inc. Intelligent automated assistant
US10748546B2 (en) 2017-05-16 2020-08-18 Apple Inc. Digital assistant services based on device capabilities
US10755703B2 (en) 2017-05-11 2020-08-25 Apple Inc. Offline personal assistant
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10769385B2 (en) 2013-06-09 2020-09-08 Apple Inc. System and method for inferring user intent from speech inputs
US10791176B2 (en) 2017-05-12 2020-09-29 Apple Inc. Synchronization and task delegation of a digital assistant
US10789945B2 (en) 2017-05-12 2020-09-29 Apple Inc. Low-latency intelligent automated assistant
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10810274B2 (en) 2017-05-15 2020-10-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US10904611B2 (en) 2014-06-30 2021-01-26 Apple Inc. Intelligent automated assistant for TV user interactions
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10942702B2 (en) 2016-06-11 2021-03-09 Apple Inc. Intelligent device arbitration and control
US10942703B2 (en) 2015-12-23 2021-03-09 Apple Inc. Proactive assistance based on dialog communication between devices
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US11010127B2 (en) 2015-06-29 2021-05-18 Apple Inc. Virtual assistant for media playback
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US11023513B2 (en) 2007-12-20 2021-06-01 Apple Inc. Method and apparatus for searching using an active ontology
US11048473B2 (en) 2013-06-09 2021-06-29 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US11069336B2 (en) 2012-03-02 2021-07-20 Apple Inc. Systems and methods for name pronunciation
US11069347B2 (en) 2016-06-08 2021-07-20 Apple Inc. Intelligent automated assistant for media exploration
US11070949B2 (en) 2015-05-27 2021-07-20 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display
US11080121B2 (en) * 2018-06-27 2021-08-03 International Business Machines Corporation Generating runbooks for problem events
US11120372B2 (en) 2011-06-03 2021-09-14 Apple Inc. Performing actions associated with task items that represent tasks to perform
US11127397B2 (en) 2015-05-27 2021-09-21 Apple Inc. Device voice control
US11126400B2 (en) 2015-09-08 2021-09-21 Apple Inc. Zero latency digital assistant
US11133008B2 (en) 2014-05-30 2021-09-28 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US11217251B2 (en) 2019-05-06 2022-01-04 Apple Inc. Spoken notifications
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US11231904B2 (en) 2015-03-06 2022-01-25 Apple Inc. Reducing response latency of intelligent automated assistants
US11237797B2 (en) 2019-05-31 2022-02-01 Apple Inc. User activity shortcut suggestions
US11269678B2 (en) 2012-05-15 2022-03-08 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11314370B2 (en) 2013-12-06 2022-04-26 Apple Inc. Method for extracting salient dialog usage from live data
US11350253B2 (en) 2011-06-03 2022-05-31 Apple Inc. Active transport based notifications
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11363128B2 (en) 2013-07-23 2022-06-14 Google Technology Holdings LLC Method and device for audio input routing
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11388291B2 (en) 2013-03-14 2022-07-12 Apple Inc. System and method for processing voicemail
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11423886B2 (en) 2010-01-18 2022-08-23 Apple Inc. Task flow identification based on user intent
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11467802B2 (en) 2017-05-11 2022-10-11 Apple Inc. Maintaining privacy of personal information
US11468282B2 (en) 2015-05-15 2022-10-11 Apple Inc. Virtual assistant in a communication session
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11495218B2 (en) 2018-06-01 2022-11-08 Apple Inc. Virtual assistant operation in multi-device environments
US11500672B2 (en) 2015-09-08 2022-11-15 Apple Inc. Distributed personal assistant
US11526368B2 (en) 2015-11-06 2022-12-13 Apple Inc. Intelligent automated assistant in a messaging environment
US11532306B2 (en) 2017-05-16 2022-12-20 Apple Inc. Detecting a trigger of a digital assistant
US11620999B2 (en) 2020-09-18 2023-04-04 Apple Inc. Reducing device processing of unintended audio
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11657813B2 (en) 2019-05-31 2023-05-23 Apple Inc. Voice identification in digital assistant systems
US11671920B2 (en) 2007-04-03 2023-06-06 Apple Inc. Method and system for operating a multifunction portable electronic device using voice-activation
US11696060B2 (en) 2020-07-21 2023-07-04 Apple Inc. User identification using headphones
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11765209B2 (en) 2020-05-11 2023-09-19 Apple Inc. Digital assistant hardware abstraction
US11790914B2 (en) 2019-06-01 2023-10-17 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11798547B2 (en) 2013-03-15 2023-10-24 Apple Inc. Voice activated device for use with a voice-based digital assistant
US11809483B2 (en) 2015-09-08 2023-11-07 Apple Inc. Intelligent automated assistant for media search and playback
US11810578B2 (en) 2020-05-11 2023-11-07 Apple Inc. Device arbitration for digital assistant-based intercom systems
US11838734B2 (en) 2020-07-20 2023-12-05 Apple Inc. Multi-device audio adjustment coordination
US11853536B2 (en) 2015-09-08 2023-12-26 Apple Inc. Intelligent automated assistant in a media environment
US11914848B2 (en) 2020-05-11 2024-02-27 Apple Inc. Providing relevant data items based on context
US11928604B2 (en) 2005-09-08 2024-03-12 Apple Inc. Method and apparatus for building an intelligent automated assistant
US12010262B2 (en) 2013-08-06 2024-06-11 Apple Inc. Auto-activating smart responses based on activities from remote devices
US12014118B2 (en) 2017-05-15 2024-06-18 Apple Inc. Multi-modal interfaces having selection disambiguation and text modification capability
US12051413B2 (en) 2015-09-30 2024-07-30 Apple Inc. Intelligent device identification
US12197817B2 (en) 2016-06-11 2025-01-14 Apple Inc. Intelligent device arbitration and control
US12223282B2 (en) 2016-06-09 2025-02-11 Apple Inc. Intelligent automated assistant in a home environment
US12301635B2 (en) 2020-05-11 2025-05-13 Apple Inc. Digital assistant hardware abstraction

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318107B1 (en) * 2014-10-09 2016-04-19 Google Inc. Hotword detection on multiple devices
TWI633425B (en) * 2016-03-02 2018-08-21 美律實業股份有限公司 Microphone apparatus
US20180069815A1 (en) * 2016-09-02 2018-03-08 Bose Corporation Application-based messaging system using headphones
KR102453656B1 (en) * 2018-01-25 2022-10-12 삼성전자주식회사 Application processor for low power operation, electronic device including the same and method of operating the same
CN112652317B (en) * 2019-10-09 2024-07-26 深圳云程科技有限公司 High sampling rate audio playing method and system based on Android system
KR20210042520A (en) * 2019-10-10 2021-04-20 삼성전자주식회사 An electronic apparatus and Method for controlling the electronic apparatus thereof
CN112817387A (en) * 2019-11-18 2021-05-18 英业达科技有限公司 Radio component
US11128955B1 (en) 2020-09-15 2021-09-21 Motorola Solutions, Inc. Method and apparatus for managing audio processing in a converged portable communication device
CN116325696B (en) 2020-10-02 2025-10-10 谷歌有限责任公司 Real-time and file-based audio data processing method, electronic device and readable medium
US20220293109A1 (en) * 2021-03-11 2022-09-15 Google Llc Device arbitration for local execution of automatic speech recognition

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087320A1 (en) * 2000-12-29 2002-07-04 Lee Victor Wai Leung Computer-implemented fuzzy logic based data verification method and system
US6449496B1 (en) * 1999-02-08 2002-09-10 Qualcomm Incorporated Voice recognition user interface for telephone handsets
US6587867B1 (en) * 1997-05-22 2003-07-01 Mci Communications Corporation Internet-based subscriber profile management of a communications system
US20030190037A1 (en) * 2002-04-04 2003-10-09 John Hruska Method for automated dialing of telephone number prefixes
US6795533B2 (en) * 2001-08-24 2004-09-21 Mitel Knowledge Corporation Intermediate voice and DTMF detector device for improved speech recognition utilization and penetration
US20050049860A1 (en) * 2003-08-29 2005-03-03 Junqua Jean-Claude Method and apparatus for improved speech recognition with supplementary information
US20050154596A1 (en) * 2004-01-14 2005-07-14 Ran Mochary Configurable speech recognizer
US20050177376A1 (en) * 2004-02-05 2005-08-11 Avaya Technology Corp. Recognition results postprocessor for use in voice recognition systems
US20050175159A1 (en) * 2004-02-05 2005-08-11 Avaya Technology Corp. Methods and apparatus for data caching to improve name recognition in large namespaces
US20050273323A1 (en) * 2004-06-03 2005-12-08 Nintendo Co., Ltd. Command processing apparatus
US20070239454A1 (en) * 2006-04-06 2007-10-11 Microsoft Corporation Personalizing a context-free grammar using a dictation language model
US20110288868A1 (en) * 2010-05-19 2011-11-24 Lloyd Matthew I Disambiguation of contact information using historical data
US8433041B2 (en) * 2005-09-23 2013-04-30 Bce Inc. Method and system to enable touch-free incoming call handling and touch-free outgoing call origination
US20130144618A1 (en) * 2011-12-02 2013-06-06 Liang-Che Sun Methods and electronic devices for speech recognition
US20130325484A1 (en) * 2012-05-29 2013-12-05 Samsung Electronics Co., Ltd. Method and apparatus for executing voice command in electronic device
US20130339028A1 (en) * 2012-06-15 2013-12-19 Spansion Llc Power-Efficient Voice Activation
US20140214429A1 (en) * 2013-01-25 2014-07-31 Lothar Pantel Method for Voice Activation of a Software Agent from Standby Mode
US20140244269A1 (en) * 2013-02-28 2014-08-28 Sony Mobile Communications Ab Device and method for activating with voice input
US20140257821A1 (en) * 2013-03-07 2014-09-11 Analog Devices Technology System and method for processor wake-up based on sensor data
US20140281628A1 (en) * 2013-03-15 2014-09-18 Maxim Integrated Products, Inc. Always-On Low-Power Keyword spotting

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69326431T2 (en) 1992-12-28 2000-02-03 Kabushiki Kaisha Toshiba, Kawasaki Voice recognition interface system that can be used as a window system and voice mail system
US5553220A (en) * 1993-09-07 1996-09-03 Cirrus Logic, Inc. Managing audio data using a graphics display controller
US6070140A (en) * 1995-06-05 2000-05-30 Tran; Bao Q. Speech recognizer
JPH10105191A (en) * 1996-09-30 1998-04-24 Toshiba Corp Speech recognition device and microphone frequency characteristic conversion method
US5950157A (en) 1997-02-28 1999-09-07 Sri International Method for establishing handset-dependent normalizing models for speaker recognition
US5970446A (en) * 1997-11-25 1999-10-19 At&T Corp Selective noise/channel/coding models and recognizers for automatic speech recognition
US6496743B1 (en) * 1998-04-17 2002-12-17 International Business Machines Corporation Method and apparatus for providing audio sample rate conversion within a data-processing system
US6499013B1 (en) 1998-09-09 2002-12-24 One Voice Technologies, Inc. Interactive user interface using speech recognition and natural language processing
US6574599B1 (en) 1999-03-31 2003-06-03 Microsoft Corporation Voice-recognition-based methods for establishing outbound communication through a unified messaging system including intelligent calendar interface
US6408272B1 (en) * 1999-04-12 2002-06-18 General Magic, Inc. Distributed voice user interface
US6553345B1 (en) 1999-08-26 2003-04-22 Matsushita Electric Industrial Co., Ltd. Universal remote control allowing natural language modality for television and multimedia searches and requests
US6760704B1 (en) 2000-09-29 2004-07-06 Intel Corporation System for generating speech and non-speech audio messages
US7451085B2 (en) * 2000-10-13 2008-11-11 At&T Intellectual Property Ii, L.P. System and method for providing a compensated speech recognition model for speech recognition
US7457750B2 (en) * 2000-10-13 2008-11-25 At&T Corp. Systems and methods for dynamic re-configurable speech recognition
US20020082834A1 (en) 2000-11-16 2002-06-27 Eaves George Paul Simplified and robust speech recognizer
US6704707B2 (en) 2001-03-14 2004-03-09 Intel Corporation Method for automatically and dynamically switching between speech technologies
US6985862B2 (en) 2001-03-22 2006-01-10 Tellme Networks, Inc. Histogram grammar weighting and error corrective training of grammar weights
US7526431B2 (en) 2001-09-05 2009-04-28 Voice Signal Technologies, Inc. Speech recognition using ambiguous or phone key spelling and/or filtering
US7203644B2 (en) 2001-12-31 2007-04-10 Intel Corporation Automating tuning of speech recognition systems
US7099825B1 (en) * 2002-03-15 2006-08-29 Sprint Communications Company L.P. User mobility in a voice recognition environment
US7016842B2 (en) * 2002-03-26 2006-03-21 Sbc Technology Resources, Inc. Method and system for evaluating automatic speech recognition telephone services
US7570943B2 (en) 2002-08-29 2009-08-04 Nokia Corporation System and method for providing context sensitive recommendations to digital services
US20050180464A1 (en) * 2002-10-01 2005-08-18 Adondo Corporation Audio communication with a computer
DE10320190B4 (en) * 2003-05-07 2005-07-07 Sennheiser Electronic Gmbh & Co. Kg detection device
JP2005025381A (en) 2003-06-30 2005-01-27 Toshiba Corp Electronic device and power control method
US20050204009A1 (en) 2004-03-09 2005-09-15 Devapratim Hazarika System, method and computer program product for prioritizing messages
US20050246325A1 (en) 2004-04-30 2005-11-03 Microsoft Corporation Method and system for recording and accessing usage of an item in a computer system
US20060009974A1 (en) 2004-07-09 2006-01-12 Matsushita Electric Industrial Co., Ltd. Hands-free voice dialing for portable and remote devices
US7580363B2 (en) 2004-08-16 2009-08-25 Nokia Corporation Apparatus and method for facilitating contact selection in communication devices
KR100640893B1 (en) * 2004-09-07 2006-11-02 엘지전자 주식회사 Baseband modem for voice recognition and mobile communication terminal
US8543390B2 (en) * 2004-10-26 2013-09-24 Qnx Software Systems Limited Multi-channel periodic signal enhancement system
US8009678B2 (en) 2005-03-17 2011-08-30 Microsoft Corporation System and method for generating a dynamic prioritized contact list
US8041062B2 (en) * 2005-03-28 2011-10-18 Sound Id Personal sound system including multi-mode ear level module with priority logic
CN100367187C (en) * 2005-04-30 2008-02-06 艾威梯软件技术(北京)有限公司 A method for simultaneously supporting multiple bluetooth audio applications
EP1889410B1 (en) * 2005-05-30 2008-10-01 Telefonaktiebolaget LM Ericsson (publ) Data unit relay device and method of controlling the same
US8041376B2 (en) * 2005-07-15 2011-10-18 Research In Motion Limited Methods and apparatus for providing PTT data buffering support indications from mobile devices and PTT data buffering control by wireless networks
US7962340B2 (en) * 2005-08-22 2011-06-14 Nuance Communications, Inc. Methods and apparatus for buffering data for use in accordance with a speech recognition system
US20070060114A1 (en) 2005-09-14 2007-03-15 Jorey Ramer Predictive text completion for a mobile communication facility
US7856283B2 (en) * 2005-12-13 2010-12-21 Sigmatel, Inc. Digital microphone interface, audio codec and methods for use therewith
DE602006002279D1 (en) 2006-08-30 2008-09-25 Research In Motion Ltd A method, computer program and apparatus for uniquely identifying a contact in a contact database by a single voice utterance
AU2007335251B2 (en) * 2006-12-19 2014-05-15 Validvoice, Llc Confidence levels for speaker recognition
US8140325B2 (en) * 2007-01-04 2012-03-20 International Business Machines Corporation Systems and methods for intelligent control of microphones for speech recognition applications
US8060373B2 (en) 2007-03-21 2011-11-15 At&T Intellectual Property I, L.P. System and method of identifying contact information
US20080300025A1 (en) * 2007-05-31 2008-12-04 Motorola, Inc. Method and system to configure audio processing paths for voice recognition
US8612643B2 (en) * 2007-06-30 2013-12-17 Microsoft Corporation Interfaces for digital media processing
US7523012B2 (en) 2007-07-03 2009-04-21 Motorola, Inc. Method and system for controlling a handheld electronic device
US20090037413A1 (en) 2007-07-30 2009-02-05 Research In Motion Limited Method and system for generating address lists
US8374316B2 (en) 2007-08-28 2013-02-12 International Business Machines Corporation System for recording spoken phone numbers during a voice call
US20090228513A1 (en) 2008-03-06 2009-09-10 Nokia Corporation Methods, apparatuses, and computer program products for modeling contact networks
US20090287489A1 (en) * 2008-05-15 2009-11-19 Palm, Inc. Speech processing for plurality of users
US8411603B2 (en) 2008-06-19 2013-04-02 Broadcom Corporation Method and system for dual digital microphone processing in an audio CODEC
US8909361B2 (en) 2008-06-19 2014-12-09 Broadcom Corporation Method and system for processing high quality audio in a hardware audio codec for audio transmission
US8600741B2 (en) * 2008-08-20 2013-12-03 General Motors Llc Method of using microphone characteristics to optimize speech recognition performance
US20100169092A1 (en) * 2008-11-26 2010-07-01 Backes Steven J Voice interface ocx
WO2010063660A2 (en) * 2008-12-05 2010-06-10 Audioasics A/S Wind noise detection method and system
US20100161340A1 (en) * 2008-12-24 2010-06-24 Plantronics, Inc. Dynamic Codec Switching
US8798311B2 (en) * 2009-01-23 2014-08-05 Eldon Technology Limited Scrolling display of electronic program guide utilizing images of user lip movements
US8626511B2 (en) 2010-01-22 2014-01-07 Google Inc. Multi-dimensional disambiguation of voice commands
US8380160B2 (en) * 2010-03-29 2013-02-19 Motorola Solutions, Inc. Method and apparatus for enhanced safety in a public safety communication system
US9112989B2 (en) * 2010-04-08 2015-08-18 Qualcomm Incorporated System and method of smart audio logging for mobile devices
US8818797B2 (en) * 2010-12-23 2014-08-26 Microsoft Corporation Dual-band speech encoding
US9100735B1 (en) * 2011-02-10 2015-08-04 Dolby Laboratories Licensing Corporation Vector noise cancellation
US9992745B2 (en) * 2011-11-01 2018-06-05 Qualcomm Incorporated Extraction and analysis of buffered audio data using multiple codec rates each greater than a low-power processor rate
WO2013078401A2 (en) * 2011-11-21 2013-05-30 Liveweaver, Inc. Engine for human language comprehension of intent and command execution
US20140122378A1 (en) * 2012-10-29 2014-05-01 Qualcomm Incorporated Rules engine as a platform for mobile applications
KR102179811B1 (en) * 2012-12-03 2020-11-17 엘지전자 주식회사 Portable Device And Method For Providing Voice Recognition Service
US9704486B2 (en) * 2012-12-11 2017-07-11 Amazon Technologies, Inc. Speech recognition power management
US9098467B1 (en) * 2012-12-19 2015-08-04 Rawles Llc Accepting voice commands based on user identity
US9020464B2 (en) * 2012-12-20 2015-04-28 Cellco Partnership Counter-based limitation of subscriber charging inaccuracy
US9542933B2 (en) * 2013-03-08 2017-01-10 Analog Devices Global Microphone circuit assembly and system with speech recognition
US9112984B2 (en) * 2013-03-12 2015-08-18 Nuance Communications, Inc. Methods and apparatus for detecting a voice command
US20140270260A1 (en) * 2013-03-13 2014-09-18 Aliphcom Speech detection using low power microelectrical mechanical systems sensor
US9092332B2 (en) * 2013-05-02 2015-07-28 Microsoft Technology Licensing, Llc Activity based sampling of diagnostics data
US9043211B2 (en) * 2013-05-09 2015-05-26 Dsp Group Ltd. Low power activation of a voice activated device
US20140358552A1 (en) * 2013-05-31 2014-12-04 Cirrus Logic, Inc. Low-power voice gate for device wake-up
US9196246B2 (en) * 2013-06-14 2015-11-24 Mitsubishi Electric Research Laboratories, Inc. Determining word sequence constraints for low cognitive speech recognition
US20150031416A1 (en) 2013-07-23 2015-01-29 Motorola Mobility Llc Method and Device For Command Phrase Validation
US20150074524A1 (en) * 2013-09-10 2015-03-12 Lenovo (Singapore) Pte. Ltd. Management of virtual assistant action items
EP3084760A4 (en) * 2013-12-20 2017-08-16 Intel Corporation Transition from low power always listening mode to high power speech recognition mode

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587867B1 (en) * 1997-05-22 2003-07-01 Mci Communications Corporation Internet-based subscriber profile management of a communications system
US6449496B1 (en) * 1999-02-08 2002-09-10 Qualcomm Incorporated Voice recognition user interface for telephone handsets
US20020087320A1 (en) * 2000-12-29 2002-07-04 Lee Victor Wai Leung Computer-implemented fuzzy logic based data verification method and system
US6795533B2 (en) * 2001-08-24 2004-09-21 Mitel Knowledge Corporation Intermediate voice and DTMF detector device for improved speech recognition utilization and penetration
US20030190037A1 (en) * 2002-04-04 2003-10-09 John Hruska Method for automated dialing of telephone number prefixes
US20050049860A1 (en) * 2003-08-29 2005-03-03 Junqua Jean-Claude Method and apparatus for improved speech recognition with supplementary information
US20050154596A1 (en) * 2004-01-14 2005-07-14 Ran Mochary Configurable speech recognizer
US20050177376A1 (en) * 2004-02-05 2005-08-11 Avaya Technology Corp. Recognition results postprocessor for use in voice recognition systems
US20050175159A1 (en) * 2004-02-05 2005-08-11 Avaya Technology Corp. Methods and apparatus for data caching to improve name recognition in large namespaces
US20050273323A1 (en) * 2004-06-03 2005-12-08 Nintendo Co., Ltd. Command processing apparatus
US8433041B2 (en) * 2005-09-23 2013-04-30 Bce Inc. Method and system to enable touch-free incoming call handling and touch-free outgoing call origination
US20070239454A1 (en) * 2006-04-06 2007-10-11 Microsoft Corporation Personalizing a context-free grammar using a dictation language model
US20110288868A1 (en) * 2010-05-19 2011-11-24 Lloyd Matthew I Disambiguation of contact information using historical data
US20130144618A1 (en) * 2011-12-02 2013-06-06 Liang-Che Sun Methods and electronic devices for speech recognition
US20130325484A1 (en) * 2012-05-29 2013-12-05 Samsung Electronics Co., Ltd. Method and apparatus for executing voice command in electronic device
US20130339028A1 (en) * 2012-06-15 2013-12-19 Spansion Llc Power-Efficient Voice Activation
US20140214429A1 (en) * 2013-01-25 2014-07-31 Lothar Pantel Method for Voice Activation of a Software Agent from Standby Mode
US20140244269A1 (en) * 2013-02-28 2014-08-28 Sony Mobile Communications Ab Device and method for activating with voice input
US20140257821A1 (en) * 2013-03-07 2014-09-11 Analog Devices Technology System and method for processor wake-up based on sensor data
US20140281628A1 (en) * 2013-03-15 2014-09-18 Maxim Integrated Products, Inc. Always-On Low-Power Keyword spotting

Cited By (248)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11928604B2 (en) 2005-09-08 2024-03-12 Apple Inc. Method and apparatus for building an intelligent automated assistant
US11979836B2 (en) 2007-04-03 2024-05-07 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US11671920B2 (en) 2007-04-03 2023-06-06 Apple Inc. Method and system for operating a multifunction portable electronic device using voice-activation
US12477470B2 (en) 2007-04-03 2025-11-18 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US11023513B2 (en) 2007-12-20 2021-06-01 Apple Inc. Method and apparatus for searching using an active ontology
US10381016B2 (en) 2008-01-03 2019-08-13 Apple Inc. Methods and apparatus for altering audio output signals
US10108612B2 (en) 2008-07-31 2018-10-23 Apple Inc. Mobile device having human language translation capability with positional feedback
US12361943B2 (en) 2008-10-02 2025-07-15 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11348582B2 (en) 2008-10-02 2022-05-31 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10643611B2 (en) 2008-10-02 2020-05-05 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11900936B2 (en) 2008-10-02 2024-02-13 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US12165635B2 (en) 2010-01-18 2024-12-10 Apple Inc. Intelligent automated assistant
US11423886B2 (en) 2010-01-18 2022-08-23 Apple Inc. Task flow identification based on user intent
US12087308B2 (en) 2010-01-18 2024-09-10 Apple Inc. Intelligent automated assistant
US12431128B2 (en) 2010-01-18 2025-09-30 Apple Inc. Task flow identification based on user intent
US10741185B2 (en) 2010-01-18 2020-08-11 Apple Inc. Intelligent automated assistant
US10692504B2 (en) 2010-02-25 2020-06-23 Apple Inc. User profiling for voice input processing
US10049675B2 (en) 2010-02-25 2018-08-14 Apple Inc. User profiling for voice input processing
US10417405B2 (en) 2011-03-21 2019-09-17 Apple Inc. Device access using voice authentication
US11120372B2 (en) 2011-06-03 2021-09-14 Apple Inc. Performing actions associated with task items that represent tasks to perform
US11350253B2 (en) 2011-06-03 2022-05-31 Apple Inc. Active transport based notifications
US11069336B2 (en) 2012-03-02 2021-07-20 Apple Inc. Systems and methods for name pronunciation
US11321116B2 (en) 2012-05-15 2022-05-03 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US11269678B2 (en) 2012-05-15 2022-03-08 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US10079014B2 (en) 2012-06-08 2018-09-18 Apple Inc. Name recognition system
US10978090B2 (en) 2013-02-07 2021-04-13 Apple Inc. Voice trigger for a digital assistant
US11862186B2 (en) 2013-02-07 2024-01-02 Apple Inc. Voice trigger for a digital assistant
US12009007B2 (en) 2013-02-07 2024-06-11 Apple Inc. Voice trigger for a digital assistant
US10714117B2 (en) 2013-02-07 2020-07-14 Apple Inc. Voice trigger for a digital assistant
US11557310B2 (en) 2013-02-07 2023-01-17 Apple Inc. Voice trigger for a digital assistant
US12277954B2 (en) 2013-02-07 2025-04-15 Apple Inc. Voice trigger for a digital assistant
US11636869B2 (en) 2013-02-07 2023-04-25 Apple Inc. Voice trigger for a digital assistant
US11388291B2 (en) 2013-03-14 2022-07-12 Apple Inc. System and method for processing voicemail
US11798547B2 (en) 2013-03-15 2023-10-24 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10657961B2 (en) 2013-06-08 2020-05-19 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US11727219B2 (en) 2013-06-09 2023-08-15 Apple Inc. System and method for inferring user intent from speech inputs
US10769385B2 (en) 2013-06-09 2020-09-08 Apple Inc. System and method for inferring user intent from speech inputs
US11048473B2 (en) 2013-06-09 2021-06-29 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US12073147B2 (en) 2013-06-09 2024-08-27 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US12407771B2 (en) 2013-07-23 2025-09-02 Google Llc Method and device for audio input routing
US11363128B2 (en) 2013-07-23 2022-06-14 Google Technology Holdings LLC Method and device for audio input routing
US11876922B2 (en) 2013-07-23 2024-01-16 Google Technology Holdings LLC Method and device for audio input routing
US12010262B2 (en) 2013-08-06 2024-06-11 Apple Inc. Auto-activating smart responses based on activities from remote devices
US9508345B1 (en) 2013-09-24 2016-11-29 Knowles Electronics, Llc Continuous voice sensing
US11314370B2 (en) 2013-12-06 2022-04-26 Apple Inc. Method for extracting salient dialog usage from live data
US9953634B1 (en) 2013-12-17 2018-04-24 Knowles Electronics, Llc Passive training for automatic speech recognition
US9437188B1 (en) 2014-03-28 2016-09-06 Knowles Electronics, Llc Buffered reprocessing for multi-microphone automatic speech recognition assist
US10083690B2 (en) 2014-05-30 2018-09-25 Apple Inc. Better resolution when referencing to concepts
US10878809B2 (en) 2014-05-30 2020-12-29 Apple Inc. Multi-command single utterance input method
US11257504B2 (en) 2014-05-30 2022-02-22 Apple Inc. Intelligent assistant for home automation
US12118999B2 (en) 2014-05-30 2024-10-15 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10657966B2 (en) 2014-05-30 2020-05-19 Apple Inc. Better resolution when referencing to concepts
US11670289B2 (en) 2014-05-30 2023-06-06 Apple Inc. Multi-command single utterance input method
US10699717B2 (en) 2014-05-30 2020-06-30 Apple Inc. Intelligent assistant for home automation
US11133008B2 (en) 2014-05-30 2021-09-28 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US12067990B2 (en) 2014-05-30 2024-08-20 Apple Inc. Intelligent assistant for home automation
US10417344B2 (en) 2014-05-30 2019-09-17 Apple Inc. Exemplar-based natural language processing
US10714095B2 (en) 2014-05-30 2020-07-14 Apple Inc. Intelligent assistant for home automation
US10497365B2 (en) 2014-05-30 2019-12-03 Apple Inc. Multi-command single utterance input method
US11810562B2 (en) 2014-05-30 2023-11-07 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11699448B2 (en) 2014-05-30 2023-07-11 Apple Inc. Intelligent assistant for home automation
US11838579B2 (en) 2014-06-30 2023-12-05 Apple Inc. Intelligent automated assistant for TV user interactions
US10904611B2 (en) 2014-06-30 2021-01-26 Apple Inc. Intelligent automated assistant for TV user interactions
US11516537B2 (en) 2014-06-30 2022-11-29 Apple Inc. Intelligent automated assistant for TV user interactions
US12200297B2 (en) 2014-06-30 2025-01-14 Apple Inc. Intelligent automated assistant for TV user interactions
US10431204B2 (en) 2014-09-11 2019-10-01 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10438595B2 (en) 2014-09-30 2019-10-08 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10453443B2 (en) 2014-09-30 2019-10-22 Apple Inc. Providing an indication of the suitability of speech recognition
US9986419B2 (en) 2014-09-30 2018-05-29 Apple Inc. Social reminders
US10390213B2 (en) 2014-09-30 2019-08-20 Apple Inc. Social reminders
US11231904B2 (en) 2015-03-06 2022-01-25 Apple Inc. Reducing response latency of intelligent automated assistants
US11842734B2 (en) 2015-03-08 2023-12-12 Apple Inc. Virtual assistant activation
US12236952B2 (en) 2015-03-08 2025-02-25 Apple Inc. Virtual assistant activation
US11087759B2 (en) 2015-03-08 2021-08-10 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US10529332B2 (en) 2015-03-08 2020-01-07 Apple Inc. Virtual assistant activation
US10311871B2 (en) 2015-03-08 2019-06-04 Apple Inc. Competing devices responding to voice triggers
US10930282B2 (en) 2015-03-08 2021-02-23 Apple Inc. Competing devices responding to voice triggers
US11468282B2 (en) 2015-05-15 2022-10-11 Apple Inc. Virtual assistant in a communication session
US12333404B2 (en) 2015-05-15 2025-06-17 Apple Inc. Virtual assistant in a communication session
US12001933B2 (en) 2015-05-15 2024-06-04 Apple Inc. Virtual assistant in a communication session
US12154016B2 (en) 2015-05-15 2024-11-26 Apple Inc. Virtual assistant in a communication session
US11070949B2 (en) 2015-05-27 2021-07-20 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display
US11127397B2 (en) 2015-05-27 2021-09-21 Apple Inc. Device voice control
US10681212B2 (en) 2015-06-05 2020-06-09 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10356243B2 (en) 2015-06-05 2019-07-16 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US11947873B2 (en) 2015-06-29 2024-04-02 Apple Inc. Virtual assistant for media playback
US11010127B2 (en) 2015-06-29 2021-05-18 Apple Inc. Virtual assistant for media playback
US11126400B2 (en) 2015-09-08 2021-09-21 Apple Inc. Zero latency digital assistant
US11809483B2 (en) 2015-09-08 2023-11-07 Apple Inc. Intelligent automated assistant for media search and playback
US11500672B2 (en) 2015-09-08 2022-11-15 Apple Inc. Distributed personal assistant
US11853536B2 (en) 2015-09-08 2023-12-26 Apple Inc. Intelligent automated assistant in a media environment
US12386491B2 (en) 2015-09-08 2025-08-12 Apple Inc. Intelligent automated assistant in a media environment
US12204932B2 (en) 2015-09-08 2025-01-21 Apple Inc. Distributed personal assistant
US11550542B2 (en) 2015-09-08 2023-01-10 Apple Inc. Zero latency digital assistant
US11954405B2 (en) 2015-09-08 2024-04-09 Apple Inc. Zero latency digital assistant
US12051413B2 (en) 2015-09-30 2024-07-30 Apple Inc. Intelligent device identification
US9679497B2 (en) 2015-10-09 2017-06-13 Microsoft Technology Licensing, Llc Proxies for speech generating devices
US10148808B2 (en) * 2015-10-09 2018-12-04 Microsoft Technology Licensing, Llc Directed personal communication for speech generating devices
US10262555B2 (en) 2015-10-09 2019-04-16 Microsoft Technology Licensing, Llc Facilitating awareness and conversation throughput in an augmentative and alternative communication system
US11526368B2 (en) 2015-11-06 2022-12-13 Apple Inc. Intelligent automated assistant in a messaging environment
US11809886B2 (en) 2015-11-06 2023-11-07 Apple Inc. Intelligent automated assistant in a messaging environment
US11886805B2 (en) 2015-11-09 2024-01-30 Apple Inc. Unconventional virtual assistant interactions
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10354652B2 (en) 2015-12-02 2019-07-16 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
CN108369476A (en) * 2015-12-11 2018-08-03 索尼公司 Information processing equipment, information processing method and program
US20170177908A1 (en) * 2015-12-17 2017-06-22 Ncr Corporation Input peripheral device security
US10762245B2 (en) * 2015-12-17 2020-09-01 Ncr Corporation Input peripheral device security
US11853647B2 (en) 2015-12-23 2023-12-26 Apple Inc. Proactive assistance based on dialog communication between devices
US10942703B2 (en) 2015-12-23 2021-03-09 Apple Inc. Proactive assistance based on dialog communication between devices
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US11069347B2 (en) 2016-06-08 2021-07-20 Apple Inc. Intelligent automated assistant for media exploration
US12223282B2 (en) 2016-06-09 2025-02-11 Apple Inc. Intelligent automated assistant in a home environment
DK201770032A1 (en) * 2016-06-10 2018-01-15 Apple Inc Intelligent digital assistant in a multi-tasking environment
US10733993B2 (en) 2016-06-10 2020-08-04 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11037565B2 (en) 2016-06-10 2021-06-15 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11657820B2 (en) 2016-06-10 2023-05-23 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
AU2019213416A1 (en) * 2016-06-10 2019-08-29 Apple Inc. Intelligent digital assistant in a multi-tasking environment
AU2019213416B2 (en) * 2016-06-10 2019-11-21 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US12175977B2 (en) 2016-06-10 2024-12-24 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10942702B2 (en) 2016-06-11 2021-03-09 Apple Inc. Intelligent device arbitration and control
US12197817B2 (en) 2016-06-11 2025-01-14 Apple Inc. Intelligent device arbitration and control
US11809783B2 (en) 2016-06-11 2023-11-07 Apple Inc. Intelligent device arbitration and control
US11152002B2 (en) 2016-06-11 2021-10-19 Apple Inc. Application integration with a digital assistant
US11749275B2 (en) 2016-06-11 2023-09-05 Apple Inc. Application integration with a digital assistant
US10580409B2 (en) 2016-06-11 2020-03-03 Apple Inc. Application integration with a digital assistant
US12293763B2 (en) 2016-06-11 2025-05-06 Apple Inc. Application integration with a digital assistant
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10553215B2 (en) 2016-09-23 2020-02-04 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US11656884B2 (en) 2017-01-09 2023-05-23 Apple Inc. Application integration with a digital assistant
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US12260234B2 (en) 2017-01-09 2025-03-25 Apple Inc. Application integration with a digital assistant
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10741181B2 (en) 2017-05-09 2020-08-11 Apple Inc. User interface for correcting recognition errors
US10332518B2 (en) 2017-05-09 2019-06-25 Apple Inc. User interface for correcting recognition errors
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10847142B2 (en) 2017-05-11 2020-11-24 Apple Inc. Maintaining privacy of personal information
US11467802B2 (en) 2017-05-11 2022-10-11 Apple Inc. Maintaining privacy of personal information
US11599331B2 (en) 2017-05-11 2023-03-07 Apple Inc. Maintaining privacy of personal information
US10755703B2 (en) 2017-05-11 2020-08-25 Apple Inc. Offline personal assistant
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US11380310B2 (en) 2017-05-12 2022-07-05 Apple Inc. Low-latency intelligent automated assistant
US10410637B2 (en) 2017-05-12 2019-09-10 Apple Inc. User-specific acoustic models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
US11862151B2 (en) 2017-05-12 2024-01-02 Apple Inc. Low-latency intelligent automated assistant
US11837237B2 (en) 2017-05-12 2023-12-05 Apple Inc. User-specific acoustic models
US10791176B2 (en) 2017-05-12 2020-09-29 Apple Inc. Synchronization and task delegation of a digital assistant
US11405466B2 (en) 2017-05-12 2022-08-02 Apple Inc. Synchronization and task delegation of a digital assistant
US11580990B2 (en) 2017-05-12 2023-02-14 Apple Inc. User-specific acoustic models
US11538469B2 (en) 2017-05-12 2022-12-27 Apple Inc. Low-latency intelligent automated assistant
US10789945B2 (en) 2017-05-12 2020-09-29 Apple Inc. Low-latency intelligent automated assistant
US12014118B2 (en) 2017-05-15 2024-06-18 Apple Inc. Multi-modal interfaces having selection disambiguation and text modification capability
US10810274B2 (en) 2017-05-15 2020-10-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10482874B2 (en) 2017-05-15 2019-11-19 Apple Inc. Hierarchical belief states for digital assistants
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US12254887B2 (en) 2017-05-16 2025-03-18 Apple Inc. Far-field extension of digital assistant services for providing a notification of an event to a user
US11217255B2 (en) 2017-05-16 2022-01-04 Apple Inc. Far-field extension for digital assistant services
US10909171B2 (en) 2017-05-16 2021-02-02 Apple Inc. Intelligent automated assistant for media exploration
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US12026197B2 (en) 2017-05-16 2024-07-02 Apple Inc. Intelligent automated assistant for media exploration
US11675829B2 (en) 2017-05-16 2023-06-13 Apple Inc. Intelligent automated assistant for media exploration
US11532306B2 (en) 2017-05-16 2022-12-20 Apple Inc. Detecting a trigger of a digital assistant
US10748546B2 (en) 2017-05-16 2020-08-18 Apple Inc. Digital assistant services based on device capabilities
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US11710482B2 (en) 2018-03-26 2023-07-25 Apple Inc. Natural assistant interaction
US12211502B2 (en) 2018-03-26 2025-01-28 Apple Inc. Natural assistant interaction
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11487364B2 (en) 2018-05-07 2022-11-01 Apple Inc. Raise to speak
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11907436B2 (en) 2018-05-07 2024-02-20 Apple Inc. Raise to speak
US11900923B2 (en) 2018-05-07 2024-02-13 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11169616B2 (en) 2018-05-07 2021-11-09 Apple Inc. Raise to speak
US11854539B2 (en) 2018-05-07 2023-12-26 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10720160B2 (en) 2018-06-01 2020-07-21 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11630525B2 (en) 2018-06-01 2023-04-18 Apple Inc. Attention aware virtual assistant dismissal
US11009970B2 (en) 2018-06-01 2021-05-18 Apple Inc. Attention aware virtual assistant dismissal
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US11431642B2 (en) 2018-06-01 2022-08-30 Apple Inc. Variable latency device coordination
US10684703B2 (en) 2018-06-01 2020-06-16 Apple Inc. Attention aware virtual assistant dismissal
US12061752B2 (en) 2018-06-01 2024-08-13 Apple Inc. Attention aware virtual assistant dismissal
US12067985B2 (en) 2018-06-01 2024-08-20 Apple Inc. Virtual assistant operations in multi-device environments
US12386434B2 (en) 2018-06-01 2025-08-12 Apple Inc. Attention aware virtual assistant dismissal
US10984798B2 (en) 2018-06-01 2021-04-20 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11360577B2 (en) 2018-06-01 2022-06-14 Apple Inc. Attention aware virtual assistant dismissal
US10403283B1 (en) 2018-06-01 2019-09-03 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11495218B2 (en) 2018-06-01 2022-11-08 Apple Inc. Virtual assistant operation in multi-device environments
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US12080287B2 (en) 2018-06-01 2024-09-03 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10504518B1 (en) 2018-06-03 2019-12-10 Apple Inc. Accelerated task performance
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US10944859B2 (en) 2018-06-03 2021-03-09 Apple Inc. Accelerated task performance
US11080121B2 (en) * 2018-06-27 2021-08-03 International Business Machines Corporation Generating runbooks for problem events
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US12367879B2 (en) 2018-09-28 2025-07-22 Apple Inc. Multi-modal inputs for voice commands
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11893992B2 (en) 2018-09-28 2024-02-06 Apple Inc. Multi-modal inputs for voice commands
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US12136419B2 (en) 2019-03-18 2024-11-05 Apple Inc. Multimodality in digital assistant systems
US11783815B2 (en) 2019-03-18 2023-10-10 Apple Inc. Multimodality in digital assistant systems
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11705130B2 (en) 2019-05-06 2023-07-18 Apple Inc. Spoken notifications
US11675491B2 (en) 2019-05-06 2023-06-13 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11217251B2 (en) 2019-05-06 2022-01-04 Apple Inc. Spoken notifications
US12154571B2 (en) 2019-05-06 2024-11-26 Apple Inc. Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US12216894B2 (en) 2019-05-06 2025-02-04 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11888791B2 (en) 2019-05-21 2024-01-30 Apple Inc. Providing message response suggestions
US11237797B2 (en) 2019-05-31 2022-02-01 Apple Inc. User activity shortcut suggestions
US11657813B2 (en) 2019-05-31 2023-05-23 Apple Inc. Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360739B2 (en) 2019-05-31 2022-06-14 Apple Inc. User activity shortcut suggestions
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11790914B2 (en) 2019-06-01 2023-10-17 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11914848B2 (en) 2020-05-11 2024-02-27 Apple Inc. Providing relevant data items based on context
US11765209B2 (en) 2020-05-11 2023-09-19 Apple Inc. Digital assistant hardware abstraction
US12197712B2 (en) 2020-05-11 2025-01-14 Apple Inc. Providing relevant data items based on context
US11924254B2 (en) 2020-05-11 2024-03-05 Apple Inc. Digital assistant hardware abstraction
US12301635B2 (en) 2020-05-11 2025-05-13 Apple Inc. Digital assistant hardware abstraction
US11810578B2 (en) 2020-05-11 2023-11-07 Apple Inc. Device arbitration for digital assistant-based intercom systems
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11838734B2 (en) 2020-07-20 2023-12-05 Apple Inc. Multi-device audio adjustment coordination
US11696060B2 (en) 2020-07-21 2023-07-04 Apple Inc. User identification using headphones
US11750962B2 (en) 2020-07-21 2023-09-05 Apple Inc. User identification using headphones
US12219314B2 (en) 2020-07-21 2025-02-04 Apple Inc. User identification using headphones
US11620999B2 (en) 2020-09-18 2023-04-04 Apple Inc. Reducing device processing of unintended audio

Also Published As

Publication number Publication date
US11363128B2 (en) 2022-06-14
WO2015013201A3 (en) 2015-03-19
US11876922B2 (en) 2024-01-16
US12407771B2 (en) 2025-09-02
US20150032238A1 (en) 2015-01-29
WO2015013201A2 (en) 2015-01-29
US20200106872A1 (en) 2020-04-02
US20220303377A1 (en) 2022-09-22
US20240137435A1 (en) 2024-04-25

Similar Documents

Publication Publication Date Title
US11876922B2 (en) Method and device for audio input routing
US10510337B2 (en) Method and device for voice recognition training
US9542947B2 (en) Method and apparatus including parallell processes for voice recognition
US9275638B2 (en) Method and apparatus for training a voice recognition model database
US9747894B2 (en) System and associated method for speech keyword detection enhanced by detecting user activity
US20140189538A1 (en) Recommendations for Applications Based on Device Context
US9619200B2 (en) Method and apparatus for executing voice command in electronic device
US9596337B2 (en) Directing audio output based on device sensor input
US20130325469A1 (en) Method for providing voice recognition function and electronic device thereof
US20140278392A1 (en) Method and Apparatus for Pre-Processing Audio Signals
EP2994907A2 (en) Method and apparatus for training a voice recognition model database
CN110619873A (en) Audio processing method, device and storage medium
CN108076199A (en) The air-tightness detection method and device of microphone
CN108573704B (en) Method and apparatus for enabling context-based voice response to never-screen-off notifications
CN102196388B (en) How to Call Back Missed Calls
US20170322621A1 (en) Mobile phone, method for operating mobile phone, and recording medium
CN119299560B (en) Method and device for waking up voice assistant and electronic equipment
CN106530610A (en) Mobile terminal and method and device for detecting tumble of person

Legal Events

Date Code Title Description
AS Assignment

Owner name: MOTOROLA MOBILITY LLC, ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LABOWICZ, MICHAEL P;ONDO, KAZUHIRO;WELLS, ANDREW K;SIGNING DATES FROM 20131210 TO 20131211;REEL/FRAME:031854/0430

AS Assignment

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MOTOROLA MOBILITY LLC;REEL/FRAME:034244/0014

Effective date: 20141028

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION