IP Library › Granted Patent US 11,977,732
Granted Patent B2
US 11,977,732 · App. 17/648,374 · Granted May 7, 2024

Hybridization of voice notes and calling

Inventors: Jonathan Brody (Marina Del Rey, CA); Matthew Hanover (Los Angeles, CA); Chamal Samaranayake (Venice, CA); William Wu (Marina del Rey, CA)
Assignee: SNAP INC.
G06F3/04883G06F3/017G06F3/0484G06F3/04842G06F3/04845H04M1/72403H04M1/72433H04M1/72436H04M2250/22
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,977,732
App. No.
17/648,374
Granted
May 7, 2024
Kind
B2
Abstract

A system and method for receiving a user interaction with a user interface of a client device, determining a current communication mode and a desired communication mode, where the desired communication mode is determined based on the user interaction received by the sensor module. The system further sets the desired communication mode as the current communication mode, and causes presentation of a user interface of the client device based on the desired communication mode being set as the current communication mode.

Claims (94)

1. A method comprising:

accessing information comprising a plurality of values representing movement of a first client device from a gyroscope and an accelerometer of the first client device;

identifying an individual value of the plurality of values as a primary value based on an amount of change associated with each of the plurality of values;

detecting a change to a physical spatial position or an orientation of the first client device based on the identified individual value;

comparing the change to a predetermined threshold; and

selecting a communication mode transition in response to determining that the change transgresses the predetermined threshold, the communication mode comprising a voice transcription mode;

receiving speech input from a first user of the first client device during the voice transcription mode;

transcribing a first portion of the speech input while the speech input is received from the first user to generate a first transcription portion;

causing the first transcription portion to be presented to a second user on a second client device as a voice note while the speech input continues to be received from the first user;

transcribing a second portion of the speech input while the speech input is received from the first user to generate a second transcription portion; and

causing the second client device to update the voice note by presenting the second transcription portion as an additional portion of the first transcription portion while the speech input continues to be received from the first user.

2. The method of claim 1 , further comprising:

presenting a text input region on a graphical user interface of the first client device;

detecting a partial swipe gesture across a first portion of the text input region;

in response to detecting the partial swipe gesture across the first portion of the text input region, transitioning the communication mode from a text-based communication mode to an audio message mode; and

in response to detecting a full swipe gesture across the first portion of the text input region and a second portion of the text input region, transitioning the communication mode to a synchronous mode of communication.

3. The method of claim 1 , further comprising:

receiving, by the first client device, a first interaction to transition from a text-based communication mode to a voice-based communication mode with a second client device;

receiving speech input by a microphone of the first client device;

in response to receiving the speech input prior to the first client device completing the transition to the voice-based communication mode, causing the first client device to transition to the voice transcription mode; and

generating an audio file comprising the speech input and a text-based communication segment comprising a transcription of the speech input in response to the first client device transitioning to the voice transcription mode and prior to completing the transition to the voice-based communication mode.

4. The method of claim 3 , further comprising:

transmitting the audio file and the text-based communication segment to the second client device, the first and second client device completing the transition to the voice-based communication mode after the second client device presents the audio file and the text-based communication segment to a user of the second client device.

5. The method of claim 1 , further comprising:

during a synchronous communication session, receiving input by the first client device to terminate the synchronous communication session while a first portion of speech input associated with the synchronous communication session is being received by a second client device;

in response to receiving the input by the first client device, causing the second client device to return to an asynchronous communication mode;

causing the second client device to generate the voice note comprising a remaining portion of the speech input received after the synchronous communication session has been terminated; and

receiving, by the first client device, the voice note comprising the remaining portion of the speech input from the second client device.

6. The method of claim 1 , further comprising:

receiving sensor data indicative of a position change in the first client device; and

based on the position change in the first client device, determining a desired communication mode.

7. The method of claim 6 , wherein the receiving the sensor data further comprises:

identifying a value within the sensor data, the value associated with a communication mode of a set of communication modes, the value indicating a distance traveled by the first client device;

comparing the value indicating the distance traveled by the first client device with a predetermined distance threshold; and

selecting a desired communication mode as the communication mode associated with the value based on the value transgressing the predetermined distance threshold.

8. The method of claim 1 , further comprising presenting on the first client device a waveform to indicate a change in the communication mode from a text-based communication mode to the voice transcription mode, the waveform being presented in a communication interface.

9. A system, comprising:

one or more processors configured to perform operations comprising:

accessing information comprising a plurality of values representing movement of a first client device from a gyroscope and an accelerometer of the first client device;

identifying an individual value of the plurality of values as a primary value based on an amount of change associated with each of the plurality of values;

detecting a change to a physical spatial position or an orientation of the first client device based on the identified individual value;

comparing the change to a predetermined threshold; and

selecting a communication mode transition in response to determining that the change transgresses the predetermined threshold, the communication mode comprising a voice transcription mode;

receiving speech input from a first user of the first client device during the voice transcription mode;

transcribing a first portion of the speech input while the speech input is received from the first user to generate a first transcription portion;

causing the first transcription portion to be presented to a second user on a second client device as a voice note while the speech input continues to be received from the first user;

transcribing a second portion of the speech input while the speech input is received from the first user to generate a second transcription portion; and

