Patent Description:
Embodiments of such a system may include one or more of the following features: The system may further include the presentation system. The presentation system may include a display system for presenting slides. The presentation system may include one or more processors. The one or more processors may be configured to receive the slide transition request. The one or more processors may cause the presentation to transition to the slide of the plurality of slides based on the received slide transition. The one or more processors of the home assistant device being configured to monitor the audio stream for the plurality of trigger words may include the one or more processors being configured to transmit the audio stream to the cloud-based server system via the Internet. The one or more processors may be configured to perform a voice recognition process on the received audio stream. The one or more processors of the home assistant device in communication with the cloud-based server system may be further configured to receive the plurality of slide transition definitions. A first subset of the plurality of slide transition definitions may define slide transitions to a next consecutive slide. A second subset of the plurality of slide transition definitions may define slide transitions to a specific slide. The one or more processors of the presentation system may be further configured to define the plurality of trigger words based on content of the plurality of slides. The home assistant device in communication with the cloud-based server system may be configured to perform a training process to distinguish a voice of a presenter from voices of an audience. The home assistant device in communication with the cloud-based server system that may be configured to monitor the audio stream for the plurality of trigger words may include monitoring only the voice of the presenter in the audio stream for the plurality of trigger words.

There is provided a method for triggering transitions within a slide-based presentation as defined in claim <NUM>.

Embodiments of such a method may include one or more of the following features: The audio-based trigger system may include a separate audio-listening device from the presentation system. The audio-based trigger system may be a home assistant device that comprises: a speaker; a microphone; and a wireless network interface. The audio-based trigger system may further include a cloud-based server system that may communicate with the home assistant device via the Internet. Monitoring, by the audio-based trigger system, the audio stream for the plurality of trigger words may include transmitting, by the audio-based trigger system, the audio stream to the cloud-based server system via the Internet. The method may include performing, by the cloud-based server system, a voice recognition process on the received audio stream. The method may further include receiving, by the audio-based trigger system, the plurality of slide transition definitions. A first subset of the plurality of slide transition definitions may define slide transitions to a next consecutive slide; and a second subset of the plurality of slide transition definitions defines slide transitions to a specific slide. The presentation system may define the plurality of trigger words based on content of the plurality of slides. The audio-based trigger system may be incorporated as part of the presentation system. The method may further include performing, by the audio-based trigger system, a training process to distinguish a voice of a presenter from voices of an audience. Monitoring, by the audio-based trigger system, the audio stream for the plurality of trigger words may include monitoring only the voice of the presenter in the audio stream for the plurality of trigger words.

There is provided a non-transitory processor-readable medium as defined in claim <NUM>.

Embodiments of such a medium may include one or more of the following features: The processor-readable instructions may be executed using a system comprising a home assistant device and a cloud-based server system that communicates with the home assistant device. The processor-readable instructions may be further configured to cause the one or more processors to cause the audio stream to be transmitted to the cloud-based server system via the Internet. The one or more processors may perform a voice recognition process on the received audio stream using the cloud-based server system. The processor-readable instructions may be further configured to cause the one or more processors to receive the plurality of slide transition definitions. A first subset of the plurality of slide transition definitions may define slide transitions to a next consecutive slide; and a second subset of the plurality of slide transition definitions may define slide transitions to a specific slide.

Vocal triggers can be defined by a presenter such that certain trigger words or trigger phrases spoken by the presenter trigger a transition to a next slide, a previous slide, or a specific slide within a presentation. Such an arrangement may allow a user to present a presentation without requiring any handheld equipment or help from a human assistant. An audio-based trigger system may have one or more microphones that listen to the presentation as spoken by the presenter. In response to the presenter saying a trigger word or trigger phrase, the audio-based trigger system causes a presentation system to transition to the slide that has been mapped to the trigger word or trigger phrase.

Such an arrangement can be performed using a home assistant device. A home assistant device is triggered to analyze audio based on a wake-up word or phrase initially being spoken. Audio captured after the wake-up word or phrase may be uploaded to a cloud-based server system for natural speech analysis via the Internet. The cloud-based system may analyze the speech to identify the presence of a trigger word or trigger phrase that has previously been linked with a slide transition. In response, a request for a slide transition may be transmitted to a presentation system that causes a transition to the requested slide (e.g., the next slide, the previous slide, a next slide, a specific slide).

