IP Library Granted Patent US 8,392,182
Granted Patent B2
US 8,392,182 · App. 13/414,442 · Granted Mar 5, 2013

Speech 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 8,392,182
App. No.
13/414,442
Granted
Mar 5, 2013
Kind
B2
Abstract

A method of encoding one or more parent blocks of values, the number of values being the length of each block, the method comprising for each parent block: (a) determining a first sum of values in the parent block; (b) splitting the parent block into smaller subblocks; (c) for at least one of the subblocks, determining a second sum of the values in the subblock, selecting a likelihood table from the plurality of likelihood tables based on said first sum of values in the parent block and encoding the second sum using the likelihood table; (d) designating each subblock a parent block; (e) carrying out steps (a), (b), (c) and (d) until at least one parent block reaches a predetermined condition.

Claims (39)

1. A method for encoding speech according to a source filter model, whereby speech is modelled to comprise a source signal filtered by a time varying filter, the method comprising:

receiving, using a computing device, a speech signal;

deriving, using the computing device, from the speech signal a frame of excitation quantization indices, each index being represented by a value and the frame comprising a plurality of blocks; and

encoding, using the computing device, one or more parent blocks of values, the number of values being the length of each block, the method comprising for each parent block:

(a) determining a first sum of values in the parent block;

(b) splitting the parent block into smaller subblocks;

(c) for at least one of the subblocks, determining a second sum of the values in the subblock, selecting a likelihood table from the plurality of likelihood tables based on said first sum of values in the parent block and encoding the second sum using the likelihood table;

(d) designating each subblock a parent block;

(e) carrying out steps (a), (b), (c) and (d) until at least one parent block reaches a predetermined condition.

2. The method of claim 1 , wherein the likelihood table is selected based on also the length of the parent block.

3. The method of claim 1 , wherein said splitting comprises splitting the parent block into smaller subblocks of equal size.

4. The method of claim 1 , wherein said encoding comprises entropy encoding.

5. The method of claim 1 , wherein said encoding comprises arithmetic encoding.

6. The method of claim 1 , wherein said predetermined condition is that all subblocks have a length of one.

7. The method of claim 1 , wherein said predetermined condition is that the sum of the values in the first subblock equals zero.

8. The method of claim 1 , wherein said determining comprises using a known value for the first sum.

9. The method of claim 1 , wherein said determining comprises determining a sum of the values of summation.

10. The method of claim 1 further comprising storing an encoded result of step (b), and each step (d) until a final result is generated after the final splitting and encoding step for the block.

11. A system for encoding speech according to a source filter model, whereby speech is modelled to comprise a source signal filtered by a time varying filter, the system comprising:

means for receiving a speech signal:

means for deriving from the speech signal a frame of excitation quantization indices, each index being represented by a value and the frame comprising a plurality of blocks; and

an encoder stored on a hardware storage device comprising:

means for splitting the parent block into smaller subblocks;

means for summing the values in a subblock to generate a sum;

a store holding likelihood tables, each likelihood table holding for each possible sum of values a probability associated with that sum;

means for encoding the sum of the values in the subblock using a likelihood table located in the store;

means for selecting from the store of likelihood tables a table based on the sum of the parent subblock, said encoding means being arranged to encode the sum of a subblock split from the parent block based on the selected likelihood table; and

storage means for holding the result of said encoding.

12. The system of claim 11 , wherein said means for selecting comprises means for selecting the table based also on the length of the parent block.

13. The system of claim 11 , wherein said means for splitting comprises means for splitting the parent block into smaller subblocks of equal size.

14. The system of claim 11 , wherein said means for encoding comprises means for entropy encoding.

15. The system of claim 11 , wherein said means for encoding comprises means for arithmetic encoding.

16. A system for decoding speech according to a source filter model, whereby speech is modelled to comprise a source signal filtered by a time varying filter, the system comprising:

means for receiving an encoded speech signal including a frame of excitation quantization indices, each index being represented by a value and the frame comprising a plurality of blocks; and

a decoder stored on a hardware storage device comprising:

means for obtaining a first sum of value in the parent block;

means for splitting a parent block into smaller subblocks;

means for selecting a likelihood table from a plurality of stored tables based on the first sum of the values in the parent block, each likelihood table holding for each possible second sum of values in the subblock a probability associated with that sum; and

means for decoding the bitstream based on the likelihood table to generate the second sum of values for the subblock.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2020
From: SKYPE
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 054585/0533 →
CHANGE OF NAME Recorded Jul 31, 2012
From: SKYPE LIMITED
To: SKYPE
Reel/Frame 028691/0596 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2012
From: VOS, KOEN BERNARD
To: SKYPE LIMITED
Reel/Frame 027823/0144 →