IP Library Granted Patent US 7,211,721
Granted Patent B2
US 7,211,721 · App. 10/964,385 · Granted May 1, 2007

System and methods for memory-constrained sound synthesis using harmonic coding

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 7,211,721
App. No.
10/964,385
Granted
May 1, 2007
Kind
B2
Abstract

Systems ( 100 or 300 ) and methods ( 400 or 500 ) are provided for selecting a post-compression waveform from a post-compression waveform table ( 106 ) and supplying it to a synthesis engine ( 108 ). The post-compression waveform is based upon a set of post-compression coefficients determined by generating a frequency-domain representation of a periodic signal, the representation including at least one pre-compression frequency-domain sample ( 204 ), and performing a threshold-based compression of the pre-compression frequency-domain samples. Systems and methods also include indexing and storing ( 502 ) post-compression coefficients in a post-compression coefficient table ( 102 ), generating ( 506 ) a post-compression waveform based upon the set of post-compression coefficients, and placing ( 508 ) the post-compression waveform in the table prior to the selecting ( 510 ). The system and method also include performing ( 504 ) a read-ahead operation on a sound file before selecting the post-compression waveform, the read-ahead operation indicating the post-compression waveform to be selected and supplied to the synthesis engine.

Claims (48)

1. A processor-based method of providing waveforms for use in synthesizing a sound signal with a sound synthesis engine based upon processing of a sound file, the method comprising:

performing a read-ahead operation on the sound file during the synthesizing of the sound signal;

identifying an instruction in the sound file for synthesizing a waveform of a musical instrument;

finding an index of the waveform in a waveform table used by the sound synthesis engine;

selecting a set of post-compression coefficients in a post-compression coefficient table corresponding to the index;

generating at least one post-compression waveform from the set of post-compression coefficients;

placing the at least one post-compression waveform at the index in the waveform table; and

supplying the at least one post-compression waveform to the sound synthesis engine in advance of the sound synthesis engine requesting the waveform;

wherein the at least one post-compression waveform is based upon the set of post-compression coefficients, the set of post-compression coefficients having been determined by

generating a frequency-domain representation of a periodic signal, the frequency-domain representation comprising at least one pre-compression frequency-domain sample, and

performing a threshold-based compression of pre-compression frequency-domain samples if the at least one pre-compression frequency-domain sample comprises a plurality of pre-compression frequency-domain samples.

2. The method of claim 1 , further comprising:

indexing and storing each post-compression coefficient belonging to the set of post-compression coefficients in the post-compression coefficient table prior to synthesizing the sound signal; and

replacing the waveform table with the post-compression coefficient table prior to synthesizing the sound signal, wherein the sound synthesis engine indexes the at least one post-compression waveform in the post-compression coefficient table at a location corresponding to the index of the waveform in the waveform table.

3. The method of claim 1 , wherein the frequency-domain representation is based upon a fast Fourier transform (FFT) of the periodic signal.

4. The method of claim 3 , wherein the at least one waveform is based upon an inverse FFT using the set of post-compression coefficients.

5. The method of claim 1 , wherein the sound file and the compression waveform table each conform to a Musical Instrument Digital Interface (MIDI) protocol.

6. The method of claim 1 , wherein the frequency-domain representation of a periodic signal is based upon a waveform stored in a pre-compression waveform table.

7. The method of claim 1 , wherein the frequency-domain representation of a periodic signal is based upon a waveform corresponding to an actual rendering of a pre-selected musical note by a pre-selected musical instrument.

8. A system for use in synthesizing a sound signal with a sound synthesis engine based upon processing of a sound file, the system comprising:

a post-compression coefficient table containing at least one set of post-compression coefficients representing a waveform in a waveform table, wherein an index of the waveform in the waveform table corresponds to the set of post-compression coefficients in the post-compression coefficient table; and

a waveform module for generating at least one post-compression waveform based upon the set of post-compression coefficients at the index in the post-compression coefficient table;

wherein each post-compression coefficient belonging to the set of post-compression coefficients has been determined by

generating a frequency-domain representation of a periodic signal, the frequency-domain representation comprising at least one frequency-domain sample, and

performing a threshold-based compression of frequency-domain samples if the at least one frequency-domain sample comprises a plurality of frequency-domain samples.

9. The system of claim 8 , further comprising:

a sampling module for generating a set of pre-compression samples based upon the periodic signal; and

a compression module for generating the set of post-compression coefficients based upon the set of pre-compression samples.

10. The system of claim 8 , further comprising a read-ahead module for performing a read-ahead operation on the sound file before selecting the at least one post-compression waveform, the read-ahead operation indicating the at least one post-compression waveform to be selected and supplied to the sound synthesis engine.

11. The system of claim 8 , wherein the frequency-domain representation is based upon a fast Fourier transform (FFT) of the periodic signal.

12. The system of claim 11 , wherein the at least one waveform is based upon an inverse FFT performed using the set of post-compression coefficients.

13. The system of claim 8 , wherein the sound file and the compression waveform table each conform to a Musical Instrument Digital Interface (MIDI) protocol.

14. The system of claim 8 , wherein the periodic signal is a replicate of a waveform stored in a pre-compression waveform table.

15. The system of claim 8 , wherein the periodic signal is a replicate of a waveform based upon an actual rendering of a pre-selected musical note by a pre-selected musical instrument.

16. A computer-readable storage medium for use in synthesizing a sound signal with a sound synthesis engine in response to a processor processing a sound file, the storage medium comprising computer instructions for:

performing a read-ahead operation on the sound file during the synthesizing of the sound signal;

identifying an instruction in the sound file for synthesizing a waveform of a musical instrument;

finding an index of the waveform in a waveform table used by the sound synthesis engine;

selecting a set of post-compression coefficients in a post-compression coefficient table corresponding to the index;

generating at least one post-compression waveform from the set of post-compression coefficients;

placing the at least one post-compression waveform at the index in the waveform table; and

supplying the at least one post-compression waveform to the sound synthesis engine in advance of the sound synthesis engine requesting the waveform;

wherein the at least one post-compression waveform is based upon a set of post-compression coefficients, the set of post-compression coefficients having been determined by

generating a frequency-domain representation of a periodic signal, the frequency-domain representation based upon a fast Fourier transform (FFT) of the periodic signal and comprising at least one pre-compression frequency-domain sample, and

performing a threshold-based compression of pre-compression frequency-domain samples if the at least one pre-compression frequency-domain sample comprises a plurality of pre-compression frequency-domain samples.

17. The computer-readable storage medium of claim 16 , further comprising computer instructions for:

indexing and storing each post-compression coefficient belonging to the set of post-compression coefficients in the post-compression coefficient table prior to synthesizing the sound signal; and

replacing the waveform table with the post-compression coefficient table prior to synthesizing the sound signal, wherein the sound synthesis engine indexes the at least one post-compression waveform in the post-compression coefficient table at a location corresponding to the index of the waveform in the waveform table.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2014
From: MOTOROLA MOBILITY LLC
To: GOOGLE TECHNOLOGY HOLDINGS LLC
Reel/Frame 034320/0001 →
CHANGE OF NAME Recorded Oct 2, 2012
From: MOTOROLA MOBILITY, INC.
To: MOTOROLA MOBILITY LLC
Reel/Frame 029216/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2010
From: MOTOROLA, INC
To: MOTOROLA MOBILITY, INC
Reel/Frame 025673/0558 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2004
From: BOILLOT, MARC A.; FRANGOPOL, RADU C.; KHAWAND, JEAN
To: MOTOROLA, INC.
Reel/Frame 015895/0499 →