The audio-based trigger system may be trained to distinguish the voice of the presenter from other voices, such as persons in an audience. By the presenter performing an initial training process, inadvertent transitions that are caused by a person in the audience speaking a trigger word or trigger phrase may be reduced.

Additional detail regarding these and additional embodiments are provided in relation to the figures. <FIG> illustrates a block diagram of an embodiment of a presentation vocal trigger system <NUM>. Presentation vocal trigger system <NUM> may include: presentation system <NUM>; slide presentation output device <NUM>; home assistant device <NUM>; internet <NUM>; cloud-based vocal recognition system <NUM>; trigger phrase database <NUM>; remote slide presentation output device(s) <NUM>; and remote computerized device <NUM>. Presentation system <NUM> can represent a computerized system that outputs a slide presentation for presentation by slide presentation output device <NUM>. Presentation system <NUM> may be a computer system that executes software that allows a user to create a set of one or more slides (the "slide deck") and output a visual presentation that involves moving sequentially through the slide deck. Presentation system <NUM> may include or be connected with a slide presentation output device that allows a slide presentation to be output. Slide presentation output device <NUM> may be a monitor or projector. For presentations that are given in-person by the presenter, slide presentation output device <NUM> may typically present the presentation in a large enough format to be seen by all of the people in the audience. In some embodiments, a presentation may be given virtually, rather than in person. In such embodiments, rather than a single slide presentation output device <NUM> being present, presentation system <NUM> may output the presentation to one or more remote slide presentation output devices <NUM> via Internet <NUM> (or via another network, such as an intranet) for presentation. Remote slide presentation output devices <NUM> may be computer systems operated by viewers of the presentation output by presentation system <NUM>. For example, video conferencing software or a cloud-based video conferencing system may be used to output video and audio from presentation system <NUM> to one or more remote slide presentation output devices <NUM>.

Home assistant device <NUM> may be a device capable of capturing audio from its ambient environment, determining if a user is attempting to interact with home assistant device <NUM>, analyze the speech (either locally or using a cloud-based server system), and have an action performed in response to the speech. Speech input provided by a user to home assistant device <NUM> may serve as the primary form of user input to home assistant device <NUM>. Home assistant device <NUM> may include: microphone <NUM>; visual output component <NUM>; speaker <NUM>; and network interface <NUM>. Home assistant device <NUM>, in some embodiments, may be an Amazon Echo® or Google Home®. Microphone <NUM> may be used to continually listen to an ambient environment of home assistant device <NUM> for one or more particular "wake-up" trigger words or phrases. Until such a wake-up word or phrase is heard, home assistant device <NUM> may not perform any additional processing in response to received audio and received audio may be ignored or discarded. When a wake-up word or phrase is detected, home assistant device <NUM> may attempt to analyze spoken words received after the wake-up word or phrase. Such processing may performed locally or remotely. In some embodiments, a spoken word or phrase captured after the wake-up trigger words or phrase is transmitted via network interface <NUM> to cloud-based vocal recognition system <NUM> via Internet <NUM>. Network interface <NUM> may allow home assistant device <NUM> to communicate with a wired or wireless local area network (LAN) that is connected with the Internet <NUM>.

Speech captured by microphone <NUM> that has been determined to follow a wake-up trigger word or phrase may be transmitted to cloud-based vocal recognition system <NUM>. While such speech is being analyzed, visual output component <NUM> may be illuminated to indicate that home assistant device <NUM> has been successfully woken-up and that received speech is in the process of being analyzed. Cloud-based vocal recognition system <NUM> may receive the captured speech following the wake-up word or phrase and may perform natural language processing to determine what question or command the person intended. For instance, if the person asked "Hello assistant - what time is it?" "Hello assistant" may be the wake-up phrase and "what time is it?" is the question that cloud-based vocal recognition system <NUM> is attempting to analyze and interpret.

Cloud-based vocal recognition system <NUM>, based on the determined command or question, may transmit a response to home assistant device <NUM> for output via speaker <NUM> and/or may transmit a command to another system or device, such as presentation system <NUM>. In some embodiments, a response is transmitted by cloud-based vocal recognition system <NUM> to home assistant device <NUM>, which, in turn, transmits a response to presentation system <NUM>.

