WO2021006921A1 - Systems and methods for recognizing and performing voice commands during advertisement - Google Patents

Systems and methods for recognizing and performing voice commands during advertisement Download PDF

Info

Publication number
WO2021006921A1
WO2021006921A1 PCT/US2019/057107 US2019057107W WO2021006921A1 WO 2021006921 A1 WO2021006921 A1 WO 2021006921A1 US 2019057107 W US2019057107 W US 2019057107W WO 2021006921 A1 WO2021006921 A1 WO 2021006921A1
Authority
WO
WIPO (PCT)
Prior art keywords
advertisement
audio device
acoustic signal
media stream
processors
Prior art date
Application number
PCT/US2019/057107
Other languages
French (fr)
Inventor
Stanislav TUSHINSKIY
Original Assignee
Instreamatic, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Instreamatic, Inc. filed Critical Instreamatic, Inc.
Priority to EP19937073.5A priority Critical patent/EP3997694A4/en
Publication of WO2021006921A1 publication Critical patent/WO2021006921A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L15/222Barge in, i.e. overridable guidance for interrupting prompts
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Definitions

  • This disclosure generally relates to the field of providing advertisements. More particularly, this disclosure relates to methods and systems for recognizing and performing voice commands during advertisements.
  • Media streams can be broadcast on many users' devices, such as smart television sets, computers, tablets, vehicle audio systems, and so forth.
  • Media streams may include advertisements featuring products and services, such as restaurants, films, automobiles, banking and financial services, insurance services, and so forth.
  • the media stream and the advertisements can be in audio format or video format.
  • the user may not be able to memorize or use the information placed in advertisement because, for example the user may be driving a car, cooking in the kitchen, performing physical exercises, and so forth. There is a need for a convenient way for response and interaction with the advertisements.
  • This present disclosure is directed to systems and methods for recognizing and performing voice commands during advertisements. Some embodiments of the present disclosure may facilitate users to respond to advertisements during media streams played by users' devices.
  • a system for recognizing and performing voice commands during an advertisement may include an audio device configured to play a media stream to a user, wherein the media stream includes at least one advertisement.
  • the system may include at least one acoustic sensor configured to sense an ambient acoustic signal.
  • the system may include one or more processors communicatively coupled to the audio device and the acoustic sensor.
  • the processors can be configured to determine that the audio device has started playing the advertisement.
  • the processors may monitor the ambient acoustic signal to detect a presence of at least one command spoken by the user.
  • the processors may cause the audio device to perform one or more actions associated with the command.
  • the media stream may include metadata indicative of starting the at least one advertisement.
  • the determination that the audio device has started playing the advertisement can be based on the metadata.
  • the processors can be configured to analyze audio data of the media stream.
  • the determination that the audio device has started playing the advertisement can be based on the analysis of the audio data.
  • the detection of the presence of the at least one command may include analyzing the ambient acoustic signal to detect a presence of a pre determined keyword in the ambient acoustic signal.
  • the processors may proceed with analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize the command.
  • the processors may cause the audio device to lower a level of sound of playing the media stream.
  • the detection of the presence of the command may include comparing a portion of the ambient acoustic signal to one or more phrases stored in a local vocabulary.
  • the local vocabulary can be stored in a memory of the audio device.
  • the processors can detect a presence of at least one clue in the advertisement.
  • the processor may monitor the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one keyword spoken by the user.
  • the keyword can be associated with the at least one clue.
  • the processors may cause the audio device to perform one or more actions associated with the clue.
  • the processors can be communicatively connected to at least one remote computing source.
  • the remote computing source can be configured to store a remote vocabulary.
  • the remote vocabulary can be larger than the local vocabulary.
  • the one or more processors can be configured to determine that the portion of the ambient acoustic signal does not match the phrases stored in the local vocabulary. In response to the determination, the processors can be configured to compare the portion of the ambient acoustic signal to one or more phrases stored in the remote vocabulary.
  • the processors can be configured to determine data associated with the advertisement. Prior to causing the audio device to perform the actions, the processors may modify the command based on the data associated with the advertisement.
  • the processors can be configured to perform speech recognition based on an audio data of the media stream.
  • the audio data may correspond to the advertisement.
  • the processors may determine, based on results of the speech recognition, the data associated with advertisement.
  • the media stream may include metadata including the data associated with the advertisement.
  • the processors can be configured to determine the data associated with the advertisement based on the metadata of the media stream.
  • the data associated with the advertisement may include one or more of the following: a phone number, an Internet address of a website of a company, a name of a product or a service, a type of the product or the service, a name of a company, and a street address of the company.
  • the performing one or more actions corresponding to the command may include one or more of: making a call to a phone number, opening a browser at the Internet address of the website, displaying a map showing the address of the company, displaying a driving direction to the street address of the company, and displaying an information concerning the product or the service in the browser.
  • the acoustic sensor and the processors can be integrated in the audio device.
  • the audio device may include one of: a smart phone, a smart television set, a tablet computer, a desktop computer, in-vehicle infotainment, and a smart home device.
  • the media stream may include an Internet radio stream or an Internet television stream broadcast live online.
  • the media stream may include a podcast.
  • a method for recognizing and performing voice commands during an advertisement may include playing, by an audio device, a media stream to a user, wherein the media stream includes at least one advertisement.
  • the method may include sensing, by at least one acoustic sensor, an ambient acoustic signal.
  • the method may include determining, by one or more processors communicatively coupled to the audio device and the acoustic sensor, that the audio device has started playing the advertisement.
  • the method may include monitoring, by the processors, the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one command spoken by the user.
  • the method may include causing, by the processors, the audio device to perform one or more actions associated with the command.
  • the detection of the presence of the command may include analyzing the ambient acoustic signal to detect a presence of a pre-determined keyword in the ambient acoustic signal.
  • the method may include analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize the command.
  • the method may include determining data associated with the advertisement.
  • the data associated with the advertisement can be determined by performing speech recognition of audio data of the media stream, wherein the audio data correspond to the advertisement.
  • the data associated with the advertisement can be determined by reading metadata of the media stream.
  • the method may include, prior to causing the audio device to perform the actions, modifying the command based on the data associated with the advertisement.
  • FIG. 1 is a block diagram showing an example environment wherein a method for recognizing and performing voice commands during an advertisement can be implemented.
  • FIG. 2 is a block diagram showing an audio device for recognizing and performing voice commands during an advertisement, according to an example embodiment.
  • FIG. 3 is a block diagram illustrating an example system for recognizing and performing voice commands during an advertisement, according to an example embodiment.
  • FIG. 4 is a flow chart showing a method for recognizing and performing voice commands during an advertisement, according to an example embodiment.
  • FIG. 5 is a flow chart showing a method for recognizing voice commands during an advertisement, according to an example embodiment.
  • FIG. 6 is a flow chart showing a method for recognizing voice commands during an advertisement, according to an example embodiment.
  • FIG. 7 is a flow chart showing a method for determining data associated with an advertisement, according to an example embodiment.
  • FIG. 8 is a flow chart showing a method for recognizing and performing voice commands during an advertisement, according to an example embodiment.
  • FIG. 9 is a high-level block diagram illustrating an example computer system, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein can be executed.
  • the technology described herein is concerned with systems and methods for recognizing and performing voice commands during advertisements. Some embodiments of the present technology may facilitate interaction of a user with an advertisement during media streams played on a user device.
  • an audio device for recognizing and performing voice commands during advertisements.
  • the audio device may include an output device configured to play a media stream to a user.
  • the media stream may include at least one advertisement.
  • the audio device may include at least one acoustic sensor configured to sense an ambient acoustic signal.
  • the audio device may further include one or more processors communicatively coupled to the output device and the acoustic sensor.
  • the processors can be configured to determine that the output device has started playing the advertisement. In response to the determination, the processors can monitor the ambient acoustic signal to detect a presence of a predetermined keyword spoken by the user in the ambient acoustic signal.
  • the processors can cause the output device to lower a level of a sound of playing the media stream.
  • the processors may further analyze a portion of the ambient acoustic signal after the pre-determined keyword to recognize at least one command.
  • the processors may determine data associated with the advertisement.
  • the data associated with the advertisement can be determined by performing speech recognition of audio data of the media stream, such that the audio data corresponds to the advertisement.
  • processors may read metadata of the media stream to determine the data associated with the advertisement.
  • the processors may further perform one or more actions associated with the one or more command and the data associated with the at least one advertisement.
  • FIG. 1 shows an example environment 100, wherein a method for recognizing and performing voice commands during advertisements can be implemented.
  • the environment 100 may include an audio device 110, a user 120, a remote computing resource(s) 130, and a network 140.
  • the audio device 110 can include radio frequency receivers, transmitters, and transceivers, wired and/or wireless telecommunications and/or networking devices, amplifiers, audio and/or video players, encoders, decoders, speakers, inputs, outputs, storage devices, user input devices.
  • the audio device 110 can be configured to receive a media stream and play the media stream to a user using an output device, for example speakers and earphones.
  • the audio device 110 can be configured to sense ambient acoustic sound using, for example one or more microphones.
  • the audio device 110 can be configured to detect the voice of the user 120.
  • the audio device 110 may include, but is not limited to, a notebook computer, a desktop computer, a tablet computer, a phablet, a smart phone, a personal digital assistant, a media player, a mobile telephone, a smart television set, in-vehicle infotainment, a smart home device, and the like.
  • An example audio device 110 is described in detail in FIG. 2.
  • the media stream may include a live broadcast, including a live radio, a live television, an Internet radio, an Internet television, a live stream in one of the social media, and so forth.
  • the media stream can be streamed in analog format or digital format.
  • the media stream may also include a podcast stored locally in a memory of the audio device 110 or remotely in the remote computing resource(s) 130.
  • the media stream may include one or more advertisements.
  • the advertisement may include an audio data and/or video data.
  • the advertisement may feature product and services and provide data associated with the advertisement concerning the advertisement provider, such as a phone number, Internet address of a website, a street address, name of a company, and so forth.
  • the media stream may include metadata that contain the data associated with the advertisement.
  • the audio device may include a radio receiver to receive the media stream using a radio network or a television network.
  • the media stream can be delivered using a data network 140.
  • the data network 140 can refer to any wired, wireless, or optical networks including, for example, the Internet, intranet, local area network (LAN), Personal Area Network (PAN), Wide Area Network (WAN), Virtual Private Network (VPN), cellular phone networks (e.g., Global System for Mobile (GSM) communications network, packet switching communications network, circuit switching communications network), BluetoothTM radio, Ethernet network, an IEEE 802.11-based radio frequency network, a Frame Relay network, Internet Protocol (IP) communications network, or any other data communication network utilizing physical layers, link layer capability, or network layer to carry data packets, or any combinations of the above-listed data networks.
  • the data network 140 includes a corporate network, data center network, service provider network, mobile operator network, or any combinations thereof.
  • the remote computing resource(s) 130 may be implemented as server(s) or cloud-based computing resource(s) shared by multiple users.
  • the remote computing resource(s) 130 can include hardware and software available at a remote location and accessible over the network 140.
  • the remote computing resource(s) 130 can be dynamically re-allocated based on demand.
  • the cloud-based computing resources may include one or more server farms/clusters including a collection of computer servers which can be co-located with network switches and/or routers.
  • the remote computing resource(s) 130 can be configured to transmit media streams over the network 140.
  • the remote computing resource(s) 130 can be configured to store podcasts to be played on the audio device 110 via the network 140.
  • FIG. 2 is a block diagram showing an audio device 110 for recognizing and performing voice commands during advertisements, according to an example embodiment.
  • FIG. 2 provides details of the audio device 110 of FIG. 1.
  • the audio device 110 includes one or more processor(s) 210, one or more communication unit(s) 220, a memory 230, one or more output device(s) 240, one or more acoustic sensor(s) 250, and a graphic display system 260.
  • the audio device 110 includes additional or other components necessary for operations of audio device 110.
  • the audio device 110 includes fewer components that perform functions similar or equivalent to those depicted in FIG. 2.
  • the processors 210 include hardware and/or software, which is operable to execute instructions stored in the memory 230.
  • the processors 210 may perform floating point operations, complex operations, and other operations, including analyzing the media streams to detect advertisements and determine data associated with advertisements and performing speech recognition based on ambient acoustic signals to detect commands spoken by users.
  • the processors 210 may include general purpose processors, video processors, audio processing systems, and so forth.
  • the communication unit(s) 220 can be configured to communicate with a network such as the Internet, WAN, LAN, cellular network, and so forth, to receive audio and/or video data of media streams.
  • the received audio and/or video data may be then forwarded to the processor(s) 210 and the output device(s) 240.
  • the processors 210 may analyze the received media stream to detect a beginning of an advertisement and determine data associated with the advertisement.
  • the acoustic sensor(s) 250 can include one or more microphones.
  • the processors 210 can be configured to receive acoustic signals from an acoustic source, for example the user 120, via acoustic sensor(s) 250 and process the acoustic signal to determine presence of keywords and commands in a voice of the user 120.
  • the acoustic sensor(s) 250 can be spaced a distance apart to allow the processor(s) 210 to perform a noise and/or echo reduction in received acoustic signals.
  • the output device(s) 240 may include any device which provides an audio output to a listener (for example, the user 120).
  • the output device(s) 240 may comprise one or more speaker(s), an earpiece of a headset, or a handset.
  • the graphic display system 260 can be configured to provide a graphic user interface.
  • a touch screen associated with the graphic display system 260 can be utilized to receive an input from a user.
  • the graphic display system 260 may be configured to display a video content of the media stream including advertisements.
  • FIG. 3 is a block diagram illustrating an example system 300 for recognizing and performing voice commands during an advertisement, according to an example embodiment.
  • the system 300 may include an advertisement analysis module 305, a speech recognizer 310, and a command execution module 325.
  • the modules 305, 310, and 325 can be implemented as instructions stored in memory 230 of audio device 110 and executed by processor (s) 210 (shown in FIG. 2).
  • the system 300 may include a local vocabulary 315 stored in a memory 230 of the audio device 110 and a remote vocabulary 320 stored outside of the audio device 110, for example, in remote computing resource(s) 130.
  • the advertisement analysis module 305 can be configured to monitor a media stream played by the audio device 110.
  • the module 305 can be configured to detect that the audio device 110 has started playing an advertisement within the media stream.
  • the module 305 can determine a start of an advertisement based on a change of audio content in the media stream. For example, the module 305 can detect change of amplitude or frequency in a pre determined number of time frames of an audio signal.
  • the module 305 may detect an increase of a level of sound of playing the media content.
  • a time of a beginning of the advertisement can be provided in metadata of the media stream.
  • the module 305 may detect the beginning of an advertisement based on the metadata.
  • the module 305 may further provide an indication that the audio device has started playing the advertisement to the speech recognizer 310.
  • the module 305 may be configured to analyze a portion of the media stream that corresponds to the advertisement to determine data associated with the advertisement.
  • the data associated with the advertainment may include information concerning advertisement provider, for example a phone number, an Internet address of a website, a name of a product or a service, a type of the product or the service, a name of company, a street address of the company, and so forth.
  • the module 305 can provide the data associated with advertisement to the command execution module 325.
  • the data associated with the advertisement may include text data pronounced during the advertisement.
  • the module 305 may be configured to recognize the text data based on audio data of the media stream to determine the data associated with the advertisement.
  • the data associated with the advertisement can be provided in metadata of the media stream.
  • the module 305 can be configured to detect the metadata in the media stream and read the data associated with the advertisement from the metadata.
  • the speech recognizer 310 can be configured to analyze an ambient acoustic signal sensed by acoustic sensor (s) 250 of the audio device 110. In certain embodiments, the speech recognizer 310 may configure the output device(s) 240 of the audio device 110 to lower a level of sound of playing the media stream for a pre-determined time. The pre-determined time can be larger than a duration of the advertisement in the media stream.
  • the speech recognizer 310 may detect a presence of a voice of the user
  • the speech recognizer 310 may also detect a presence of a pre-determined keyword in the voice of the user.
  • the pre-determined keyword may include a key phrase such as "Hey, Radio,” “Hey, TV,” and so forth.
  • the speech recognizer 310 can be configured to recognize similar key phrases pronounced in various languages different from English.
  • the speech recognizer 310 can analyze a portion of the ambient acoustic signal after the pre-determined keyword to determine whether the user has spoken one or more commands. If the speech recognizer 310 does not detect presence of the key phrase such as "Hey, Radio,” “Hey, TV,” and others in the voice of the user, the speech recognizer 310 skip any words spoken by the user 120 during advertisement.
  • any words spoken by the user 120 are considered to be irrelevant to the played advertisement and, therefore, the speech recognizer 310 does not perform any speech recognition analysis of the ambient acoustic signal.
  • the commands can include some pre-determined words, such "call the phone in advertisement,” “call to” following the name of the company in the advertisement, “open the website,” “make a note,” “make a reminder,” and so forth.
  • the speech recognizer 310 can be configured to compare a portion of the ambient acoustic signal to one or more phrases stored in local vocabulary 315. If speech recognizer 310 does not determine any phrases in local vocabulary that correspond to the portion of the ambient acoustic signal, the speech recognizer 310 may send the portion to the remote computing resource(s), wherein the portion can be recognized based on a remote vocabulary.
  • the remote vocabulary can be larger than the local vocabulary.
  • the speech recognizer 310 may provide the recognized command to the command execution module 325.
  • the command execution module 325 can be configured to cause the audio device 110 to perform one or more actions in response to receiving the recognized command and the data associated with the advertisement.
  • the recognized command can be modified based on the data associated with the advertisement. For example, a phone number or an Internet address can be added to the recognized command.
  • the module 325 can be configured to execute the recognized command by launching one or more applications of the audio device, such as a phone application, an e-mail client, an Internet browser, a calendar, a messenger, and so forth.
  • the execution of command may include making a call to a phone number indicated in the advertisement, opening a browser at the Internet address of a website provided in the advertisement, displaying a map showing the street address of a company, displaying a driving direction to the street address of the company, and displaying an information concerning the product or the service in the browser.
  • the module 325 can be configured to send the recognized command and the data associated with the advertisement to a further device of the user.
  • the further device can be communicatively connectable and paired via a network with the audio device 110.
  • the further device can be configured to execute the commands received from the audio device.
  • the module 325 can be configured to send the recognized command and the data associated with the advertisement to an application located in remote computing resource(s) and associated with the user of the audio device 110.
  • the advertisement may include one or more clues for the user.
  • the clues may include a prompt for the user to respond to the advertisement.
  • the clues may include phrases such as "Call now”, “Contact us for your free quote , "Ask your doctor for " , “Visit us at " , and so forth.
  • the clues can be associated with one or more commands.
  • a user may respond to the clue with one or more keywords or phrases, such as "Yes”, “Yes, I want it", “Call them”, “Open”, “Open the website”, and so forth.
  • the advertisement analysis module 305 can be configured to detect a presence of a clue in the media stream during advertisement.
  • the clue can be detected based on analysis of audio data of the media.
  • the clues can be also detected based on the metadata in the media stream.
  • the module 305 may provide an indication of detection of a clue to the speech recognizer 310.
  • the module 305 may provide the detected clue to the command execution module 325.
  • the speech recognizer 310 may monitor the ambient acoustic signal to detect a presence of one of keywords associated with the clue in a voice of the user.
  • the speech recognizer 310 may monitor the ambient acoustic signal for a pre determined time (for example, 10 seconds) after the clue is detected.
  • the speech recognizer 310 may monitor the ambient acoustic signal for a pre-determined time (for example, 10 seconds) after the advertisement has been played.
  • the speech recognizer 310 may provide the detected keywords to command execution module 325.
  • the audio device may continue playing the media stream.
  • a level of sound of playing of the media stream can be lowered or the sound of the media stream can be switched off after detecting the clue in the advertisement and while the speech recognizer 310 monitors the ambient acoustic signal.
  • the command execution module 325 can execute one or more commands associated with the clue.
  • the commands associated with the clue can be determined based on text analysis of audio data of the advertisements.
  • the commands associated with the clue can be provided via metadata of the media stream. While executing the commands, the audio device may continue playing the media stream.
  • the command execution module 325 may provide sound messages over the media stream.
  • the sound messages may include confirmation that a command is received and scheduled to be executed.
  • the sound message may include phrases, such as "Ok. Opening the website.”, "Ok. Calling to number", and so forth.
  • FIG. 4 is a flow chart showing a method 400 for recognizing and performing voice commands during advertisements, according to an example embodiment.
  • the method can be implemented by using the audio device 110 shown in FIG. 1 and FIG. 2.
  • the method 400 can be implemented as instructions stored in memory of the audio device 110 which when being executed by the processors of the audio device causing the audio device to perform the operations of the method 400.
  • the operations of method 400 may be combined, performed in parallel, or performed in a different order.
  • the method 400 may also include additional or fewer operations than those illustrated.
  • the method 400 may commence in block 405 with playing, by an audio device, a media stream to a user.
  • the media stream may include audio data and/or video data.
  • the media stream may include at least one advertisement.
  • the media stream may include metadata.
  • the metadata can include data associated with the advertisement.
  • the method 400 may include sensing, by an acoustic sensor, an ambient acoustic signal.
  • the method 400 may include determining, by one or more processors communicatively coupled to the audio device and the acoustic sensor, that the audio device has started playing the advertisement.
  • the processors can be configured to determine that the audio device has started playing the advertisement by determining a change in audio data and/or video data in the media stream.
  • the processors may also determine that the audio device has started playing the advertisement by reading metadata of the media stream.
  • the method 400 may include, in response to the determination that the audio device has started playing the advertisement, monitoring, by the one or more processors, the ambient acoustic signal to detect a presence of at least one command spoken by the user.
  • the operations of block 420 are described in detail in FIG. 5 and FIG. 6.
  • the method 400 may include, in response to the detection of the presence of the command, causing the audio device to perform one or more actions associated with the command. Prior to the causing the audio device to perform the actions, the method 400 may include additional operations described in FIG. 7.
  • FIG. 5 is a flow chart showing a method for recognizing voice commands during advertisement, according to an example embodiment.
  • the method of FIG. 5 may provide details for operation 420 of the method 400 of FIG. 4.
  • the method 500 may commence in block 505 with analyzing the ambient acoustic signal to detect a presence of a pre-determined keyword in the ambient acoustic signal.
  • the pre-determined keyword may include "Hey, Radio!,” “Hey, TV!,” or a similar phrase.
  • the method 500 may include, upon detection of the presence of the at least one keyword, causing the audio device to lower a level of sound of the media stream.
  • the method 500 may further include analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize at least one command. Details of the operations of block 515 of the method 500 are described in detail in FIG. 6.
  • FIG. 6 is a flow chart showing a method 600 for recognizing voice commands during advertisements, according to an example embodiment.
  • the method 600 provides details for operations of block 515 of the method 500 of FIG. 6.
  • the method 600 may commence in block 605 with comparing the portion of the ambient acoustic signal to one or more phrases stored in a local vocabulary.
  • the local vocabulary can be stored in a memory of the audio device.
  • the method 600 may include determining that the portion of the ambient acoustic signal does not match the phrases stored in the local vocabulary.
  • the method 600 may include, in response to the determination, comparing the portion of the ambient acoustic signal to one or more phrases stored in a remote vocabulary.
  • the remote vocabulary can be stored in one or more remote computing resource(s).
  • the remote vocabulary can be larger than the local vocabulary.
  • the audio device can be in communication with the remote computing resource(s).
  • the audio device can be configured to send the portion of the ambient acoustic signal to the remote computing resource(s).
  • the remote computing resource(s) can be configured to compare the portion of the ambient acoustic signal to phrases in the remote vocabulary and send results of the comparison to the audio device.
  • the result of the comparison may include a text phrase that matches the portion of the ambient acoustic signal with the best score.
  • the result may include two or more text phrases and corresponding scores.
  • the scores may indicate probabilities of matching the portion of the ambient acoustic signal to text phrases.
  • the audio device may further select the best matched phrase based on context of the advertisement.
  • FIG. 7 is a flow chart showing a method 700 for determining data associated with an advertisement, according to an example embodiment.
  • the method 700 may represent additional operations of method 400 of the FIG. 4 upon determination that the audio device has started playing the advertisement.
  • the operations of the method 700 can be carried out prior to the operation of block 425 of method 400.
  • the method 700 may commence in block 705 with performing speech recognition of an audio data of the media stream to determine data associated with the advertisement.
  • the audio data may correspond to a portion of a media stream containing the advertisement.
  • the method 700 may include determining further data associated with the advertisement based on metadata of the media stream.
  • the data and further data associated with the advertisement may include a phone number, an Internet address, a name of product or a service, a type of the product or the service, a name of company, and a street address of the company, and so forth. It should be noted that method 700 may include only operations of block 705, only operations of block 710, or both the operations of block 705 and the operations of block 710.
  • the method 700 may include, prior to causing the audio device to perform the actions, modifying the command based on the data or the further data associated with the advertisement.
  • the command may include making a call to the phone number, opening a browser at the Internet address of a website, displaying a map showing the address of the company, displaying a driving direction to the street address of the company, displaying an information concerning the product or the service in the browser, and so forth.
  • FIG. 8 is a flow chart showing a method 800 for recognizing and performing voice commands during advertisements, according to an example embodiment.
  • the method 800 may provide additional steps to method 400 illustrated in FIG. 400.
  • the method 800 may commence, in block 805, with detecting a presence of at least one clue in the at least one advertisement.
  • the advertisement can be played by an audio device while playing a media stream.
  • the method 800 may proceed, in response to the detection of the at least one clue, with monitoring an ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one keyword spoken by the user.
  • the at least one keyword can be associated with the clue.
  • the method 800 may proceed, in response to the detection of the presence of the at least one keyword, with causing the audio device to perform one or more actions associated with the clue.
  • FIG. 9 is a high-level block diagram illustrating an example computer system 900, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein can be executed.
  • the computer system 900 may include, refer to, or be an integral part of, one or more of a variety of types of devices, such as a general-purpose computer, desktop computer, laptop computer, tablet computer, netbook, mobile phone, smartphone, personal digital computer, smart television device, and server, among others.
  • the computer system 900 is an example of audio device(s) 110 or remote computer resource(s) 130.
  • FIG. 9 illustrates just one example of the computer system 900 and, in some embodiments, the computer system 900 may have fewer elements/modules than shown on FIG. 9 or more elements/modules than shown on FIG. 9.
  • the computer system 900 includes one or more processors 905, a memory 910, one or more storage devices 915, one or more input devices 920, one or more output devices 925, and network interface 930.
  • processors 905 are, in some examples, configured to implement functionality and/or process instructions for execution within the computer system 900.
  • the processors 905 may process instructions stored in memory 910 and/or instructions stored on storage devices 915.
  • Such instructions may include components of an operating system 935 or software applications 940.
  • Computer system 900 may also include one or more additional components not shown in FIG. 9, such as a housing, power supply, battery, global positioning system (GPS) receiver, and so forth.
  • GPS global positioning system
  • Memory 910 is configured to store information within the computer system 900 during operation.
  • Memory 910 may refer to a non-transitory computer-readable storage medium or a computer-readable storage device.
  • memory 910 is a temporary memory, meaning that a primary purpose of memory 910 may not be long-term storage.
  • Memory 910 may also refer to a volatile memory, meaning that memory 910 does not maintain stored contents when memory 910 is not receiving power. Examples of volatile memories include random access memories (RAM), dynamic random access memories (DRAM), static random access memories (SRAM), and other forms of volatile memories known in the art.
  • RAM random access memories
  • DRAM dynamic random access memories
  • SRAM static random access memories
  • memory 910 is used to store program instructions for execution by the processors 905.
  • Memory 910 in one example, is used by software (e.g., the operating system 935 or applications 940).
  • software applications 940 refer to software applications suitable for implementing at least some operations of the methods for providing a location-based gaming experience as described herein.
  • One or more storage devices 915 can also include one or more transitory or non-transitory computer-readable storage media and/or computer- readable storage devices.
  • storage devices 915 may be configured to store greater amounts of information than memory 910.
  • Storage devices 915 may further be configured for long-term storage of information.
  • the storage devices 915 include non-volatile storage elements. Examples of such non-volatile storage elements include magnetic hard discs, optical discs, solid-state discs, flash memories, forms of electrically programmable memories (EPROM) or electrically erasable and programmable memories, and other forms of non-volatile memories known in the art.
  • the computer system 900 may also include one or more input devices 920.
  • the input devices 920 may be configured to receive input from a user through tactile, audio, video, or biometric channels.
  • Examples of input devices 920 may include a keyboard, keypad, mouse, trackball, touchscreen, touchpad, microphone, one or more video cameras, image sensors, fingerprint sensors, or any other device capable of detecting an input from a user or other source, and relaying the input to computer system 900, or components thereof.
  • the output devices 925 may be configured to provide output to a user through visual or auditory channels.
  • Output devices 925 may include a video graphics adapter card, a liquid crystal display (LCD) monitor, a light emitting diode (LED) monitor, an organic LED monitor, a sound card, a speaker, a lighting device, a LED, a projector, or any other device capable of generating output that may be intelligible to a user.
  • Output devices 925 may also include a touchscreen, presence-sensitive display, or other input/output capable displays known in the art.
  • the computer system 900 also includes network interface 930.
  • the network interface 930 can be utilized to communicate with external devices via one or more data networks such as one or more wired, wireless, or optical networks including, for example, the Internet, intranet, LAN, WAN, cellular phone networks, Bluetooth radio, and an IEEE 902.11-based radio frequency network, among others.
  • the network interface 930 may be a network interface card, such as an Ethernet card, an optical transceiver, a radio frequency transceiver, or any other type of device that can send and receive information.
  • the operating system 935 may control one or more functionalities of computer system 900 and/or components thereof.
  • the operating system 935 may interact with the applications 940 and may facilitate one or more interactions between the applications 940 and components of the computer system 900.
  • the operating system 935 may interact with or be otherwise coupled to the application(s) 940 and components thereof.
  • application(s) 940 may be included in operating system 935.
  • virtual modules, firmware, or software may be part of the applications 940.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Methods and systems for recognizing and performing voice commands during advertisements are provided. An example method may include playing, by an audio device, a media stream to a user, the media stream including at least one advertisement; sensing, by an acoustic sensor, an ambient acoustic signal; determining, by processors communicatively coupled to the audio device and the acoustic sensor, that the audio device has started playing the advertisement; in response to the determination, monitoring, by the processors, the ambient acoustic signal to detect a presence of at least one command spoken by the user; and in response to the detection of the presence of the at least one command, determining data associated with the at least one advertisement; and causing, by the processors, the audio device to perform one or more actions associated with the command and the data associated with the advertisement.

