Encoding method, encoder, program and recording medium
First Claim
1. An encoding method comprising:
- a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment;
a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain;
a first encoding step ofwhen the index represents that the periodicity is high, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, andotherwise, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity;
a second encoding step ofwhen the index represents that the periodicity is high, obtaining a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method which is not based on periodicity, andotherwise, obtaining a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method based on periodicity; and
a comparison and selection step ofwhen a code amount of the integer signal code obtained in the first encoding step is greater than a code amount of the second integer signal code obtained in the second encoding step, outputting the second integer signal code obtained in the second encoding step and the gain code, andwhen the code amount of the integer signal code obtained in the first encoding step is smaller than the code amount of the second integer signal code obtained in the second encoding step, outputting the integer signal code obtained in the first encoding step and the gain code.
1 Assignment
0 Petitions
Accused Products
Abstract
Between a method in which an integer signal code is obtained by using an encoding method based on periodicity and a method in which an integer signal code is obtained using an encoding method which is not based on periodicity using an index indicating a degree of periodicity of a sample sequence in a frequency domain, processing of a first coder is executed only in a method for which the number of bits of the integer signal code is expected to be reduced, and a gain obtained through the processing of the first coder in the method for which the number of bits of the integer signal code is expected to be reduced is utilized in a method for which the number of bits of the integer signal code is not expected to be reduced.
-
Citations
28 Claims
-
1. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first encoding step of when the index represents that the periodicity is high, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; a second encoding step of when the index represents that the periodicity is high, obtaining a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method which is not based on periodicity, and otherwise, obtaining a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method based on periodicity; and a comparison and selection step of when a code amount of the integer signal code obtained in the first encoding step is greater than a code amount of the second integer signal code obtained in the second encoding step, outputting the second integer signal code obtained in the second encoding step and the gain code, and when the code amount of the integer signal code obtained in the first encoding step is smaller than the code amount of the second integer signal code obtained in the second encoding step, outputting the integer signal code obtained in the first encoding step and the gain code. - View Dependent Claims (7, 15)
-
-
2. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimation step of when the index represents that the periodicity is high, obtaining through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method based on periodicity, and otherwise, obtaining through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method which is not based on periodicity; a second code amount estimation step of when the index represents that the periodicity is high, obtaining an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method which is not based on periodicity, and otherwise, obtaining an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method based on periodicity; and a comparison and selection encoding step of when the index represents that the periodicity is high and the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method which is not based on periodicity, when the index represents that the periodicity is high and the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method based on periodicity, when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method based on periodicity, and when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method which is not based on periodicity. - View Dependent Claims (26)
-
-
3. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first encoding step of when the index represents that the periodicity is high, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code having a code amount equal to or smaller than an amount of allocated code determined in advance, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code having a code amount equal to or smaller than the amount of allocated code, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; a second encoding step of when the index represents that the periodicity is high, obtaining a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method which is not based on periodicity, and otherwise, obtaining a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method based on periodicity; and a comparison and selection step of when the index represents that the periodicity is high and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is positive, where B is the amount of allocated code, CA is a code amount of a code comprising the integer signal code obtained in the first encoding step, CB is a code amount of a code comprising the second integer signal code obtained in the second encoding step, FA is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FB is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputting the second integer signal code obtained in the second encoding step and the gain code,when the index represents that the periodicity is high and the evaluation indicator G1 is negative, outputting the integer signal code obtained in the first encoding step and the gain code, when the index represents that the periodicity is low and a second evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is negative, where B is the amount of allocated code, CB is a code amount of a code comprising the integer signal code obtained in the first encoding step, CA is a code amount of a code comprising the second integer signal code obtained in the second encoding step, FB is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FA is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputting the second integer signal code obtained in the second encoding step and the gain code, andwhen the index represents that the periodicity is low and the second evaluation indicator G1 is positive, outputting the integer signal code obtained in the first encoding step and the gain code.
-
-
4. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first encoding step of sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; and a comparison and selection step of when the index represents that the periodicity is high and an evaluation indicator G2=DA−
DB+γ
(CB−
CA) is positive, where B is the amount of allocated code, CA is a code amount of a code comprising the integer signal code obtained in the first encoding step, CB is a code amount of a code comprising the second integer signal code obtained in the second encoding step, DA is a sum of absolute values of amplitudes of integer value samples corresponding to a code removed in the first encoding step, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the second encoding step, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputting the second integer signal code obtained in the second encoding step and the gain code,when the index represents that the periodicity is high and the evaluation indicator G2 is negative, outputting the integer signal code obtained in the first encoding step and the gain code, when the index represents that the periodicity is low and a second evaluation indicator G2=DA−
DB+γ
(CB−
CA) is negative, where B is the amount of allocated code, CB is a code amount of a code comprising the integer signal code obtained in the first encoding step, CA is a code amount of a code comprising the second integer signal code obtained in the secondwhen the index represents that the periodicity is high, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds an amount of allocated code determined in advance, and otherwise, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; a second encoding step of when the index represents that the periodicity is high, obtaining a second integer signal code by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first encoding step using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code, and otherwise, obtaining a second integer signal code by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each encoding step, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the first encoding step, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the second encoding step, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputting the second integer signal code obtained in the second encoding step and the gain code, andwhen the index represents that the periodicity is low and the second evaluation indicator G2 is positive, outputting the integer signal code obtained in the first encoding step and the gain code.
-
-
5. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimation step of when the index represents that the periodicity is high, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code having a code amount equal to or smaller than an amount of allocated code defined in advance, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code having a code amount equal to or smaller than the amount of allocated code, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; a second code amount estimation step of when the index represents that the periodicity is high, obtaining an estimate value of a code amount of a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimation step using an encoding method which is not based on periodicity, and otherwise, obtaining an estimate value of a code amount of a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimation step using an encoding method based on periodicity; and a comparison and selection step of when the index represents that the periodicity is high and an evaluation indicator G1=−
FA×
(B−
CA) FB×
(B−
CB) is positive, where B is the amount of allocated code, CA is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step, CB is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, FA is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FB is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputting a second integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimation step, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity,when the index represents that the periodicity is high and the evaluation indicator G1 is negative, outputting an integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimation step, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, when the index represents that the periodicity is low and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is negative, where B is the amount of allocated code, CB is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step, CA is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, FB is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FA is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputting a second integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimation step, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, andwhen the index represents that the periodicity is low, and the second evaluation indicator G1 is positive, outputting an integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimation step, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity.
-
-
6. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimation step of when the index represents that the periodicity is high, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds an amount of allocated code defined in advance, and otherwise, obtaining through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; a second code amount estimation step of when the index represents that the periodicity is high, obtaining an estimate value of a code amount of a second integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimation step using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code, and otherwise, obtaining an estimate value of a code amount of a second integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimation step using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; and a comparison and selection step of when the index represents that the periodicity is high, and an evaluation indicator G2=DA−
DB+γ
(CB−
CA) is positive, where B is the amount of allocated code, CA is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step, CB is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the integer signal code, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the second integer signal code, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputting a second integer signal code and the gain code obtained in the first code amount estimation step, the second integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity, a code corresponding to the code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code,when the index represents that the periodicity is high and the evaluation indicator G2 is negative, outputting an integer signal code and the gain code obtained in the first code amount estimation step, the integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, a code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, when the index represents that the periodicity is low and a second evaluation indicator G2=DA−
DB+γ
(CB−
CA) is negative, where B is the amount of allocated code, CB is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step, CA is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the integer signal code, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the second integer signal code, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputting a second integer signal code and the gain code obtained in the first code amount estimation step, the second integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, a code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, andwhen the index represents that the periodicity is low and the second evaluation indicator G2 is positive, outputting an integer signal code and the gain code obtained in the first code amount estimation step, the integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity, the code corresponding to the code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code.
-
-
8. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first coder that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; a second coder that when the index represents that the periodicity is high, obtains a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method which is not based on periodicity, and otherwise, obtains a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method based on periodicity; and a comparison selector that when a code amount of the integer signal code obtained in the first coder is larger than a code amount of the second integer signal code obtained in the second coder, outputs the second integer signal code obtained in the second coder and the gain code, and when the code amount of the integer signal code obtained in the first coder is smaller than the code amount of the second integer signal code obtained in the second coder, outputs the integer signal code obtained in the first coder and the gain code.
-
-
9. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method which is not based on periodicity; a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, and otherwise, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity; and a comparison and selection coder that when the index represents that the periodicity is high and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, when the index represents that the periodicity is high and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, and when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity.
-
-
10. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first coder that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code having a code amount equal to or smaller than an amount of allocated code defined in advance, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code having a code amount equal to or smaller than the amount of allocated code, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; a second coder that when the index represents that the periodicity is high, obtains a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method which is not based on periodicity, and otherwise, obtains a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method based on periodicity; and a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is positive, where B is the amount of allocated code, CA is a code amount of a code comprising the integer signal code obtained in the first coder, CB is a code amount of a code comprising the second integer signal code obtained in the second coder, FA is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FB is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs the second integer signal code obtained in the second coder and the gain code,when the index represents that the periodicity is high and the evaluation indicator G1 is negative, outputs the integer signal code obtained in the first coder and the gain code, when the index represents that the periodicity is low and a second evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is negative, where B is the amount of allocated code, CB is a code amount of a code comprising the integer signal code obtained in the first coder, CA is a code amount of a code comprising the second integer signal code obtained in the second coder, FB is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FA is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs the second integer signal code obtained in the second coder and the gain code, andwhen the index represents that the periodicity is low and the second evaluation indicator G1 is positive, outputs the integer signal code obtained in the first coder and the gain code. - View Dependent Claims (14)
-
-
11. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first coder that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds an amount of allocated code defined in advance, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; a second coder that when the index represents that the periodicity is high, obtains a second integer signal code by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code, and otherwise, obtains a second integer signal code by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; and a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G2=DA−
DB+γ
(CB−
CA) is positive, where B is the amount of allocated code, CA is a code amount of a code comprising the integer signal code obtained in the first coder, CB is a code amount of a code comprising the second integer signal code obtained in the second coder, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the first coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the second coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs the second integer signal code obtained in the second coder and the gain code,when the index represents that the periodicity is high and the evaluation indicator G2 is negative, outputs the integer signal code obtained in the first coder and the gain code, when the index represents that the periodicity is low and a second evaluation indicator G2=DA−
DB+γ
(CB−
CA) is negative, where B is the amount of allocated code, CB is a code amount of a code comprising the integer signal code obtained in the first coder, CA is a code amount of a code comprising the second integer signal code obtained in the second coder, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the first coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the second coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs the second integer signal code obtained in the second coder and the gain code, andwhen the index represents that the periodicity is low and the second evaluation indicator G2 is positive, outputs the integer signal code obtained in the first coder and the gain code.
-
-
12. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code having a code amount equal to or smaller than an amount of allocated code defined in advance, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code having a code amount equal to or smaller than the amount of allocated code, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method which is not based on periodicity, and otherwise, obtains an estimate value of a code amount of a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method based on periodicity; and a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is positive, where B is the amount of allocated code, CA is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CB is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, FA is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FB is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs a second integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity,when the index represents that the periodicity is high and the evaluation indicator G1 is negative, outputs an integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, when the index represents that the periodicity is low and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is negative, where B is the amount of allocated code, CB is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CA is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, FB is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FA is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs a second integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, andwhen the index represents that the periodicity is low and the second evaluation indicator G1 is positive, outputs an integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity.
-
-
13. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds an amount of allocated code defined in advance, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code, and otherwise, obtains an estimate value of a code amount of a second integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; and a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G2=DA−
DB+γ
(CB−
CA) is positive, where B is the amount of allocated code, CA is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CB is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the second integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs the second integer signal code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code,when the index represents that the periodicity is high and the evaluation indicator G2 is negative, outputs an integer signal code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, when the index represents that the periodicity is low and a second evaluation indicator G2=DA−
DB+γ
(CB−
CA) is negative, where B is the amount of allocated code, CB is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CA is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the second integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs a second integer signal code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, andwhen the index represents that the periodicity is low, and the second evaluation indicator G2 is positive, outputs an integer signal code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code.
-
-
16. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first coder that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; implement a second coder that when the index represents that the periodicity is high, obtains a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method which is not based on periodicity, and otherwise, obtains a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method based on periodicity; and implement a comparison selector that when a code amount of the integer signal code obtained in the first coder is larger than a code amount of the second integer signal code obtained in the second coder, outputs the second integer signal code obtained in the second coder and the gain code, and when the code amount of the integer signal code obtained in the first coder is smaller than the code amount of the second integer signal code obtained in the second coder, outputs the integer signal code obtained in the first coder and the gain code. - View Dependent Claims (22)
-
-
17. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method which is not based on periodicity; implement a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, and otherwise, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity; and implement a comparison and selection coder that when the index represents that the periodicity is high and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, when the index represents that the periodicity is high and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, and when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity. - View Dependent Claims (28)
-
-
18. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first coder that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code having a code amount equal to or smaller than an amount of allocated code defined in advance, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code having a code amount equal to or smaller than the amount of allocated code, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; implement a second coder that when the index represents that the periodicity is high, obtains a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method which is not based on periodicity, and otherwise, obtains a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method based on periodicity; and implement a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is positive, where B is the amount of allocated code, CA is a code amount of a code comprising the integer signal code obtained in the first coder, CB is a code amount of a code comprising the second integer signal code obtained in the second coder, FA is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FB is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs the second integer signal code obtained in the second coder and the gain code,when the index represents that the periodicity is high and the evaluation indicator G1 is negative, outputs the integer signal code obtained in the first coder and the gain code, when the index represents that the periodicity is low and a second evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is negative, where B is the amount of allocated code, CB is a code amount of a code comprising the integer signal code obtained in the first coder, CA is a code amount of a code comprising the second integer signal code obtained in the second coder, FB is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FA is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs the second integer signal code obtained in the second coder and the gain code, andwhen the index represents that the periodicity is low and the second evaluation indicator G1 is positive, outputs the integer signal code obtained in the first coder and the gain code.
-
-
19. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first coder that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds an amount of allocated code defined in advance, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; implement a second coder that when the index represents that the periodicity is high, obtains a second integer signal code by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code, and otherwise, obtains a second integer signal code by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first coder using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; and implement a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G2=DA−
DB+γ
(CB−
CA) is positive, where B is the amount of allocated code, CA is a code amount of a code comprising the integer signal code obtained in the first coder, CB is a code amount of a code comprising the second integer signal code obtained in the second coder, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the first coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the second coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs the second integer signal code obtained in the second coder and the gain code,when the index represents that the periodicity is high and the evaluation indicator G2 is negative, outputs the integer signal code obtained in the first coder and the gain code, when the index represents that the periodicity is low and a second evaluation indicator G2=DA−
DB+γ
(CB−
CA) is negative, where B is the amount of allocated code, CB is a code amount of a code comprising the integer signal code obtained in the first coder, CA is a code amount of a code comprising the second integer signal code obtained in the second coder, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the first coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed in the second coder, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs the second integer signal code obtained in the second coder and the gain code, andwhen the index represents that the periodicity is low and the second evaluation indicator G2 is positive, outputs the integer signal code obtained in the first coder and the gain code.
-
-
20. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code having a code amount equal to or smaller than an amount of allocated code defined in advance, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code having a code amount equal to or smaller than the amount of allocated code, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity; implement a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method which is not based on periodicity, and otherwise, obtains an estimate value of a code amount of a second integer signal code having a code amount equal to or smaller than the amount of allocated code, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method based on periodicity; and implement a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is positive, where B is the amount of allocated code, CA is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CB is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, FA is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FB is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs a second integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity,when the index represents that the periodicity is high and the evaluation indicator G1 is negative, outputs an integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, when the index represents that the periodicity is low and an evaluation indicator G1=−
FA×
(B−
CA)+FB×
(B−
CB) is negative, where B is the amount of allocated code, CB is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CA is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, FB is a sum of absolute values of amplitudes of integer value samples corresponding to the integer signal code, and FA is a sum of absolute values of amplitudes of integer value samples corresponding to the second integer signal code, outputs a second integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, andwhen the index represents that the periodicity is low and the second evaluation indicator G1 is positive, outputs an integer signal code having a code amount equal to or smaller than the amount of allocated code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity.
-
-
21. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds an amount of allocated code defined in advance, and otherwise, obtains through loop processing, a gain code corresponding to a gain used for dividing each sample of the sample sequence in the frequency domain and an estimate value of a code amount of an integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; implement a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method which is not based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code, and otherwise, obtains an estimate value of a code amount of a second integer signal code obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code obtained in the first code amount estimator using an encoding method based on periodicity, a code corresponding to a code amount by which a code amount of the code obtained by encoding exceeds the amount of allocated code; and implement a comparison selector that when the index represents that the periodicity is high and an evaluation indicator G2=DA−
DB+γ
(CB−
CA) is positive, where B is the amount of allocated code, CA is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CB is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the second integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs the second integer signal code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code,when the index represents that the periodicity is high and the evaluation indicator G2 is negative, outputs an integer signal code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, when the index represents that the periodicity is low and a second evaluation indicator G2=DA−
DB+γ
(CB−
CA) is negative, where B is the amount of allocated code, CB is a value obtained from the estimate value of the code amount of the integer signal code obtained in the first code amount estimator, CA is a value obtained from the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, DB is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, DA is a sum of absolute values of amplitudes of integer value samples corresponding to the code removed to obtain the second integer signal code, the code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, and γ
is a positive value defined in advance, outputs a second integer signal code and the gain code obtained in the first code amount estimator, the second integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code, andwhen the index represents that the periodicity is low, and the second evaluation indicator G2 is positive, outputs an integer signal code and the gain code obtained in the first code amount estimator, the integer signal code being obtained by removing from a code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by the gain corresponding to the gain code using an encoding method which is not based on periodicity, a code corresponding to a code amount by which the code amount of the code obtained by encoding exceeds the amount of allocated code.
-
-
23. An encoding method comprising:
-
a frequency domain sample sequence generation step of obtaining a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analysis step of calculating an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimation step of when the index represents that the periodicity is high, obtaining through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method based on periodicity, and otherwise, obtaining through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method which is not based on periodicity; a second code amount estimation step of when the index represents that the periodicity is high, obtaining an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method which is not based on periodicity, and otherwise, obtaining an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method based on periodicity; and a comparison and selection encoding step of when the index represents that the periodicity is high and a value obtained by adding a code amount of side information to the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method which is not based on periodicity, wherein the side information includes at least one of information representing periodicity of the acoustic signal, information representing basic frequency, or information representing an interval between a sample corresponding to the periodicity or the basic frequency of the acoustic signal and a sample corresponding to an integral multiple of the periodicity or the basic frequency of the acoustic signal, when the index represents that the periodicity is high and the value obtained by adding the code amount of the side information to the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method based on periodicity, when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is greater than a value obtained by adding the code amount of the side information to the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method based on periodicity, and when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimation step is smaller than the value obtained by adding the code amount of the side information to the estimate value of the code amount of the second integer signal code obtained in the second code amount estimation step, outputting an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimation step using an encoding method which is not based on periodicity.
-
-
24. An encoder comprising:
-
a frequency domain sample sequence generation part that obtains a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; a periodicity analyzer that calculates an index indicating a degree of periodicity of the sample sequence in the frequency domain; a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method which is not based on periodicity; a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, and otherwise, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity; and a comparison and selection coder that when the index represents that the periodicity is high and a value obtained by adding a code amount of side information to the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, wherein the side information includes at least one of information representing periodicity of the acoustic signal, information representing basic frequency, or information representing an interval between a sample corresponding to the periodicity or the basic frequency of the acoustic signal and a sample corresponding to an integral multiple of the periodicity or the basic frequency of the acoustic signal, when the index represents that the periodicity is high and the value obtained by adding the code amount of the side information to the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than a value obtained by adding the code amount of the side information to the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, and when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the value obtained by adding the code amount of the side information to the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity. - View Dependent Claims (27)
-
-
25. An encoder comprising:
-
processing circuitry configured to obtain a sample sequence in a frequency domain deriving from an acoustic signal for each predetermined time segment; calculate an index indicating a degree of periodicity of the sample sequence in the frequency domain; implement a first code amount estimator that when the index represents that the periodicity is high, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method based on periodicity, and otherwise, obtains through loop processing, an estimate value of a code amount of an integer signal code obtained by encoding a sequence comprised of integer value samples obtained by dividing each sample of the sample sequence in the frequency domain by a gain using an encoding method which is not based on periodicity; implement a second code amount estimator that when the index represents that the periodicity is high, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, and otherwise, obtains an estimate value of a code amount of a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity; and implement a comparison and selection coder that when the index represents that the periodicity is high and a value obtained by adding a code amount of side information to the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity, wherein the side information includes at least one of information representing periodicity of the acoustic signal, information representing basic frequency, or information representing an interval between a sample corresponding to the periodicity or the basic frequency of the acoustic signal and a sample corresponding to an integral multiple of the periodicity or the basic frequency of the acoustic signal, when the index represents that the periodicity is high and the value obtained by adding the code amount of the side information to the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is greater than a value obtained by adding the code amount of the side information to the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs a second integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method based on periodicity, and when the index represents that the periodicity is low and the estimate value of the code amount of the integer signal code obtained in the first code amount estimator is smaller than the value obtained by adding the code amount of the side information to the estimate value of the code amount of the second integer signal code obtained in the second code amount estimator, outputs an integer signal code obtained by encoding a sequence comprised of integer value samples obtained in the first code amount estimator using an encoding method which is not based on periodicity.
-
Specification