In a situation where home assistant device <NUM> is to be used for presentation, a presenter may first issue a command to home assistant device <NUM> that indicates that a presentation mode is to be entered. In the presentation mode, speech may be continuously captured and analyzed using home assistant device <NUM> and cloud-based vocal recognition system <NUM> (regardless of a wake-up phrase or word being spoken). For instance, a user may state: "Hello assistant, please start presentation mode. " This initial wake-up command may cause the home assistant device <NUM> to be placed into a continuously listening mode that is streaming captured speech to cloud-based vocal recognition system <NUM> for analysis.

Based on received speech while in the presentation mode, cloud-based vocal recognition system <NUM> may determine when a slide transition is to occur by analyzing the received speech for words or phrases included in trigger phrase database <NUM>. Trigger phrase database <NUM> may be stored locally by cloud-based vocal recognition system <NUM> or may be otherwise accessible by cloud-based vocal recognition system <NUM>. Trigger phrase database <NUM> may include one or more trigger words or phrases that have been defined by a user to trigger a transition or animation in a slide presentation being output by presentation system <NUM>. Further detail regarding trigger phrase database <NUM> is provided in relation to <FIG>. When cloud-based vocal recognition system <NUM> determines that a trigger word or phrase within trigger phrase database <NUM> has been detected, a slide transition request indicating the appropriate slide to which the presentation should be transitioned is transmitted to presentation system <NUM>. The slide transition request is relative or absolute. An absolute transition is a transition to a specific slide (e.g., slide <NUM>). A relative request is dependent on the slide currently being presented, (e.g., the next slide, or the previous slide).

In some embodiments, the cloud-based vocal recognition system may transmit the slide transition request to home assistant device <NUM>. In response, the home assistant device <NUM> may transmit the slide transition request to presentation system <NUM>, either via a network (e.g., LAN, the Internet) or directly, such as via an infrared, radio, or Bluetooth transmitter <NUM>. From the point of view of presentation system <NUM>, transmitter <NUM> may appear to be a "dumb" handheld wireless presenter remote control (that would typically receive input directly from the presenter via one or more buttons). In some embodiments, transmitter <NUM> is part of a separate device that is connected, either wirelessly or via a wire, to home assistant device <NUM>.

Remote computerized device <NUM>, which may be a smartphone, laptop, tablet computer, or some other computerized device capable of communicating with the Internet, either via a native application or a web browser, may be used to present a user interface to allow a user to define trigger phrases that are to be stored to trigger phase database <NUM>. In some embodiments, such an interface may be provided via presentation system <NUM>. A presenter or user may use computerized device <NUM> to provide input that is used to populate trigger phrase database <NUM>, such as in <FIG>.

<FIG> illustrates a block diagram of an embodiment of a presentation vocal trigger system <NUM>. In system <NUM>, rather than a cloud-based vocal recognition system <NUM> being used, natural speech engine <NUM> may be incorporated as part of home assistant device <NUM>. Therefore, captured speech is not transmitted to the cloud in system <NUM>, but rather is analyzed locally. Home assistant device <NUM> may also store trigger phrase database <NUM> locally. Trigger phrase database <NUM> may function similarly to trigger phrase database <NUM> of <FIG> and as detailed in relation to <FIG>. Home assistant device <NUM> may use network <NUM> to communicate with presentation system <NUM> or may perform communication using a dedicated IR, radio, or Bluetooth transmitter <NUM>. Network <NUM> may represent a LAN and/or the Internet.

In system <NUM>, additional detail regarding presentation system <NUM> is illustrated. It should be understood that such components may be part of system <NUM> of <FIG>. Presentation system may include transition API <NUM>; output interface <NUM>; slide database <NUM>; and receiver <NUM>. Receiver <NUM> may receive wireless or wired communications from transmitter <NUM> and may instruct transition API <NUM> to perform a slide transition based on the data received via the transmission. Transition API <NUM> may be a software interface that allows external devices and software to interact with the software being used by presentation system <NUM> to output the presentation. For example, Microsoft PowerPoint® may allow for other components and software to provide input to transition API <NUM> to cause slide transitions. Output interface <NUM> may output a slide from slide database <NUM> to slide presentation output device <NUM> for presentation. Output interface <NUM> may also output an animation on a particular slide or as a transition between particular slides. Slide database <NUM> may store one or more slide decks. At a given time, a single slide deck from slide database <NUM> may be loaded for presentation and output to slide presentation output device <NUM> by output interface <NUM>.