causing the second client device to update the voice note by presenting the second transcription portion as an additional portion of the first transcription portion while the speech input continues to be received from the first user.

10. The system of claim 9 , further comprising operations for:

detecting a swipe gesture on the first client device in which a finger contacts a display screen and slides to a point on the display screen;

in response to determining that the finger remains in contact with the display screen at the point on the display screen, initiating recording of a voice note including presenting a waveform;

in response to determining that the finger has been released from the point on the display screen after initiating recording of the voice note, ending recording of the voice note and initiating transmission of the voice note to the second client device.

11. The system of claim 9 , further comprising operations for:

selecting the individual value as the primary value in response to determining that the individual value is associated with a greatest amount of change among the plurality of values.

12. The system of claim 9 , further comprising operations for:

determining a first difference corresponding to a first of the plurality of values, the first difference representing a difference between a starting and ending quantity of the orientation of the first client device;

determining a second difference corresponding to the individual value, the second difference representing a difference between a starting and ending quantity of the physical spatial position of the first client device;

determining that the second difference is greater than the first difference; and

selecting the individual value as the primary value for comparing to the predetermined threshold in response to determining that the second difference is greater than the first difference, wherein the communication mode corresponds to an audio communication mode associated with the physical spatial position of the first client device.

13. The system of claim 9 , further comprising operations for:

during a synchronous communication session, receiving input by the first client device to terminate the synchronous communication session while a first portion of speech input associated with the synchronous communication session is being received by a second client device;

in response to receiving the input by the first client device, causing the second client device to return to an asynchronous communication mode;

causing the second client device to generate the voice note comprising a remaining portion of the speech input received after the synchronous communication session has been terminated; and

receiving, by the first client device, the voice note comprising the remaining portion of the speech input from the second client device.

14. The system of claim 9 , further comprising operations for:

receiving sensor data indicative of a position change in the first client device; and

based on the position change in the first client device, determining a desired communication mode.

15. The system of claim 14 , wherein the receiving the sensor data further comprises:

identifying a value within the sensor data, the value associated with a communication mode of a set of communication modes, the value indicating a distance traveled by the first client device;

comparing the value indicating the distance traveled by the first client device with a predetermined distance threshold; and

selecting a desired communication mode as the communication mode associated with the value based on the value transgressing the predetermined distance threshold.

16. The system of claim 9 , further comprising operations for displaying on the second client device an indication that the first client device is creating the voice note.

17. A non-transitory machine-readable storage medium storing processor executable instructions that, when executed by a processor of a machine, cause the machine to perform operations comprising:

accessing information comprising a plurality of values representing movement of a first client device from a gyroscope and an accelerometer of the first client device;

identifying an individual value of the plurality of values as a primary value based on an amount of change associated with each of the plurality of values;

detecting a change to a physical spatial position or an orientation of the first client device based on the identified individual value;

comparing the change to a predetermined threshold; and

selecting a communication mode transition in response to determining that the change transgresses the predetermined threshold, the communication mode comprising a voice transcription mode;

receiving speech input from a first user of the first client device during the voice transcription mode;

transcribing a first portion of the speech input while the speech input is received from the first user to generate a first transcription portion;

causing the first transcription portion to be presented to a second user on a second client device as a voice note while the speech input continues to be received from the first user;

transcribing a second portion of the speech input while the speech input is received from the first user to generate a second transcription portion; and

causing the second client device to update the voice note by presenting the second transcription portion as an additional portion of the first transcription portion while the speech input continues to be received from the first user.

18. The non-transitory machine-readable storage medium of claim 17 , further comprising operations for:

receiving, by the first client device, a first interaction to transition from a text-based communication mode to a voice-based communication mode with a second client device;

receiving speech input by a microphone of the first client device;

in response to receiving the speech input prior to the first client device completing the transition to the voice-based communication mode, causing the first client device to transition to the voice transcription mode; and

generating an audio file comprising the speech input and a text-based communication segment comprising a transcription of the speech input in response to the first client device transitioning to the voice transcription mode and prior to completing the transition to the voice-based communication mode.

19. The non-transitory machine-readable storage medium of claim 17 , wherein the predetermined threshold is specified by user input or dynamically determined.

20. The non-transitory machine-readable storage medium of claim 17 , further comprising operations for:

during a synchronous communication session, receiving input by the first client device to terminate the synchronous communication session while a first portion of speech input associated with the synchronous communication session is being received by a second client device;

in response to receiving the input by the first client device, causing the second client device to return to an asynchronous communication mode;

causing the second client device to generate a voice note comprising a remaining portion of the speech input received after the synchronous communication session has been terminated; and

receiving, by the first client device, the voice note comprising the remaining portion of the speech input from the second client device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2022
From: BRODY, JONATHAN; HANOVER, MATTHEW; SAMARANAYAKE, CHAMAL; WU, WILLIAM
To: SNAPCHAT, INC.
Reel/Frame 059144/0701 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2022
From: SNAPCHAT, INC.
To: SNAP INC.
Reel/Frame 059145/0066 →
Continuity (5)
Continuation 16947709 · Aug 13, 2020
Continuation 14949785 · Nov 23, 2015
Provisional Application 62119963 · Feb 24, 2015
Provisional Application 62085209 · Nov 26, 2014
Related Publication 20220137810A1 · May 5, 2022