Description

SYSTEMS AND METHODS FOR RECOGNIZING AND PERFORMING VOICE COMMANDS DURING ADVERTISEMENT
TECHNICAL FIELD
[0001] This disclosure generally relates to the field of providing advertisements. More particularly, this disclosure relates to methods and systems for recognizing and performing voice commands during advertisements.
BACKGROUND
[0002] Media streams can be broadcast on many users' devices, such as smart television sets, computers, tablets, vehicle audio systems, and so forth. Media streams may include advertisements featuring products and services, such as restaurants, films, automobiles, banking and financial services, insurance services, and so forth. The media stream and the advertisements can be in audio format or video format. In some instances, even if interested in purchasing the product or service from the advertisements, the user may not be able to memorize or use the information placed in advertisement because, for example the user may be driving a car, cooking in the kitchen, performing physical exercises, and so forth. There is a need for a convenient way for response and interaction with the advertisements.
SUMMARY
[0003] This section introduces a selection of concepts in a simplified form that are further described in the Detailed Description section, below. This summary does not identify key or essential features of the claimed subject matter and is not intended to be an aid in determining the scope of the claimed subject matter.
[0004] This present disclosure is directed to systems and methods for recognizing and performing voice commands during advertisements. Some embodiments of the present disclosure may facilitate users to respond to advertisements during media streams played by users' devices.
[0005] According to one example embodiment, a system for recognizing and performing voice commands during an advertisement is provided. The system may include an audio device configured to play a media stream to a user, wherein the media stream includes at least one advertisement. The system may include at least one acoustic sensor configured to sense an ambient acoustic signal. The system may include one or more processors communicatively coupled to the audio device and the acoustic sensor. The processors can be configured to determine that the audio device has started playing the advertisement. In response to the determination, the processors may monitor the ambient acoustic signal to detect a presence of at least one command spoken by the user. In response to the detection of the presence of the one command, the processors may cause the audio device to perform one or more actions associated with the command.
[0006] The media stream may include metadata indicative of starting the at least one advertisement. The determination that the audio device has started playing the advertisement can be based on the metadata.
[0007] The processors can be configured to analyze audio data of the media stream. The determination that the audio device has started playing the advertisement can be based on the analysis of the audio data.
[0008] The detection of the presence of the at least one command may include analyzing the ambient acoustic signal to detect a presence of a pre determined keyword in the ambient acoustic signal. Upon detection of the presence of the at least one keyword, the processors may proceed with analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize the command. Upon detection of the presence of the pre-determined keyword, the processors may cause the audio device to lower a level of sound of playing the media stream.
[0009] The detection of the presence of the command may include comparing a portion of the ambient acoustic signal to one or more phrases stored in a local vocabulary. The local vocabulary can be stored in a memory of the audio device.
[0010] After determining that the audio device has started playing the at least one advertisement, the processors can detect a presence of at least one clue in the advertisement. In response to the detection of the clue, the processor may monitor the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one keyword spoken by the user. The keyword can be associated with the at least one clue. In response to the detection of the presence of the keyword, the processors may cause the audio device to perform one or more actions associated with the clue.
[0011] The processors can be communicatively connected to at least one remote computing source. The remote computing source can be configured to store a remote vocabulary. The remote vocabulary can be larger than the local vocabulary. The one or more processors can be configured to determine that the portion of the ambient acoustic signal does not match the phrases stored in the local vocabulary. In response to the determination, the processors can be configured to compare the portion of the ambient acoustic signal to one or more phrases stored in the remote vocabulary.
[0012] The processors can be configured to determine data associated with the advertisement. Prior to causing the audio device to perform the actions, the processors may modify the command based on the data associated with the advertisement.
[0013] The processors can be configured to perform speech recognition based on an audio data of the media stream. The audio data may correspond to the advertisement. The processors may determine, based on results of the speech recognition, the data associated with advertisement.
[0014] The media stream may include metadata including the data associated with the advertisement. The processors can be configured to determine the data associated with the advertisement based on the metadata of the media stream.
[0015] The data associated with the advertisement may include one or more of the following: a phone number, an Internet address of a website of a company, a name of a product or a service, a type of the product or the service, a name of a company, and a street address of the company.
[0016] The performing one or more actions corresponding to the command may include one or more of: making a call to a phone number, opening a browser at the Internet address of the website, displaying a map showing the address of the company, displaying a driving direction to the street address of the company, and displaying an information concerning the product or the service in the browser.
[0017] The acoustic sensor and the processors can be integrated in the audio device. The audio device may include one of: a smart phone, a smart television set, a tablet computer, a desktop computer, in-vehicle infotainment, and a smart home device.
[0018] The media stream may include an Internet radio stream or an Internet television stream broadcast live online. The media stream may include a podcast.
[0019] According to another example embodiment, a method for recognizing and performing voice commands during an advertisement is provided. The method may include playing, by an audio device, a media stream to a user, wherein the media stream includes at least one advertisement. The method may include sensing, by at least one acoustic sensor, an ambient acoustic signal. The method may include determining, by one or more processors communicatively coupled to the audio device and the acoustic sensor, that the audio device has started playing the advertisement. In response to the determination, the method may include monitoring, by the processors, the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one command spoken by the user. In response to the detection of the presence of the command, the method may include causing, by the processors, the audio device to perform one or more actions associated with the command.
[0020] The detection of the presence of the command may include analyzing the ambient acoustic signal to detect a presence of a pre-determined keyword in the ambient acoustic signal. Upon detection of the presence of the keyword, the method may include analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize the command.
[0021] The method may include determining data associated with the advertisement. The data associated with the advertisement can be determined by performing speech recognition of audio data of the media stream, wherein the audio data correspond to the advertisement. The data associated with the advertisement can be determined by reading metadata of the media stream. The method may include, prior to causing the audio device to perform the actions, modifying the command based on the data associated with the advertisement.
[0022] Other example embodiments of the disclosure and aspects will become apparent from the following description taken in conjunction with the following drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements.
[0024] FIG. 1 is a block diagram showing an example environment wherein a method for recognizing and performing voice commands during an advertisement can be implemented.
[0025] FIG. 2 is a block diagram showing an audio device for recognizing and performing voice commands during an advertisement, according to an example embodiment.
[0026] FIG. 3 is a block diagram illustrating an example system for recognizing and performing voice commands during an advertisement, according to an example embodiment.
[0027] FIG. 4 is a flow chart showing a method for recognizing and performing voice commands during an advertisement, according to an example embodiment.
[0028] FIG. 5 is a flow chart showing a method for recognizing voice commands during an advertisement, according to an example embodiment.
[0029] FIG. 6 is a flow chart showing a method for recognizing voice commands during an advertisement, according to an example embodiment.
[0030] FIG. 7 is a flow chart showing a method for determining data associated with an advertisement, according to an example embodiment.
[0031] FIG. 8 is a flow chart showing a method for recognizing and performing voice commands during an advertisement, according to an example embodiment.
[0032] FIG. 9 is a high-level block diagram illustrating an example computer system, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein can be executed.
DETAILED DESCRIPTION
[0033] The following detailed description of embodiments includes references to the accompanying drawings, which form a part of the detailed description. Approaches described in this section are not prior art to the claims and are not admitted to be prior art by inclusion in this section. The drawings show illustrations in accordance with example embodiments. These example embodiments, which are also referred to herein as "examples," are described in enough detail to enable those skilled in the art to practice the present subject matter. The embodiments can be combined, other embodiments can be utilized, or structural, logical and operational changes can be made without departing from the scope of what is claimed. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope is defined by the appended claims and their equivalents.
[0034] The technology described herein is concerned with systems and methods for recognizing and performing voice commands during advertisements. Some embodiments of the present technology may facilitate interaction of a user with an advertisement during media streams played on a user device.
[0035] According to an example embodiment of the present disclosure, an audio device for recognizing and performing voice commands during advertisements is provided. The audio device may include an output device configured to play a media stream to a user. The media stream may include at least one advertisement. The audio device may include at least one acoustic sensor configured to sense an ambient acoustic signal. The audio device may further include one or more processors communicatively coupled to the output device and the acoustic sensor. The processors can be configured to determine that the output device has started playing the advertisement. In response to the determination, the processors can monitor the ambient acoustic signal to detect a presence of a predetermined keyword spoken by the user in the ambient acoustic signal. In response to the detection of the presence of the pre-determined keyword, the processors can cause the output device to lower a level of a sound of playing the media stream. The processors may further analyze a portion of the ambient acoustic signal after the pre-determined keyword to recognize at least one command. Upon recognition of the command or concurrently to, the processors may determine data associated with the advertisement. The data associated with the advertisement can be determined by performing speech recognition of audio data of the media stream, such that the audio data corresponds to the advertisement. Additionally, or alternatively, processors may read metadata of the media stream to determine the data associated with the advertisement. The processors may further perform one or more actions associated with the one or more command and the data associated with the at least one advertisement.
[0036] Referring now to the drawings, FIG. 1 shows an example environment 100, wherein a method for recognizing and performing voice commands during advertisements can be implemented. The environment 100 may include an audio device 110, a user 120, a remote computing resource(s) 130, and a network 140.
[0037] The audio device 110 can include radio frequency receivers, transmitters, and transceivers, wired and/or wireless telecommunications and/or networking devices, amplifiers, audio and/or video players, encoders, decoders, speakers, inputs, outputs, storage devices, user input devices. The audio device 110 can be configured to receive a media stream and play the media stream to a user using an output device, for example speakers and earphones. The audio device 110 can be configured to sense ambient acoustic sound using, for example one or more microphones. The audio device 110 can be configured to detect the voice of the user 120. The audio device 110 may include, but is not limited to, a notebook computer, a desktop computer, a tablet computer, a phablet, a smart phone, a personal digital assistant, a media player, a mobile telephone, a smart television set, in-vehicle infotainment, a smart home device, and the like. An example audio device 110 is described in detail in FIG. 2.
[0038] The media stream may include a live broadcast, including a live radio, a live television, an Internet radio, an Internet television, a live stream in one of the social media, and so forth. The media stream can be streamed in analog format or digital format. The media stream may also include a podcast stored locally in a memory of the audio device 110 or remotely in the remote computing resource(s) 130.
[0039] The media stream may include one or more advertisements. The advertisement may include an audio data and/or video data. The advertisement may feature product and services and provide data associated with the advertisement concerning the advertisement provider, such as a phone number, Internet address of a website, a street address, name of a company, and so forth. In some embodiments, the media stream may include metadata that contain the data associated with the advertisement.
[0040] In some embodiments, the audio device may include a radio receiver to receive the media stream using a radio network or a television network. In certain embodiments, the media stream can be delivered using a data network 140. The data network 140 can refer to any wired, wireless, or optical networks including, for example, the Internet, intranet, local area network (LAN), Personal Area Network (PAN), Wide Area Network (WAN), Virtual Private Network (VPN), cellular phone networks (e.g., Global System for Mobile (GSM) communications network, packet switching communications network, circuit switching communications network), BluetoothTM radio, Ethernet network, an IEEE 802.11-based radio frequency network, a Frame Relay network, Internet Protocol (IP) communications network, or any other data communication network utilizing physical layers, link layer capability, or network layer to carry data packets, or any combinations of the above-listed data networks. In some embodiments, the data network 140 includes a corporate network, data center network, service provider network, mobile operator network, or any combinations thereof.
[0041] In some embodiments, the remote computing resource(s) 130 may be implemented as server(s) or cloud-based computing resource(s) shared by multiple users. The remote computing resource(s) 130 can include hardware and software available at a remote location and accessible over the network 140. The remote computing resource(s) 130 can be dynamically re-allocated based on demand. The cloud-based computing resources may include one or more server farms/clusters including a collection of computer servers which can be co-located with network switches and/or routers.
[0042] The remote computing resource(s) 130 can be configured to transmit media streams over the network 140. The remote computing resource(s) 130 can be configured to store podcasts to be played on the audio device 110 via the network 140.
[0043] FIG. 2 is a block diagram showing an audio device 110 for recognizing and performing voice commands during advertisements, according to an example embodiment. FIG. 2 provides details of the audio device 110 of FIG. 1. In the illustrated embodiment, the audio device 110 includes one or more processor(s) 210, one or more communication unit(s) 220, a memory 230, one or more output device(s) 240, one or more acoustic sensor(s) 250, and a graphic display system 260. In other embodiments, the audio device 110 includes additional or other components necessary for operations of audio device 110. Similarly, in certain embodiments, the audio device 110 includes fewer components that perform functions similar or equivalent to those depicted in FIG. 2.
[0044] In various embodiments, the processors 210 include hardware and/or software, which is operable to execute instructions stored in the memory 230. The processors 210 may perform floating point operations, complex operations, and other operations, including analyzing the media streams to detect advertisements and determine data associated with advertisements and performing speech recognition based on ambient acoustic signals to detect commands spoken by users. The processors 210 may include general purpose processors, video processors, audio processing systems, and so forth.
[0045] In various embodiments, the communication unit(s) 220 can be configured to communicate with a network such as the Internet, WAN, LAN, cellular network, and so forth, to receive audio and/or video data of media streams. The received audio and/or video data may be then forwarded to the processor(s) 210 and the output device(s) 240. The processors 210 may analyze the received media stream to detect a beginning of an advertisement and determine data associated with the advertisement.
[0046] The acoustic sensor(s) 250 can include one or more microphones. The processors 210 can be configured to receive acoustic signals from an acoustic source, for example the user 120, via acoustic sensor(s) 250 and process the acoustic signal to determine presence of keywords and commands in a voice of the user 120. The acoustic sensor(s) 250 can be spaced a distance apart to allow the processor(s) 210 to perform a noise and/or echo reduction in received acoustic signals. [0047] In some embodiments, the output device(s) 240 may include any device which provides an audio output to a listener (for example, the user 120). The output device(s) 240 may comprise one or more speaker(s), an earpiece of a headset, or a handset.
[0048] In various embodiments, the graphic display system 260 can be configured to provide a graphic user interface. In some embodiments, a touch screen associated with the graphic display system 260 can be utilized to receive an input from a user. The graphic display system 260 may be configured to display a video content of the media stream including advertisements.
[0049] FIG. 3 is a block diagram illustrating an example system 300 for recognizing and performing voice commands during an advertisement, according to an example embodiment. The system 300 may include an advertisement analysis module 305, a speech recognizer 310, and a command execution module 325. In certain embodiments, the modules 305, 310, and 325 can be implemented as instructions stored in memory 230 of audio device 110 and executed by processor (s) 210 (shown in FIG. 2). In some embodiments, the system 300 may include a local vocabulary 315 stored in a memory 230 of the audio device 110 and a remote vocabulary 320 stored outside of the audio device 110, for example, in remote computing resource(s) 130.
[0050] The advertisement analysis module 305 can be configured to monitor a media stream played by the audio device 110. The module 305 can be configured to detect that the audio device 110 has started playing an advertisement within the media stream. In some embodiments, the module 305 can determine a start of an advertisement based on a change of audio content in the media stream. For example, the module 305 can detect change of amplitude or frequency in a pre determined number of time frames of an audio signal. The module 305 may detect an increase of a level of sound of playing the media content. In some embodiments, a time of a beginning of the advertisement can be provided in metadata of the media stream. The module 305 may detect the beginning of an advertisement based on the metadata. The module 305 may further provide an indication that the audio device has started playing the advertisement to the speech recognizer 310.
[0051] After determining that the audio device has started playing the advertisement, the module 305 may be configured to analyze a portion of the media stream that corresponds to the advertisement to determine data associated with the advertisement. The data associated with the advertainment may include information concerning advertisement provider, for example a phone number, an Internet address of a website, a name of a product or a service, a type of the product or the service, a name of company, a street address of the company, and so forth. The module 305 can provide the data associated with advertisement to the command execution module 325.
[0052] The data associated with the advertisement may include text data pronounced during the advertisement. The module 305 may be configured to recognize the text data based on audio data of the media stream to determine the data associated with the advertisement.
[0053] The data associated with the advertisement can be provided in metadata of the media stream. The module 305 can be configured to detect the metadata in the media stream and read the data associated with the advertisement from the metadata.
[0054] Upon receiving an indication that the audio device 110 has started playing an advertisement, the speech recognizer 310 can be configured to analyze an ambient acoustic signal sensed by acoustic sensor (s) 250 of the audio device 110. In certain embodiments, the speech recognizer 310 may configure the output device(s) 240 of the audio device 110 to lower a level of sound of playing the media stream for a pre-determined time. The pre-determined time can be larger than a duration of the advertisement in the media stream.
[0055] The speech recognizer 310 may detect a presence of a voice of the user
120 in the ambient acoustic signal. The speech recognizer 310 may also detect a presence of a pre-determined keyword in the voice of the user. The pre-determined keyword may include a key phrase such as "Hey, Radio," "Hey, TV," and so forth. The speech recognizer 310 can be configured to recognize similar key phrases pronounced in various languages different from English. Upon detection of the pre-determined keyword, the speech recognizer 310 can analyze a portion of the ambient acoustic signal after the pre-determined keyword to determine whether the user has spoken one or more commands. If the speech recognizer 310 does not detect presence of the key phrase such as "Hey, Radio," "Hey, TV," and others in the voice of the user, the speech recognizer 310 skip any words spoken by the user 120 during advertisement. In this case, any words spoken by the user 120, even if present in the ambient acoustic signal, are considered to be irrelevant to the played advertisement and, therefore, the speech recognizer 310 does not perform any speech recognition analysis of the ambient acoustic signal. The commands can include some pre-determined words, such "call the phone in advertisement," "call to" following the name of the company in the advertisement, "open the website," "make a note," "make a reminder," and so forth.
[0056] The speech recognizer 310 can be configured to compare a portion of the ambient acoustic signal to one or more phrases stored in local vocabulary 315. If speech recognizer 310 does not determine any phrases in local vocabulary that correspond to the portion of the ambient acoustic signal, the speech recognizer 310 may send the portion to the remote computing resource(s), wherein the portion can be recognized based on a remote vocabulary. The remote vocabulary can be larger than the local vocabulary. The speech recognizer 310 may provide the recognized command to the command execution module 325.
[0057] The command execution module 325 can be configured to cause the audio device 110 to perform one or more actions in response to receiving the recognized command and the data associated with the advertisement. In some embodiments, the recognized command can be modified based on the data associated with the advertisement. For example, a phone number or an Internet address can be added to the recognized command. In some embodiments, the module 325 can be configured to execute the recognized command by launching one or more applications of the audio device, such as a phone application, an e-mail client, an Internet browser, a calendar, a messenger, and so forth. The execution of command may include making a call to a phone number indicated in the advertisement, opening a browser at the Internet address of a website provided in the advertisement, displaying a map showing the street address of a company, displaying a driving direction to the street address of the company, and displaying an information concerning the product or the service in the browser.
[0058] In some embodiments, the module 325 can be configured to send the recognized command and the data associated with the advertisement to a further device of the user. The further device can be communicatively connectable and paired via a network with the audio device 110. The further device can be configured to execute the commands received from the audio device. In some embodiments, the module 325 can be configured to send the recognized command and the data associated with the advertisement to an application located in remote computing resource(s) and associated with the user of the audio device 110.
[0059] In some embodiments, the advertisement may include one or more clues for the user. The clues may include a prompt for the user to respond to the advertisement. For example, the clues may include phrases such as "Call now", "Contact us for your free quote , "Ask your doctor for ..." , "Visit us at ..." , and so forth. The clues can be associated with one or more commands. A user may respond to the clue with one or more keywords or phrases, such as "Yes", "Yes, I want it", "Call them", "Open", "Open the website", and so forth. In these embodiments, the advertisement analysis module 305 can be configured to detect a presence of a clue in the media stream during advertisement. The clue can be detected based on analysis of audio data of the media. The clues can be also detected based on the metadata in the media stream. The module 305 may provide an indication of detection of a clue to the speech recognizer 310. The module 305 may provide the detected clue to the command execution module 325.
[0060] The speech recognizer 310 may monitor the ambient acoustic signal to detect a presence of one of keywords associated with the clue in a voice of the user. The speech recognizer 310 may monitor the ambient acoustic signal for a pre determined time (for example, 10 seconds) after the clue is detected. In certain embodiments, the speech recognizer 310 may monitor the ambient acoustic signal for a pre-determined time (for example, 10 seconds) after the advertisement has been played. Upon detection of keywords associated with the clue, the speech recognizer 310 may provide the detected keywords to command execution module 325. While monitoring the ambient acoustic signal, the audio device may continue playing the media stream. Optionally, a level of sound of playing of the media stream can be lowered or the sound of the media stream can be switched off after detecting the clue in the advertisement and while the speech recognizer 310 monitors the ambient acoustic signal.
[0061] Upon receiving the clue and keywords associated with the clue, the command execution module 325 can execute one or more commands associated with the clue. The commands associated with the clue can be determined based on text analysis of audio data of the advertisements. The commands associated with the clue can be provided via metadata of the media stream. While executing the commands, the audio device may continue playing the media stream. The command execution module 325 may provide sound messages over the media stream. The sound messages may include confirmation that a command is received and scheduled to be executed. The sound message may include phrases, such as "Ok. Opening the website.", "Ok. Calling to number", and so forth.
[0062] FIG. 4 is a flow chart showing a method 400 for recognizing and performing voice commands during advertisements, according to an example embodiment. The method can be implemented by using the audio device 110 shown in FIG. 1 and FIG. 2. For example, the method 400 can be implemented as instructions stored in memory of the audio device 110 which when being executed by the processors of the audio device causing the audio device to perform the operations of the method 400. In some embodiments, the operations of method 400 may be combined, performed in parallel, or performed in a different order. The method 400 may also include additional or fewer operations than those illustrated.
[0063] The method 400 may commence in block 405 with playing, by an audio device, a media stream to a user. The media stream may include audio data and/or video data. The media stream may include at least one advertisement. The media stream may include metadata. The metadata can include data associated with the advertisement.
[0064] In block 410, the method 400 may include sensing, by an acoustic sensor, an ambient acoustic signal.
[0065] In block 415, the method 400 may include determining, by one or more processors communicatively coupled to the audio device and the acoustic sensor, that the audio device has started playing the advertisement. The processors can be configured to determine that the audio device has started playing the advertisement by determining a change in audio data and/or video data in the media stream. The processors may also determine that the audio device has started playing the advertisement by reading metadata of the media stream.
[0066] In block 420, the method 400 may include, in response to the determination that the audio device has started playing the advertisement, monitoring, by the one or more processors, the ambient acoustic signal to detect a presence of at least one command spoken by the user. The operations of block 420 are described in detail in FIG. 5 and FIG. 6.
[0067] In block 420, the method 400 may include, in response to the detection of the presence of the command, causing the audio device to perform one or more actions associated with the command. Prior to the causing the audio device to perform the actions, the method 400 may include additional operations described in FIG. 7.
[0068] FIG. 5 is a flow chart showing a method for recognizing voice commands during advertisement, according to an example embodiment. The method of FIG. 5 may provide details for operation 420 of the method 400 of FIG. 4.
[0069] The method 500 may commence in block 505 with analyzing the ambient acoustic signal to detect a presence of a pre-determined keyword in the ambient acoustic signal. The pre-determined keyword may include "Hey, Radio!," "Hey, TV!," or a similar phrase.
[0070] In optional block 510, the method 500 may include, upon detection of the presence of the at least one keyword, causing the audio device to lower a level of sound of the media stream.
[0071] In block 515, the method 500 may further include analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize at least one command. Details of the operations of block 515 of the method 500 are described in detail in FIG. 6.
[0072] FIG. 6 is a flow chart showing a method 600 for recognizing voice commands during advertisements, according to an example embodiment. The method 600 provides details for operations of block 515 of the method 500 of FIG. 6.
[0073] The method 600 may commence in block 605 with comparing the portion of the ambient acoustic signal to one or more phrases stored in a local vocabulary. The local vocabulary can be stored in a memory of the audio device.
[0074] In block 610, the method 600 may include determining that the portion of the ambient acoustic signal does not match the phrases stored in the local vocabulary.
[0075] In block 615, the method 600 may include, in response to the determination, comparing the portion of the ambient acoustic signal to one or more phrases stored in a remote vocabulary. The remote vocabulary can be stored in one or more remote computing resource(s). The remote vocabulary can be larger than the local vocabulary. The audio device can be in communication with the remote computing resource(s). The audio device can be configured to send the portion of the ambient acoustic signal to the remote computing resource(s). The remote computing resource(s) can be configured to compare the portion of the ambient acoustic signal to phrases in the remote vocabulary and send results of the comparison to the audio device. The result of the comparison may include a text phrase that matches the portion of the ambient acoustic signal with the best score. The result may include two or more text phrases and corresponding scores. The scores may indicate probabilities of matching the portion of the ambient acoustic signal to text phrases. The audio device may further select the best matched phrase based on context of the advertisement.
[0076] FIG. 7 is a flow chart showing a method 700 for determining data associated with an advertisement, according to an example embodiment. The method 700 may represent additional operations of method 400 of the FIG. 4 upon determination that the audio device has started playing the advertisement. The operations of the method 700 can be carried out prior to the operation of block 425 of method 400.
[0077] The method 700 may commence in block 705 with performing speech recognition of an audio data of the media stream to determine data associated with the advertisement. The audio data may correspond to a portion of a media stream containing the advertisement.
[0078] In block 710, the method 700 may include determining further data associated with the advertisement based on metadata of the media stream. The data and further data associated with the advertisement may include a phone number, an Internet address, a name of product or a service, a type of the product or the service, a name of company, and a street address of the company, and so forth. It should be noted that method 700 may include only operations of block 705, only operations of block 710, or both the operations of block 705 and the operations of block 710.
[0079] In block 715, the method 700 may include, prior to causing the audio device to perform the actions, modifying the command based on the data or the further data associated with the advertisement. The command may include making a call to the phone number, opening a browser at the Internet address of a website, displaying a map showing the address of the company, displaying a driving direction to the street address of the company, displaying an information concerning the product or the service in the browser, and so forth.
[0080] FIG. 8 is a flow chart showing a method 800 for recognizing and performing voice commands during advertisements, according to an example embodiment. The method 800 may provide additional steps to method 400 illustrated in FIG. 400.
[0081] The method 800 may commence, in block 805, with detecting a presence of at least one clue in the at least one advertisement. The advertisement can be played by an audio device while playing a media stream.
[0082] In block 810, the method 800 may proceed, in response to the detection of the at least one clue, with monitoring an ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one keyword spoken by the user. The at least one keyword can be associated with the clue.
[0083] In block 815, the method 800 may proceed, in response to the detection of the presence of the at least one keyword, with causing the audio device to perform one or more actions associated with the clue.
[0084] FIG. 9 is a high-level block diagram illustrating an example computer system 900, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein can be executed. The computer system 900 may include, refer to, or be an integral part of, one or more of a variety of types of devices, such as a general-purpose computer, desktop computer, laptop computer, tablet computer, netbook, mobile phone, smartphone, personal digital computer, smart television device, and server, among others. In some embodiments, the computer system 900 is an example of audio device(s) 110 or remote computer resource(s) 130. Notably, FIG. 9 illustrates just one example of the computer system 900 and, in some embodiments, the computer system 900 may have fewer elements/modules than shown on FIG. 9 or more elements/modules than shown on FIG. 9.
[0085] The computer system 900 includes one or more processors 905, a memory 910, one or more storage devices 915, one or more input devices 920, one or more output devices 925, and network interface 930. One or more processors 905 are, in some examples, configured to implement functionality and/or process instructions for execution within the computer system 900. For example, the processors 905 may process instructions stored in memory 910 and/or instructions stored on storage devices 915. Such instructions may include components of an operating system 935 or software applications 940. Computer system 900 may also include one or more additional components not shown in FIG. 9, such as a housing, power supply, battery, global positioning system (GPS) receiver, and so forth.
[0086] Memory 910, according to one example, is configured to store information within the computer system 900 during operation. Memory 910, in some example embodiments, may refer to a non-transitory computer-readable storage medium or a computer-readable storage device. In some examples, memory 910 is a temporary memory, meaning that a primary purpose of memory 910 may not be long-term storage. Memory 910 may also refer to a volatile memory, meaning that memory 910 does not maintain stored contents when memory 910 is not receiving power. Examples of volatile memories include random access memories (RAM), dynamic random access memories (DRAM), static random access memories (SRAM), and other forms of volatile memories known in the art. In some examples, memory 910 is used to store program instructions for execution by the processors 905. Memory 910, in one example, is used by software (e.g., the operating system 935 or applications 940). Generally, software applications 940 refer to software applications suitable for implementing at least some operations of the methods for providing a location-based gaming experience as described herein.
[0087] One or more storage devices 915 can also include one or more transitory or non-transitory computer-readable storage media and/or computer- readable storage devices. In some embodiments, storage devices 915 may be configured to store greater amounts of information than memory 910. Storage devices 915 may further be configured for long-term storage of information. In some examples, the storage devices 915 include non-volatile storage elements. Examples of such non-volatile storage elements include magnetic hard discs, optical discs, solid-state discs, flash memories, forms of electrically programmable memories (EPROM) or electrically erasable and programmable memories, and other forms of non-volatile memories known in the art.
[0088] Still referencing to FIG. 9, the computer system 900 may also include one or more input devices 920. The input devices 920 may be configured to receive input from a user through tactile, audio, video, or biometric channels. Examples of input devices 920 may include a keyboard, keypad, mouse, trackball, touchscreen, touchpad, microphone, one or more video cameras, image sensors, fingerprint sensors, or any other device capable of detecting an input from a user or other source, and relaying the input to computer system 900, or components thereof.
[0089] The output devices 925, in some examples, may be configured to provide output to a user through visual or auditory channels. Output devices 925 may include a video graphics adapter card, a liquid crystal display (LCD) monitor, a light emitting diode (LED) monitor, an organic LED monitor, a sound card, a speaker, a lighting device, a LED, a projector, or any other device capable of generating output that may be intelligible to a user. Output devices 925 may also include a touchscreen, presence-sensitive display, or other input/output capable displays known in the art.
[0090] The computer system 900, in some example embodiments, also includes network interface 930. The network interface 930 can be utilized to communicate with external devices via one or more data networks such as one or more wired, wireless, or optical networks including, for example, the Internet, intranet, LAN, WAN, cellular phone networks, Bluetooth radio, and an IEEE 902.11-based radio frequency network, among others. The network interface 930 may be a network interface card, such as an Ethernet card, an optical transceiver, a radio frequency transceiver, or any other type of device that can send and receive information.
[0091] The operating system 935 may control one or more functionalities of computer system 900 and/or components thereof. For example, the operating system 935 may interact with the applications 940 and may facilitate one or more interactions between the applications 940 and components of the computer system 900. As shown in FIG. 9, the operating system 935 may interact with or be otherwise coupled to the application(s) 940 and components thereof. In some embodiments, application(s) 940 may be included in operating system 935. In these and other examples, virtual modules, firmware, or software may be part of the applications 940.
[0092] Thus, methods of and systems for recognizing and performing voice commands during advertisement have been described. Although embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes can be made to these example embodiments without departing from the broader spirit and scope of the present application. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.