While <FIG> and <FIG> illustrate a home assistant device as performing the tasks of receiving audio and, in some embodiments, outputting a signal to the presentation signal to cause a slide transition, it should be understood that, more generally, an audio-based trigger system may be used in place of the home assistant devices. An audio-based trigger system may be a home assistant device or may be a device that is dedicated to controlling a presentation based on detected trigger words or phrases. For instance, an audio-based trigger system may be acquired exclusively for use in controlling various presentation systems. In some embodiments, an audio-based trigger system may be an application that is executed by a computerized device. For example, an application may be executed by a smartphone or tablet computer that allows the computerized device to perform the functions of home assistant device <NUM> or <NUM>. In still other embodiments, the functionally of home assistant devices <NUM> and <NUM> may be incorporated as part of the same system functioning as presentation system <NUM>. For example, a software package may be installed on presentation system <NUM> that causes presentation system <NUM> to execute natural speech engine <NUM> or transmit captured speech to a cloud-based vocal recognition system for processing.

Prior to any of the embodiments of <FIG> and <FIG> being used to vocally trigger a transition between slides of a slide deck, the presenter may be required to assign trigger words and/or phrases and associate these trigger words and/or phrases with: <NUM>) a specific slide deck; and/or <NUM>) specific slides. Herein, for simplicity, "trigger phrases" is intended to refer to one or more words that serves as the trigger for a slide transition. <FIG> illustrates an embodiment of trigger phrase entries <NUM> that may be stored in a trigger phrase database and that is used to link trigger word and trigger phrases to slide transitions. A web-based interface hosted by cloud-based vocal recognition system <NUM> may be accessed from various forms of computerized devices that can execute a web browser. In other embodiments, a native application that allows for the creation of trigger phrase entries <NUM> may be executed and presented to the presenter (or his agent) via a computerized device, such as a laptop computer, smartphone, or tablet computer. The presenter (or his agent) may be provided with an interface that allows for the following items to be specified: presentation identifier field <NUM>; trigger phrase fields <NUM>; transition type items to be specified: presentation identifier field <NUM>; trigger phrase fields <NUM>; transition type fields <NUM>; transition destination fields <NUM>; authorized user fields <NUM>; synonym detection fields <NUM>; synonym score fields <NUM>; and audio sample <NUM>. In still other embodiments, a home assistant may be used to progress through voice-based prompts that allow a user to specify data for some or all of presentation identifier field <NUM>; trigger phrase fields <NUM>; transition type fields <NUM>; transition destination fields <NUM>; authorized user fields <NUM>; synonym detection fields <NUM>; synonym score fields <NUM>; and audio samples <NUM>.

When trigger phrase entry fields <NUM> are created by a presenter, the presenter may be required to provide a presentation identifier for presentation identifier field <NUM> that is linked with at least a subset of the database's stored entries. When the presenter desires to initiate control of a presentation using trigger phrase entries <NUM>, the presenter may need to specify the presentation identifier. The presenter may have multiple defined trigger phrase entries in a trigger phrase database for different presentations or, even for the same presentation. For example, using a home assistant, the presenter may state "Hello Assistant - Start voice control of the '<NUM> Network Improvements" presentation. " Such a command may trigger the home assistant and or cloud-based vocal recognition system to access the correct entries from the trigger phrase database.

As illustrated in <FIG>, six trigger phrases are linked with presentation identifier field <NUM>. Each trigger phrase of trigger phase fields <NUM> may be specified by the presenter as a word or phrase that causes a slide transition or an animation to occur as part of a slide presentation. Maps to each trigger phrase may be a transition type, indicated by transition type fields <NUM>. Transition type fields <NUM> are absolute or relative. An absolute transition is a transition to a particular slide. For example, the trigger phrase "<NUM> Network Architecture" may always be linked with slide <NUM>. Therefore, regardless of the slide currently being presented, if the presenter says "<NUM> network architecture" while the home assistant is monitoring for trigger phrases, the presentation system may be triggered to transition to slide two. In contrast, a relative transition type refers to a slide transition that is based on a current slide being presented. For example, if the presenter says "Next part of the network," a transition to the next slide may be performed (e.g., from slide <NUM> to <NUM> or <NUM> to <NUM>). In some embodiments, by virtue of the presenter selecting a transition destination, the transition type may automatically be determined.

