IP Library Granted Patent US 10,707,983
Granted Patent B2
US 10,707,983 · App. 16/391,530 · Granted Jul 7, 2020

Interactive entertainment system

Inventors: Viswanathan Iyer (Santa Clara, CA); Kartik Parija (Bangalore, IN); Andrew Cole (San Jose, CA)
Assignee: ADORI LABS, INC.
H04H60/66H03J1/0008H04B1/06H04H20/38H04H60/73
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 10,707,983
App. No.
16/391,530
Granted
Jul 7, 2020
Kind
B2
Abstract

In some examples, an audio signal is received and divided into a plurality of frames. Frequency domain data of the audio signal may be generated for an individual frame of the plurality of frames. For example, the frequency domain data may include a plurality of sinusoidal components. Data may be embedded into a selected sinusoidal component selected from the frequency domain data of the individual frame by controlling a phase angle of the selected sinusoidal component to represent a selected bit of the data. For instance, a first range of the phase angle may represent a first type of bit and a second range of the phase angle may represent a second type of bit.

Claims (44)

1. A system comprising:

one or more processors;

at least one memory storing computer-executable instructions which, when executed by the one or more processors, configure the one or more processors to perform operations including:

receiving an audio signal;

dividing the audio signal into a plurality of frames;

generating frequency domain data of the audio signal for individual frames of the plurality of frames; and

embedding data into a sinusoidal component with a lower frequency, selected from the frequency domain data of the individual frames, by controlling a phase angle of the sinusoidal component to represent a selected bit of the data, wherein a positive phase angle represents a first type of bit and a negative phase angle represents a second type of bit.

2. The system as recited in claim 1 , the operations further comprising selecting, from the frequency domain data of the individual frame, a sinusoidal component with a lowest non-direct-current frequency as the sinusoidal component with the lower frequency selected for embedding the data.

3. The system as recited in claim 1 , wherein embedding the data into the sinusoidal component by controlling the phase angle of the sinusoidal component comprises shifting the phase angle of the selected sinusoidal component to be positive to represent the first type of bit when the phase angle is negative and a bit to be represented is the first type.

4. The system as recited in claim 1 , wherein embedding the data into the sinusoidal component by controlling the phase angle of the sinusoidal component comprises shifting the phase angle of the selected sinusoidal component to be negative to represent the second type of bit when the phase angle is positive and a bit to be represented is the second type.

5. The system as recited in claim 1 , the operations further comprising embedding, with the data, a synchronization point to enable a device that extracts the data from the audio signal to determine a data type of the embedded data.

6. The system as recited in claim 1 , wherein the frequency domain data of the audio signal is generated from a time domain data of the audio signal using a Fast Fourier Transform.

7. The system as recited in claim 6 , the operations further comprising, following embedding of the data in the audio signal, converting the frequency domain data of the individual frames to a time domain audio signal.

8. The system as recited in claim 1 , the operations further comprising sending the audio signal with the embedded data over a network to a remote device configured to extract the embedded data from the audio signal for receiving the data from the audio signal at the remote device.

9. A method comprising:

receiving, by one or more processors, an audio signal;

dividing the audio signal into a plurality of frames;

generating frequency domain data of the audio signal for an individual frame of the plurality of frames, the frequency domain data including a plurality of sinusoidal components;

selecting, from the frequency domain data of the individual frame, a sinusoidal component with a lowest non-direct-current frequency as a selected sinusoidal component; and

embedding data into the selected sinusoidal component, selected from the frequency domain data of the individual frame, by controlling a phase angle of the selected sinusoidal component to represent a selected bit of the data, wherein a first range of the phase angle represents a first type of bit and a second range of the phase angle represents a second type of bit.

10. The method as recited in claim 9 , wherein the first range of the phase angle corresponds to a positive phase angle and the second range of the phase angle corresponds to a negative phase angle, the method further comprising:

shifting the phase angle of the selected sinusoidal component to be positive to represent the first type of bit when the phase angle is negative and a bit to be represented is the first type; or

shifting the phase angle of the selected sinusoidal component to be negative to represent the second type of bit when the phase angle is positive and a bit to be represented is the second type.

11. The method as recited in claim 9 , further comprising sending the audio signal with the embedded data over a network to a remote device configured to extract the embedded data from the audio signal for receiving the data from the audio signal at the remote device.

12. The method as recited in claim 11 , wherein the remote device is configured for extracting the embedded data by dividing the audio signal into constituent frequency components.

13. The method as recited in claim 12 , wherein extracting the embedded data by dividing the audio signal into constituent frequency components further comprises:

determining frequency domain data of the audio signal from time domain data of the audio signal, the frequency domain data including information about phases of a plurality of sinusoidal components of the audio signal; and

extracting the embedded data based at least in part on determining phase angles of individual sinusoidal components of the plurality of sinusoidal components.

14. The method as recited in claim 9 , wherein the first type of bit is one of a “1” or a “0” and the second type of bit is the other one of the “1” or the “0”.

15. A system comprising:

one or more processors;

at least one memory storing computer-executable instructions which, when executed by the one or more processors, program the one or more processors to perform operations including:

receiving, by one or more processors, an audio signal;

dividing the audio signal into constituent frequency components;

generating frequency domain data of the audio signal from time domain data of the audio signal, the frequency domain data including information about phases of a plurality of sinusoidal components of the audio signal;

selecting, from the frequency domain data, a sinusoidal component with a lowest non-direct-current frequency as a selected sinusoidal component; and

embedding data into the selected sinusoidal component, selected from the frequency domain data, by controlling a phase angle of the selected sinusoidal component to represent a selected bit of the data.

16. The system as recited in claim 15 , wherein a first range of the phase angle represents a first type of bit and a second range of the phase angle represents a second type of bit.

17. The system as recited in claim 15 , wherein a positive phase angle represents a first type of bit and a negative phase angle represents a second type of bit, the operations further comprising:

shifting the phase angle of the selected sinusoidal component to be positive to represent the first type of bit when the phase angle is negative and a bit to be represented is the first type; or

shifting the phase angle of the selected sinusoidal component to be negative to represent the second type of bit when the phase angle is positive and a bit to be represented is the second type.

18. The system as recited in claim 15 , wherein the frequency domain data of the audio signal is generated from the time domain data of the audio signal using a Fast Fourier Transform.

19. The system as recited in claim 15 , the operations further comprising, following embedding of the data in the audio signal, converting the frequency domain data of the individual frames to a time domain audio signal.

20. The system as recited in claim 15 , wherein the first type of bit is one of a “1” or a “0” and the second type of bit is the other one of the “1” or the “0”.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2024
From: ADORI LABS, INC.
To: ADORI AI, INC.
Reel/Frame 069316/0279 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2023
From: IYER, VISWANATHAN; PARIJA, KARTIK; COLE, ANDREW
To: ADORI LABS, INC.
Reel/Frame 065715/0520 →
Continuity (9)
Continuation 15880588 · Jan 26, 2018
Continuation 15292140 · Oct 13, 2016
Continuation 13895257 · May 15, 2013
Continuation In Part 13874360 · Apr 30, 2013
Continuation In Part 13874374 · Apr 30, 2013
Provisional Application 61760586 · Feb 4, 2013
Provisional Application 61721531 · Nov 2, 2012
Provisional Application 61698266 · Sep 7, 2012
Related Publication 20190253166A1 · Aug 15, 2019