USRE35057EExpiredUtility

Speech coding using sparse vector codebook and cyclic shift techniques

29
Assignee: BRITISH TELECOMMPriority: Aug 28, 1987Filed: Feb 3, 1993Granted: Oct 10, 1995
Est. expiryAug 28, 2007(expired)· nominal 20-yr term from priority
G10L 2019/0013G10L 19/10G10L 2019/0008
29
PatentIndex Score
1
Cited by
17
References
10
Claims

Abstract

Speech is analyzed to derive the parameters of a synthesis filter and the parameters of a suitable excitation which is selected from a codebook of excitation frames. The selection of the codebook entry is facilitated by determining a single-pulse excitation (e.g., using conventional multipulse excitation techniques), and using the position of this pulse to narrow the codebook search.

Claims

exact text as granted — not AI-modified
We claim: 
     
       1. A speech coder comprising: means for generating filter information from frames of input speech signals, said means for generating filter information defining successive representations of a synthesis filter response, and outputting said filter information; and   means for generating frames of excitation information for successive frames of said input speech signals, .[.eahc.]. .Iadd.each .Iaddend.of said excitation frames including a series of pulses, said means for generating frames receiving said input speech frames and said filter information and comprising: (a) a store of data defining a plurality of .[.representative.]. excitation frames.[., each.]. having a plurality of pulses and .[.each representative frame.]. representing .Iadd.plural classes .Iaddend.of .[.member.]. excitation frames;   (b) means for selecting one of said .[.member.]. excitation frames, said selected excitation frame when applied to the input of a filter having said filter information producing a frame of synthetic speech resembling said input speech, and outputting data identifying said selected excitation frame, said means for selecting including: (i) means for identifying the position within .[.said input speech.]. .Iadd.an excitation .Iaddend.frame of a single pulse which meets a preselected criterion,   (ii) selecting one of said stored .[.representative.]. .Iadd.classes of .Iaddend.excitation frames depending on the position of said identified single pulse, and   (iii) determining which of said .[.member.]. excitation frames within the .Iadd.selected .Iaddend.class .[.of said selected representative excitation frame.]. that .Iadd.best .Iaddend.matches said input speech frame .Iadd.when used in conjunction with said filter information.Iaddend..       
     
     
       2. A speech coder according to claim 1 in which .[.each.]. .Iadd.said data in the store defines one .Iaddend.of said classes .Iadd.which class .Iaddend.comprises a plurality of member excitation frames each .[.member.]. .Iadd.other class of excitation frames .Iaddend.being a rotationally shifted version of .[.any other member of the same class.]. .Iadd.the stored class.Iaddend.. 
     
     
       3. A speech coder according to claim 2 in which said store contains a list of .[.one.]. .Iadd.all .Iaddend.representative .[.member of.]. .Iadd.members of .Iaddend..[.each.]. .Iadd.one .Iaddend.of said classes, and further comprising shifting means controllable to generate other .[.class members.]. .Iadd.classes .Iaddend.from said .Iadd.stored .Iaddend.representative .[.member.]. .Iadd.members.Iaddend.. 
     
     
       4. A speech coder according to claim 3 in which said generating means further comprises shifting means for shifting each of said representative members by an amount corresponding to said identified pulse position. 
     
     
       5. A speech coder according to claim 4 in which said shifting means brings the largest pulse of each of said representative members into the same position within the frame as is said single pulse. 
     
     
       6. A speech coder according to claim 4 in which said stored representative excitation frames are generated by a training sequence comprising identification of the position within the frame of a single, first, pulse meeting said predetermined criterion followed by determination of further pulses, and said amount of shift applied by said shifting means is that shift which brings said first pulse of said representative excitation frame into the same position within the frame as said determined single pulse. 
     
     
       7. A speech coder according to claim 3 in which each of said classes comprises .[.a member which has.]. .Iadd.members which have .Iaddend.been shifted by an amount corresponding to said identified single pulse, and members shifted by amounts which are small variations, relative to the frame size of said amount corresponding to said identified single pulse .Iadd.position.Iaddend.. 
     
     
       8. A speech coder comprising: means for generating, from input speech signals, filter information defining successive representations of a synthesis filter response, and outputting said filter information; and   means for generating, form said input speech signals and filter information excitation information for successive frames of said speech signals, comprising: (a) a store of data defining a plurality of representative excitation frames each consisting of a plurality of pulses;   (b) means for selecting one of said representative excitation frames and the amount of rotational shift to be applied to said selected frame which would when applied to the input of a filter having said filter information produce a frame of synthetic speech resembling said input speech signals, and outputting data identifying said selected frame and said amount of rotational shift;   said means for selecting comprising means for: (i) determining the position within said .[.framed speech signal.]. .Iadd.excitation frame .Iaddend.of a single pulse which meets a preselected criterion, and   (ii) selecting the one of said excitation frames which when rotationally shifted by an amount derived from the determined position of said single pulse .Iadd.is used to generate a speech signal which .Iaddend.most nearly matches said .[.frame.]. .Iadd.input .Iaddend.speech signal.       
     
     
       9. A speech coder including: filter means for generating synthesis filter response representations from an input speech signal; and   excitation means for generating excitation frames from said input speech signal and said synthesis filter response representations, said excitation means comprising: means for identifying the frame position of a single pulse within said .[.input speech signal.]. .Iadd.excitation frame .Iaddend.which meets a preselected criterion;   a codebook store containing a list of standard excitation frames;   .[.means for selecting one of said standard excitation frames using the frame position of said identified pulse;.].   means for cyclically shifting said standard excitation frames to align said standard frame with said identified pulse; and   comparator means for selecting the one of said standard excitation frames which, when aligned and applied to an input filter having said filter response representations, produces synthetic speech most nearly resembling said input speech signal.     
     
     
       10. A method for speech coding using a speech coder having a codebook store containing a list of standard excitation frames .[.each being.]. representative of a class of excitation frames, said method comprising the steps of: (a) framing a digital input speech signal;   (b) forming filter information defining a synthesis filter response indicative of the framed digital input speech signal;   (c) identifying the position of a pulse in .[.the framed input speech signal.]. .Iadd.an excitation frame .Iaddend.which satisfies a preselected criterion;   (d) .[.selecting a standard excitation frame from the codebook depending on the pulse frame position identified in step (c);   (e).]. determining the amount of shift to apply to the .[.selected.]. standard excitation .[.frame.]. .Iadd.frames .Iaddend.to match the .[.framed input speech signal; and.]. .Iadd.pulse position identified in step (c);   (e) selecting a shifted standard excitation frame from step (d) to match the framed input speech signal when used with said filter information to synthesis a speech signal; and .Iaddend.   (f) outputting data indicative of the selected standard excitation frame and the determined amount of shift.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.