A type of absolute transition according to the invention requires that a transition originate from a particular slide to a particular slide. For example, if "Low-Latency Communications" is spoken while slide <NUM> is being output for presentation, a transition to slide <NUM> may be triggered to occur. However, if any other slide is being presented, no action may be performed if "Low-Latency Communications" is spoken since the transition is conditioned on slide <NUM> being presented. Such an arrangement may help accidental transitions by limiting the number of active trigger phrases at a given time.

In some embodiments, for each trigger phrase, an authorized user may be specified in authorized user fields <NUM>. Certain trigger phrases may be permitted to be spoken by persons other than the presenter. For example, if someone in the audience says "contact information," it may be desirable for the presentation to transition to a contact information slide, which, in this example, is slide one. In most situations, however, it may be desirable to have most trigger phrases only trigger when spoken by the presenter. A determination of who is speaking may be performed in multiple ways. In some embodiments, a volume threshold is used. If the trigger phrases spoken at a volume above the volume threshold, it may be assumed that the presenter spoke the trigger phrase. If the trigger phrase is spoken at a volume below the volume threshold, it may be assumed that a person in the audience spoke the trigger phrase. Such an arrangement may be based on the assumption that the center is wearing or holding a microphone or is otherwise closer to the microphone of the home assistant or other form of audio-based trigger system. In other embodiments, the home assistant or other form of audio-based trigger system may be trained to recognize the voice of the presenter. In some embodiments, the presenter may be requested to perform a training process such that vocal characteristics of the presenter may be used to distinguish the presenter's voice from other persons' voices.

In some embodiments, the presenter can specify whether synonyms are to be active via synonyms detection fields <NUM>. If active, a word or phrase spoken by an authorized user that is similar to the trigger phrase may have the same effect as if the trigger phrase was spoken. For example rather than the presenter stating "next part of the network", if the presenter said "next piece of the network", a decision may be made as to whether the spoken synonymous phrase is similar enough to the trigger phrase. The determination as to whether it is similar enough may be based on synonym score fields <NUM>. Synonym score fields <NUM> may be selected by the presenter or user creating trigger phrase entries <NUM>. The higher the score, the more similar the spoken phrase would need to be to the trigger phrase in order for the slide transition to be performed. The score may take into account the similarity of the meanings of words, number of words, spelling of words, number of words that match the trigger phrase, and/or proximity of words. In some situations, the presenter or user creating trigger phrase entries <NUM> may determine that only the exact trigger phrase should be spoken in order to trigger the slide transition. For example, in the illustrated embodiment, "<NUM> Network Architecture" is required to be spoken exactly in order to trigger the absolute slide transition to slide <NUM>.

In some embodiments, as part of trigger phrase entries <NUM> or stored in a separate location but linked with trigger phrase entries <NUM>, an audio sample of one or more of the trigger phrases <NUM> may be stored. The presenter may be requested or required to speak the linked trigger phrase one or more times to allow the natural speech engine to learn how to recognize the trigger phrase. Such an arrangement may be more accurate than relying on the natural speech engine to recognize the phrase without training on the specific trigger phrase.

Various methods may be performed using the systems, devices, and database arrangements of <FIG>. <FIG> illustrates an embodiment of a method <NUM> for establishing audio-based triggers for a slide-based presentation. Method <NUM> may be performed using system <NUM> or system <NUM> of <FIG> and <FIG>, respectively. At block <NUM>, a slide deck may be received by a presentation system. This may involve a user creating a slide deck or loading a slide deck onto the presentation system, such as retrieving the slide deck from the internet or using a non-transitory processor-readable medium to load the slide deck onto a non-transitory processor-readable medium of the presentation system. In some embodiments, block <NUM> may involve the slide deck (or characteristics of the slide deck) being provided or loaded onto a home assistant device or cloud-based vocal recognition system. These characteristics may be used to determine: the name of the presentation; the number of slides; the names of slides; etc..