Claims

CLAIMS What is claimed is:
1. A system for recognizing and performing voice commands during advertisements, the system comprising:
an audio device configured to play a media stream to a user, the media stream including at least one advertisement;
at least one acoustic sensor configured to sense an ambient acoustic signal; and
one or more processors communicatively coupled to the audio device and the at least one acoustic sensor, the one or more processors being configured to:
determine that the audio device has started playing the at least one advertisement;
in response to the determination, monitor the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one command spoken by the user; and
in response to the detection of the presence of the at least one command, cause the audio device to perform one or more actions associated with the at least one command.
2. The system of claim 1, wherein:
the media stream includes metadata indicative of starting the at least one advertisement; and
the determination that the audio device has started playing the at least one advertisement is based on the metadata.
3. The system of claim 1, wherein the one or more processors are configured to analyze audio data of the media stream; and
wherein the determination that the audio device has started playing the at least one advertisement is based on the analysis of the audio data.
4. The system of claim 1, wherein the detection of the presence of the at least one command includes:
analyzing the ambient acoustic signal to detect a presence of a pre determined keyword in the ambient acoustic signal; and
upon detection of the presence of the at least one keyword, analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize the at least one command.
5. The system of claim 4, wherein upon detection of the presence of the pre determined keyword, the one or more processors are configured to cause the audio device to lower a level of sound of playing the media stream.
6. The system of claim 1, wherein the detection of the presence of the at least one command includes comparing a portion of the ambient acoustic signal to one or more phrases stored in a local vocabulary, the local vocabulary being stored in a memory of the audio device.
7. The system of claim 6, wherein the one or more processors are
communicatively connected to at least one remote computing source, the at least one remote computing source being configured to store a remote vocabulary, wherein the remote vocabulary is larger than the local vocabulary; and wherein the one or more processors are configured to:
determine that the portion of the ambient acoustic signal does not match the one or more phrases stored in the local vocabulary; and
in response to the determination, comparing the portion of the ambient acoustic signal to one or more phrases stored in the remote vocabulary.
8. The system of claim 1, wherein the one or more processors are configured to:
determine data associated with the at least one advertisement; and prior to causing the audio device to perform the actions, modify the at least one command based on the data associated with the at least one advertisement.
9. The system of claim 8, wherein the one or more processors are configured to:
perform speech recognition based on an audio data of the media stream, the audio data corresponding to the at least one advertisement; and determine, based on results of the speech recognition, the data associated with the at least one advertisement.
10. The system of claim 8, wherein:
the media stream includes metadata including the data associated with the at least one advertisement; and
the one or more processors are configured to determine the data associated with the at least one advertisement based on the metadata.
11. The system of claim 8, wherein the data associated with the at least one advertisement include one or more of the following: a phone number, an Internet address of a website, a name of product or a service, a type of the product or the service, a name of company, and a street address of the company.
12. The system of claim 11, wherein the performing one or more actions corresponding to the at least one command includes one or more of: making a call to the phone number, opening a browser at the Internet address of a website, displaying a map showing the address of the company, displaying a driving direction to the street address of the company, and displaying an information concerning the product or the service in the browser.
13. The system of claim 1, wherein the at least one acoustic sensor and the one or more processors are integrated in the audio device.
14. The system of claim 1, wherein the audio device includes one of: a smart phone, a smart television set, a tablet computer, a desktop computer, in- vehicle infotainment, and a smart home device.
15. The system of claim 1, wherein the media stream includes an Internet radio stream, an Internet television stream broadcast live online, or a podcast.
16. The system of claim 1, wherein after determining that the audio device has started playing the at least one advertisement, the one or more processors are configured to:
detect a presence of at least one clue in the at least one advertisement; in response to the detection of the at least one clue, monitor the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one keyword spoken by the user, the at least one keyword being associated with the at least one clue; and
in response to the detection of the presence of the at least one keyword, cause the audio device to perform one or more actions associated with the at least one clue.
17. A method for recognizing and performing voice commands during advertisement, the method comprising:
playing, by an audio device, a media stream to a user, the media stream including at least one advertisement;
sensing, by at least one acoustic sensor, an ambient acoustic signal;
determining, by one or more processors communicatively coupled to the audio device and the at least one acoustic sensor, that the audio device has started playing the at least one advertisement;
in response to the determination, monitoring, by the one or more processors, the ambient acoustic signal to detect, based on the ambient acoustic signal, a presence of at least one command spoken by the user; and
in response to the detection of the presence of the at least one command, causing, by the one or more processors, the audio device to perform one or more actions associated with the at least one command.
18. The method of claim 17, wherein the detection of the presence of the at least one command includes: analyzing the ambient acoustic signal to detect a presence of a pre determined keyword in the ambient acoustic signal; and
upon detection of the presence of the at least one keyword, analyzing a portion of the ambient acoustic signal after the pre-determined keyword to recognize the at least one command.
19. The method of claim 17, further comprising:
determining data associated with the at least one advertisement, wherein the data associated with the at least one advertisement are determined by at least one of:
performing speech recognition of audio data of the media stream, the audio data corresponding to the at least one advertisement; and
reading metadata of the media stream; and
prior to causing the audio device to perform the actions, modifying the at least one command based on the data associated with the at least one
advertisement.
20. An audio device for recognizing and performing voice commands during advertisements, the audio device comprising:
an output device configured to play a media stream to a user, the media stream including at least one advertisement;
at least one acoustic sensor configured to sense an ambient acoustic signal; and
one or more processors communicatively coupled to the output device and the at least one acoustic sensor and configured to: determine that the output device has started playing the at least one advertisement;
in response to the determination:
monitor the ambient acoustic signal to detect a presence of a predetermined keyword spoken by the user in the ambient acoustic signal;
in response to the detection of the presence of the pre determined keyword:
cause the output device to lower a level of a sound of playing the media stream; and
analyze a portion of the ambient acoustic signal after the pre-determined keyword to recognize at least one command; and
upon recognition of the at least one command:
determine data associated with the at least one advertisement, wherein the data associated with the at least one advertisement are determined by at least one of:
performing speech recognition of audio data of the media stream, the audio data corresponding to the at least one advertisement; and
reading metadata of the media stream; and
perform one or more actions associated with the one or more command and the data associated with the at least one
advertisement.
PCT/US2019/057107 2019-07-09 2019-10-20 Systems and methods for recognizing and performing voice commands during advertisement WO2021006921A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP19937073.5A EP3997694A4 (en) 2019-07-09 2019-10-20 Systems and methods for recognizing and performing voice commands during advertisement

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/506,802 2019-07-09
US16/506,802 US10522146B1 (en) 2019-07-09 2019-07-09 Systems and methods for recognizing and performing voice commands during advertisement