At block <NUM>, a presenter or some other user, provides definitions of multiple trigger phrases for storage to a trigger phrase database, such as trigger phrase database <NUM> or <NUM>. The definitions may be provided via a computerized device (e.g., mobile device, tablet computer, smartphone, laptop computer, desktop computer) that executes a web browser that allows the presenter or user to access a website or a native application where the presenter or user can link entries, such as those presented in <FIG>, with the slide deck of block <NUM>. In some embodiments, the trigger phrases may be received via a home assistant device in the form of voice input. For example, the home assistant device may step through a series of voice based prompts, such as those illustrated in Table <NUM>, in the numbered order.

Table <NUM> illustrates an example of how voice-based communication between the home assistant device and a user may occur for a user to define trigger phrases directly through the home assistant device via speech-based interaction. By performing such a setup of trigger phrases, the natural speech engine may receive an audio sample of the presenter speaking the trigger phrase, which can be used to later recognize the trigger phrase. It should be understood that the "conversation" of Table <NUM> may continue depending on the number of trigger phrases to be defined. Further, the questions asked by the home assistant device may be expanded to obtain data about other fields indicated in trigger phrase entries <NUM> of <FIG>.

In block <NUM>, a database (and/or database entries) may be created that links the trigger phrases received at block <NUM> with absolute and/or relative slide transitions. Such a database or database entries may resemble the example entries of <FIG>. The created database entries may be mapped to an indication of the particular presentation with which they are associated. In some embodiments, the defined trigger phrases may be presentation-agnostic and may be reused by the presenter for various different presentations and slide decks.

At block <NUM>, training of the trigger phrases may be performed. If the user initially defined the trigger phrases by vocally stating the trigger phrases, such as directly to the home assistant device, block <NUM> may not be necessary. However, if the trigger phrases were input by another means (e.g., typed into a native application or web-based interface), having the presenter speak each trigger phrase one or more times and analyzing how the user states the trigger phrase may help increase the reliability of detecting the transition while the presentation is being given.

At block <NUM>, one or more dry runs of the presentation may be given. A dry run may be may be similar to when the final presentation is given, but without an audience. Therefore, block <NUM> may be performed according to method <NUM>. Method <NUM> may then be performed again for the final presentation given to an audience. While performing block <NUM>, the presenter may notice that certain trigger phrases do not function as intended. Functionality may not be as intended for multiple reasons, such as: the phrase not being detected as spoken by the presenter; the presenter accidentally saying the phrase and triggering the transition unintentionally; or the trigger phrase not fitting naturally into the flow of the presentation. If one or more of such problems are realized by the presenter during the dry run, the presenter or a user may modify the trigger phrases or the characteristics of the trigger phrases (e.g., when a particular trigger phrase is active).

<FIG> illustrates an embodiment of a method <NUM> for triggering transitions within a slide-based presentation using a presentation vocal trigger system. Method <NUM> may be performed using system <NUM> or system <NUM> of <FIG> and <FIG>, respectively. Method <NUM> may be performed after method <NUM> has been performed. At block <NUM>, a command (which may be a voice-based command) may be received by a home assistant device, or, more generally, an audio-based trigger system, to initiate monitoring of an audio stream for a set of trigger phrases. The audio stream may be captured using one or more microphones of the home assistant device or the audio-based trigger system (or through some separate audio capture device). The command may indicate the particular presentation that is to be presented. In some embodiments, it may not matter which presentation is to be presented if only a single set of trigger words have been defined and are to be used regardless of the presentation being given. As part of block <NUM> or prior to block <NUM>, the presenter or another user may have started the presentation on a presentation system such that the presentation is output to a slide presentation output device or to one or more remote slide presentation output devices.

The command received at block <NUM> may be in the form of a spoken command. For instance, for a home assistant device, a presenter may state a wake-up phrase followed by the command, such as "Hello assistant, initiate presentation control. " The home assistant device may acknowledge the command and may illuminate one or more lights to indicate that it is actively monitoring for the trigger phrases and/or output synthesized speech indicating that an audio stream is now being monitored for the trigger phrases.