Publications (1)

Publication Number Publication Date
WO2021006921A1 true WO2021006921A1 (en) 2021-01-14

Family

ID=69057443

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2019/057107 WO2021006921A1 (en) 2019-07-09 2019-10-20 Systems and methods for recognizing and performing voice commands during advertisement

Country Status (3)

Country Link
US (1) US10522146B1 (en)
EP (1) EP3997694A4 (en)
WO (1) WO2021006921A1 (en)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9947316B2 (en) 2016-02-22 2018-04-17 Sonos, Inc. Voice control of a media playback system
US9965247B2 (en) 2016-02-22 2018-05-08 Sonos, Inc. Voice controlled media playback system based on user profile
US9811314B2 (en) 2016-02-22 2017-11-07 Sonos, Inc. Metadata exchange involving a networked playback system and a networked microphone system
US10264030B2 (en) 2016-02-22 2019-04-16 Sonos, Inc. Networked microphone device control
US9820039B2 (en) 2016-02-22 2017-11-14 Sonos, Inc. Default playback devices
US10095470B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Audio response playback
US9978390B2 (en) 2016-06-09 2018-05-22 Sonos, Inc. Dynamic player selection for audio signal processing
US10134399B2 (en) 2016-07-15 2018-11-20 Sonos, Inc. Contextualization of voice inputs
US10152969B2 (en) 2016-07-15 2018-12-11 Sonos, Inc. Voice detection by multiple devices
US10115400B2 (en) 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
US9942678B1 (en) 2016-09-27 2018-04-10 Sonos, Inc. Audio playback settings for voice interaction
US9743204B1 (en) 2016-09-30 2017-08-22 Sonos, Inc. Multi-orientation playback device microphones
US10181323B2 (en) 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
US10475449B2 (en) 2017-08-07 2019-11-12 Sonos, Inc. Wake-word detection suppression
US10048930B1 (en) 2017-09-08 2018-08-14 Sonos, Inc. Dynamic computation of system response volume
US10446165B2 (en) 2017-09-27 2019-10-15 Sonos, Inc. Robust short-time fourier transform acoustic echo cancellation during audio playback
US10482868B2 (en) 2017-09-28 2019-11-19 Sonos, Inc. Multi-channel acoustic echo cancellation
US10621981B2 (en) 2017-09-28 2020-04-14 Sonos, Inc. Tone interference cancellation
US10466962B2 (en) 2017-09-29 2019-11-05 Sonos, Inc. Media playback system with voice assistance
US10880650B2 (en) 2017-12-10 2020-12-29 Sonos, Inc. Network microphone devices with automatic do not disturb actuation capabilities
US10818290B2 (en) 2017-12-11 2020-10-27 Sonos, Inc. Home graph
WO2019152722A1 (en) 2018-01-31 2019-08-08 Sonos, Inc. Device designation of playback and network microphone device arrangements
US11175880B2 (en) 2018-05-10 2021-11-16 Sonos, Inc. Systems and methods for voice-assisted media content selection
US10847178B2 (en) 2018-05-18 2020-11-24 Sonos, Inc. Linear filtering for noise-suppressed speech detection
US10959029B2 (en) 2018-05-25 2021-03-23 Sonos, Inc. Determining and adapting to changes in microphone performance of playback devices
US10681460B2 (en) 2018-06-28 2020-06-09 Sonos, Inc. Systems and methods for associating playback devices with voice assistant services
US11532007B2 (en) * 2018-08-16 2022-12-20 Frank S. Maggio Systems and methods for implementing user-responsive reactive advertising via voice interactive input/output devices
US11076035B2 (en) 2018-08-28 2021-07-27 Sonos, Inc. Do not disturb feature for audio notifications
US10461710B1 (en) 2018-08-28 2019-10-29 Sonos, Inc. Media playback system with maximum volume setting
US10587430B1 (en) 2018-09-14 2020-03-10 Sonos, Inc. Networked devices, systems, and methods for associating playback devices based on sound codes
US11024331B2 (en) 2018-09-21 2021-06-01 Sonos, Inc. Voice detection optimization using sound metadata
US10811015B2 (en) 2018-09-25 2020-10-20 Sonos, Inc. Voice detection optimization based on selected voice assistant service
US11100923B2 (en) 2018-09-28 2021-08-24 Sonos, Inc. Systems and methods for selective wake word detection using neural network models
US10692518B2 (en) 2018-09-29 2020-06-23 Sonos, Inc. Linear filtering for noise-suppressed speech detection via multiple network microphone devices
US11412295B2 (en) * 2018-10-02 2022-08-09 Comcast Cable Communications, Llc Systems and methods for determining usage information
US11899519B2 (en) 2018-10-23 2024-02-13 Sonos, Inc. Multiple stage network microphone device with reduced power consumption and processing load
EP3654249A1 (en) 2018-11-15 2020-05-20 Snips Dilated convolutions and gating for efficient keyword spotting
US11183183B2 (en) 2018-12-07 2021-11-23 Sonos, Inc. Systems and methods of operating media playback systems having multiple voice assistant services
US11132989B2 (en) 2018-12-13 2021-09-28 Sonos, Inc. Networked microphone devices, systems, and methods of localized arbitration
US10602268B1 (en) 2018-12-20 2020-03-24 Sonos, Inc. Optimization of network microphone devices using noise classification
US10867604B2 (en) 2019-02-08 2020-12-15 Sonos, Inc. Devices, systems, and methods for distributed voice processing
US11315556B2 (en) 2019-02-08 2022-04-26 Sonos, Inc. Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification
US11120794B2 (en) 2019-05-03 2021-09-14 Sonos, Inc. Voice assistant persistence across multiple network microphone devices
US11364364B2 (en) * 2019-05-03 2022-06-21 Pacesetter, Inc. Biostimulator transport system having valve bypass tool
US11361756B2 (en) 2019-06-12 2022-06-14 Sonos, Inc. Conditional wake word eventing based on environment
US11200894B2 (en) 2019-06-12 2021-12-14 Sonos, Inc. Network microphone device with command keyword eventing
US10586540B1 (en) 2019-06-12 2020-03-10 Sonos, Inc. Network microphone device with command keyword conditioning
US10871943B1 (en) 2019-07-31 2020-12-22 Sonos, Inc. Noise classification for event detection
US11138969B2 (en) * 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US11138975B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US11189286B2 (en) 2019-10-22 2021-11-30 Sonos, Inc. VAS toggle based on device orientation
US11200900B2 (en) 2019-12-20 2021-12-14 Sonos, Inc. Offline voice control
US11562740B2 (en) 2020-01-07 2023-01-24 Sonos, Inc. Voice verification for media playback
US11556307B2 (en) 2020-01-31 2023-01-17 Sonos, Inc. Local voice data processing
US11308958B2 (en) 2020-02-07 2022-04-19 Sonos, Inc. Localized wakeword verification
US11308962B2 (en) 2020-05-20 2022-04-19 Sonos, Inc. Input detection windowing
US11727919B2 (en) 2020-05-20 2023-08-15 Sonos, Inc. Memory allocation for keyword spotting engines
US11482224B2 (en) 2020-05-20 2022-10-25 Sonos, Inc. Command keywords with input detection windowing
US11698771B2 (en) 2020-08-25 2023-07-11 Sonos, Inc. Vocal guidance engines for playback devices
US11392973B2 (en) * 2020-10-01 2022-07-19 Instreamatic, Inc. Voice-based discount offers
US11164215B1 (en) * 2020-10-01 2021-11-02 Instreamatic, Inc. Context-based voice-related advertisement offers
US11984123B2 (en) 2020-11-12 2024-05-14 Sonos, Inc. Network device interaction by range
US11551700B2 (en) 2021-01-25 2023-01-10 Sonos, Inc. Systems and methods for power-efficient keyword detection

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180053507A1 (en) * 2016-08-19 2018-02-22 Google Inc. Voice action biasing system
US10186265B1 (en) * 2016-12-06 2019-01-22 Amazon Technologies, Inc. Multi-layer keyword detection to avoid detection of keywords in output audio
US20190043498A1 (en) * 2018-05-30 2019-02-07 Intel Corporation Detection and disposition of commands methods and apparatuses
US20190096408A1 (en) * 2017-09-25 2019-03-28 Cirrus Logic International Semiconductor Ltd. Talker change detection
US20190208273A1 (en) * 2017-12-31 2019-07-04 PUCs, LLC Systems and methods for playback responsive advertisements and purchase transactions

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185535B1 (en) * 1998-10-16 2001-02-06 Telefonaktiebolaget Lm Ericsson (Publ) Voice control of a user interface to service applications
US6683938B1 (en) * 2001-08-30 2004-01-27 At&T Corp. Method and system for transmitting background audio during a telephone call
US20080154870A1 (en) * 2006-12-26 2008-06-26 Voice Signal Technologies, Inc. Collection and use of side information in voice-mediated mobile search
US8635243B2 (en) * 2007-03-07 2014-01-21 Research In Motion Limited Sending a communications header with voice recording to send metadata for use in speech recognition, formatting, and search mobile search application
WO2008131388A2 (en) * 2007-04-22 2008-10-30 Phone Through, Inc. Methods and apparatus related to content sharing between devices
US8676273B1 (en) * 2007-08-24 2014-03-18 Iwao Fujisaki Communication device
US11159909B2 (en) * 2008-02-05 2021-10-26 Victor Thomas Anderson Wireless location establishing device
US20090326953A1 (en) * 2008-06-26 2009-12-31 Meivox, Llc. Method of accessing cultural resources or digital contents, such as text, video, audio and web pages by voice recognition with any type of programmable device without the use of the hands or any physical apparatus.
US20100088362A1 (en) * 2008-10-08 2010-04-08 Mtech Corporation, Ltd. Internet media broadcast system, method therefor, and recording medium for executing the same
TWI416935B (en) * 2009-06-03 2013-11-21 Via Tech Inc Video preview modules, systems, user equipment, and methods
US8682145B2 (en) * 2009-12-04 2014-03-25 Tivo Inc. Recording system based on multimedia content fingerprints
US20110271194A1 (en) * 2010-04-29 2011-11-03 Google Inc. Voice ad interactions as ad conversions
US20130263182A1 (en) * 2012-03-30 2013-10-03 Hulu Llc Customizing additional content provided with video advertisements
US20140122226A1 (en) * 2012-10-25 2014-05-01 Microsoft Corporation Hybrid advertising supported and user-owned content presentation
US20140129344A1 (en) * 2012-11-08 2014-05-08 Microsoft Corporation Branded persona advertisement
US20140129343A1 (en) * 2012-11-08 2014-05-08 Microsoft Corporation Dynamic targeted advertising avatar
US20150058728A1 (en) * 2013-07-22 2015-02-26 MS Technologies Corporation Audio stream metadata integration and interaction
US9978366B2 (en) * 2015-10-09 2018-05-22 Xappmedia, Inc. Event-based speech interactive media player
US10043516B2 (en) * 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US20210217413A1 (en) * 2017-06-04 2021-07-15 Instreamatic, Inc. Voice activated interactive audio system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180053507A1 (en) * 2016-08-19 2018-02-22 Google Inc. Voice action biasing system
US10186265B1 (en) * 2016-12-06 2019-01-22 Amazon Technologies, Inc. Multi-layer keyword detection to avoid detection of keywords in output audio
US20190096408A1 (en) * 2017-09-25 2019-03-28 Cirrus Logic International Semiconductor Ltd. Talker change detection
US20190208273A1 (en) * 2017-12-31 2019-07-04 PUCs, LLC Systems and methods for playback responsive advertisements and purchase transactions
US20190043498A1 (en) * 2018-05-30 2019-02-07 Intel Corporation Detection and disposition of commands methods and apparatuses

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3997694A4 *

Also Published As

Publication number Publication date
US10522146B1 (en) 2019-12-31
EP3997694A4 (en) 2023-02-22
EP3997694A1 (en) 2022-05-18

Similar Documents

Publication Publication Date Title
US10522146B1 (en) Systems and methods for recognizing and performing voice commands during advertisement
US11064248B2 (en) Systems and methods for routing content to an associated output device
US11388291B2 (en) System and method for processing voicemail
TWI585744B (en) Method, system, and computer-readable storage medium for operating a virtual assistant
JP6335139B2 (en) Manual start / end point specification and reduced need for trigger phrases
TWI644307B (en) Method, computer readable storage medium and system for operating a virtual assistant
KR101703911B1 (en) Visual confirmation for a recognized voice-initiated action
US20180310144A1 (en) Automated messaging
RU2667717C2 (en) Environmentally aware dialog policies and response generation
EP3475942B1 (en) Systems and methods for routing content to an associated output device
KR20130132765A (en) State-dependent query response
US10931999B1 (en) Systems and methods for routing content to an associated output device
CN111919249A (en) Continuous detection of words and related user experience
US20160004502A1 (en) System and method for correcting speech input
US20180367669A1 (en) Input during conversational session
US11354520B2 (en) Data processing method and apparatus providing translation based on acoustic model, and storage medium
KR20200013774A (en) Pair a Voice-Enabled Device with a Display Device
US11164215B1 (en) Context-based voice-related advertisement offers
US11050499B1 (en) Audience response collection and analysis
US11301883B1 (en) Voice survey collection and analysis
US11545138B1 (en) Voice review analysis
US11392973B2 (en) Voice-based discount offers
AU2017100208B4 (en) A caching apparatus for serving phonetic pronunciations
CN114242055A (en) Voice conversion method and device and electronic equipment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19937073

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019937073

Country of ref document: EP

Effective date: 20220209