At block <NUM>, the home assistant device or, more generally, the audio-based trigger system may monitor the captured audio stream for the trigger phrases. This monitoring may be performed by analyzing captured speech using a cloud-based vocal recognition system as in system <NUM> or a local natural speech engine as in system <NUM>. At block <NUM>, as part of the audio stream, a trigger phrase that previously defined may be identified. If the presenter has activated the feature, a synonym of the trigger phrase having a score above a defined threshold may be identified at block <NUM> instead of the exact trigger phrase.

At block <NUM>, in response to detecting the trigger phrase, a slide transition that is to occur may be determined. This slide transition may be absolute (to a particular slide) or relative (e.g., to a next or a previous slide). The slide transition may be determined by accessing a database entry, such as one of the database entries illustrated in <FIG>, and accessing an indication of the slide transition mapped to a trigger phrase.

At block <NUM>, a slide transition request based on the determination block <NUM> may be transmitted to the slide presentation system. The slide transition request may be transmitted to software that is outputting the presentation via an API of the presentation software. The slide transition request may indicate: the slide to which the transition should occur; a next slide command; a previous slide command; and/or one or more conditions that are required to be true for the slide transition to be performed. For example, a slide transition request may indicate that the slide transition should only be performed if the currently presented slide is slide <NUM>.

At block <NUM>, in response to block <NUM>, the slide transition may be performed by the slide presentation system and/or the software being executed that is outputting the slide deck for presentation. If one or more of the conditions of block <NUM> is determined to be false, block <NUM> may not be performed. For example, referring to the previous example, if it is determined that the currently presented slide is not slide <NUM>, block <NUM> may not be performed in response to the identified trigger phrase.

Specific details are given in the description to provide a thorough understanding of example configurations (including implementations). However, configurations may be practiced without these specific details. For example, well-known circuits, processes, algorithms, structures, and techniques have been shown without unnecessary detail in order to avoid obscuring the configurations. This description provides example configurations only, and does not limit the scope, applicability, or configurations of the claims. Rather, the preceding description of the configurations will provide those skilled in the art with an enabling description for implementing described techniques. Various changes may be made in the function and arrangement of elements without departing from the scope of the disclosure.

Also, configurations may be described as a process which is depicted as a flow diagram or block diagram. Although each may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be rearranged. A process may have additional steps not included in the figure. Furthermore, examples of the methods may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, the program code or code segments to perform the necessary tasks may be stored in a non-transitory computer-readable medium such as a storage medium. Processors may perform the described tasks.

Claim 1:
A system (<NUM>) that triggers transitions within a slide-based presentation, the system comprising:
a home assistant device (<NUM>) in communication with a cloud-based server system, comprising:
a microphone (<NUM>) that serves as a primary user input interface;
a speaker (<NUM>);
a wireless network interface (<NUM>) through which the home assistant device communicates with the cloud-based server system; and
one or more processors in communication with the microphone, the speaker, and the wireless network interface, wherein the one or more processors are configured to:
receive a plurality of slide transition definitions from a user, wherein:
a first subset of the plurality of slide transition definitions defines one or more relative slide transitions, wherein the or each relative slide transition is a transition based on a current slide being presented; and
a second subset of the plurality of slide transition definitions defines one or more absolute slide transitions, wherein the or one of the absolute slide transitions is a transition from only a first particular slide to a second particular slide;
receive a plurality of trigger words from the user, wherein:
each trigger word of the plurality of trigger words is linked to a slide transition definition of the plurality of slide transition definitions; and
each slide transition definition of the plurality of slide transition definitions defines a selection of a slide of the plurality of slides for presentation;
create a database (<NUM>) that maps the plurality of trigger words to the plurality of slide transition definitions;
receive a voice-based request, via the microphone, to initiate audio-based control of the slide-based presentation being output by a presentation system (<NUM>);
monitor an audio stream received via the microphone for the plurality of trigger words;
identify a trigger word of the plurality of trigger words within the monitored audio stream;
determine, based on accessing the database, a slide transition to be performed based on the trigger word; and
transmit, to the presentation system (<NUM>), a slide transition request that indicates a slide to be presented based on the determined slide transition.