WO2014054556A1 - 符号化方法、符号化装置、プログラム、および記録媒体 - Google Patents
符号化方法、符号化装置、プログラム、および記録媒体 Download PDFInfo
- Publication number
- WO2014054556A1 WO2014054556A1 PCT/JP2013/076480 JP2013076480W WO2014054556A1 WO 2014054556 A1 WO2014054556 A1 WO 2014054556A1 JP 2013076480 W JP2013076480 W JP 2013076480W WO 2014054556 A1 WO2014054556 A1 WO 2014054556A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- code
- gain
- encoding
- sample
- integer
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 224
- 238000012545 processing Methods 0.000 claims abstract description 68
- 230000008707 rearrangement Effects 0.000 claims description 240
- 238000011156 evaluation Methods 0.000 claims description 63
- 230000008569 process Effects 0.000 claims description 36
- 238000004458 analytical method Methods 0.000 claims description 22
- 241000209094 Oryza Species 0.000 description 77
- 235000007164 Oryza sativa Nutrition 0.000 description 77
- 235000009566 rice Nutrition 0.000 description 77
- 238000001228 spectrum Methods 0.000 description 30
- 238000010606 normalization Methods 0.000 description 27
- 238000012986 modification Methods 0.000 description 26
- 230000004048 modification Effects 0.000 description 26
- 238000013139 quantization Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 230000014509 gene expression Effects 0.000 description 9
- 230000009467 reduction Effects 0.000 description 9
- 238000012937 correction Methods 0.000 description 6
- 230000000737 periodic effect Effects 0.000 description 6
- 108010076504 Protein Sorting Signals Proteins 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
- G10L19/035—Scalar quantisation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/20—Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/26—Pre-filtering or post-filtering
- G10L19/265—Pre-filtering, e.g. high frequency emphasis prior to encoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3059—Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/002—Dynamic bit allocation
Definitions
- the present invention relates to an audio signal encoding technique.
- the present invention relates to a coding technique for a sequence obtained by dividing a sample sequence derived from an acoustic signal by a gain.
- Adaptive coding for orthogonal transform coefficients such as DFT (Discrete Fourier Transform) and MDCT (Modified Discrete Cosine Transform) is known as a coding method for low-bit (for example, about 10 kbit / s to 20 kbit / s) speech and acoustic signals. It has been.
- AMR-WB + Extended-Adaptive-Multi-Rate-Wideband
- TCX transform-coded excitation
- the gain is determined so that a sequence obtained by dividing each coefficient by the gain can be encoded with a predetermined number of bits.
- ⁇ Encoder 1000> A configuration example of a coding apparatus 1000 for conventional TCX coding is shown in FIG. Hereinafter, each part of FIG. 1 will be described.
- the frequency domain transform unit 1001 converts an input time domain audio-acoustic digital signal (hereinafter referred to as an input acoustic signal) into N points of MDCT coefficient sequences X (1),. .., convert to X (N) and output.
- N is a positive integer.
- the power spectrum envelope coefficient sequence calculation unit 1002 performs linear prediction analysis on the input acoustic signal in units of frames to obtain linear prediction coefficients, and uses the linear prediction coefficients to determine the power spectrum envelope coefficient sequence W ( 1), ..., W (N) is obtained and output.
- the linear prediction coefficient is encoded by, for example, a conventional encoding technique, and the prediction coefficient code is transmitted to the decoding side.
- the weighted envelope normalization unit 1003 uses the power spectrum envelope coefficient sequence W (1),..., W (N) obtained by the power spectrum envelope coefficient sequence calculation unit 1002 to obtain the MDCT obtained by the frequency domain transform unit 1001.
- each coefficient of the coefficient sequence X (1), ⁇ normalize the X (N), weighted normalized MDCT coefficients X N (1), ⁇ , and it outputs the X N (N).
- the weighted envelope normalization unit 1003 uses a weighted power spectrum envelope coefficient sequence in which the power spectrum envelope is blunted to generate an MDCT coefficient sequence in units of frames. Normalize each coefficient of.
- the weighted normalized MDCT coefficient sequence X N (1),..., X N (N) has an amplitude as large as the input MDCT coefficient sequence X (1),. Does not have slope or amplitude irregularities, but has a similar magnitude relationship with the power spectrum envelope coefficient sequence of the input acoustic signal, that is, has a slightly larger amplitude in the coefficient side region corresponding to the lower frequency, and is caused by the pitch period That has a fine structure.
- the gain adjustment encoding unit 1100 divides each coefficient of the input weighted normalized MDCT coefficient sequence X N (1),..., X N (N) by a gain (global gain) g, and the result is quantized.
- a sequence according to phased integer value quantized normalization haze coefficient sequence X Q (1), ⁇ , X Q (N) the number of bits of the integer signal code obtained by encoding the number of bits that have been previously allocated A gain code corresponding to a gain g and an integer signal code that are equal to or less than the number of allocated bits B and as large as possible are output.
- Gain adjustment encoding section 1100 includes initialization section 1104, frequency domain sequence quantization section 1105, variable length encoding section 1106, determination section 1107, gain lower limit setting section 1108, first branching section 1109, and first gain updating section 1110. , Gain expanding section 1111, gain upper limit setting section 1112, second branching section 1113, second gain updating section 1114, gain reducing section 1115, truncating section 1116, and gain encoding section 1117.
- the initialization unit 1104 sets an initial value of the gain g.
- the initial value of the gain is determined from the energy of the weighted normalized MDCT coefficient sequence X N (1),..., X N (N) and the number of bits allocated in advance to the code output from the variable length encoding unit 1106. be able to.
- the number of bits allocated in advance to the code output by the variable-length encoding unit 1106 is referred to as an allocated bit number B.
- the initialization unit 1104 sets 0 as the initial value of the number of gain updates.
- ⁇ Frequency domain sequence quantization unit 1105 Frequency domain sequence quantizer 1105, the weighted normalized MDCT coefficients X N (1), ⁇ , quantizes the value obtained by the coefficients of X N (N) divided by the gain g, an integer value Quantized normalized coefficient series X Q (1),..., X Q (N) are obtained and output.
- variable length coding unit 1106 performs variable length coding on the input quantized normalized coefficient series X Q (1),..., X Q (N) to obtain and output a code.
- This code is called an integer signal code.
- the variable length coding unit 1106 measures the number of bits of the integer signal code obtained by variable length coding. Hereinafter, this number of bits is referred to as the number of consumed bits c.
- ⁇ Determining unit 1107> When the gain update count is a predetermined count, or when the consumption bit count c measured by the variable length encoding section 1106 is the allocated bit count B, the determination unit 1107 determines the gain, integer signal code, and consumption bit count. c is output. When the number of gain updates is less than a predetermined number, when the number of consumed bits c measured by the variable length coding unit 1106 is larger than the number of allocated bits B, the gain lower limit setting unit 1108 uses the variable length coding unit. When the consumed bit number c measured by 1106 is smaller than the allocated bit number B, the gain upper limit setting unit 1112 controls to perform the following processing.
- the gain lower limit setting unit 1108 sets the current gain g value as the gain lower limit value g min (g min ⁇ g). This lower limit value g min of the gain means that at least the value of the gain should be higher.
- the first branching unit 1109 causes the first gain updating unit 1110 to perform the following processing when the upper limit value g max of the gain is already set, and otherwise the gain expanding unit 1111 performs the following processing. Control. Also, the first branching unit 1109 adds 1 to the number of gain updates.
- the first gain updating unit 1110 newly sets the average value of the current gain g value and the upper limit value g max of the gain as the value of the gain g (g ⁇ (g + g max ) / 2). This is because the optimum gain value exists between the current gain g value and the upper limit value g max of the gain. Since the value of this gain g is set as the lower limit value g min of the gain, a new average value of the upper limit value g max and the gain lower limit value g min of the gain can be said to be set as the value of the gain g (g ⁇ -( Gmax + gmin ) / 2). The newly set gain g is input to frequency domain sequence quantization section 1105.
- the gain expanding unit 1111 sets a value larger than the current gain g value as a new gain g value. For example, a value obtained by adding a predetermined positive gain change amount ⁇ g to the current gain g value is set as a new gain g value (g ⁇ g + ⁇ g). Further, for example, when the upper limit value g max of the gain is not set and a state where the number of consumed bits c is larger than the number of allocated bits B continues multiple times, a value larger than a predetermined value is set as the gain change amount ⁇ g. Use.
- the newly set gain g is input to frequency domain sequence quantization section 1105.
- the gain upper limit setting unit 1112 sets the current gain g value as the gain upper limit g max (g max ⁇ g).
- the upper limit value g max of the gain means that at least the gain value should be less than this value.
- the second branching unit 1113 causes the second gain updating unit 1114 to perform the following processing when the lower limit value g min of the gain has already been set, and the gain reducing unit 1115 otherwise. Control. Also, the second branching unit 1113 adds 1 to the number of gain updates.
- the second gain updating unit 1114 sets the average value of the current gain g and the lower limit value g min of the gain as a new value of the gain g (g ⁇ (g + g min ) / 2). This is because the optimum gain value exists between the current gain g value and the lower limit value g min of the gain. Since the value of this gain g is set as the upper limit value g max gain, a new average value of the upper limit value g max and the gain lower limit value g min of the gain can be said to be set as the value of the gain g (g ⁇ -( Gmax + gmin ) / 2). The newly set gain g is input to frequency domain sequence quantization section 1105.
- the gain reduction unit 1115 sets a value smaller than the current gain g value as a new gain g value. For example, a value obtained by subtracting a predetermined positive gain change amount ⁇ g from the current gain g value is set as a new gain g value (g ⁇ g ⁇ g). Further, for example, when the lower limit value g min of the gain is not set and a state where the number of consumed bits c is smaller than the number of allocated bits B continues multiple times, a value larger than a predetermined value is set as the gain change amount ⁇ g. Use.
- the newly set gain g is input to frequency domain sequence quantization section 1105.
- the truncating unit 1116 includes the portion of the integer signal code output from the determining unit 1107 that exceeds the allocated bit number B.
- a code obtained by removing the only code from the code corresponding to the quantized normalized coefficient on the high frequency side is output as a new integer signal code.
- the truncation unit 1116 removes the code corresponding to the quantized normalized coefficient on the higher frequency side corresponding to the surplus c ⁇ B with respect to the allocated bit number B of the consumed bit number c from the integer signal code. Is output as a new integer signal code.
- the truncating unit 1116 outputs the integer signal code output from the determining unit 1107.
- the gain encoding unit 1117 encodes the gain output from the determination unit 1107 with a predetermined number of bits to obtain and output a gain code.
- the quantized normalized coefficient sequence is divided into one or a plurality of consecutive samples including samples corresponding to the fundamental frequency, and one or a plurality of consecutive samples including samples corresponding to an integer multiple of the fundamental frequency.
- the sample string after the rearrangement is subjected to variable length coding to obtain an integer signal code.
- Patent Document 1 discloses a method of obtaining an integer signal code by variable-length coding a sample sequence after rearrangement, which is an encoding method using periodicity, and a rearrangement method that is an encoding method not using periodicity. Select the method that reduces the number of bits of the integer signal code or the method that is expected to reduce the number of bits of the integer signal code from among the methods that obtain the integer signal code by variable-length coding the previous sample sequence. A method for obtaining an integer signal code is also described. This makes it possible to obtain an integer signal code with a small number of bits under the same coding distortion.
- variable-length coding is performed even when an integer signal code is obtained using either an encoding method using periodicity or an encoding method not using periodicity.
- the gain is determined before doing. For this reason, the number of bits of the integer signal code can be reduced under the same distortion, but under the condition that the code amount is kept within the given number of bits, bit reduction by variable length coding, and It is not considered to achieve both reduction of quantization distortion by using as small a gain value as possible.
- Patent Document 1 In order to reduce distortion due to variable-length coding, it is necessary to combine the conventional technique described in Patent Document 1 with the conventional technique described in Non-Patent Document 1. However, in this combined method, it is necessary to perform the processing of the gain adjustment encoding unit in each of the encoding method using periodicity and the encoding method not using periodicity, and the amount of calculation processing is large. There is a problem of becoming very large.
- a sample sequence is encoded by a variable length encoding method using a periodicity encoding method to obtain an integer signal code
- a sample sequence is encoded using a periodicity encoding method.
- the gain adjustment encoding unit is processed only for a method that is expected to reduce the number of bits of the integer signal code, and when the number of bits of the integer signal code decreases.
- the gain obtained by the process of the gain adjustment encoding unit of the method that is expected when the number of bits of the integer signal code is reduced is used.
- the present invention it is possible to reduce quantization distortion by using as small a gain value as possible under the condition that the amount of code is kept within a given number of bits, and to obtain an integer signal code obtained by variable length coding. It is possible to achieve both the reduction of the number of bits with a small amount of calculation processing.
- the block diagram which illustrated the composition of the conventional coding device The block diagram which illustrated the composition of the coding device of an embodiment.
- the block diagram which illustrated the composition of the coding device of an embodiment The block diagram which illustrated the composition of the coding device of an embodiment.
- the block diagram which illustrated the composition of the coding device of an embodiment The block diagram which illustrated the composition of the gain adjustment coding part of an embodiment.
- the block diagram which illustrated the composition of the coding device of an embodiment The block diagram which illustrated the composition of the gain adjustment coding part of an embodiment.
- the frequency domain transforming unit 1001 converts an input time domain acoustic digital signal (hereinafter referred to as an input acoustic signal) in units of frames, which are predetermined time segments, into N frequency MDCT coefficient sequences X (1),. • Converted to X (N) and output.
- N is a positive integer.
- the power spectrum envelope coefficient sequence calculation unit 1002 performs linear prediction analysis on the input acoustic signal in units of frames to obtain linear prediction coefficients, and uses the linear prediction coefficients to determine the power spectrum envelope coefficient sequence W ( 1), ..., W (N) is obtained and output.
- Each coefficient W (1),..., W (N) of the N-point power spectrum envelope coefficient sequence can be obtained by converting the linear prediction coefficient into the frequency domain.
- the input acoustic signal x (t) at the time t is the past value x (t ⁇ t- 1), ⁇ ⁇ ⁇ , x (tp) and the prediction residuals e (t) and the linear prediction coefficients alpha 1, ⁇ ⁇ ⁇ , represented by the formula (1) by alpha p.
- each coefficient W (n) [1 ⁇ n ⁇ N] of the power spectrum envelope coefficient sequence is expressed by Expression (2).
- exp ( ⁇ ) is an exponential function with the Napier number as the base, j is an imaginary unit, and ⁇ 2 is the predicted residual energy.
- the power spectrum envelope coefficient sequence calculation unit 1002 does not obtain the linear prediction coefficient, but other means (not shown) in the encoding apparatus 100 may obtain the linear prediction coefficient.
- a quantized linear prediction coefficient and / or power spectrum envelope coefficient sequence is used.
- linear prediction coefficient or power spectrum envelope coefficient sequence means a quantized linear prediction coefficient or power spectrum envelope coefficient sequence.
- the linear prediction coefficient is encoded by, for example, a conventional encoding technique, and the prediction coefficient code is transmitted to the decoding side.
- the conventional encoding technique is, for example, an encoding technique in which a code corresponding to the linear prediction coefficient itself is a prediction coefficient code, a code corresponding to the LSP parameter by converting the linear prediction coefficient into an LSP parameter, and a prediction coefficient code.
- the weighted envelope normalization unit 1003 uses the power spectrum envelope coefficient sequence W (1),..., W (N) obtained by the power spectrum envelope coefficient sequence calculation unit 1002 to obtain the MDCT obtained by the frequency domain transform unit 1001.
- each coefficient of the coefficient sequence X (1), ⁇ normalize the X (N), weighted normalized MDCT coefficients X N (1), ⁇ , and it outputs the X N (N).
- the weighted envelope normalization unit 1003 uses a weighted power spectrum envelope coefficient sequence in which the power spectrum envelope is blunted to generate an MDCT coefficient sequence in units of frames. Normalize each coefficient of.
- the weighted normalized MDCT coefficient sequence X N (1),..., X N (N) has an amplitude as large as the input MDCT coefficient sequence X (1),. Does not have slope or amplitude irregularities, but has a similar magnitude relationship with the power spectrum envelope coefficient sequence of the input acoustic signal, that is, has a slightly larger amplitude in the coefficient side region corresponding to the lower frequency, and is caused by the pitch period That has a fine structure.
- the weighted envelope normalization unit 1003 converts each coefficient X (1),..., X (N) of the MDCT coefficient sequence to each coefficient W (1),. , W (N) correction values W ⁇ (1),..., W ⁇ (N) by dividing each coefficient X (1) / W ⁇ (1) ,. .., X (N) / W ⁇ (N) is obtained.
- the correction value W ⁇ (n) [1 ⁇ n ⁇ N] is given by Equation (3).
- ⁇ is a positive constant of 1 or less, and is a constant that dulls the power spectrum coefficient.
- the weighted envelope normalization unit 1003 converts each coefficient X (1),..., X (N) of the MDCT coefficient sequence to each coefficient W (1),. , W (N) to the ⁇ power (0 ⁇ ⁇ 1) value W (1) ⁇ ,..., W (N) ⁇ to divide each coefficient X (1 ) / W (1) ⁇ ,..., X (N) / W (N) ⁇ is obtained.
- a frame-by-frame weighted normalized MDCT coefficient sequence is obtained, but the weighted normalized MDCT coefficient sequence does not have as large an amplitude gradient or amplitude unevenness as the input MDCT coefficient sequence, but the input MDCT coefficient It has a magnitude relationship similar to the power spectrum envelope of the column, that is, one having a slightly large amplitude in the coefficient side region corresponding to a low frequency and a fine structure resulting from the pitch period.
- the inverse processing corresponding to the weighted envelope normalization process that is, the process of restoring the MDCT coefficient sequence from the weighted normalized MDCT coefficient sequence is performed on the decoding side, so the weighted power spectrum envelope coefficient sequence from the power spectrum envelope coefficient sequence It is necessary to set a common setting for the encoding side and the decoding side.
- the weighted normalized MDCT coefficient sequence obtained by the weighted envelope normalization unit 1003 is input to the rearrangement unit 110, and the input to the rearrangement unit 110 is the weight obtained by the weighted envelope normalization unit 1003. It is not limited to the normalized MDCT coefficient sequence.
- the input of the rearrangement unit 110 is hereinafter referred to as a “frequency domain sample string” or simply a “sample string” derived from an acoustic signal.
- the weighted normalized MDCT coefficient sequence obtained by the weighted envelope normalization unit 1003 corresponds to a “frequency domain sample sequence”.
- the samples constituting the frequency domain sample sequence are weighted normalized MDCTs. It corresponds to the coefficient included in the coefficient sequence.
- the rearrangement unit 110 includes, for each frame, (1) all the samples in the frequency domain sample sequence, and (2) a frequency so that samples having the same or similar index reflecting the sample size are collected.
- a sample column in which at least a part of samples included in the region sample column is rearranged is output as a sample column after rearrangement, or the input sample column is output as a sample column before rearrangement.
- the “index reflecting the sample size” is, for example, the absolute value or power (square value) of the amplitude of the sample, but is not limited thereto.
- the rearrangement unit 110 includes (1) all samples in the sample sequence, and (2) one or a plurality of consecutive samples including samples corresponding to the periodicity or fundamental frequency of the acoustic signal in the sample sequence. Included in the sample sequence such that all or some of the samples and one or more consecutive samples including samples corresponding to the periodicity of the acoustic signal in the sample sequence or an integer multiple of the fundamental frequency are collected.
- a rearranged sample string is a rearranged sample sequence.
- the absolute value and power of the amplitude corresponding to the fundamental frequency and harmonics (integer multiples of the fundamental frequency) and samples in the vicinity of them are the same as those of the samples corresponding to the frequency region excluding the fundamental frequency and harmonics.
- This is based on a remarkable feature in an acoustic signal that is larger than the absolute value or power of the amplitude, particularly voice or musical sound.
- the periodic characteristic amount (for example, pitch period) of the acoustic signal extracted from the acoustic signal such as voice or music is equivalent to the fundamental frequency
- the periodic characteristic amount (for example, pitch) of the acoustic signal is equivalent to the fundamental frequency.
- the absolute value and power of the amplitude of the sample corresponding to the periodicity) and its integer multiples and the samples in the vicinity of them are larger than the absolute value and power of the amplitude of the sample corresponding to the frequency domain excluding the periodic feature and their integral multiples.
- the feature of being large is also recognized.
- T represents a symbol representing an interval (hereinafter simply referred to as an interval) between a sample corresponding to the periodicity or fundamental frequency of the acoustic signal and a sample corresponding to an integer multiple of the periodicity or fundamental frequency of the acoustic signal.
- the rearrangement unit 110 includes samples F (nT ⁇ 1) and F (nT + 1) before and after the sample F (nT) corresponding to an integer multiple of the interval T from the input sample string. Three samples F (nT-1), F (nT), and F (nT + 1) are selected.
- F (j) is a sample corresponding to the number j representing the sample index corresponding to the frequency.
- n is an integer in a range where 1 to nT + 1 do not exceed the preset upper limit N of the target sample.
- Let jmax be the maximum value of the number j representing the sample index corresponding to the frequency.
- N A collection of samples selected according to n is called a sample group.
- the upper limit N may be equal to jmax.
- the high-frequency sample index is generally small enough, so that it is large for improving the encoding efficiency described later.
- N may be a value smaller than jmax.
- N may be a value about half of jmax. If the maximum value of n determined based on the upper limit N is nmax, samples corresponding to each frequency from the lowest frequency to the first predetermined frequency nmax ⁇ T + 1 among the samples included in the input sample sequence Are subject to sorting.
- the symbol x represents multiplication.
- the rearrangement unit 110 generates the sample sequence U by arranging the selected samples F (j) in order from the top of the sample sequence while maintaining the magnitude relationship of the original number j. For example, when n represents each integer from 1 to 5, the rearrangement unit 110 uses the first sample group F (T ⁇ 1), F (T), F (T + 1), and the second sample group. F (2T-1), F (2T), F (2T + 1), third sample group F (3T-1), F (3T), F (3T), F (3T + 1), fourth sample group F ( 4T-1), F (4T), F (4T + 1), and fifth sample group F (5T-1), F (5T), F (5T), F (5T + 1) are arranged from the head of the sample sequence.
- the rearrangement unit 110 arranges the unselected samples F (j) in order from the end of the sample row U while maintaining the magnitude relationship of the original numbers.
- the unselected sample F (j) is a sample located between the sample groups constituting the sample row U, and such a continuous set of samples is referred to as a sample set. That is, in the above example, the first sample set F (1),..., F (T-2), the second sample set F (T + 2),. , F (3T-2), fourth sample set F (3T + 2), ..., F (4T-2), fifth sample set F (4T + 2),..., F (5T-2), the sixth sample set F (5T + 2),... F (jmax) are arranged in order from the end of the sample sequence U, and these samples constitute the sample sequence V .
- the input sample sequence F (j) (1 ⁇ j ⁇ jmax) is F (T ⁇ 1), F (T), F (T + 1), F (2T ⁇ 1). ), F (2T), F (2T + 1), F (3T-1), F (3T), F (3T + 1), F (4T-1), F (4T), F (4T + 1 ), F (5T-1), F (5T), F (5T), F (5T + 1), F (1), ..., F (T-2), F (T + 2), ..., F (2T-2) , F (2T + 2), ..., F (3T-2), F (3T + 2), ..., F (4T-2), F (4T + 2), ..., F (5T-2), F (5T + 2),... F (jmax) are rearranged (see FIG. 8).
- each sample In the low frequency band, each sample often has a large value in amplitude and power, even if it is a sample other than a sample corresponding to the periodicity and fundamental frequency of an acoustic signal or a sample that is an integer multiple of the sample. Therefore, the rearrangement of samples corresponding to each frequency from the lowest frequency to the predetermined frequency f may not be performed.
- the predetermined frequency f is nT + ⁇
- the samples F (1),... This sample is subject to sorting.
- ⁇ is set in advance to an integer greater than or equal to 0 and somewhat smaller than T (for example, an integer not exceeding T / 2).
- n may be an integer of 2 or more.
- P samples F (1),..., F (P) from the sample corresponding to the lowest frequency before rearrangement are not rearranged, and after F (P + 1) before rearrangement Samples may be sorted.
- the predetermined frequency f is P.
- the criteria for the rearrangement for the collection of samples to be rearranged are as described above. Note that when the first predetermined frequency is set, the predetermined frequency f (second predetermined frequency) is smaller than the first predetermined frequency.
- the input sample sequence F (j) (1 ⁇ j ⁇ jmax) is F (1),..., F (T + 1), F (2T-1), F (2T), F (2T + 1), F (3T-1), F (3T), F (3T + 1), F (4T-1), F (4T), F (4T + 1), F (5T-1 ), F (5T), F (5T + 1), F (T + 2), ..., F (2T-2), F (2T + 2), ..., F (3T-2), F (3T + 2), ..., F (4T-2), F (4T + 2), ..., F (5T-2), F (5T + 2), ... F (jmax) (FIG. 9). reference).
- the upper limit N or first predetermined frequency for determining the maximum value of the number j to be rearranged is not set to a value common to all frames, and a different upper limit N or first predetermined frequency is set for each frame. May be.
- information specifying the upper limit N or the first predetermined frequency for each frame may be sent to the decoding side.
- the number of sample groups to be rearranged may be specified. In this case, the number of sample groups is set for each frame, and the sample group is set. May be sent to the decoding side. Of course, the number of sample groups to be rearranged may be common to all frames.
- the second predetermined frequency f may be set to a different second predetermined frequency f for each frame without being a value common to all frames. In this case, information specifying the second predetermined frequency for each frame may be sent to the decoding side.
- the reordering unit 110 may reorder at least some of the samples included in the input sample sequence so that the envelope of the sample index shows a downward trend as the frequency increases.
- all samples included in the frequency domain sample string are positive values so that it can be easily understood that the samples having a larger amplitude are biased to the low frequency side by rearranging the samples.
- An example of the case is shown. Actually, each sample included in the frequency domain sample string is often a positive, negative, or zero value. Even in such a case, the above-described rearrangement process or the rearrangement process described later is performed. Just do it.
- one or a plurality of consecutive samples including samples corresponding to periodicity or fundamental frequency and one or a plurality including samples corresponding to integer multiples of periodicity or fundamental frequency on the low frequency side.
- one or more consecutive samples including samples corresponding to periodicity or fundamental frequency, and integer multiples of periodicity or fundamental frequency may be performed to collect one or a plurality of consecutive samples including the corresponding sample.
- the sample groups are arranged in the reverse order in the sample row U
- the sample sets are arranged in the reverse order in the sample row V
- the sample row V is arranged on the low frequency side
- the sample row U is arranged behind the sample row V.
- the reordering unit 110 may reorder at least some of the samples included in the input sample sequence so that the envelope of the sample index shows a tendency to increase as the frequency increases. .
- Interval T may be a decimal number (for example, 5.0, 5.25, 5.5, 5.75) instead of an integer.
- F (R (nT-1)), F (R (nT)), and F (R (nT + 1)) are selected with the value obtained by rounding off nT as R (nT). Become.
- the interval T is preferably set according to the input sample sequence, that is, for each frame.
- a method of determining the interval T for each frame for example, a method of searching for periodicity of sample indices (absolute value or square value) and setting the interval T so that the bias of the average absolute value or the mean square value becomes large. May be adopted.
- E (T) is obtained by adding indexes of all samples included in the sample group selected corresponding to T.
- the index of the sample is represented as
- F (j) a set of numbers j of all samples included in the sample group selected corresponding to T.
- E (T) ⁇ j ⁇ M
- F (T-1) + F (T) + F (T + 1) + F (2T-1) + F (2T) + F (2T + 1) + F (3T-1) + F (3T) + F (3T + 1) + F (4T-1) + F (4T) + F (4T + 1) + F (5T-1) + F (5T) + F (5T + 1).
- card (M) represents the number of elements (concentration) of the set M.
- the frequency domain period (interval) T may be obtained by converting the fundamental frequency obtained by another means (not shown) in the encoding apparatus 100 or the time domain pitch period. Good. Further, not only the determination of the interval T using the periodicity as described above, but when the sample group is collected on the low frequency side, in the latter half of the sample sequence V, and when the sample group is collected on the high frequency side, the sample sequence A method of determining the interval T so that a sample having an amplitude of 0 continues for a long time in the first half of V may be employed.
- the rearrangement unit 110 rearranges the sample strings based on each of a plurality of preset T values, and an index indicating the appropriateness of the rearrangement corresponding to each T value described later (that is, An index indicating the degree of periodicity of the sample sequence (in other words, an index indicating the degree to which the amplitude of the sample sequence periodically increases) is obtained, and the interval T having the largest index indicating the appropriateness of rearrangement is selected.
- a method may be adopted.
- the interval T can be set to a predetermined value for all frames.
- the rearrangement unit 110 includes auxiliary information for specifying rearrangement of the sample sequence (first auxiliary information: information for specifying rearrangement including at least the cycle of the sample sequence in the frequency domain), that is, information indicating the periodicity of the acoustic signal. Or information representing the fundamental frequency, or information representing the interval T between the sample corresponding to the periodicity or the fundamental frequency of the acoustic signal and the sample corresponding to the periodicity of the acoustic signal or an integer multiple of the fundamental frequency. For example, when the interval T is determined for each frame, auxiliary information for specifying the rearrangement of the sample sequence is also output for each frame.
- the auxiliary information for specifying the rearrangement of the sample sequence is obtained by encoding the periodicity, the fundamental frequency, or the interval T for each frame.
- This encoding may be fixed length encoding or variable length encoding to reduce the average code amount.
- information obtained by variable length coding the difference between the interval T between the previous frame and the current frame may be used as information representing the interval T.
- information obtained by variable-length coding the difference between the fundamental frequency of the previous frame and the fundamental frequency of the current frame may be information representing the fundamental frequency.
- the information representing the fundamental frequency is obtained by another means (not shown) in the encoding apparatus 100, the information representing the fundamental frequency obtained by the other means is used as a sample string instead of the rearrangement unit 110.
- n can be selected from a plurality of options, the upper limit value of n or the upper limit N described above may be included in the auxiliary information for specifying the rearrangement of the sample sequence.
- the number of samples included in each sample group is a total of 3 samples including a sample corresponding to periodicity, a fundamental frequency or an integral multiple thereof (hereinafter referred to as a central sample) and one sample before and after the sample.
- a central sample a sample corresponding to periodicity, a fundamental frequency or an integral multiple thereof
- An example of a fixed number is shown.
- the number of samples included in the sample group and the sample index are variable, the number of samples included in the sample group and the combination of sample indexes are different from the other options.
- Information representing one selected from the above is also included in the auxiliary information for specifying the rearrangement of the sample sequence.
- options for example, there are options related to the interval T, options related to the combination of the number of samples included in the sample group and the sample index, and options related to n, and an optimal combination is selected from all combinations of these options. Also good. An index indicating the appropriateness of rearrangement to be described later is obtained for all combinations of options, and the option having the maximum index indicating the appropriateness of rearrangement may be selected.
- the degree of concentration of the index corresponding to the sample size in the low frequency range, or the continuation of samples having zero amplitude from the highest frequency to the low frequency side on the frequency axis Use numbers. Specifically, the sum of the absolute values of the amplitudes of the rearranged sample sequences is obtained for a quarter region from the low frequency side of the entire sample sequence, and the larger the sum, the better the rearrangement. Therefore, for example, this sum is used as an index indicating appropriateness of rearrangement.
- the rearrangement unit 110 when the index indicating the appropriateness of the rearrangement corresponding to the sample sequence after the rearrangement obtained by the above processing is greater than or equal to a predetermined threshold or larger than the predetermined threshold, that is, the periodicity of the sample sequence
- a predetermined threshold or larger than the predetermined threshold that is, the periodicity of the sample sequence
- the sample string after sorting is output, and in other cases, that is, the index indicating the degree of periodicity of the sample string corresponds to low periodicity If so, the sample sequence before sorting is output.
- the gain adjustment encoding unit 120 includes a sample sequence (sample sequence before or after rearrangement) X N '(1), ..., X N ' (N ) Is entered.
- the gain adjustment encoding unit 120 divides each coefficient of the input sample sequence by a gain (global gain) g, and a quantized normalized coefficient sequence X Q ′ (which is a sequence of integer values obtained by quantizing the result. 1),..., X Q '(N) is encoded and the number of bits of the integer signal code is equal to or less than the allocated bit number B (predetermined allocated code amount), which is the number of bits allocated in advance.
- a gain code corresponding to the gain g which is as large as possible, an integer signal code, and a quantized normalized coefficient sequence are output.
- the gain adjustment encoding unit 120 includes, for example, an initialization unit 1204, a frequency domain sequence quantization unit 1205, a variable length encoding unit 1206, a determination unit 1207, a gain lower limit setting unit 1208, and a first branch.
- the initialization unit 1204 sets an initial value of the gain g.
- the initial value of the gain is determined from the energy of the sample sequence X N ′ (1),..., X N ′ (N), the number of bits allocated in advance to the code output by the variable length coding unit 1206, and the like. it can.
- the initial value of the gain g is a positive value.
- the number of bits allocated in advance to the code output from the variable length encoding unit 1206 is referred to as an allocated bit number B.
- the initialization unit 1204 sets 0 as the initial value of the number of gain updates.
- the frequency domain sequence quantization unit 1205 obtains values X N ′ (1) / g obtained by dividing each of the sample sequences X N ′ (1),..., X N ′ (N) by the gain g. .., X N '(N) / g is quantized to obtain and output a quantized normalized coefficient sequence X Q (1),..., X Q (N) that is a sequence of integer values.
- variable length encoding unit 1206 performs variable length encoding on the input quantized normalized coefficient sequence X Q (1),..., X Q (N) to obtain a code, and the obtained code and quantization Output normalized coefficient series X Q (1), ..., X Q (N).
- This code is called an integer signal code.
- variable length coding for example, a method of coding a plurality of coefficients in a quantized normalized coefficient series together is used.
- the variable length coding unit 1206 measures the number of bits of the integer signal code obtained by variable length coding. Hereinafter, this number of bits is referred to as the number of consumed bits c.
- ⁇ Determining unit 1207> When the gain update count is a predetermined count, or when the consumption bit count c measured by the variable-length encoding block 1206 is the allocated bit count B, the determination unit 1207 determines the gain, integer signal code, integer signal code. Quantized normalized coefficient series X Q (1),..., X Q (N) and the number of consumed bits c are output. When the number of gain updates is less than a predetermined number of times, when the number of consumed bits c measured by the variable length coding unit 1206 is greater than the number of allocated bits B, the gain lower limit setting unit 1208 includes the variable length coding unit. When the consumed bit number c measured by 1206 is smaller than the allocated bit number B, the gain upper limit setting unit 1212 controls to perform the following processing.
- the gain lower limit setting unit 1208 sets the current gain g value as the gain lower limit value g min (g min ⁇ g). This lower limit value g min of the gain means that at least the value of the gain should be higher.
- the first branching unit 1209 causes the first gain updating unit 1210 to perform the following processing when the upper limit value g max of the gain is already set, and the gain expanding unit 1211 to perform the following processing otherwise. Control. Also, the first branching unit 1209 adds 1 to the number of gain updates.
- the first gain updating unit 1210 newly sets the average value of the current gain g value and the upper limit value g max of the gain as the value of the gain g (g ⁇ (g + g max ) / 2). This is because the optimum gain value exists between the current gain g value and the upper limit value g max of the gain. Since the value of this gain g is set as the lower limit value g min of the gain, a new average value of the upper limit value g max and the gain lower limit value g min of the gain can be said to be set as the value of the gain g (g ⁇ -( Gmax + gmin ) / 2). The newly set gain g is input to frequency domain sequence quantization section 1205.
- the gain expanding unit 1211 sets a value larger than the current gain g value as a new gain g value. For example, a value obtained by adding a predetermined positive gain change amount ⁇ g to the current gain g value is set as a new gain g value (g ⁇ g + ⁇ g). Further, for example, when the upper limit value g max of the gain is not set and a state where the number of consumed bits c is larger than the number of allocated bits B continues multiple times, a value larger than a predetermined value is set as the gain change amount ⁇ g. Use.
- the newly set gain g is input to frequency domain sequence quantization section 1205.
- the gain upper limit setting unit 1212 sets the current gain g value as the gain upper limit value g max (g max ⁇ g).
- the upper limit value g max of the gain means that at least the gain value should be less than this value.
- the second branching unit 1213 causes the second gain updating unit 1214 to perform the following processing when the lower limit value g min of the gain is already set, and the gain reducing unit 1215 otherwise performs the following processing. Control. Also, the second branching unit 1213 adds 1 to the number of gain updates.
- the second gain updating unit 1214 sets the average value of the current gain g and the lower limit value g min of the gain as a new value of gain g (g ⁇ (g + g min ) / 2). This is because the optimum gain value exists between the current gain g value and the lower limit value g min of the gain. Since the value of this gain g is set as the upper limit value g max gain, a new average value of the upper limit value g max and the gain lower limit value g min of the gain can be said to be set as the value of the gain g (g ⁇ -( Gmax + gmin ) / 2). The newly set gain g is input to frequency domain sequence quantization section 1205.
- the gain reduction unit 1215 sets a value smaller than the current gain g value as a new gain g value. For example, a value obtained by subtracting a predetermined positive gain change amount ⁇ g from the current gain g value is set as a new gain g value (g ⁇ g ⁇ g). Further, for example, when the lower limit value g min of the gain is not set and a state where the number of consumed bits c is smaller than the number of allocated bits B continues multiple times, a value larger than a predetermined value is set as the gain change amount ⁇ g. Use.
- the newly set gain g is input to frequency domain sequence quantization section 1205.
- the truncating unit 1216 includes an amount of the consumed bit number c exceeding the allocated bit number B among the integer signal codes output from the determining unit 1207.
- a code obtained by removing only the code is output as a new integer signal code (an integer signal code having a code amount equal to or less than the allocated code amount).
- the truncation unit 1216 removes the code corresponding to the quantized normalized coefficient on the higher frequency side corresponding to the surplus c ⁇ B with respect to the allocated bit number B of the consumed bit number c from the integer signal code. Is output as a new integer signal code.
- the truncation unit 1216 outputs the integer signal code output from the determination unit 1207.
- the gain encoding unit 1217 encodes the gain output from the determination unit 1207 with a predetermined number of bits to obtain a gain code and outputs it.
- the gain adjustment encoding unit 120 divides each coefficient of the input sample sequence (the sample sequence before rearrangement or the sample sequence after rearrangement) by the gain, and the result is a sequence of integer values quantized. Loop processing is performed so that the number of bits of the integer signal code obtained by encoding a certain quantized normalized coefficient sequence is equal to or less than the allocated bit number B, which is the number of bits allocated in advance, and as large as possible. As long as the gain code corresponding to the gain g, the integer signal code, and the quantized normalized coefficient sequence corresponding to the gain g obtained by the above search are output, any method may be used.
- the gain adjustment code There is no limitation on the configuration of the conversion unit 120.
- the gain may be updated with an update amount corresponding to the difference between the bit number (or estimated bit number) of the integer signal code corresponding to the gain and the allocated bit number B.
- the number of bits of an integer signal code corresponding to the gain or the estimated number of bits (hereinafter referred to as the number of consumed bits) is larger than the allocated bit number B and the upper limit value of the gain is not set, Subtract the number of remaining samples obtained by removing the quantized normalized sample corresponding to the truncation code corresponding to the surplus of the allocated bit number of the consumed bits from the quantized normalized sample sequence
- the gain value may be updated such that the larger the value obtained in this way, the greater the increment from the value before the gain update to the value after the update.
- the “loop process” means a process of executing a predetermined process once or more until a predetermined condition is satisfied. In the loop processing, the predetermined processing may be repeated or may not be repeated.
- the integer signal code output from the gain adjustment encoding unit 120 is obtained by “encoding with an encoding method that does not use periodicity”. It corresponds to “integer signal code”.
- the integer signal code output from the gain adjustment encoding unit 120 is “integer signal obtained by encoding using an encoding method using periodicity”. It corresponds to “sign”.
- gain adjustment encoding section 120 determines that “an index indicating the degree of periodic amplitude increase (an index indicating the degree of periodicity)” is greater than or equal to a predetermined threshold or greater than a predetermined threshold (that is, periodicity If the index indicating the degree corresponds to high periodicity), the gain code corresponding to the gain for dividing each sample of the frequency domain sample sequence and each sample of the frequency domain sample sequence by the gain
- An integer signal code obtained by encoding an integer value sequence obtained by the division (sequence of integer value samples) by the “encoding method using periodicity” is obtained by loop processing.
- the gain adjustment encoding unit 120 corresponds to the gain for dividing each sample of the frequency domain sample sequence.
- the second encoding unit 130 includes an inverse rearrangement unit 131, a second variable length encoding unit 132, and a second truncation unit 133.
- ⁇ Reverse sorting unit 131> When the rearrangement unit 110 outputs the sample sequence before the rearrangement, the reverse rearrangement unit 131 outputs the quantized normalized coefficient sequence X Q (1),... Output from the gain adjustment encoding unit 120.
- X Q (N) a rearranged sample string is generated and output by performing a rearrangement corresponding to the auxiliary information specifying the rearrangement output by the rearrangement unit 110.
- the reverse rearrangement unit 131 outputs the quantized normalized coefficient sequence X Q (1),... Output from the gain adjustment encoding unit 120.
- a sample sequence before rearrangement is generated and output by performing a reverse sort to the rearrangement performed by the rearrangement unit 110.
- gain adjustment encoding section 120 outputs a gain corresponding to the gain code
- reverse rearrangement section 131 is used by weighted envelope normalization section 1003.
- a sample sequence obtained by dividing each sample of the output weighted normalized MDCT coefficient sequence by the gain output by the gain adjustment encoding unit 120 may be generated and output as a sample sequence before rearrangement.
- the reverse rearrangement unit 131 includes samples obtained by dividing each sample of the weighted normalized MDCT coefficient sequence output from the weighted envelope normalization unit 1003 by the gain generated by the gain adjustment encoding unit 120. That is, the sample string is output, and the sample string is reverse to the sample string output by the gain adjustment encoding unit 120.
- the second variable length encoding unit 132 receives the sample sequence output from the reverse rearrangement unit 131.
- the second variable length coding unit 132 performs variable length coding on the sample sequence output from the reverse rearrangement unit 131 to obtain and output a code.
- This code is called a second integer signal code.
- a method of encoding a plurality of coefficients in a sample sequence together is used.
- the second variable length coding unit 132 measures the number of bits of the second integer signal code obtained by variable length coding.
- this number of bits is referred to as a second number of consumed bits c2.
- the second truncation unit 133 when the second consumer bit number c 2 is larger than the allocated number of bits B, of the second integer signal code input, the second consumption bits c 2 exceeds the allocation bit number B A code obtained by removing the codes corresponding to the number is output as a new second integer signal code (second integer signal code having a code amount equal to or less than the allocated code amount).
- the second truncation unit 133 corresponds to the higher frequency side sample sequence (sample sequence output from the reverse rearrangement unit 131) corresponding to the surplus c 2 -B with respect to the allocated bit number B of the second consumed bit number c 2.
- the remaining code obtained by removing the code to be removed from the second integer signal code is output as a new second integer signal code.
- the second truncated section 133 outputs the second integer signal code input.
- the second integer signal code output by the second truncation unit 133 is “integer signal code obtained by encoding using an encoding method that does not use periodicity. Is equivalent to.
- the second integer signal code output by the second truncation unit 133 is “integer signal code obtained by encoding using an encoding method using periodicity”. Equivalent to.
- the second encoding unit 130 determines that the “index indicating the degree of periodic amplitude increase (index indicating the degree of periodicity)” is greater than or equal to a predetermined threshold or greater than a predetermined threshold (that is, periodicity When the index indicating the degree corresponds to high periodicity), each sample of the frequency domain sample sequence is divided by a gain corresponding to the gain code obtained by the gain adjustment encoding unit 120. A second integer signal code obtained by encoding the numerical sequence by the “encoding method not using periodicity” is output. In other cases (that is, when the index indicating the degree of periodicity corresponds to low periodicity), the second encoding unit 130 uses the gain adjustment encoding unit 120 to convert each sample of the frequency domain sample sequence. A second integer signal code obtained by encoding an integer value sequence obtained by dividing by a gain corresponding to the obtained gain code by the “encoding method using periodicity” is output.
- the comparison / selection unit 140 has the smaller total code amount between the case where the sample sequence after the rearrangement is the variable length encoding target and the case where the sample sequence before the rearrangement is the target of the variable length encoding. Output the sign.
- the comparison / selection unit 140 obtains the sum of the code amount of the integer signal code output from the gain adjustment encoding unit 120 and the code amount of the auxiliary information specifying rearrangement output from the rearrangement unit 110 as CA. Further, the comparison / selection unit 140 obtains the code amount of the second integer signal code output from the second encoding unit 130 as CB.
- the comparison / selection unit 140 obtains the code amount of the integer signal code output from the gain adjustment encoding unit 120 as CB. Further, the comparison / selection unit 140 calculates the sum of the code amount of the second integer signal code output from the second encoding unit 130 and the code amount of the auxiliary information specifying rearrangement output from the rearrangement unit 110 as CA. Asking.
- the comparison / selection unit 140 outputs the integer signal code output from the gain adjustment encoding unit 120 and the gain code output from the gain adjustment encoding unit 120 when CA> CB, and otherwise.
- the second integer signal code output from the second encoding unit 130, the gain code output from the gain adjustment encoding unit 120, and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are output.
- the auxiliary information specifying the rearrangement may be output, or the integer signal code output from the gain adjustment encoding unit 120 and the gain code output from the gain adjustment encoding unit 120 may be output.
- the gain adjustment code is included in the actual total code amount in both the case where the rearrangement unit 110 outputs the sample string after rearrangement and the case where the rearrangement unit 110 outputs the sample string before rearrangement.
- the code amount of the gain code output from the conversion unit 120 is also included.
- the code amount of the gain code when the sample sequence after rearrangement is subject to variable length encoding is the same as the code amount of the gain code when the sample sequence before rearrangement is subject to variable length encoding. It is. Therefore, the CA and CB do not include the amount of gain code.
- the code amount of the gain code may be included in each of CA and CB.
- a code sequence including a code (hereinafter referred to as a sample code) output from the comparison / selection unit 140 and a prediction coefficient code output from the power spectrum envelope coefficient sequence calculation unit 1002 is input to a decoding device (not shown).
- the decoding device decodes the code string to obtain an acoustic signal.
- a decoding method of a code string by the decoding device will be exemplified.
- the decoding apparatus decodes the prediction coefficient code for each frame to obtain the coefficients W (1),..., W (N) of the power spectrum envelope coefficient sequence. Further, the decoding device decodes the gain code to obtain a gain, decodes the integer signal code or the second integer signal code to obtain an integer value sequence, and multiplies the obtained integer value sequence by the gain to obtain a sample sequence X N ′′ (1),..., X N ′′ (N) (sample sequence before rearrangement or sample sequence after rearrangement) is obtained.
- the decoding apparatus uses the power spectrum envelope coefficient sequence W (1),..., W (N) to generate the sample sequence X N ′′ (1 ,..., X N ′′ (N) is denormalized to obtain MDCT coefficient sequences X ′ (1),.
- the inverse normalization means a reverse process of normalization performed by the weighted envelope normalization unit 1003.
- the decoding device can perform the following operation: X N ′′ (1) ⁇ W ⁇ (1),..., X N ′′ (N) Let ⁇ W ⁇ (N) be the MDCT coefficient sequence X ′ (1),..., X ′ (N).
- the decoding apparatus performs a reordering opposite to the reordering corresponding to the auxiliary information in the sample sequence X N ′′ (1),..., X N ′′ (N) , And the sample sequence obtained thereby is denormalized to obtain MDCT coefficient sequence X ′ (1),..., X ′ (N). For each frame, the decoding device converts the MDCT coefficient sequence X ′ (1),.
- a code is selected using an actual code amount.
- the code may be selected using the estimated code amount.
- An example of selecting a code using an estimated code amount will be described as a modification of the first embodiment. Below, only the difference with 1st Embodiment is demonstrated.
- FIG. 4 shows an encoding device 100 ′ according to a modification of the first embodiment.
- the encoding apparatus 100 ′ includes a gain adjustment encoding / code amount estimation unit 120 ′ instead of the gain adjustment encoding unit 120, and includes a second code amount estimation unit 130 ′ instead of the second encoding unit 130.
- the encoding apparatus 100 is the same as the encoding apparatus 100 except that a comparison / selection encoding unit 140 ′ is provided instead of the comparison / selection unit 140.
- FIG. 5 shows a gain adjustment coding / code amount estimation unit 120 ′ according to a modification of the first embodiment.
- the gain adjustment encoding / code amount estimation unit 120 ′ includes a variable length code amount estimation unit 1206 ′ instead of the variable length encoding unit 1206, a determination unit 1207 ′ instead of the determination unit 1207, and a truncation unit 1216. It is the same as the gain adjustment encoding unit 120 of the first embodiment except that a truncation unit 1216 ′ is provided instead.
- variable-length code amount estimation unit 1206 ′ estimates the number of bits of the integer signal code obtained by variable-length coding the input quantized normalized coefficient series X Q (1),..., X Q (N). (Estimated value of code amount) is obtained, and the estimated number of bits and the quantized normalized coefficient series X Q (1),..., X Q (N) are output.
- the estimated number of bits of the integer signal code obtained by the variable length code amount estimation unit 1206 ′ is referred to as the number of consumed bits c.
- ⁇ Determining unit 1207 '> When the gain update count is a predetermined count, or when the consumed bit count c measured by the variable length code amount estimation block 1206 ′ is the allocated bit count B, the determination unit 1207 ′ Output the converted coefficient series X Q (1), ..., X Q (N). When the number of gain updates is less than a predetermined number, the determination unit 1207 ′ determines that the number of consumed bits c output from the variable length code amount estimation unit 1206 ′ is greater than the allocated bit number B, and the gain lower limit setting unit 1208. However, when the consumed bit number c is smaller than the allocated bit number B, the gain upper limit setting unit 1212 controls to perform the processing described in the first embodiment. However, in the modification of the first embodiment, the number of bits allocated in advance to the code output by the comparison / selection encoding unit 140 ′ is referred to as an allocation bit number B.
- ⁇ Truncation part 1216 '> When the consumption bit number c output from the variable length code amount estimation unit 1206 ′ is not larger than the allocated bit number B, the truncation unit 1216 ′ outputs the consumption bit number c as an estimated value of the code amount of the integer signal code. If the consumed bit number c is larger than the allocated bit number B, the allocated bit number B is output as an estimated value of the code amount of the integer signal code.
- the second code amount estimation unit 130 ′ includes a reverse rearrangement unit 131 ′, a second variable length code amount estimation unit 132 ′, and a second truncation unit 133 ′.
- ⁇ Reverse sorting unit 131 '> When the rearrangement unit 110 outputs the sample sequence before rearrangement, the reverse rearrangement unit 131 ′ outputs the quantized normalized coefficient series X Q (output from the gain adjustment encoding / code amount estimation unit 120 ′. 1),..., X Q (N) are subjected to sorting corresponding to the auxiliary information specifying the sorting output by the sorting unit 110 to generate and output a sample string after sorting. To do.
- the reverse rearrangement unit 131 ′ outputs the quantized normalized coefficient sequence X Q (output from the gain adjustment encoding / code amount estimation unit 120 ′.
- X Q (N) are subjected to rearrangement reverse to the rearrangement performed by the rearrangement unit 110 to generate and output a sample string before rearrangement.
- rearrangement section 110 outputs the rearranged sample sequence
- gain adjustment coding / code amount estimation section 120 ′ outputs a gain corresponding to the gain code
- reverse rearrangement section 131 performs weighted envelope.
- a sample sequence obtained by dividing each sample of the weighted normalized MDCT coefficient sequence output from the normalization unit 1003 by the gain output from the gain adjustment encoding / code amount estimation unit 120 ′ is generated as a sample sequence before rearrangement. May be output.
- the reverse rearrangement unit 131 ′ is obtained by dividing each sample of the weighted normalized MDCT coefficient sequence output by the weighted envelope normalization unit 1003 by the gain generated by the gain adjustment encoding / code amount estimation unit 120 ′. This means that a sample sequence composed of samples to be output is output, and the presence or absence of rearrangement of the sample sequence with the sample sequence output by the gain adjustment encoding / code amount estimation unit 120 ′ is reversed.
- the second variable length code amount estimation unit 132 ′ receives the sample sequence output from the reverse rearrangement unit 131 ′.
- the second variable length code amount estimation unit 132 ′ obtains an estimated number of bits (an estimated value of the code amount) of the integer signal code obtained by variable length coding the sample sequence output from the reverse rearrangement unit 131 ′, and performs the estimation Output the number of bits.
- it referred to the number of estimated bit integer signal code obtained by the second consumption bits c 2 by a second variable length code amount estimator 132 '.
- the second truncation unit 133 ' includes a second variable length code amount estimator 132' when the second consumer bit number c 2 which is obtained is not more than the allocation bit number B, the second variable length code amount estimator 132 ' 2 is output as the estimated value of the code amount of the second integer signal code, and the second consumed bit number c 2 obtained by the second variable length code amount estimation unit 132 ′ is the allocated bit number When the number is larger than B, the allocated bit number B is output as an estimated value of the code amount of the second integer signal code.
- the comparison / selection encoding unit 140 ′ has a total code amount of the case where the sample sequence after the rearrangement is a variable length encoding target and the case where the sample sequence before the rearrangement is a variable length encoding target. The code with the smaller estimated value is output.
- the comparison / selection encoding unit 140 ′ performs the estimation value (consumption bit number c) of the integer signal code output from the gain adjustment encoding / code amount estimation unit 120 ′ and the rearrangement output from the rearrangement unit 110.
- the sum of the code amount of the auxiliary information to be specified is obtained as CA.
- the comparison / selection encoding unit 140 ′ obtains, as CB, the estimated value (second consumption bit number c 2 ) of the second integer signal code output from the second variable length code amount estimation unit 132 ′. Then, if CA> CB, the comparison / selection encoding unit 140 ′ performs gain adjustment encoding / coding amount on each sample of the sample sequence generated by the reverse rearrangement unit 131 ′, that is, the frequency domain sample sequence.
- the integer value sequence obtained by dividing by the gain corresponding to the gain code obtained by the estimation unit 120 ′ is subjected to variable length coding to obtain a second integer signal code, and the obtained second integer signal code and gain adjustment
- the gain code output from the encoding / code amount estimation unit 120 ′ is output.
- the comparison / selection encoding unit 140 ′ generates the sample sequence (quantized normalized coefficient sequence X Q (1),..., X) generated by the gain adjustment encoding / code amount estimation unit 120 ′.
- Q (N) that is, each sample of the sample sequence obtained by rearranging the frequency domain sample sequence is divided by the gain corresponding to the gain code obtained by the gain adjustment coding / code amount estimation unit 120 ′.
- the integer value sequence obtained by variable length coding is obtained to obtain an integer signal code, and the obtained integer signal code and the gain code output from the gain adjustment encoding / code amount estimation unit 120 ′ and the rearrangement unit 110 output And auxiliary information specifying the sorted sort.
- the comparison / selection coding unit 140 ′ uses the second integer signal code obtained as described above and the gain code output from the gain adjustment coding / code amount estimation unit 120 ′.
- the integer signal code obtained as described above, the gain code output from the gain adjustment encoding / code amount estimation unit 120 ′, and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 may be output. It may be output.
- the comparison / selection coding unit 140 ′ obtains the estimated value (number of consumed bits c) of the integer signal code output from the gain adjustment coding / code amount estimation unit 120 ′ as CB. Further, the comparison / selection encoding unit 140 ′ includes the estimated value (second consumption bit number c 2 ) of the code amount of the second integer signal code output from the second variable length code amount estimation unit 132 ′ and the rearrangement unit 110. The sum of the code amount of the auxiliary information for specifying the rearrangement output is obtained as CA.
- the comparison / selection encoding unit 140 ′ When CA> CB, the comparison / selection encoding unit 140 ′ generates a sample sequence (quantized normalized coefficient sequence X Q (1),) generated by the gain adjustment encoding / code amount estimation unit 120 ′. .., X Q (N)), that is, an integer obtained by dividing each sample of the frequency domain sample sequence by a gain corresponding to the gain code obtained by the gain adjustment coding / code amount estimation unit 120 ′.
- the numerical sequence is subjected to variable length coding to obtain an integer signal code, and the obtained integer signal code and the gain code output from the gain adjustment coding / code amount estimation unit 120 ′ are output.
- the comparison / selection encoding unit 140 ′ applies the gain adjustment code to each sample of the sample sequence generated by the inverse rearrangement unit 131 ′, that is, the sample sequence obtained by rearranging the frequency domain sample sequence.
- the second integer signal code obtained by variable-length coding the integer value sequence obtained by dividing by the gain corresponding to the gain code obtained by the quantization / code amount estimation unit 120 ′, and obtaining the second integer signal code
- the code and the gain code output from the gain adjustment encoding / code amount estimation unit 120 ′ and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are output.
- the comparison / selection encoding unit 140 ′ outputs the second integer signal code obtained as described above, the gain code output by the gain adjustment encoding unit 120, and the rearrangement unit 110.
- the auxiliary information specifying the rearrangement may be output, or the integer signal code obtained as described above and the gain code output by the gain adjustment encoding unit 120 may be output.
- the actual total code amount includes the code amount of the gain code output by the gain adjustment encoding / code amount estimation unit 120 '.
- the code amount of the gain code when the sample sequence after rearrangement is subject to variable length encoding is the same as the code amount of the gain code when the sample sequence before rearrangement is subject to variable length encoding. It is. Therefore, the CA and CB do not include the amount of gain code.
- the code amount of the gain code may be included in each of CA and CB.
- the comparison / selection encoding unit 140 ′ when the number of bits of the integer signal code obtained by variable length coding is larger than the number of allocated bits, includes bits of the integer signal code obtained by variable length coding. An integer signal code is output by removing the code whose number exceeds the allocated bit number B. Similarly, when the number of bits of the second integer signal code obtained by variable length coding is larger than the number of allocated bits, the comparison / selection coding unit 140 ′ uses the second integer obtained by variable length coding. Among the signal codes, the signal code with the number of bits exceeding the allocated bit number B removed is output as the second integer signal code.
- a code is selected using an actual code amount.
- the code is selected in consideration of the encoded information amount. Since the encoded information amount is obtained by subtracting the unencoded information amount from the original information amount, it can be said that the second embodiment is an example of performing selection in consideration of the unencoded information amount. .
- the second embodiment when the number of bits of at least one of the integer signal code and the second integer signal code is smaller than the allocated bit number B, some information may be encoded using the difference bit. . If any information is encoded using the difference bits, an encoding device with less distortion than the conventional technique can be realized under the condition that the number of allocated bits is B or less. Also, if encoding using the difference bits is not performed, an encoding device with a smaller amount of code than the prior art can be realized with the same distortion. Below, only the difference with 1st Embodiment is demonstrated.
- the encoding apparatus 200 includes a gain adjustment encoding unit 220 instead of the gain adjustment encoding unit 120, a second encoding unit 230 instead of the second encoding unit 130, and a comparison instead of the comparison selection unit 140.
- the encoding device 100 is the same as the encoding device 100 of the first embodiment except that the selecting unit 240 is provided and the additional encoding unit 250 is additionally provided. It is not essential to provide the additional encoding unit 250.
- the gain adjustment encoding unit 220 of the second embodiment is the same as the gain adjustment encoding unit 120 of the first embodiment except that a truncation unit 2216 is provided instead of the truncation unit 1216. .
- ⁇ Truncation part 2216> When the number of consumed bits c output from the determining unit 1207 is larger than the allocated bit number B, the truncating unit 2216 has an amount that the consumed bit number c exceeds the allocated bit number B from the integer signal code output from the determining unit 1207. A code obtained by removing the code of the number of bits (that is, cB bits) is output as a new integer signal code (integer signal code having a code amount equal to or less than the allocated code amount). On the other hand, when the consumed bit number c output from the determination unit 1207 is not greater than the allocated bit number B, the truncation unit 2216 outputs the integer signal code output from the determination unit 1207.
- the truncation unit 2216 removes the sample corresponding to the integer signal code output from the truncation unit 2216 (quantized normalized coefficient series X Q (1),..., X Q (N) by the truncation unit 2216. The sum of the absolute values of the amplitude of the sample corresponding to the code that has not been output is also output.
- the second encoding unit 230 of the second embodiment includes a second truncation unit 233 instead of the second truncation unit 133, and the second encoding unit 130 of the first embodiment. Is the same.
- ⁇ Second truncation unit 233> when the second consumer bit number c 2 of the second variable length coding unit 132 is output is greater than the allocation bit number B, the second integer the second variable length coding unit 132 is output A signal obtained by removing the code of the number of bits (that is, c 2 ⁇ B bits) for which the second consumed bit number c 2 exceeds the allocated bit number B from the signal code is a new second integer signal code (distributed code amount). 2nd integer signal code having the following code amount).
- the second truncated section 233 outputs the second integer signal code second variable length coding unit 132 is output.
- the second truncation unit 233 also includes a sample corresponding to the second integer signal code output from the second truncation unit 233 (a code that has not been removed by the second truncation unit 233 in the sample sequence output by the reverse rearrangement unit 131). The sum of the absolute values of the amplitudes of the samples corresponding to is also output.
- the comparison / selection unit 240 includes the additional encoding unit 250 among the case where the sample sequence after the rearrangement is a variable length encoding target and the case where the sample sequence before the rearrangement is a variable length encoding target.
- the code that is estimated to have less coding distortion as a whole coding apparatus is output.
- the comparison / selection unit 240 obtains the sum of the code amount of the integer signal code output from the gain adjustment encoding unit 220 and the code amount of auxiliary information specifying rearrangement output from the rearrangement unit 110 as CA. Further, the comparison / selection unit 240 obtains the code amount of the second integer signal code output from the second encoding unit 230 as CB.
- G1 ⁇ FA ⁇ (B when the sum of absolute values output by the gain adjustment encoding unit 220 is FA and the sum of absolute values output by the second encoding unit 230 is FB.
- the value of ( ⁇ CA) + FB ⁇ (B ⁇ CB) is 0 or more
- the second integer signal code output from the second encoding unit 230 and the gain code output from the gain adjustment encoding unit 220 are output.
- the value of the evaluation measure G1 is negative, the integer signal code output from the gain adjustment encoding unit 220, the gain code output from the gain adjustment encoding unit 220, and the rearrangement output from the rearrangement unit 110 are specified.
- Output auxiliary information When the value of the evaluation measure G1 is negative, the integer signal code output
- the comparison / selection unit 240 outputs the second integer signal code output from the second encoding unit 230 and the gain code output from the gain adjustment encoding unit 220.
- the integer signal code output from the gain adjustment encoding unit 220, the gain code output from the gain adjustment encoding unit 220, and auxiliary information specifying rearrangement output from the rearrangement unit 110 may be output. .
- the comparison selection unit 240 obtains the code amount of the integer signal code output from the gain adjustment encoding unit 220 as CB. Further, the comparison / selection unit 240 calculates the sum of the code amount of the second integer signal code output from the second encoding unit 230 and the code amount of auxiliary information specifying rearrangement output from the rearrangement unit 110 as CA. Asking.
- G1 ⁇ FA ⁇ (B when the absolute value sum output from the second encoding unit 230 is FA and the absolute value sum output from the gain adjustment encoding unit 220 is FB.
- the second integer signal code output from the second encoding unit 230, the gain code output from the gain adjustment encoding unit 220, and the rearrangement unit 110 Output the auxiliary information for identifying the rearrangement output, and when the value of the evaluation scale G1 is 0 or more, the integer signal code output by the gain adjustment encoding unit 220 and the gain adjustment encoding unit 220 output The gain code is output.
- the comparison / selection unit 240 outputs the second integer signal code output from the second encoding unit 230 and the gain code output from the gain adjustment encoding unit 220 to the rearrangement unit 110. May output the auxiliary information specifying the rearrangement output by the control unit, or may output the integer signal code output from the gain adjustment encoding unit 220 and the gain code output from the gain adjustment encoding unit 220. .
- the total code amount includes the code amount of the gain code output from the gain adjustment encoding unit 220.
- the code amount of the gain code when the sample sequence after rearrangement is subject to variable length encoding is the same as the code amount of the gain code when the sample sequence before rearrangement is subject to variable length encoding. It is. Therefore, the CA and CB do not include the amount of gain code.
- the code amount of the gain code may be included in each of CA and CB.
- the number of samples removed without being encoded by the truncation unit 2216 or the second truncation unit 233 is also considered. In this case, it is preferable that the number of samples encoded without being removed is large and the code amount is small.
- the number of remaining bits (B-CA) when the sample sequence after the rearrangement is to be encoded is assigned to a code representing the correction of the encoding error or gain of the integer signal code or the second integer signal code.
- the encoding distortion EA of the integer code string or the second integer code string can be described as in Expression (4) and approximated as in Expression (5).
- EA DA + FA ⁇ exp ( ⁇ (B ⁇ CA) ⁇ ⁇ ) (4) EA ⁇ DA + FA ⁇ (1 ⁇ (B ⁇ CA) ⁇ ⁇ ) (5)
- DA is the absolute value of the amplitude of the sample removed by the truncation unit 2216 or the second truncation unit 233 from the integer value sequence obtained by dividing the rearranged sample sequence output from the rearrangement unit 110 by the gain.
- DB is the absolute value of the amplitude of the sample removed by the truncation unit 2216 or the second truncation unit 233 from the integer value sequence obtained by dividing the sample sequence before rearrangement output by the rearrangement unit 110 by the gain.
- ⁇ is a predetermined positive value.
- the number of remaining bits (B-CB) when the sample sequence before rearrangement is to be encoded is assigned to a code representing the correction of the encoding error or gain of the integer signal code or the second integer signal code.
- the encoding distortion EB of the integer code string or the second integer code string can be described as in Expression (6) and approximated as in Expression (7).
- EB DB + FB ⁇ exp ( ⁇ (B ⁇ CB) ⁇ ⁇ ) (6)
- the encoding distortion of the encoding apparatus 200 as a whole is greater when the sample sequence after rearrangement is the target of encoding than when the sample sequence before rearrangement is the target of encoding. It can be said that it is small.
- the additional encoding unit 250 encodes the gain or integer signal sequence (quantum) corresponding to the code output from the comparison / selection unit 240 out of the encoding error up to the comparison / selection unit 240, that is, the information included in the weighted normalized MDCT coefficient sequence.
- Information not included in the sample sequence in the normalized normalized coefficient sequence or the sample sequence in the sequence obtained by performing the reverse sorting on the quantized normalized coefficient sequence by the sorting unit 110 To obtain a code, and outputs the obtained code as an additional code.
- the additional encoding unit 250 encodes information that does not correspond to any of the integer signal code or the second integer signal code and the gain code output from the comparison / selection unit 240 among the information included in the weighted normalized MDCT coefficient sequence. Output the additional code obtained.
- the additional encoding unit 250 encodes one or a plurality of samples included in the sample string due to the encoding error up to the comparison / selection unit 240 to obtain a code, and outputs the obtained code as an additional code.
- the sample sequence due to the encoding error up to the comparison and selection unit 240 is a value obtained by multiplying the sample of the integer signal sequence corresponding to the sample from the value of each sample of the weighted normalized MDCT coefficient sequence by the gain.
- the additional encoding unit 250 multiplies the value of each sample of the weighted normalized MDCT coefficient sequence and the sample in the integer signal sequence corresponding to the sample by the addition value of the gain and the gain correction value.
- the code corresponding to the gain correction value that minimizes the error between the sample string obtained by subtracting the values and the sample string is output as an additional code.
- the number of bits of the additional code is, for example, not more than a value obtained by subtracting the number of bits of the integer signal code or the second integer signal code output from the comparison / selection unit 240 from the allocated bit number B.
- the code is selected using the actual code amount.
- the code may be selected using the estimated code amount.
- An example of selecting a code using an estimated code amount will be described as a modification of the second embodiment. Below, only the difference with the modification of 1st Embodiment and 2nd Embodiment is demonstrated.
- FIG. 7 shows an encoding apparatus 200 ′ according to a modification of the second embodiment.
- the encoding device 200 ′ includes a gain adjustment encoding / code amount estimation unit 220 ′ instead of the gain adjustment encoding unit 220, and includes a second code amount estimation unit 230 ′ instead of the second encoding unit 230.
- the encoding apparatus 200 is the same as the encoding apparatus 200 except that a comparison / selection encoding unit 240 ′ is provided instead of the comparison / selection encoding unit 240.
- the gain adjustment coding / code amount estimation unit 220 ′ includes a variable length code amount estimation unit 1206 ′ instead of the variable length coding unit 1206. It is the same as the gain adjustment encoding unit 220 of the second embodiment except that it includes a determination unit 1207 ′ instead of the unit 1207 and a truncation unit 2216 ′ instead of the truncation unit 2216.
- the truncation unit 2216 ′ When the consumption bit number c output from the variable length code amount estimation unit 1206 ′ is not larger than the allocated bit number B, the truncation unit 2216 ′ outputs the consumption bit number c as an estimated value of the code amount of the integer signal code. When the consumed bit number c is larger than the allocated bit number B, the allocated bit number B is output as an estimated value of the code amount of the integer signal code. Further, the truncation unit 2216 ′ also outputs the absolute value sum of the amplitudes of the samples corresponding to the estimated value of the code amount of the integer signal code output from the truncation unit 2216 ′ (that is, the sample encoded into the integer signal code). .
- the second code amount estimation unit 230 ′ includes a reverse rearrangement unit 131 ′, a second variable length code amount estimation unit 132 ′, and a second truncation unit 233 ′.
- the second truncation unit 233 ' includes a second variable length code amount estimator 132' when the second consumer bit number c 2 which is obtained is not more than the allocation bit number B, the second variable length code amount estimator 132 ' 2 is output as the estimated value of the code amount of the second integer signal code, and the second consumed bit number c 2 obtained by the second variable length code amount estimation unit 132 ′ is the allocated bit number When the number is larger than B, the allocated bit number B is output as the estimated value of the code amount of the second integer signal code.
- the second truncation unit 233 ′ outputs the absolute value of the amplitude of the sample corresponding to the estimated value of the code amount of the integer signal code output from the second truncation unit 233 ′ (that is, the sample encoded into the integer signal code). The sum is also output.
- the comparison / selection encoding unit 240 ′ includes an additional encoding unit among a case where the sample sequence after the rearrangement is a variable length encoding target and a case where the sample sequence before the rearrangement is a target of variable length encoding.
- the code that is estimated to have less coding distortion as a whole coding apparatus 200 ′ is output.
- the comparison / selection encoding unit 240 ′ is a code of the auxiliary information that specifies the estimation value of the integer signal code output from the gain adjustment encoding / code amount estimation unit 220 ′ and the rearrangement output from the rearrangement unit 110. The total of the quantity is obtained as CA. Also, the comparison / selection encoding unit 240 ′ obtains the estimated value of the code amount of the second integer signal code output from the second code amount estimation unit 230 ′ as CB.
- the comparison / selection encoding unit 240 ′ uses FA as the absolute value sum output from the gain adjustment encoding / code amount estimation unit 220 ′ and FB as the absolute value sum output from the second code amount estimation unit 230 ′.
- the value of the evaluation scale G1 ⁇ FA ⁇ (B ⁇ CA) + FB ⁇ (B ⁇ CB) is 0 or more
- the sample sequence generated by the reverse rearrangement unit 131 ′ that is, the frequency domain sample sequence
- the obtained second integer signal code and the gain code output by the gain adjustment encoding / code amount estimation unit 220 ′ are output.
- the comparison / selection encoding unit 240 ′ rearranges the sample sequence generated by the gain adjustment encoding / code amount estimation unit 220 ′, that is, the frequency domain sample sequence.
- the integer signal sequence obtained by dividing each sample of the obtained sample sequence by the gain corresponding to the gain code obtained by the gain adjustment coding / code amount estimation unit 220 ′ is variable-length coded to obtain the integer signal code.
- the obtained integer signal code, the gain code output from the gain adjustment encoding / code amount estimation unit 220 ′, and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are output.
- the comparison / selection encoding unit 240 ′ outputs the gain output from the second integer signal code and the gain adjustment encoding / code amount estimation unit 220 ′ obtained as described above.
- the code may be output, or the integer signal code obtained as described above, the gain code output from the gain adjustment encoding / code amount estimation unit 220 ′, and the rearrangement output from the rearrangement unit 110 are specified. Auxiliary information may be output.
- the comparison / selection coding unit 240 ′ obtains the estimated value of the code amount of the integer signal code output from the gain adjustment coding / code amount estimation unit 220 ′ as CB. Further, the comparison / selection encoding unit 240 ′ includes the estimated value of the code amount of the second integer signal code output from the second code amount estimation unit 230 ′ and the auxiliary information for specifying the rearrangement output from the rearrangement unit 110. The total of the code amount is obtained as CA.
- Two integer signal codes are obtained, and the obtained second integer signal code, the gain code output from the gain adjustment encoding / code amount estimation unit 220 ′, and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are obtained. Output.
- the comparison / selection encoding unit 240 ′ performs gain adjustment on the sample sequence generated by the gain adjustment encoding / code amount estimation unit 220 ′, that is, the frequency domain sample sequence.
- the gain code output from the adjustment encoding / code amount estimation unit 220 ′ is output.
- the comparison / selection encoding unit 240 ′ outputs the gain output from the second integer signal code and the gain adjustment encoding / code amount estimation unit 220 ′ obtained as described above.
- the code and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 may be output, or the integer signal code obtained as described above and the gain adjustment encoding / code amount estimation unit 220 ′ output A gain code may be output.
- the total code amount includes the code amount of the gain code output from the gain adjustment encoding / code amount estimation unit 220 '.
- the code amount of the gain code when the sample sequence after rearrangement is subject to variable length encoding is the same as the code amount of the gain code when the sample sequence before rearrangement is subject to variable length encoding. It is. Therefore, the CA and CB do not include the amount of gain code.
- the code amount of the gain code may be included in each of CA and CB.
- the comparison / selection encoding unit 240 ′ when the number of bits of the integer signal code obtained by variable-length coding is larger than the number of allocated bits, includes bits of the integer signal code obtained by variable-length coding. An integer signal code is output by removing the code whose number exceeds the allocated bit number B. Similarly, if the number of bits of the second integer signal code obtained by variable length coding is larger than the number of allocated bits, the comparison / selection coding unit 240 ′ uses the second integer obtained by variable length coding. Among the signal codes, the signal code with the number of bits exceeding the allocated bit number B removed is output as the second integer signal code.
- the third embodiment Similar to the second embodiment, the third embodiment also selects a code in consideration of the encoded information amount. However, in the third embodiment, a code is selected using an evaluation scale different from that in the second embodiment. Below, only the difference with 2nd Embodiment is demonstrated.
- the encoding apparatus 300 includes a gain adjustment encoding unit 320 instead of the gain adjustment encoding unit 220, and the second encoding unit replaces the second encoding unit 230.
- the coding apparatus 200 is the same as the coding apparatus 200 of the second embodiment except that the coding unit 200 is provided, and the comparison / selection unit 340 is provided instead of the comparison / selection unit 240.
- the gain adjustment encoding unit 320 of the third embodiment is the same as the gain adjustment encoding unit 220 of the second embodiment except that a truncation unit 3216 is provided instead of the truncation unit 2216. .
- ⁇ Truncation part 3216 When the number of consumed bits c output from the determining unit 1207 is greater than the allocated bit number B, the truncating unit 3216 increases the consumed bit number c from the integer signal code output from the determining unit 1207 over the allocated bit number B. A code obtained by removing the code of the number of bits (that is, cB bits) is output as a new integer signal code (integer signal code having a code amount equal to or less than the allocated code amount). On the other hand, when the consumed bit number c output from the determination unit 1207 is not greater than the allocated bit number B, the truncation unit 3216 outputs the integer signal code output from the determination unit 1207. The truncation unit 3216 also outputs the absolute value sum of the amplitudes of the samples corresponding to the codes removed by the truncation unit 3216.
- the second encoding unit 330 of the third embodiment includes a second truncation unit 333 instead of the second truncation unit 233, and the second encoding unit 230 of the second embodiment. Is the same.
- the second truncation unit 333 when the second consumer bit number c 2 of the second variable length coding unit 132 is output is greater than the allocation bit number B, the second integer the second variable length coding unit 132 is output A signal obtained by removing the code of the number of bits corresponding to the second consumed bit number c 2 exceeding the allocated bit number B (that is, c 2 -B bits) from the signal code is a new second integer signal code (distributed code amount). (Second integer signal code) having the following code amount).
- the second truncated section 333 outputs the second integer signal code second variable length coding unit 132 is output.
- the second truncation unit 333 also outputs the absolute value sum of the amplitudes of the samples corresponding to the codes removed by the second truncation unit 333.
- the comparison selection unit 340 includes the additional encoding unit 250 among the case where the sample sequence after the rearrangement is a variable length encoding target and the case where the sample sequence before the rearrangement is a variable length encoding target.
- the code that is estimated to have less coding distortion as a whole coding apparatus 300 is output.
- the comparison / selection unit 340 obtains the sum of the code amount of the integer signal code output from the gain adjustment encoding unit 320 and the code amount of auxiliary information specifying the rearrangement output from the rearrangement unit 110 as CA. Further, the comparison / selection unit 340 obtains the code amount of the second integer signal code output from the second encoding unit 330 as CB.
- the comparison / selection unit 340 includes the absolute value sum of the amplitude of the sample corresponding to the code removed by the truncation unit 3216, the DB the absolute value sum of the amplitude of the sample corresponding to the code removed by the second truncation unit 333, DB,
- the second integer signal code and gain output from the second encoding unit 330 The gain code output from the adjustment encoding unit 320 is output.
- the value of the evaluation measure G2 is negative, the integer signal code output from the gain adjustment encoding unit 320 and the gain output from the gain adjustment encoding unit 320 are output.
- the code and the auxiliary information specifying the rearrangement output by the rearrangement unit 110 are output.
- the comparison / selection unit 340 outputs the second integer signal code output from the second encoding unit 330 and the gain code output from the gain adjustment encoding unit 320.
- the integer signal code output from the gain adjustment encoding unit 320, the gain code output from the gain adjustment encoding unit 320, and auxiliary information specifying rearrangement output from the rearrangement unit 110 may be output. .
- the comparison selection unit 340 obtains the code amount of the integer signal code output from the gain adjustment encoding unit 320 as CB. Further, the comparison / selection unit 340 calculates the sum of the code amount of the second integer signal code output from the second encoding unit 330 and the code amount of the auxiliary information specifying rearrangement output from the rearrangement unit 110 as CA. Asking.
- the comparison / selection unit 340 includes the absolute value sum of the amplitude of the sample corresponding to the code removed by the second truncation unit 333, DA, and the absolute value sum of the amplitude of the sample corresponding to the code removed by the truncation unit 3216, DB,
- the second integer signal code output by the second encoding unit 330 and gain adjustment The gain code output from the encoding unit 320 and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are output.
- the total code amount includes the code amount of the gain code output from the gain adjustment encoding unit 320.
- the code amount of the gain code when the sample sequence after rearrangement is subject to variable length encoding is the same as the code amount of the gain code when the sample sequence before rearrangement is subject to variable length encoding. It is. Therefore, the CA and CB do not include the amount of gain code.
- the code amount of the gain code may be included in each of CA and CB.
- the code is selected using the actual code amount.
- the code may be selected using the estimated code amount.
- An example of selecting a code using an estimated code amount will be described as a modification of the third embodiment. Below, only the difference with the modification of 1st Embodiment and 3rd Embodiment is demonstrated.
- an encoding apparatus 300 ′ includes a gain adjustment encoding / code amount estimation unit 320 ′ instead of the gain adjustment encoding unit 320, and includes a second encoding.
- the coding apparatus 300 is the same as the coding apparatus 300 except that a second code amount estimation unit 330 ′ is provided instead of the unit 330, and a comparison selection coding unit 340 ′ is provided instead of the comparison selection coding unit 340.
- the gain adjustment coding / code amount estimation unit 320 ′ includes a variable length code amount estimation unit 1206 ′ instead of the variable length coding unit 1206, and is determined. It is the same as the gain adjustment encoding unit 320 of the third embodiment except that it includes a determination unit 1207 ′ instead of the unit 1207 and a truncation unit 3216 ′ instead of the truncation unit 3216.
- the truncation unit 3216 ′ When the consumption bit number c output from the variable length code amount estimation unit 1206 ′ is not greater than the allocated bit number B, the truncation unit 3216 ′ outputs the consumption bit number c as an estimated value of the code amount of the integer signal code. When the consumed bit number c is larger than the allocated bit number B, the allocated bit number B is output as an estimated value of the code amount of the integer signal code. Further, the truncation unit 3216 ′ uses the truncation unit 3216 from the sample corresponding to the consumption bit number c output from the variable length code amount estimation unit 1206 ′ (that is, the sample encoded into the integer signal code having the consumption bit number c). The absolute value sum of the amplitudes of the samples obtained by removing the sample corresponding to the estimated value of the code amount of the integer signal code output by '(ie, the sample encoded by the integer signal code) is also output.
- the second code amount estimation unit 330 ′ includes a reverse rearrangement unit 131 ′, a second variable length code amount estimation unit 132 ′, and a second truncation unit 333 ′.
- the second truncation unit 333 ' includes a second variable length code amount estimator 132' when the second consumer bit number c 2 which is obtained is not more than the allocation bit number B, the second variable length code amount estimator 132 ' 2 is output as the estimated value of the code amount of the second integer signal code, and the second consumed bit number c 2 obtained by the second variable length code amount estimation unit 132 ′ is the allocated bit number When the number is larger than B, the allocated bit number B is output as the estimated value of the code amount of the second integer signal code.
- the second truncation unit 333 ′ generates a sample corresponding to the second number of consumed bits c 2 output from the second variable length code amount estimating unit 132 ′ (that is, the second integer signal code having the second number of consumed bits c 2 ).
- Sample corresponding to the estimated value of the code amount of the second integer signal code output from the second truncation unit 333 ′ ie, the sample encoded into the second integer signal code
- the absolute value sum of the amplitudes of the samples obtained by removing is also output.
- the comparison / selection encoding unit 340 ′ includes an additional encoding unit among a case where the sample sequence after the rearrangement is a variable length encoding target and a case where the sample sequence before the rearrangement is a variable length encoding target.
- the code that is estimated to have less coding distortion as a whole of the coding apparatus 300 ′ including 250 is output.
- the comparison / selection encoding unit 340 ′ uses the estimated value of the code amount of the integer signal code output from the gain adjustment encoding / code amount estimation unit 320 ′ and the code of the auxiliary information specifying the rearrangement output from the rearrangement unit 110. The total of the quantity is obtained as CA. Further, the comparison / selection encoding unit 340 ′ obtains the estimated value of the code amount of the second integer signal code output from the second code amount estimation unit 330 ′ as CB.
- the comparison / selection encoding unit 340 ′ uses the absolute value sum output from the truncation unit 3216 ′ as DA, the absolute value sum output from the second truncation unit 333 ′ as DB, and a predetermined positive value as ⁇ .
- the gain adjustment code is applied to each sample of the sample sequence generated by the reverse rearrangement unit 131 ′, that is, the frequency domain sample sequence.
- the code and the gain code output by the gain adjustment encoding / code amount estimation unit 320 ′ are output.
- the comparison / selection encoding unit 340 ′ rearranges the sample sequence generated by the gain adjustment encoding / code amount estimation unit 320 ′, that is, the frequency domain sample sequence.
- the integer value sequence obtained by dividing each sample of the obtained sample sequence by the gain corresponding to the gain code obtained by the gain adjustment coding / code amount estimation unit 320 ′ is variable-length coded to obtain the integer signal code.
- the obtained integer signal code, the gain code output from the gain adjustment encoding / code amount estimation unit 320 ′, and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are output.
- the comparison / selection encoding unit 340 ′ outputs the gain output from the second integer signal code and the gain adjustment encoding / code amount estimation unit 320 ′ obtained as described above.
- the code may be output, or the integer signal code obtained as described above, the gain code output from the gain adjustment encoding / code amount estimation unit 320 ′, and the rearrangement output from the rearrangement unit 110 are specified.
- Auxiliary information may be output.
- the comparison / selection encoding unit 340 ′ obtains the estimated value of the code amount of the integer signal code output from the gain adjustment encoding / code amount estimation unit 320 ′ as CB. Further, the comparison / selection encoding unit 340 ′ includes the estimated value of the code amount of the second integer signal code output from the second code amount estimation unit 330 ′ and the auxiliary information for specifying the rearrangement output from the rearrangement unit 110. The total of the code amount is obtained as CA.
- the comparison / selection encoding unit 340 ′ uses the sum of absolute values output from the second truncation unit 333 ′ as DA, the sum of absolute values output from the truncation unit 3216 ′ as DB, and a predetermined positive value as ⁇ .
- the sample sequence generated by the reverse rearrangement unit 131 ′ that is, the sample obtained by rearranging the frequency domain sample sequence
- the integer value sequence obtained by dividing each sample of the sequence by the gain corresponding to the gain code obtained by the gain adjustment coding / code amount estimation unit 320 ′ is variable-length coded to obtain an integer signal code.
- the obtained integer signal code, the gain code output from the gain adjustment encoding / code amount estimation unit 320 ′, and the auxiliary information specifying the rearrangement output from the rearrangement unit 110 are output.
- the comparison / selection encoding unit 340 ′ uses the sample sequence generated by the gain adjustment encoding / code amount estimation unit 320 ′, that is, each sample of the frequency domain sample sequence. Obtained by dividing the integer value sequence obtained by dividing the gain by the gain corresponding to the gain code obtained by the gain adjustment coding / code amount estimation unit 320 ′ to obtain the second integer signal code.
- the second integer signal code and the gain code output by the gain adjustment encoding / code amount estimation unit 320 ′ are output.
- the comparison / selection encoding unit 340 ′ outputs the gain output from the second integer signal code and the gain adjustment encoding / code amount estimation unit 320 ′ obtained as described above.
- the code and the auxiliary information specifying the rearrangement output by the rearrangement unit 110 may be output, or the integer signal code obtained as described above and the gain adjustment encoding / code amount estimation unit 320 ′ output A gain code may be output.
- the total code amount includes the code amount of the gain code output from the gain adjustment encoding / code amount estimation unit 320 '.
- the code amount of the gain code when the sample sequence after rearrangement is subject to variable length encoding is the same as the code amount of the gain code when the sample sequence before rearrangement is subject to variable length encoding. It is. Therefore, the CA and CB do not include the amount of gain code.
- the code amount of the gain code may be included in each of CA and CB.
- the comparison / selection coding unit 340 ′ when the number of bits of the integer signal code obtained by variable length coding is larger than the number of allocated bits, includes bits of the integer signal code obtained by variable length coding. An integer signal code is output by removing the code whose number exceeds the allocated bit number B.
- the comparison / selection encoding unit 340 ′ when the number of bits of the second integer signal code obtained by variable length coding is larger than the number of allocated bits, is the second integer obtained by variable length coding.
- the signal code with the number of bits exceeding the allocated bit number B removed is output as the second integer signal code.
- the present invention is not limited to the above-described embodiment.
- at least one of CA and CB may not include the code amount of the auxiliary information that specifies the rearrangement.
- the processing that is executed when the value of the evaluation scale is negative is executed when the value of the evaluation scale is 0 or less, and the value of the evaluation scale is You may perform the process performed when it is 0 or more, when the value of an evaluation scale is positive.
- the gain upper limit setting unit when the number of consumed bits is smaller than the number of allocated bits, the gain upper limit setting unit is processed, and when the number of consumed bits is equal to the number of allocated bits, the determination unit outputs a gain or the like. It was. However, the processing of the gain upper limit setting unit may be performed when the number of consumed bits is not larger than the number of allocated bits.
- the frequency domain sample sequence corresponds to the periodicity feature amount or an integer multiple thereof.
- An example has been described in which a sample sequence in which a sample sequence in the frequency domain is rearranged is divided by a gain so that samples to be processed and samples in the vicinity thereof are grouped on the low frequency side.
- the encoding apparatus 100 according to the first embodiment including these has a configuration equivalent to that in FIG. 10 after all.
- the rearrangement unit 110 includes a periodicity analysis unit 1101 and a rearrangement processing unit 1102.
- the periodicity analysis unit 1101 uses the weighted normalized MDCT coefficient sequence (“frequency domain sample sequence” or simply “sample sequence”) output from the weighted envelope normalization unit 1003 and uses the weighting normalized MDCT coefficient sequence as an index indicating the degree of periodicity. calculate.
- the rearrangement processing unit 1102 is described in the first embodiment when the index indicating the degree of periodicity calculated by the periodicity analysis unit 1101 is larger than a predetermined threshold (when corresponding to high periodicity).
- the sample sequence obtained by performing the sample sequence rearrangement process by the rearrangement unit 110 is output. Further, when the index indicating the degree of periodicity is equal to or less than a predetermined threshold (when corresponding to low periodicity), the sample sequence before rearrangement, that is, the sample output from the weighted envelope normalization unit 1003 is displayed. Output.
- the gain adjustment encoding unit 120 uses periodicity when the index indicating the degree of periodicity calculated by the periodicity analysis unit 1101 is larger than a predetermined threshold (when corresponding to high periodicity).
- a predetermined threshold when an integer signal code and a gain code obtained by encoding a sample sequence by an encoding method are output, and an index indicating the degree of periodicity calculated by the periodicity analysis unit 1101 is equal to or less than a predetermined threshold (the periodicity is When it is low), an integer signal code and a gain code obtained by encoding the sample sequence by an encoding method that does not use periodicity are output.
- the first encoding unit 1200 including the rearrangement processing unit 1102 and the gain adjustment encoding unit 120 has a frequency domain index when the index indicating the degree of periodicity corresponds to high periodicity.
- a gain code corresponding to the gain for dividing each sample of the sample sequence, and a sequence of integer value samples obtained by dividing each sample of the frequency domain sample sequence by the gain are encoded by an encoding method using periodicity.
- the integer signal code obtained by the conversion is obtained by loop processing.
- the first encoding unit 1200 includes a gain code corresponding to a gain for dividing each sample of the frequency domain sample sequence, Then, an integer signal code obtained by encoding a sequence of integer value samples obtained by dividing each sample of the frequency domain sample sequence by a gain by an encoding method that does not use periodicity is obtained by loop processing.
- the reverse rearrangement unit 131 has been described in the rearrangement unit 110 when the index indicating the degree of periodicity calculated by the periodicity analysis unit 1101 is equal to or less than a predetermined threshold (corresponding to low periodicity).
- a predetermined threshold corresponding to low periodicity
- a sample string obtained by rearranging the sample strings is output.
- the reverse rearrangement unit 131 performs the pre-reordering, that is, weighted envelope normalization unit
- the sample string output by 1003 is output. That is, in the reverse rearrangement unit 131 and the rearrangement processing unit 1102, the relationship between the output sample sequence and the index indicating the degree of periodicity is reversed.
- the second encoding unit 130 composed of the reverse rearrangement unit 131, the second variable length encoding unit 132, and the second truncation unit 133 corresponds to the fact that the index indicating the degree of periodicity is low in periodicity.
- the periodicity of the sequence of integer samples obtained by dividing each sample of the frequency domain sample sequence by the gain and the gain code corresponding to the gain for dividing each sample of the frequency domain sample sequence.
- an integer signal code obtained by encoding using an encoding method using the above.
- the second encoding unit 130 includes a gain code corresponding to a gain for dividing each sample of the frequency domain sample sequence, Then, an integer signal code obtained by encoding a sequence of integer value samples obtained by dividing each sample of the frequency domain sample sequence by a gain by an encoding method that does not use periodicity is obtained by loop processing.
- the first encoding unit 1200 and the second encoding unit 130 determine the encoding method to be executed (the encoding method using periodicity or the encoding method not using periodicity) and the degree of periodicity. The relationship with the indicated index is reversed.
- the “encoding method using periodicity” is described as an example of a method of encoding a sample sequence in which the frequency domain sample sequences are rearranged.
- other encoding methods using periodicity are described. May be used.
- a configuration as shown in FIG. 11 may be used.
- the first encoding unit 1200 of the encoding device 100 illustrated in FIG. 10 is replaced with the first encoding unit 4200, and the second encoding unit 130 is the second encoding unit. 430 is substituted.
- the first encoding unit 4200 includes a gain adjustment encoding unit 420, and the second encoding unit 430 includes a second variable length encoding unit 432 and a second truncation unit 133.
- the rearrangement processing unit and the reverse rearrangement unit Does not have.
- FIG. 12 illustrates a detailed configuration of the gain adjustment encoding unit 420 in FIG.
- the gain adjustment encoding unit 420 is obtained by replacing the variable length encoding unit 1206 of the gain adjustment encoding unit 120 of FIG. 3 with a variable length encoding unit 4206.
- the variable length encoding unit 4206 is a code using periodicity. Otherwise, the same processing as that of the variable length coding unit 1206 in FIG. 3 is performed.
- the encoding method using the periodicity exemplified here is an encoding method based on the interval T, and the input frequency domain sample sequence is encoded without being rearranged, and the code sequence obtained thereby is encoded. Output. Below, the encoding method using this periodicity is demonstrated.
- the variable length coding unit 4206 includes one or a plurality of consecutive samples including samples corresponding to the interval T in the input frequency domain sample sequence, and an integer multiple of the interval T in the frequency domain sample sequence.
- a sample group Gr1 including all or a part of one or a plurality of consecutive samples including the sample corresponding to, and a sample group Gr2 including samples not included in the sample group Gr1 in the frequency domain sample sequence; Are encoded according to different criteria (differentiated), and the resulting code string is output.
- sample groups Gr1, Gr2 “One or a plurality of consecutive samples including samples corresponding to the interval T in the sample sequence in the frequency domain and one or a sequence including samples corresponding to an integer multiple of the interval T in the sample sequence in the frequency domain”
- a group of such samples is the sample group Gr1.
- a set of sample groups of three samples F (nT-1), F (nT), and F (nT + 1) is an example of the sample group Gr1.
- n represents each integer from 1 to 5
- a group consisting of (4T), F (4T + 1) and the fifth sample group F (5T-1), F (5T), F (5T), F (5T + 1) is the sample group Gr1.
- a group of samples not included in the sample group Gr1 in the sample sequence input to the variable length coding unit 4206 is the sample group Gr2.
- n represents each integer from 1 to 5
- fifth A group consisting of sample sets F (4T + 2),..., F (5T-2) and sixth sample sets F (5T + 2),... F (jmax) is an example of the sample group Gr2.
- the interval T is a decimal number, for example, F (R (nT-1)), F (R (nT)), F (R (nT + 1))
- the set of sample groups may be the sample group Gr1.
- R (nT) is a value obtained by rounding off nT.
- the number of samples and the sample index included in each sample group constituting the sample group Gr1 may be variable, or a plurality of combinations of the number of samples and the sample index included in each sample group constituting the sample group Gr1 are different.
- Information indicating one selected from the options may be output as auxiliary information (first auxiliary information).
- the sample group Gr1 and the sample group Gr2 are encoded according to different criteria without rearranging the samples included in the sample groups Gr1 and Gr2, and thus obtained. Output the code string.
- the samples included in the sample group Gr1 have an average larger amplitude than the samples included in the sample group Gr2.
- the samples included in the sample group Gr1 are variable-length-encoded according to the magnitude of the amplitudes of the samples included in the sample group Gr1 or a reference corresponding to the estimated value, and the amplitudes of the samples included in the sample group Gr2 are encoded.
- the samples included in the sample group Gr2 are subjected to variable length coding according to a criterion corresponding to the estimated value.
- variable length coding unit 4206 performs the rice coding of the samples included in the sample group Gr1 for each sample using the Rice parameter corresponding to the magnitude of the amplitude of the samples included in the sample group Gr1 or the estimated value thereof. To do. Further, the variable length coding unit 4206 uses the Rice parameter corresponding to the amplitude of the sample included in the sample group Gr2 or the estimated value of the sample to encode the samples included in the sample group Gr2 for each sample. A code string obtained by the rice coding and auxiliary information for specifying the rice parameters are output.
- variable length coding unit 4206 obtains the Rice parameter of the sample group Gr1 in the frame from the average amplitude of the samples included in the sample group Gr1 in each frame.
- variable length coding unit 4206 obtains the rice parameter of the sample group Gr2 in the frame from the average amplitude of the samples included in the sample group Gr2 in each frame.
- the Rice parameter is an integer greater than or equal to zero.
- the variable length coding unit 4206 performs the rice coding of the samples included in the sample group Gr1 using the Rice parameter of the sample group Gr1 in each frame, and the samples included in the sample group Gr2 using the Rice parameter of the sample group Gr2. Rice-encoded. As a result, the average code amount can be reduced. This will be described in detail below.
- the code obtained by subjecting the sample X (k) included in the sample group Gr1 to the Rice coding for each sample is a quotient q obtained by dividing the sample X (k) by a value corresponding to the Rice parameter s of the sample group Gr1. It includes prefix (k) obtained by alpha-coding (k) and sub (k) for specifying the remainder. That is, the code corresponding to the sample X (k) in this example includes prefix (k) and sub (k). Note that the sample X (k) to be subjected to Rice encoding is expressed as an integer.
- Expressions (B1) to (B4) are standardized to express the quotient q (k) as follows.
- indicates the absolute value of •.
- q (k) floor ⁇ (2 ⁇
- -z) / 2 s ⁇ (z 0 or 1 or 2)
- prefix (k) is a code obtained by alpha-coding the quotient q (k), and the code amount can be expressed as follows using equation (B7). floor ⁇ (2 ⁇
- S ′ that represents the partial differential result for s in equation (B10) is expressed as s ′.
- s' log 2 ⁇ ln2 ⁇ (2 ⁇ D /
- s' log 2 ⁇ ln2 ⁇ (2 ⁇ D /
- the Rice parameter s corresponds to the average amplitude D /
- the Rice parameter for the sample group Gr1 is obtained from the average amplitude of the samples included in the sample group Gr1
- the sample group Gr2 is calculated from the average amplitude of the samples included in the sample group Gr2.
- the total coding amount can be minimized by obtaining the rice parameters for and performing the rice coding by distinguishing the sample group Gr1 and the sample group Gr2.
- auxiliary information for specifying rice parameters When the rice parameter corresponding to the sample group Gr1 and the rice parameter corresponding to the sample group Gr2 are distinguished from each other, auxiliary information (third auxiliary information) for specifying the rice parameter corresponding to the sample group Gr1 is determined on the decoding side.
- the auxiliary information (fourth auxiliary information) for specifying the rice parameter corresponding to the sample group Gr2 is required. Therefore, the variable length coding unit 4206 may output the third auxiliary information and the fourth auxiliary information in addition to the code string formed by the code obtained by performing the rice coding of the sample string for each sample.
- Example 2 of auxiliary information for specifying rice parameters When the acoustic signal is to be encoded, the average amplitude of the samples included in the sample group Gr1 is larger than the average amplitude of the samples included in the sample group Gr2, and the rice corresponding to the sample group Gr1 The parameter is larger than the Rice parameter corresponding to the sample group Gr2. By utilizing this fact, it is possible to reduce the code amount of the auxiliary information for specifying the Rice parameter.
- variable length coding unit 4206 may output only one of the third auxiliary information and the fourth auxiliary information in addition to the code string.
- Example 3 of auxiliary information for specifying rice parameters Information that can identify the Rice parameter corresponding to the sample group Gr1 alone is the fifth auxiliary information, and information that can identify the difference between the Rice parameter corresponding to the sample group Gr1 and the Rice parameter corresponding to the sample group Gr2 is the sixth auxiliary information. It is good. On the contrary, information that can specify the rice parameter corresponding to the sample group Gr2 alone is the sixth auxiliary information, and information that can specify the difference between the rice parameter corresponding to the sample group Gr1 and the rice parameter corresponding to the sample group Gr2 is the first information. 5 may be auxiliary information.
- Example 4 of auxiliary information for specifying rice parameters When the number of code bits assigned to the entire frame is determined, the gain value is also considerably restricted, and the range that the sample amplitude can take is greatly restricted. In this case, the average of the amplitudes of the samples can be estimated with a certain degree of accuracy from the number of code bits assigned to the entire frame.
- the variable length coding unit 4206 may perform the rice coding using the rice parameter estimated from the average estimated value of the amplitude of the sample.
- variable length coding unit 4206 uses a value obtained by adding a positive first difference value (for example, 1) to the estimated Rice parameter as a Rice parameter corresponding to the sample group Gr1, and uses the estimated Rice parameter as the estimated Rice parameter. It may be used as a rice parameter corresponding to the sample group Gr2.
- the variable length coding unit 4206 uses the estimated rice parameter as a rice parameter corresponding to the sample group Gr1, and subtracts a positive second difference value (for example, 1) from the estimated rice parameter. It may be used as a rice parameter corresponding to the sample group Gr2.
- variable length encoding unit 4206 in these cases includes, for example, auxiliary information (seventh auxiliary information) for specifying the first difference value or auxiliary information (first information for specifying the second difference value) in addition to the code string. 8 auxiliary information) may be output.
- Example 5 of auxiliary information for specifying rice parameters Even when the amplitudes of the samples included in the sample group Gr1 are not equal or when the amplitudes of the samples included in the sample group Gr2 are not equal, the sample string X (1) / W ( 1) Based on the amplitude envelope information of ⁇ 1,..., X (N) / W (N) ⁇ , it is also possible to estimate a Rice parameter with a larger code amount reduction effect.
- s1 and s2 are Rice parameters respectively corresponding to the sample groups Gr1 and Gr2 exemplified in [Examples 1 to 4 of auxiliary information for specifying Rice parameters]. const.1 to const.10 are predetermined positive integers.
- variable length coding unit 4206 may output auxiliary information (the ninth auxiliary information) for specifying the envelope information in addition to the auxiliary information exemplified in the code strings and the Rice parameter examples 2 and 3.
- auxiliary information the ninth auxiliary information
- the variable length coding unit 4206 does not need to output the seventh auxiliary information.
- the second variable length encoding unit 432 in FIG. 11 is different from the variable length encoding unit 4206 in FIG. 12 in an encoding method (an encoding method using periodicity or an encoding method not using periodicity). ) And the index indicating the degree of periodicity are reversed. That is, the second variable length encoding unit 432 receives the quantized normalized coefficient series X Q (1),..., X Q (N) output from the gain adjustment encoding unit 420 as input, When the index indicating appropriateness is equal to or less than the threshold (when the index indicating the degree of periodicity corresponds to low periodicity), the quantized normalized coefficient series X Q (1),...
- X Q (N) is encoded using periodicity, otherwise, the quantized normalized coefficient sequence X Q (1), ..., X Q (N)
- the encoding method using the periodicity in the second variable length encoding unit 432 is the same as the encoding method using the periodicity in the variable length encoding unit 4206 described above.
- an encoding method that does not rearrange the sample sequences may be used instead of the “encoding method using periodicity” in the modification of the first embodiment.
- the configuration of the encoding device 400 'in this case is illustrated in FIG.
- the first encoding unit 1200 of the encoding apparatus 100 illustrated in FIG. 10 is replaced with the first code amount estimation unit 4200 ′
- the second encoding unit 130 is the second encoding unit.
- the code amount estimation unit 430 ′ is replaced.
- the first code amount estimation unit 4200 ′ includes a gain adjustment encoding / code amount estimation unit 420 ′
- the second code amount estimation unit 430 ′ includes a second variable length code amount estimation unit 432 ′ and a second truncation unit 133 ′.
- FIG. 14 shows a detailed configuration of the gain adjustment encoding / code amount estimation unit 420 ′ of FIG.
- the variable length code amount estimation unit 4206 ′ in FIG. 14 is input when the index indicating the appropriateness of the rearrangement is larger than the threshold (when the index indicating the degree of periodicity corresponds to high periodicity). Obtain an estimate of the amount of code when encoding using periodicity for the sample sequence in the frequency domain, and if not, code for encoding the input frequency domain sample sequence Get an estimate of the quantity.
- the estimated value of the code amount is, for example, a variable for each sample as variable length encoding.
- the preferred rice parameter s1 for the sample group Gr1 and the preferred rice parameter s2 for the sample group Gr2 are calculated without actually performing variable length coding, and the sample value is given.
- the total code amount can be estimated from the Rice parameter and the number of samples.
- D in the formula (B10) is obtained by substituting D1 with an estimated value ⁇ D1 when the value of the sample X (k) included in the sample group Gr1 is assumed to follow an exponential distribution, and substituting s with s1.
- ⁇ C (s1, X (k ), Gr1) and may be the estimated value of the amount of code sample group Gr1.
- the estimated value ⁇ D1 is a value obtained by multiplying the number of samples X (k) contained in the sample group Gr1 to the expected value of the sample values in accordance with the exponential distribution of the.
- the estimated value of the code amount of the sample group Gr2 is replaced with Gr2 in the formula (B10), and D is assumed that the value of the sample X (k) included in the sample group Gr2 follows an exponential distribution.
- replacement of the estimated value ⁇ D2, estimates obtained by replacing s to s2 ⁇ C (s2, X ( k), Gr2) may be set as the estimated value of the code amount of the sample group Gr2 a.
- the estimated values to D2 are values obtained by multiplying the expected value of the sample values according to the exponential distribution by the number of samples X (k) included in the sample group Gr2.
- the estimated value of the code amount when encoding using the periodicity is performed on the input frequency domain sample sequence is the sum of the estimated values of these code amounts: ⁇ C (s1, X (k), Gr1) + to C (s2, X (k), Gr2).
- the estimated value of the code amount when the input frequency domain sample sequence is encoded obtains the estimated value of the code amount when the input frequency domain sample sequence is rice-encoded.
- the entire frequency domain sample string (Gr) is input, and D is the value of the sample X (k) included in the input frequency domain sample string.
- the estimated value when it is assumed to comply with ⁇ is obtained by replacing D with a preferable Rice parameter for the entire sample string Gr ⁇ C (s, X (k), Gr) may be used as the estimated code amount .
- the estimated value ⁇ D is a value obtained by multiplying the number of samples X (k) contained in the sample sequence the entire Gr to the expected value of the sample values in accordance with the exponential distribution of the.
- the second variable length code amount estimation unit 432 ′ is different from the variable length code amount estimation unit 4206 ′ in FIG. 14 in the encoding method (encoding method using periodicity or encoding not using periodicity). This is a process in which the relationship between the method) and the index indicating the degree of periodicity is reversed. That is, the second variable length code amount estimation unit 432 ′ outputs the quantized normalized coefficient series X Q (1),..., X Q (N) output from the gain adjustment encoding / code amount estimation unit 420 ′.
- the quantized normalized coefficient series X Q (1),..., X Q (N) is used to estimate the amount of coding using periodicity. Otherwise, the quantized normalized coefficient sequence X Q (1), .., X Q (N) is subjected to the same processing as the variable length code amount estimation 1206 ′ of FIG.
- a computer-readable recording medium is a non-transitory recording medium. Examples of such a recording medium are a magnetic recording device, an optical disk, a magneto-optical recording medium, a semiconductor memory, and the like.
- This program is distributed, for example, by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.
- a computer that executes such a program first stores a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, this computer reads a program stored in its own recording device and executes a process according to the read program. As another execution form of the program, the computer may read the program directly from the portable recording medium and execute processing according to the program, and each time the program is transferred from the server computer to the computer. The processing according to the received program may be executed sequentially.
- the above-described processing may be executed by a so-called ASP (Application Service Provider) type service that does not transfer a program from the server computer to the computer but implements a processing function only by the execution instruction and result acquisition. Good.
- ASP Application Service Provider
- the processing functions of the apparatus are realized by executing a predetermined program on a computer, but at least a part of these processing functions may be realized by hardware.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
従来のTCX符号化のための符号化装置1000の構成例を図1に示す。以下、図1の各部について説明する。
周波数領域変換部1001は、所定の時間区間であるフレーム単位で、入力された時間領域の音声音響ディジタル信号(以下、入力音響信号)を周波数領域のN点のMDCT係数列X(1),・・・,X(N)に変換して出力する。ただし、Nは正整数である。
パワースペクトル包絡係数列計算部1002は、フレーム単位で入力音響信号に対する線形予測分析を行って線形予測係数を求め、その線形予測係数を用いてN点の入力音響信号のパワースペクトル包絡係数列W(1),・・・,W(N)を得て出力する。また、線形予測係数は例えば従来的な符号化技術によって符号化されて予測係数符号が復号側へ伝送される。
重み付け包絡正規化部1003は、パワースペクトル包絡係数列計算部1002が得たパワースペクトル包絡係数列W(1),・・・,W(N)を用いて、周波数領域変換部1001が得たMDCT係数列の各係数X(1),・・・,X(N)を正規化し、重み付け正規化MDCT係数列XN(1),・・・,XN(N)を出力する。ここでは聴覚的に歪が小さくなるような量子化の実現のために、重み付け包絡正規化部1003は、パワースペクトル包絡を鈍らせた重み付けパワースペクトル包絡係数列を用いて、フレーム単位でMDCT係数列の各係数を正規化する。この結果、重み付け正規化MDCT係数列XN(1),・・・,XN(N)は、入力されたMDCT係数列X(1),・・・,X(N)ほどの大きな振幅の傾きや振幅の凹凸を持たないが、入力音響信号のパワースペクトル包絡係数列と類似の大小関係を有するもの、すなわち、低い周波数に対応する係数側の領域にやや大きな振幅を持ち、ピッチ周期に起因する微細構造をもつもの、となる。
利得調整符号化部1100は、入力された重み付け正規化MDCT係数列XN(1),・・・,XN(N)の各係数を利得(グローバルゲイン)gで割り算し、その結果を量子化した整数値による系列である量子化正規化済係数系列XQ(1),・・・,XQ(N)を符号化して得られる整数信号符号のビット数が、予め配分されたビット数である配分ビット数B以下、かつ、なるべく大きな値、となるような利得gに対応する利得符号と、整数信号符号と、を出力する。
初期化部1104は、利得gの初期値を設定する。利得の初期値は、重み付け正規化MDCT係数列XN(1),・・・,XN(N)のエネルギーと可変長符号化部1106が出力する符号に予め配分されたビット数などから決めることができる。以下、可変長符号化部1106が出力する符号に予め配分されたビット数を配分ビット数Bと呼ぶ。また、初期化部1104は、利得の更新回数の初期値として0を設定する。
周波数領域系列量子化部1105は、重み付け正規化MDCT係数列XN(1),・・・,XN (N)の各係数を利得gで割り算して得られる値を量子化して、整数値による系列である量子化正規化済係数系列XQ(1),・・・,XQ(N)を得て出力する。
可変長符号化部1106は、入力された量子化正規化済係数系列XQ(1),・・・,XQ(N)を可変長符号化して符号を得て出力する。この符号を整数信号符号と呼ぶ。この可変長符号化には、例えば、量子化正規化済係数系列中の複数の係数を纏めて符号化する方法を用いる。また、可変長符号化部1106は、可変長符号化で得た整数信号符号のビット数を計測する。以下では、このビット数を消費ビット数cと呼ぶ。
判定部1107は、利得の更新回数が予め定めた回数の場合、または可変長符号化部1106が計測した消費ビット数cが配分ビット数Bである場合は、利得、整数信号符号、消費ビット数cを出力する。
利得の更新回数が予め定めた回数未満である場合は、可変長符号化部1106が計測した消費ビット数cが配分ビット数Bより多い場合には利得下限設定部1108が、可変長符号化部1106が計測した消費ビット数cが配分ビット数Bより少ない場合には利得上限設定部1112が、次の処理を行うように制御する。
利得下限設定部1108は、今回の利得gの値を利得の下限値gminとして設定する(gmin←g)。この利得の下限値gminは、少なくとも利得の値はこれ以上であるべきことを意味する。
次に第1分岐部1109は、利得の上限値gmaxが既に設定されている場合には第1利得更新部1110が、そうでない場合には利得拡大部1111が、次の処理を行うように制御する。また、第1分岐部1109は、利得の更新回数に1を加算する。
第1利得更新部1110は、例えば、今回の利得gの値と利得の上限値gmaxの平均値を新たに利得gの値として設定する(g←(g+gmax)/2)。これは、最適な利得の値は、今回の利得gの値と利得の上限値gmaxとの間に存在するからである。今回の利得gの値は利得の下限値gminとして設定されているので、利得の上限値gmaxと利得の下限値gminの平均値を新たに利得gの値として設定するとも言える(g←(gmax+gmin)/2)。新たに設定された利得gは周波数領域系列量子化部1105に入力される。
利得拡大部1111は、今回の利得gの値より大きな値を新たな利得gの値として設定する。例えば、今回の利得gの値に予め定めた正値である利得変更量Δgを加算したものを新たな利得gの値として設定する(g←g+Δg)。また例えば、利得の上限値gmaxが設定されずに、消費ビット数cが配分ビット数Bより多い状態が複数回続いている場合には、予め定めた値より大きな値を利得変更量Δgとして用いる。新たに設定された利得gは周波数領域系列量子化部1105に入力される。
利得上限設定部1112は、今回の利得gの値を利得の上限値gmaxと設定する(gmax←g)。この利得の上限値gmaxは、少なくとも利得の値はこれ以下であるべきことを意味する。
次に第2分岐部1113は、利得の下限値gminが既に設定されている場合には第2利得更新部1114が、そうでない場合には利得縮小部1115が、次の処理を行うように制御する。また、第2分岐部1113は、利得の更新回数に1を加算する。
第2利得更新部1114は、例えば、今回の利得gの値と利得の下限値gminの平均値を新たな利得gの値として設定する(g←(g+gmin)/2)。これは、最適な利得の値は、今回の利得gの値と利得の下限値gminとの間に存在するからである。今回の利得gの値は利得の上限値gmaxとして設定されているので、利得の上限値gmaxと利得の下限値gminの平均値を新たに利得gの値として設定するとも言える(g←(gmax+gmin)/2)。新たに設定された利得gは周波数領域系列量子化部1105に入力される。
利得縮小部1115は、今回の利得gの値より小さな値を新たな利得gの値として設定する。例えば、今回の利得gの値から予め定めた正値である利得変更量Δgを減算したものを新たな利得gの値として設定する(g←g-Δg)。また例えば、利得の下限値gminが設定されずに、消費ビット数cが配分ビット数Bより少ない状態が複数回続いている場合には、予め定めた値より大きな値を利得変更量Δgとして用いる。新たに設定された利得gは周波数領域系列量子化部1105に入力される。
切り捨て部1116は、判定部1107が出力した消費ビット数cが配分ビット数Bより多い場合には、判定部1107が出力した整数信号符号のうち、消費ビット数cが配分ビット数Bを上回る分だけの符号を、高い周波数側の量子化正規化済係数に対応する符号から取り除いたものを、新たな整数信号符号として出力する。例えば切り捨て部1116は、消費ビット数cの配分ビット数Bに対する上回り分c-Bに対応する高い周波数側の量子化正規化済係数に対応する符号を整数信号符号から取り除くことで得られる、残りの符号を、新たな整数信号符号として出力する。一方、判定部1107が出力した消費ビット数cが配分ビット数Bより多くない場合には、切り捨て部1116は、判定部1107が出力した整数信号符号を出力する。
利得符号化部1117は、判定部1107が出力した利得を所定のビット数で符号化して利得符号を得て出力する。
しかし、この組み合わせた方法では、周期性を利用した符号化方法と、周期性を利用しない符号化方法と、のそれぞれにおいて上記の利得調整符号化部の処理を行う必要があり、演算処理量が非常に多くなるという問題がある。
<符号化装置100>
図2および図3を参照して第1実施形態の符号化装置100が行う符号化処理を説明する。
周波数領域変換部1001は、所定の時間区間であるフレーム単位で、入力された時間領域の音響ディジタル信号(以下、入力音響信号)を周波数領域のN点のMDCT係数列X(1),・・・,X(N)に変換して出力する。ただし、Nは正整数である。
パワースペクトル包絡係数列計算部1002は、フレーム単位で入力音響信号に対する線形予測分析を行って線形予測係数を求め、その線形予測係数を用いてN点の入力音響信号のパワースペクトル包絡係数列W(1),・・・,W(N)を得て出力する。N点のパワースペクトル包絡係数列の各係数W(1),・・・,W(N)は、線形予測係数を周波数領域に変換して得ることができる。例えば、全極型モデルであるp次自己回帰過程により(ただしpは正整数)、時刻tでの入力音響信号x(t)は、p時点まで遡った過去の自分自身の値x(t-1),・・・,x(t-p)と予測残差e(t)と線形予測係数α1,・・・,αpによって式(1)で表される。このとき、パワースペクトル包絡係数列の各係数W(n)[1≦n≦N]は式(2)で表される。exp(・)はネイピア数を底とする指数関数、jは虚数単位、σ2は予測残差エネルギーである。
重み付け包絡正規化部1003は、パワースペクトル包絡係数列計算部1002が得たパワースペクトル包絡係数列W(1),・・・,W(N)を用いて、周波数領域変換部1001が得たMDCT係数列の各係数X(1),・・・,X(N)を正規化し、重み付け正規化MDCT係数列XN(1),・・・,XN(N)を出力する。ここでは聴覚的に歪が小さくなるような量子化の実現のために、重み付け包絡正規化部1003は、パワースペクトル包絡を鈍らせた重み付けパワースペクトル包絡係数列を用いて、フレーム単位でMDCT係数列の各係数を正規化する。この結果、重み付け正規化MDCT係数列XN(1),・・・,XN(N)は、入力されたMDCT係数列X(1),・・・,X(N)ほどの大きな振幅の傾きや振幅の凹凸を持たないが、入力音響信号のパワースペクトル包絡係数列と類似の大小関係を有するもの、すなわち、低い周波数に対応する係数側の領域にやや大きな振幅を持ち、ピッチ周期に起因する微細構造をもつもの、となる。
ここでは、重み付け包絡正規化処理の具体例として二つの例を示すが、本発明ではこれらの例に限定されるものではない。
<例1>
重み付け包絡正規化部1003は、MDCT係数列の各係数X(1),・・・,X(N)を当該各係数に対応するパワースペクトル包絡係数列の各係数W(1),・・・,W(N)の補正値Wγ(1),・・・,Wγ(N)で除算することによって、重み付け正規化MDCT係数列の各係数X(1)/Wγ(1),・・・,X(N)/Wγ(N)を得る処理を行う。補正値Wγ(n)[1≦n≦N]は式(3)で与えられる。但し、γは1以下の正の定数であり、パワースペクトル係数を鈍らせる定数である。
重み付け包絡正規化部1003は、MDCT係数列の各係数X(1),・・・,X(N)を当該各係数に対応するパワースペクトル包絡係数列の各係数W(1),・・・,W(N)のβ乗(0<β<1)の値W(1)β,・・・,W(N)βで除算することによって、重み付け正規化MDCT係数列の各係数X(1)/W(1)β,・・・,X(N)/W(N)βを得る処理を行う。
重み付け包絡正規化部1003で得られたフレーム単位の重み付け正規化MDCT係数列は並べ替え部110への入力となるが、並べ替え部110への入力は重み付け包絡正規化部1003で得られた重み付け正規化MDCT係数列に限定されない。このことを明示的に示すため、以下、並べ替え部110の入力を音響信号に由来する「周波数領域のサンプル列」あるいは単に「サンプル列」と呼称する。この実施形態では、重み付け包絡正規化部1003で得られた重み付け正規化MDCT係数列が「周波数領域のサンプル列」に相当し、この場合、周波数領域のサンプル列を構成するサンプルは重み付け正規化MDCT係数列に含まれる係数に相当する。
この並べ替え処理の具体例を説明する。例えば、並べ替え部110は、(1)サンプル列の全てのサンプルを含み、かつ、(2)サンプル列のうちの音響信号の周期性または基本周波数に対応するサンプルを含む一つまたは連続する複数のサンプルおよび、サンプル列のうちの音響信号の周期性または基本周波数の整数倍に対応するサンプルを含む一つまたは連続する複数のサンプル、の全部または一部のサンプルが集まるようにサンプル列に含まれる少なくとも一部のサンプルを並べ替えたもの、を並べ替え後のサンプル列とする。つまり、音響信号の周期性または基本周波数に対応するサンプルを含む一つまたは連続する複数のサンプルおよび、当該音響信号の周期性または基本周波数の整数倍に対応するサンプルを含む一つまたは連続する複数のサンプルが集まるように、入力されたサンプル列に含まれる少なくとも一部のサンプルが並べ替えられる。
このように並べ替えられた後のサンプル列は、周波数を横軸とし、サンプルの指標を縦軸とした場合に、サンプルの指標の包絡線が周波数の増大に伴って増大傾向を示すことになる。換言すれば、並べ替え部110は、サンプルの指標の包絡線が周波数の増大に伴って増大傾向を示すように入力されたサンプル列に含まれる少なくとも一部のサンプルを並べ替えると言ってもよい。
間隔Tは、入力されたサンプル列に応じて、つまりフレームごとに、値を設定することが好ましい。フレームごとに間隔Tを決定する方法として、例えば、サンプルの指標(絶対値や二乗値)の周期性を探索し、平均絶対値や平均二乗値の偏りが大きくなるように間隔Tを設定する方法を採用してもよい。
並べ替え部110は、サンプル列の並べ替えを特定する補助情報(第1補助情報:周波数領域のサンプル列の周期を少なくとも含む並べ替えを特定する情報)、すなわち、音響信号の周期性を表す情報、または基本周波数を表す情報、または音響信号の周期性または基本周波数に対応するサンプルと音響信号の周期性または基本周波数の整数倍に対応するサンプルとの間隔Tを表す情報を出力する。例えば間隔Tをフレーム毎に決定する場合は、サンプル列の並べ替えを特定する補助情報もフレーム毎に出力されることになる。サンプル列の並べ替えを特定する補助情報は、周期性、基本周波数または間隔Tをフレーム毎に符号化して得られる。この符号化は固定長符号化であってもよいし、可変長符号化して平均符号量を削減してもよい。可変長符号化する場合は、前フレームの間隔Tと現フレームの間隔Tの差分を可変長符号化した情報を、間隔Tを表す情報としてもよい。同様に、前フレームの基本周波数と現フレームの基本周波数の差分を可変長符号化した情報を、基本周波数を表す情報としてもよい。なお、符号化装置100内の図示しない別の手段によって基本周波数を表す情報が得られている場合は、並べ替え部110ではなく、当該別の手段によって得られた基本周波数を表す情報をサンプル列の並べ替えを特定する補助情報として用いてもよい。また、nを複数の選択肢から選択可能な場合には、nの上限値あるいは上述の上限Nをサンプル列の並べ替えを特定する補助情報に含めてもよい。
また、この実施形態では、各サンプル群に含まれるサンプルの個数が、周期性や基本周波数ないしその整数倍に対応するサンプル(以下、中心サンプルという)とその前後1サンプルの計3サンプルであるという固定された個数の例を示したが、サンプル群に含まれるサンプルの個数やサンプルインデックスを可変とする場合には、サンプル群に含まれるサンプルの個数とサンプルインデックスの組み合わせが異なる複数の選択肢の中から選択された一つを表す情報もサンプル列の並べ替えを特定する補助情報に含める。
例えば、選択肢として、
(1)中心サンプルのみ、F(nT)
(2)中心サンプルとその前後1サンプルの計3サンプル、F(nT-1),F(nT),F(nT+1)
(3)中心サンプルとその前2サンプルの計3サンプル、F(nT-2),F(nT-1),F(nT)
(4)中心サンプルとその前3サンプルの計4サンプル、F(nT-3),F(nT-2),F(nT-1),F(nT)
(5)中心サンプルとその後2サンプルの計3サンプル、F(nT),F(nT+1),F(nT+2)
(6)中心サンプルとその後3サンプルの計4サンプル、F(nT),F(nT+1),F(nT+2),F(nT+3)
が設定されている場合に、(4)が選択されたならば、この(4)が選択されたことを表す情報がサンプル列の並べ替えを特定する補助情報に含められる。この例であれば、選択された選択肢を表す情報として3ビットあれば十分である。
並べ替え部110は、上記の処理によって得られた並べ替え後のサンプル列に対応する並べ替えの適切さを示す指標が所定の閾値以上または所定の閾値より大きい場合、すなわちサンプル列の周期性の程度を示す指標が周期性が高いことに対応する場合には並べ替え後のサンプル列を出力し、上記以外の場合、すなわちサンプル列の周期性の程度を示す指標が周期性が低いことに対応する場合は並べ替え前のサンプル列を出力する。
利得調整符号化部120には、並べ替え部110から出力されたサンプル列(並べ替え前のサンプル列または並べ替え後のサンプル列)XN’(1),・・・,XN’(N)が入力される。利得調整符号化部120は、入力されたサンプル列の各係数を利得(グローバルゲイン)gで割り算し、その結果を量子化した整数値による系列である量子化正規化済係数系列XQ’(1),・・・,XQ’(N)を符号化して得られる整数信号符号のビット数が、予め配分されたビット数である配分ビット数B(予め定められた配分符号量)以下、かつ、なるべく大きな値、となるような利得gに対応する利得符号と、整数信号符号と、量子化正規化済係数系列と、を出力する。
初期化部1204は、利得gの初期値を設定する。利得の初期値は、サンプル列XN’(1),・・・,XN’(N)のエネルギーと可変長符号化部1206が出力する符号に予め配分されたビット数などから決めることができる。利得gの初期値は正値である。以下、可変長符号化部1206が出力する符号に予め配分されたビット数を配分ビット数Bと呼ぶ。また、初期化部1204は、利得の更新回数の初期値として0を設定する。
周波数領域系列量子化部1205は、サンプル列XN’(1),・・・,XN’(N)のそれぞれを利得gで割り算して得られる値XN’(1)/g,・・・,XN’(N)/gを量子化して、整数値による系列である量子化正規化済係数系列XQ(1),・・・,XQ(N)を得て出力する。
可変長符号化部1206は、入力された量子化正規化済係数系列XQ(1),・・・,XQ(N)を可変長符号化して符号を得、得られた符号と量子化正規化済係数系列XQ(1),・・・,XQ(N)を出力する。この符号を整数信号符号と呼ぶ。この可変長符号化には、例えば、量子化正規化済係数系列中の複数の係数を纏めて符号化する方法を用いる。また、可変長符号化部1206は、可変長符号化で得た整数信号符号のビット数を計測する。以下では、このビット数を消費ビット数cと呼ぶ。
判定部1207は、利得の更新回数が予め定めた回数の場合、または可変長符号化部1206が計測した消費ビット数cが配分ビット数Bである場合は、利得、整数信号符号、整数信号符号に対応する量子化正規化済係数系列XQ(1),・・・,XQ(N)、消費ビット数cを出力する。
利得の更新回数が予め定めた回数未満である場合は、可変長符号化部1206が計測した消費ビット数cが配分ビット数Bより多い場合には利得下限設定部1208が、可変長符号化部1206が計測した消費ビット数cが配分ビット数Bより少ない場合には利得上限設定部1212が、次の処理を行うように制御する。
利得下限設定部1208は、今回の利得gの値を利得の下限値gminとして設定する(gmin←g)。この利得の下限値gminは、少なくとも利得の値はこれ以上であるべきことを意味する。
次に第1分岐部1209は、利得の上限値gmaxが既に設定されている場合には第1利得更新部1210が、そうでない場合には利得拡大部1211が、次の処理を行うように制御する。また、第1分岐部1209は、利得の更新回数に1を加算する。
第1利得更新部1210は、例えば、今回の利得gの値と利得の上限値gmaxの平均値を新たに利得gの値として設定する(g←(g+gmax)/2)。これは、最適な利得の値は、今回の利得gの値と利得の上限値gmaxとの間に存在するからである。今回の利得gの値は利得の下限値gminとして設定されているので、利得の上限値gmaxと利得の下限値gminの平均値を新たに利得gの値として設定するとも言える(g←(gmax+gmin)/2)。新たに設定された利得gは周波数領域系列量子化部1205に入力される。
利得拡大部1211は、今回の利得gの値より大きな値を新たな利得gの値として設定する。例えば、今回の利得gの値に予め定めた正値である利得変更量Δgを加算したものを新たな利得gの値として設定する(g←g+Δg)。また例えば、利得の上限値gmaxが設定されずに、消費ビット数cが配分ビット数Bより多い状態が複数回続いている場合には、予め定めた値より大きな値を利得変更量Δgとして用いる。新たに設定された利得gは周波数領域系列量子化部1205に入力される。
利得上限設定部1212は、今回の利得gの値を利得の上限値gmaxと設定する(gmax←g)。この利得の上限値gmaxは、少なくとも利得の値はこれ以下であるべきことを意味する。
次に第2分岐部1213は、利得の下限値gminが既に設定されている場合には第2利得更新部1214が、そうでない場合には利得縮小部1215が、次の処理を行うように制御する。また、第2分岐部1213は、利得の更新回数に1を加算する。
第2利得更新部1214は、例えば、今回の利得gの値と利得の下限値gminの平均値を新たな利得gの値として設定する(g←(g+gmin)/2)。これは、最適な利得の値は、今回の利得gの値と利得の下限値gminとの間に存在するからである。今回の利得gの値は利得の上限値gmaxとして設定されているので、利得の上限値gmaxと利得の下限値gminの平均値を新たに利得gの値として設定するとも言える(g←(gmax+gmin)/2)。新たに設定された利得gは周波数領域系列量子化部1205に入力される。
利得縮小部1215は、今回の利得gの値より小さな値を新たな利得gの値として設定する。例えば、今回の利得gの値から予め定めた正値である利得変更量Δgを減算したものを新たな利得gの値として設定する(g←g-Δg)。また例えば、利得の下限値gminが設定されずに、消費ビット数cが配分ビット数Bより少ない状態が複数回続いている場合には、予め定めた値より大きな値を利得変更量Δgとして用いる。新たに設定された利得gは周波数領域系列量子化部1205に入力される。
切り捨て部1216は、判定部1207が出力した消費ビット数cが配分ビット数Bより多い場合には、判定部1207が出力した整数信号符号のうち、消費ビット数cが配分ビット数Bを上回る分だけの符号を取り除いたものを、新たな整数信号符号(配分符号量以下の符号量を持つ整数信号符号)として出力する。例えば切り捨て部1216は、消費ビット数cの配分ビット数Bに対する上回り分c-Bに対応する高い周波数側の量子化正規化済係数に対応する符号を整数信号符号から取り除くことで得られる、残りの符号を、新たな整数信号符号として出力する。一方、判定部1207が出力した消費ビット数cが配分ビット数Bより多くない場合には、切り捨て部1216は、判定部1207が出力した整数信号符号を出力する。
利得符号化部1217は、判定部1207が出力した利得を所定のビット数で符号化して利得符号を得て出力する。
図2に示すように、第2符号化部130は、逆並べ替え部131、第2可変長符号化部132、および第2切り捨て部133から構成される。
逆並べ替え部131は、並べ替え部110が並べ替え前のサンプル列を出力した場合には、利得調整符号化部120が出力した量子化正規化済係数系列XQ(1),・・・,XQ(N)に対して、並べ替え部110が出力した並べ替えを特定する補助情報に対応する並べ替えを施すことにより並べ替え後のサンプル列を生成して出力する。
逆並べ替え部131は、並べ替え部110が並べ替え後のサンプル列を出力した場合には、利得調整符号化部120が出力した量子化正規化済係数系列XQ(1),・・・,XQ(N)に対して、並べ替え部110が施した並べ替えと逆の並べ替えを施すことにより、並べ替え前のサンプル列を生成して出力する。なお、並べ替え部110が並べ替え後のサンプル列を出力した場合に、利得調整符号化部120が利得符号に対応する利得を出力し、逆並べ替え部131が、重み付け包絡正規化部1003が出力した重み付け正規化MDCT係数列の各サンプルを利得調整符号化部120が出力した利得で除算して得られるサンプル列を並べ替え前のサンプル列として生成して出力してもよい。
要は、逆並べ替え部131は、重み付け包絡正規化部1003が出力した重み付け正規化MDCT係数列の各サンプルを利得調整符号化部120が生成した利得で除算して得られるサンプルにより構成されるサンプル列を出力するものであり、そのサンプル列は利得調整符号化部120が出力したサンプル列との並べ替えの有無が逆であるということになる。
第2可変長符号化部132には、逆並べ替え部131が出力したサンプル列が入力される。第2可変長符号化部132は、逆並べ替え部131が出力したサンプル列を可変長符号化して符号を得て出力する。この符号を第2整数信号符号と呼ぶ。この可変長符号化には、例えば、サンプル列中の複数の係数を纏めて符号化する方法を用いる。また、第2可変長符号化部132は、可変長符号化で得た第2整数信号符号のビット数を計測する。以下では、このビット数を第2消費ビット数c2と呼ぶ。
第2切り捨て部133は、第2消費ビット数c2が配分ビット数Bより多い場合には、入力された第2整数信号符号のうち、第2消費ビット数c2が配分ビット数Bを上回る分だけの符号を取り除いたものを、新たな第2整数信号符号(配分符号量以下の符号量を持つ第2整数信号符号)として出力する。例えば第2切り捨て部133は、第2消費ビット数c2の配分ビット数Bに対する上回り分c2-Bに対応する高い周波数側のサンプル列(逆並べ替え部131が出力したサンプル列)に対応する符号を第2整数信号符号から取り除くことで得られる、残りの符号を、新たな第2整数信号符号として出力する。一方、第2消費ビット数c2が配分ビット数Bより多くない場合には、第2切り捨て部133は、入力された第2整数信号符号を出力する。
比較選択部140は、並べ替え後のサンプル列を可変長符号化対象とした場合と、並べ替え前のサンプル列を可変長符号化対象とした場合と、のうち、総符号量が少ないほうの符号を出力する。
比較選択部140は、利得調整符号化部120が出力した整数信号符号の符号量と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。また、比較選択部140は、第2符号化部130が出力した第2整数信号符号の符号量をCBとして求める。そして、比較選択部140は、CA>CBである場合には第2符号化部130が出力した第2整数信号符号と利得調整符号化部120が出力した利得符号とを出力し、そうでない場合には利得調整符号化部120が出力した整数信号符号と利得調整符号化部120が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただしCA=CBである場合には、比較選択部140が、第2符号化部130が出力した第2整数信号符号と利得調整符号化部120が出力した利得符号とを出力してもよいし、利得調整符号化部120が出力した整数信号符号と利得調整符号化部120が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよい。
比較選択部140は、利得調整符号化部120が出力した整数信号符号の符号量をCBとして求める。また、比較選択部140は、第2符号化部130が出力した第2整数信号符号の符号量と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。そして、比較選択部140は、CA>CBである場合には利得調整符号化部120が出力した整数信号符号と利得調整符号化部120が出力した利得符号とを出力し、そうでない場合には第2符号化部130が出力した第2整数信号符号と利得調整符号化部120が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、CA=CBである場合には、比較選択部140は、第2符号化部130が出力した第2整数信号符号と利得調整符号化部120が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよいし、利得調整符号化部120が出力した整数信号符号と利得調整符号化部120が出力した利得符号とを出力してもよい。
サンプル符号がサンプル列の並べ替えを特定する補助情報を含まない場合、復号装置は、パワースペクトル包絡係数列W(1),・・・,W(N)を用いてサンプル列XN”(1),・・・,XN”(N)を逆正規化し、MDCT係数列X’(1),・・・,X’(N)を得る。逆正規化とは、重み付け包絡正規化部1003で行った正規化の逆処理を意味する。例えば、重み付け包絡正規化部1003で<例1>の正規化が行われるのであれば、復号装置は、XN”(1)×Wγ(1),・・・,XN”(N)×Wγ(N)をMDCT係数列X’(1),・・・,X’(N)とする。
一方、サンプル符号が上述の補助情報を含む場合、復号装置は、補助情報に対応する並べ替えとは逆の並べ替えをサンプル列XN”(1),・・・,XN”(N)に行い、それによって得られたサンプル列を逆正規化し、MDCT係数列X’(1),・・・,X’(N)を得る。
復号装置は、フレームごとに、MDCT係数列X’(1),・・・,X’(N)を時間領域に変換してフレーム単位の音響信号を得る。
第1実施形態では実際の符号量を用いて符号の選択を行った。しかしながら、符号量の推定値を用いて符号の選択を行ってもよい。符号量の推定値を用いて符号の選択を行う例を第1実施形態の変形例として説明する。以下では、第1実施形態との差分のみを説明する。
第1実施形態の変形例の符号化装置100’を図4に示す。
符号化装置100’は、利得調整符号化部120に代えて利得調整符号化・符号量推定部120’を備え、第2符号化部130に代えて第2符号量推定部130’を備え、比較選択部140に代えて比較選択符号化部140’を備える以外、符号化装置100と同一である。
第1実施形態の変形例の利得調整符号化・符号量推定部120’を図5に示す。
利得調整符号化・符号量推定部120’は、可変長符号化部1206に代えて可変長符号量推定部1206’を備え、判定部1207に代えて判定部1207’を備え、切り捨て部1216に代えて切り捨て部1216’を備える以外は、第1実施形態の利得調整符号化部120と同一である。
可変長符号量推定部1206’は、入力された量子化正規化済係数系列XQ(1),・・・,XQ(N)を可変長符号化して得られる整数信号符号の推定ビット数(符号量の推定値)を求め、当該推定ビット数と量子化正規化済係数系列XQ(1),・・・,XQ(N)とを出力する。第1実施形態の変形例では、可変長符号量推定部1206’で得られる整数信号符号の推定ビット数を消費ビット数cと呼ぶ。
判定部1207’は、利得の更新回数が予め定めた回数の場合、または可変長符号量推定部1206’が計測した消費ビット数cが配分ビット数Bである場合は、利得g、量子化正規化済係数系列XQ(1),・・・,XQ(N)を出力する。利得の更新回数が予め定めた回数未満である場合、判定部1207’は、可変長符号量推定部1206’が出力した消費ビット数cが配分ビット数Bより多い場合には利得下限設定部1208が、当該消費ビット数cが配分ビット数Bより少ない場合には利得上限設定部1212が、それぞれ第1実施形態で説明した処理を行うように制御する。ただし、第1実施形態の変形例では、比較選択符号化部140’が出力する符号に予め配分されたビット数を配分ビット数Bと呼ぶ。
切り捨て部1216’は、可変長符号量推定部1206’が出力した消費ビット数cが配分ビット数Bより多くない場合には、当該消費ビット数cを整数信号符号の符号量の推定値として出力し、当該消費ビット数cが配分ビット数Bより多い場合には、配分ビット数Bを整数信号符号の符号量の推定値として出力する。
第2符号量推定部130’は、逆並べ替え部131’と第2可変長符号量推定部132’と第2切り捨て部133’とから構成される。
逆並べ替え部131’は、並べ替え部110が並べ替え前のサンプル列を出力した場合には、利得調整符号化・符号量推定部120’が出力した量子化正規化済係数系列XQ(1),・・・,XQ(N)に対して、並べ替え部110が出力した並べ替えを特定する補助情報に対応する並べ替えを施すことにより並べ替え後のサンプル列を生成して出力する。
逆並べ替え部131’は、並べ替え部110が並べ替え後のサンプル列を出力した場合には、利得調整符号化・符号量推定部120’が出力した量子化正規化済係数系列XQ(1),・・・,XQ(N)に対して、並べ替え部110が施した並べ替えと逆の並べ替えを施すことにより、並べ替え前のサンプル列を生成して出力する。なお、並べ替え部110が並べ替え後のサンプル列を出力した場合に、利得調整符号化・符号量推定部120’が利得符号に対応する利得を出力し、逆並べ替え部131が、重み付け包絡正規化部1003が出力した重み付け正規化MDCT係数列の各サンプルを利得調整符号化・符号量推定部120’が出力した利得で除算して得られるサンプル列を並べ替え前のサンプル列として生成して出力してもよい。
要は、逆並べ替え部131’は、重み付け包絡正規化部1003が出力した重み付け正規化MDCT係数列の各サンプルを利得調整符号化・符号量推定部120’が生成した利得で除算して得られるサンプルにより構成されるサンプル列を出力するものであり、そのサンプル列は利得調整符号化・符号量推定部120’が出力したサンプル列との並べ替えの有無が逆であるということになる。
第2可変長符号量推定部132’には、逆並べ替え部131’が出力したサンプル列が入力される。第2可変長符号量推定部132’は、逆並べ替え部131’が出力したサンプル列を可変長符号化して得られる整数信号符号の推定ビット数(符号量の推定値)を求め、当該推定ビット数を出力する。第1実施形態の変形例では、第2可変長符号量推定部132’で得られる整数信号符号の推定ビット数を第2消費ビット数c2と呼ぶ。
第2切り捨て部133’は、第2可変長符号量推定部132’が得た第2消費ビット数c2が配分ビット数Bより多くない場合には、第2可変長符号量推定部132’が得た第2消費ビット数c2を第2整数信号符号の符号量の推定値として出力し、第2可変長符号量推定部132’が得た第2消費ビット数c2が配分ビット数Bより多い場合には、配分ビット数Bを第2整数信号符号の符号量の推定値として出力する。
比較選択符号化部140’は、並べ替え後のサンプル列を可変長符号化対象とした場合と、並べ替え前のサンプル列を可変長符号化対象とした場合と、のうち、総符号量の推定値が小さいほうの符号を出力する。
比較選択符号化部140’は、利得調整符号化・符号量推定部120’が出力した整数信号符号の符号量の推定値(消費ビット数c)と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。また、比較選択符号化部140’は、第2可変長符号量推定部132’が出力した第2整数信号符号の符号量の推定値(第2消費ビット数c2)をCBとして求める。そして、比較選択符号化部140’は、CA>CBである場合には、逆並べ替え部131’が生成したサンプル列、すなわち、周波数領域のサンプル列の各サンプルを利得調整符号化・符号量推定部120’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して第2整数信号符号を得て、得られた第2整数信号符号と利得調整符号化・符号量推定部120’が出力した利得符号とを出力する。そうでない場合には、比較選択符号化部140’は、利得調整符号化・符号量推定部120’が生成したサンプル列(量子化正規化済係数系列XQ(1),・・・,XQ(N))、すなわち、周波数領域のサンプル列を並べ替えて得られたサンプル列の各サンプルを利得調整符号化・符号量推定部120’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して整数信号符号を得て、得られた整数信号符号と利得調整符号化・符号量推定部120’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、CA=CBである場合には、比較選択符号化部140’は、上述のように得た第2整数信号符号と利得調整符号化・符号量推定部120’が出力した利得符号とを出力してもよいし、上述のように得た整数信号符号と利得調整符号化・符号量推定部120’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよい。
比較選択符号化部140’は、利得調整符号化・符号量推定部120’が出力した整数信号符号の符号量の推定値(消費ビット数c)をCBとして求める。また、比較選択符号化部140’は、第2可変長符号量推定部132’が出力した第2整数信号符号の符号量の推定値(第2消費ビット数c2)と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。そして、比較選択符号化部140’は、CA>CBである場合には、利得調整符号化・符号量推定部120’が生成したサンプル列(量子化正規化済係数系列XQ(1),・・・,XQ(N))、すなわち、周波数領域のサンプル列の各サンプルを利得調整符号化・符号量推定部120’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して整数信号符号を得て、得られた整数信号符号と利得調整符号化・符号量推定部120’が出力した利得符号とを出力する。そうでない場合には、比較選択符号化部140’は、逆並べ替え部131’が生成したサンプル列、すなわち、周波数領域のサンプル列を並べ替えて得られたサンプル列の各サンプルを利得調整符号化・符号量推定部120’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して第2整数信号符号を得て、得られた第2整数信号符号と利得調整符号化・符号量推定部120’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、CA=CBである場合には、比較選択符号化部140’は、上述のように得た第2整数信号符号と利得調整符号化部120が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよいし、上述のように得た整数信号符号と利得調整符号化部120が出力した利得符号とを出力してもよい。
第1実施形態では実際の符号量を用いて符号の選択を行った。第2実施形態では符号化された情報量も考慮して符号の選択を行う。符号化された情報量は元々の情報量から符号化されなかった情報量を減算したものであるので、第2実施形態では符号化されなかった情報量も考慮した選択を行う例であるとも言える。さらに第2実施形態では、整数信号符号と第2整数信号符号の少なくとも何れかのビット数が配分ビット数Bより少ない場合に、その差分のビットを用いて何らかの情報の符号化を行ってもよい。差分のビットを用いて何らかの情報の符号化を行えば、配分ビット数B以下との条件のもとで従来技術よりも歪みが少ない符号化装置を実現することができる。また、差分のビットを用いた符号化を行わなければ、同じ歪みであれば従来技術よりも符号量が少ない符号化装置を実現することができる。以下では、第1実施形態との差分のみを説明する。
第2実施形態の符号化装置200を図6に示す。
符号化装置200は、利得調整符号化部120に代えて利得調整符号化部220を備え、第2符号化部130に代えて第2符号化部230を備え、比較選択部140に代えて比較選択部240を備え、加えて追加符号化部250を備える以外は、第1実施形態の符号化装置100と同一である。なお、追加符号化部250を備えることは必須ではない。
図3に例示するように、第2実施形態の利得調整符号化部220は、切り捨て部1216に代えて切り捨て部2216を備える以外は、第1実施形態の利得調整符号化部120と同一である。
切り捨て部2216は、判定部1207が出力した消費ビット数cが配分ビット数Bより多い場合には、判定部1207が出力した整数信号符号から、消費ビット数cが配分ビット数Bを上回る分のビット数(すなわち、c-Bビット)の符号を取り除いたものを、新たな整数信号符号(配分符号量以下の符号量を持つ整数信号符号)として出力する。一方、判定部1207が出力した消費ビット数cが配分ビット数Bより多くない場合には、切り捨て部2216は、判定部1207が出力した整数信号符号を出力する。また切り捨て部2216は、切り捨て部2216が出力する整数信号符号に対応するサンプル(量子化正規化済係数系列XQ(1),・・・,XQ(N)のうち、切り捨て部2216で取り除かれなかった符号に対応するサンプル)の振幅の絶対値和も出力する。
図6に例示するように、第2実施形態の第2符号化部230は、第2切り捨て部133に代えて第2切り捨て部233を備える以外は、第1実施形態の第2符号化部130と同一である。
第2切り捨て部233は、第2可変長符号化部132が出力した第2消費ビット数c2が配分ビット数Bより多い場合には、第2可変長符号化部132が出力した第2整数信号符号から、第2消費ビット数c2が配分ビット数Bを上回る分のビット数(すなわち、c2-Bビット)の符号を取り除いたものを、新たな第2整数信号符号(配分符号量以下の符号量を持つ第2整数信号符号)として出力する。一方、第2消費ビット数c2が配分ビット数Bより多くない場合には、第2切り捨て部233は、第2可変長符号化部132が出力した第2整数信号符号を出力する。また第2切り捨て部233は、第2切り捨て部233が出力する第2整数信号符号に対応するサンプル(逆並べ替え部131が出力したサンプル列のうち、第2切り捨て部233で取り除かれなかった符号に対応するサンプル)の振幅の絶対値和も出力する。
比較選択部240は、並べ替え後のサンプル列を可変長符号化対象とした場合と、並べ替え前のサンプル列を可変長符号化対象とした場合と、のうち、追加符号化部250も含めた符号化装置全体としての符号化歪みが少ないと推測されるほうの符号を出力する。
比較選択部240は、利得調整符号化部220が出力した整数信号符号の符号量と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。また、比較選択部240は、第2符号化部230が出力した第2整数信号符号の符号量をCBとして求める。そして、比較選択部240は、利得調整符号化部220が出力した絶対値和をFA、第2符号化部230が出力した絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)の値が0以上である場合には第2符号化部230が出力した第2整数信号符号と利得調整符号化部220が出力した利得符号とを出力し、評価尺度G1の値が負である場合には利得調整符号化部220が出力した整数信号符号と利得調整符号化部220が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、評価尺度G1=0である場合には、比較選択部240は、第2符号化部230が出力した第2整数信号符号と利得調整符号化部220が出力した利得符号とを出力してもよいし、利得調整符号化部220が出力した整数信号符号と利得調整符号化部220が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよい。
比較選択部240は、利得調整符号化部220が出力した整数信号符号の符号量をCBとして求める。また、比較選択部240は、第2符号化部230が出力した第2整数信号符号の符号量と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。そして、比較選択部240は、第2符号化部230が出力した絶対値和をFA、利得調整符号化部220が出力した絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)の値が負である場合には第2符号化部230が出力した第2整数信号符号と利得調整符号化部220が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力し、評価尺度G1の値が0以上である場合には利得調整符号化部220が出力した整数信号符号と利得調整符号化部220が出力した利得符号とを出力する。
ただし、評価尺度G1=0である場合には、比較選択部240は、第2符号化部230が出力した第2整数信号符号と利得調整符号化部220が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよいし、利得調整符号化部220が出力した整数信号符号と利得調整符号化部220が出力した利得符号とを出力してもよい。
EA=DA+FA×exp(-(B-CA)×δ) (4)
EA≒DA+FA×(1-(B-CA)×δ) (5)
ただし、DAは、並べ替え部110が出力した並べ替え後のサンプル列を利得で除算して得られる整数値列のうち、切り捨て部2216または第2切り捨て部233で取り除かれたサンプルの振幅の絶対値の和を表す。DBは、並べ替え部110が出力した並べ替え前のサンプル列を利得で除算して得られる整数値列のうち、切り捨て部2216または第2切り捨て部233で取り除かれたサンプルの振幅の絶対値の和を表す。δは予め定めた正の値である。
EB=DB+FB×exp(-(B-CB)×δ) (6)
EB≒DB+FB×(1-(B-CB)×δ) (7)
DA+FA-DB-FB=0 (8)
DA+FA×(1-(B-CA)×δ)-DB+FB×(1-(B-CB)×δ)
=DA+FA-FA×(B-CA)×δ-DB-FB+FB×(B-CB)×δ
=δ×(-FA×(B-CA)+FB×(B-CB)) (9)
式(9)より、-FA×(B-CA)+FB×(B-CB)が負なら並べ替え後のサンプル列を符号化対象とするほうがよいことがわかる。
追加符号化部250は、比較選択部240までの符号化誤差、すなわち、重み付け正規化MDCT係数列に含まれる情報のうち、比較選択部240が出力した符号に対応する利得や整数信号列(量子化正規化済係数系列中のサンプル列、または量子化正規化済係数系列に対して並べ替え部110が施した並べ替えと逆の並べ替えを施した系列中のサンプル列)に含まれない情報を符号化して符号を得て、得られた符号を追加符号として出力する。すなわち追加符号化部250は、重み付け正規化MDCT係数列に含まれる情報のうち、比較選択部240が出力した整数信号符号または第2整数信号符号および利得符号のいずれにも対応しない情報を符号化して得られる追加符号を出力する。
例えば、追加符号化部250は、比較選択部240までの符号化誤差によるサンプル列に含まれる1つまたは複数のサンプルを符号化して符号を得て、得られた符号を追加符号として出力する。ここで、比較選択部240まで符号化誤差によるサンプル列とは、重み付け正規化MDCT係数列の各サンプルの値から、当該サンプルに対応する整数信号列のサンプルに利得を乗算して得られる値を減算した値によるサンプル列である。
または、例えば、追加符号化部250は、重み付け正規化MDCT係数列各サンプルの値と、当該サンプルに対応する整数信号列中のサンプルに利得と利得補正値の加算値を乗算して得られる値を減算した値によるサンプル列と、の誤差が最小となるような利得補正値に対応する符号を追加符号として出力する。
なお追加符号のビット数は、例えば、配分ビット数Bから、比較選択部240が出力した整数信号符号または第2整数信号符号のビット数を減じた値以下とする
第2実施形態では実際の符号量を用いて符号の選択を行った。しかしながら、符号量の推定値を用いて符号の選択を行ってもよい。符号量の推定値を用いて符号の選択を行う例を第2実施形態の変形例として説明する。以下では、第1実施形態の変形例および第2実施形態との差分のみを説明する。
第2実施形態の変形例の符号化装置200’を図7に示す。
符号化装置200’は、利得調整符号化部220に代えて利得調整符号化・符号量推定部220’を備え、第2符号化部230に代えて第2符号量推定部230’を備え、比較選択符号化部240に代えて比較選択符号化部240’を備える以外、符号化装置200と同一である。
図5に例示するように、第2実施形態の変形例の利得調整符号化・符号量推定部220’は、可変長符号化部1206に代えて可変長符号量推定部1206’を備え、判定部1207に代えて判定部1207’を備え、切り捨て部2216に代えて切り捨て部2216’を備える以外は、第2実施形態の利得調整符号化部220と同一である。
切り捨て部2216’は、可変長符号量推定部1206’が出力した消費ビット数cが配分ビット数Bより多くない場合には、当該消費ビット数cを整数信号符号の符号量の推定値として出力し、当該消費ビット数cが配分ビット数Bより多い場合には、配分ビット数Bを整数信号符号の符号量の推定値として出力する。さらに切り捨て部2216’は、切り捨て部2216’が出力する整数信号符号の符号量の推定値に対応するサンプル(すなわち、当該整数信号符号に符号化されるサンプル)の振幅の絶対値和も出力する。
図7に例示するように、第2符号量推定部230’は、逆並べ替え部131’と第2可変長符号量推定部132’と第2切り捨て部233’とから構成される。
第2切り捨て部233’は、第2可変長符号量推定部132’が得た第2消費ビット数c2が配分ビット数Bより多くない場合には、第2可変長符号量推定部132’が得た第2消費ビット数c2を第2整数信号符号の符号量の推定値として出力し、第2可変長符号量推定部132’が得た第2消費ビット数c2が配分ビット数Bより多い場合には、配分ビット数Bを第2整数信号符号の符号量の推定値として出力する。さらに第2切り捨て部233’は、第2切り捨て部233’が出力する整数信号符号の符号量の推定値に対応するサンプル(すなわち、当該整数信号符号に符号化されるサンプル)の振幅の絶対値和も出力する。
比較選択符号化部240’は、並べ替え後のサンプル列を可変長符号化対象とした場合と、並べ替え前のサンプル列を可変長符号化対象とした場合と、のうち、追加符号化部も含めた符号化装置200’全体としての符号化歪みが少ないと推測されるほうの符号を出力する。
比較選択符号化部240’は、利得調整符号化・符号量推定部220’が出力した整数信号符号の符号量の推定値と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。また、比較選択符号化部240’は、第2符号量推定部230’が出力した第2整数信号符号の符号量の推定値をCBとして求める。
そして、比較選択符号化部240’は、利得調整符号化・符号量推定部220’が出力した絶対値和をFA、第2符号量推定部230’が出力した絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)の値が0以上である場合には、逆並べ替え部131’が生成したサンプル列、すなわち、周波数領域のサンプル列の各サンプルを利得調整符号化・符号量推定部220’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して第2整数信号符号を得て、得られた第2整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号とを出力する。評価尺度G1の値が負である場合には、比較選択符号化部240’は、利得調整符号化・符号量推定部220’が生成したサンプル列、すなわち、周波数領域のサンプル列を並べ替えて得られたサンプル列の各サンプルを利得調整符号化・符号量推定部220’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して整数信号符号を得て、得られた整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、評価尺度G1=0である場合には、比較選択符号化部240’は、上述のように得られた第2整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号とを出力してもよいし、上述のように得られた整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよい。
比較選択符号化部240’は、利得調整符号化・符号量推定部220’が出力した整数信号符号の符号量の推定値をCBとして求める。また、比較選択符号化部240’は、第2符号量推定部230’が出力した第2整数信号符号の符号量の推定値と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。そして、比較選択符号化部240’は、第2符号量推定部230’が出力した絶対値和をFA、利得調整符号化・符号量推定部220’が出力した絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)の値が負である場合には、逆並べ替え部131’が生成したサンプル列、すなわち、周波数領域のサンプル列を並べ替えて得られたサンプル列の各サンプルを利得調整符号化・符号量推定部220’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して第2整数信号符号を得て、得られた第2整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。評価尺度G1の値が0以上である場合には、比較選択符号化部240’は、利得調整符号化・符号量推定部220’が生成したサンプル列、すなわち、周波数領域のサンプル列を利得調整符号化・符号量推定部220’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して整数信号符号を得て、得られた整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号とを出力する。
ただし、評価尺度G1=0である場合には、比較選択符号化部240’は、上述のように得られた第2整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよいし、上述のように得られた整数信号符号と利得調整符号化・符号量推定部220’が出力した利得符号とを出力してもよい。
また同様に、比較選択符号化部240’は、可変長符号化して得られた第2整数信号符号のビット数が配分ビット数より多い場合には、可変長符号化して得られた第2整数信号符号のうち、ビット数が配分ビット数Bを上回る分の符号を取り除いたものを、第2整数信号符号として出力する。
第2実施形態と同様、第3実施形態でも符号化された情報量も考慮して符号の選択を行う。ただし、第3実施形態では第2実施形態と異なる評価尺度を用いて符号の選択を行う。以下では、第2実施形態との差分のみを説明する。
図3に例示するように、第3実施形態の利得調整符号化部320は、切り捨て部2216に代えて切り捨て部3216を備える以外は、第2実施形態の利得調整符号化部220と同一である。
切り捨て部3216は、判定部1207が出力した消費ビット数cが配分ビット数Bより多い場合には、判定部1207が出力した整数信号符号から、消費ビット数cが配分ビット数Bを上回る分のビット数(すなわち、c-Bビット)の符号を取り除いたものを、新たな整数信号符号(配分符号量以下の符号量を持つ整数信号符号)として出力する。一方、判定部1207が出力した消費ビット数cが配分ビット数Bより多くない場合には、切り捨て部3216は、判定部1207が出力した整数信号符号を出力する。また切り捨て部3216は、切り捨て部3216が取り除いた符号に対応するサンプルの振幅の絶対値和も出力する。
図6に例示するように、第3実施形態の第2符号化部330は、第2切り捨て部233に代えて第2切り捨て部333を備える以外は、第2実施形態の第2符号化部230と同一である。
第2切り捨て部333は、第2可変長符号化部132が出力した第2消費ビット数c2が配分ビット数Bより多い場合には、第2可変長符号化部132が出力した第2整数信号符号から、第2消費ビット数c2が配分ビット数Bを上回る分のビット数(すなわち、c2-Bビット)の符号を取り除いたものを、新たな第2整数信号符号(配分符号量以下の符号量を持つ第2整数信号符号)として出力する。一方、第2消費ビット数c2が配分ビット数Bより多くない場合には、第2切り捨て部333は、第2可変長符号化部132が出力した第2整数信号符号を出力する。また第2切り捨て部333は、第2切り捨て部333が取り除いた符号に対応するサンプルの振幅の絶対値和も出力する。
比較選択部340は、並べ替え後のサンプル列を可変長符号化対象とした場合と、並べ替え前のサンプル列を可変長符号化対象とした場合と、のうち、追加符号化部250も含めた符号化装置300全体としての符号化歪みが少ないと推測されるほうの符号を出力する。
比較選択部340は、利得調整符号化部320が出力した整数信号符号の符号量と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。また、比較選択部340は、第2符号化部330が出力した第2整数信号符号の符号量をCBとして求める。そして、比較選択部340は、切り捨て部3216が取り除いた符号に対応するサンプルの振幅の絶対値和をDA、第2切り捨て部333が取り除いた符号に対応するサンプルの振幅の絶対値和をDB、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)の値が0以上である場合には第2符号化部330が出力した第2整数信号符号と利得調整符号化部320が出力した利得符号とを出力し、評価尺度G2の値が負である場合には利得調整符号化部320が出力した整数信号符号と利得調整符号化部320が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、評価尺度G2=0である場合には、比較選択部340は、第2符号化部330が出力した第2整数信号符号と利得調整符号化部320が出力した利得符号とを出力してもよいし、利得調整符号化部320が出力した整数信号符号と利得調整符号化部320が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよい。
比較選択部340は、利得調整符号化部320が出力した整数信号符号の符号量をCBとして求める。また、比較選択部340は、第2符号化部330が出力した第2整数信号符号の符号量と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。そして、比較選択部340は、第2切り捨て部333が取り除いた符号に対応するサンプルの振幅の絶対値和をDA、切り捨て部3216が取り除いた符号に対応するサンプルの振幅の絶対値和をDB、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)の値が負である場合には第2符号化部330が出力した第2整数信号符号と利得調整符号化部320が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力し、評価尺度G2の値が0以上である場合には利得調整符号化部320が出力した整数信号符号と利得調整符号化部320が出力した利得符号とを出力する。
ただし、評価尺度G2=0である場合には、比較選択部340は、第2符号化部330が出力した第2整数信号符号と利得調整符号化部320が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよいし、利得調整符号化部320が出力した整数信号符号と利得調整符号化部320が出力した利得符号とを出力してもよい。
DA+FA×(1-(B-CA)×δ)-DB+FB×(1-(B-CB)×δ)
=DA-FA×(B-CA)×δ-DB+FB×(B-CB)×δ
=DA-DB-FA×(CB-CA)×δ
=DA-DB+γ(CB-CA) (10)
ただし、γ=FA×δである。なお、FA=FBとの仮定は、並べ替えをしてもしなくても同じ利得で除算したものを符号化するのだから可変長符号化で符号化される情報量は同じであろう、という仮定に基づく。
第3実施形態では実際の符号量を用いて符号の選択を行った。しかしながら、符号量の推定値を用いて符号の選択を行ってもよい。符号量の推定値を用いて符号の選択を行う例を第3実施形態の変形例として説明する。以下では、第1実施形態の変形例および第3実施形態との差分のみを説明する。
図7に例示するように、第3実施形態の変形例の符号化装置300’は、利得調整符号化部320に代えて利得調整符号化・符号量推定部320’を備え、第2符号化部330に代えて第2符号量推定部330’を備え、比較選択符号化部340に代えて比較選択符号化部340’を備える以外、符号化装置300と同一である。
図5に例示するように、第3実施形態の変形例の利得調整符号化・符号量推定部320’は、可変長符号化部1206に代えて可変長符号量推定部1206’を備え、判定部1207に代えて判定部1207’を備え、切り捨て部3216に代えて切り捨て部3216’を備える以外は、第3実施形態の利得調整符号化部320と同一である。
切り捨て部3216’は、可変長符号量推定部1206’が出力した消費ビット数cが配分ビット数Bより多くない場合には、当該消費ビット数cを整数信号符号の符号量の推定値として出力し、当該消費ビット数cが配分ビット数Bより多い場合には、配分ビット数Bを整数信号符号の符号量の推定値として出力する。さらに切り捨て部3216’は、可変長符号量推定部1206’が出力した消費ビット数cに対応するサンプル(すなわち、当該消費ビット数cの整数信号符号に符号化されるサンプル)から、切り捨て部3216’が出力する整数信号符号の符号量の推定値に対応するサンプル(すなわち、当該整数信号符号に符号化されるサンプル)、を取り除くことで得られるサンプルの振幅の絶対値和も出力する。
図7に例示するように、第2符号量推定部330’は、逆並べ替え部131’と第2可変長符号量推定部132’と第2切り捨て部333’とから構成される。
第2切り捨て部333’は、第2可変長符号量推定部132’が得た第2消費ビット数c2が配分ビット数Bより多くない場合には、第2可変長符号量推定部132’が得た第2消費ビット数c2を第2整数信号符号の符号量の推定値として出力し、第2可変長符号量推定部132’が得た第2消費ビット数c2が配分ビット数Bより多い場合には、配分ビット数Bを第2整数信号符号の符号量の推定値として出力する。さらに第2切り捨て部333’は、第2可変長符号量推定部132’が出力した第2消費ビット数c2に対応するサンプル(すなわち、当該第2消費ビット数c2の第2整数信号符号に符号化されるサンプル)から、第2切り捨て部333’が出力する第2整数信号符号の符号量の推定値に対応するサンプル(すなわち、当該第2整数信号符号に符号化されるサンプル)、を取り除くことで得られるサンプルの振幅の絶対値和も出力する。
比較選択符号化部340’は、並べ替え後のサンプル列を可変長符号化対象とした場合と、並べ替え前のサンプル列を可変長符号化対象とした場合と、のうち、追加符号化部250も含めた符号化装置300’全体としての符号化歪みが少ないと推測されるほうの符号を出力する。
比較選択符号化部340’は、利得調整符号化・符号量推定部320’が出力した整数信号符号の符号量の推定値と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。また、比較選択符号化部340’は、第2符号量推定部330’が出力した第2整数信号符号の符号量の推定値をCBとして求める。そして、比較選択符号化部340’は、切り捨て部3216’が出力した絶対値和をDA、第2切り捨て部333’が出力した絶対値和をDB、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)の値が0以上である場合には、逆並べ替え部131’が生成したサンプル列、すなわち、周波数領域のサンプル列の各サンプルを利得調整符号化・符号量推定部320’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して第2整数信号符号を得て、得られた第2整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号とを出力する。評価尺度G2の値が負である場合には、比較選択符号化部340’は、利得調整符号化・符号量推定部320’が生成したサンプル列、すなわち、周波数領域のサンプル列を並べ替えて得られたサンプル列の各サンプルを利得調整符号化・符号量推定部320’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して整数信号符号を得て、得られた整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。
ただし、評価尺度G2=0である場合には、比較選択符号化部340’は、上述のように得られた第2整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号とを出力してもよいし、上述のように得られた整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよい。
比較選択符号化部340’は、利得調整符号化・符号量推定部320’が出力した整数信号符号の符号量の推定値をCBとして求める。また、比較選択符号化部340’は、第2符号量推定部330’が出力した第2整数信号符号の符号量の推定値と、並べ替え部110が出力した並べ替えを特定する補助情報の符号量と、の合計をCAとして求める。そして、比較選択符号化部340’は、第2切り捨て部333’が出力した絶対値和をDA、切り捨て部3216’が出力した絶対値和をDB、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)の値が負である場合には、逆並べ替え部131’が生成したサンプル列、すなわち、周波数領域のサンプル列を並べ替えて得られたサンプル列の各サンプルを利得調整符号化・符号量推定部320’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して整数信号符号を得て、得られた整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力する。評価尺度G2の値が0以上である場合には、比較選択符号化部340’は、利得調整符号化・符号量推定部320’が生成したサンプル列、すなわち、周波数領域のサンプル列の各サンプルを利得調整符号化・符号量推定部320’で得られた利得符号に対応する利得で除算して得られる整数値列、を可変長符号化して第2整数信号符号を得て、得られた第2整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号とを出力する。
ただし、評価尺度G2=0である場合には、比較選択符号化部340’は、上述のように得られた第2整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号と並べ替え部110が出力した並べ替えを特定する補助情報とを出力してもよいし、上述のように得られた整数信号符号と利得調整符号化・符号量推定部320’が出力した利得符号とを出力してもよい。
また同様に、比較選択符号化部340’は、可変長符号化して得られた第2整数信号符号のビット数が配分ビット数より多い場合には、可変長符号化して得られた第2整数信号符号のうち、ビット数が配分ビット数Bを上回る分の符号を取り除いたものを、第2整数信号符号として出力する。
本発明は上述の実施の形態に限定されるものではない。例えば、第1実施形態およびその変形例において、CAおよびCBの少なくとも一方が、並べ替えを特定する補助情報の符号量を含まなくてもよい。また、第1実施形態およびその変形例において、CA>CBである場合に実行する処理をCA≧CBの場合に実行し、かつ、CA>CBでない場合に実行する処理をCA≧CBでない場合に実行してもよい。さらに、第2,3実施形態およびそれらの変形例において、評価尺度の値が負である場合に実行する処理を評価尺度の値が0以下である場合に実行し、かつ、評価尺度の値が0以上である場合に実行する処理を評価尺度の値が正である場合に実行してもよい。また、上記の各実施形態では、消費ビット数が配分ビット数より少ない場合には利得上限設定部の処理を行い、消費ビット数が配分ビット数と等しい場合に判定部が利得等を出力することとした。しかしながら、消費ビット数が配分ビット数より多くない場合に利得上限設定部の処理を行ってもよい。
「周波数領域のサンプル列のうちの間隔Tに対応するサンプルを含む一つまたは連続する複数のサンプルおよび、周波数領域のサンプル列のうちの間隔Tの整数倍に対応するサンプルを含む一つまたは連続する複数のサンプル、の全部または一部のサンプル」の具体例は第1実施形態と同じであり、このようなサンプルによる群がサンプル群Gr1である。第1実施形態で説明したように、このようなサンプル群Gr1の設定方法には様々な選択肢がある。例えば、可変長符号化部4206に入力されたサンプル列のうち、間隔Tの整数倍に対応するサンプルF(nT)の前後のサンプルF(nT-1),F(nT+1)を含めた3個のサンプルF(nT-1),F(nT),F(nT+1)によるサンプル群の集合がサンプル群Gr1の例である。例えば、nが1から5までの各整数を表す場合、第1のサンプル群F(T-1),F(T),F(T+1)、第2のサンプル群F(2T-1),F(2T),F(2T+1)、第3のサンプル群F(3T-1),F(3T),F(3T+1)、第4のサンプル群F(4T-1),F(4T),F(4T+1)、第5のサンプル群F(5T-1),F(5T),F(5T+1)からなる群がサンプル群Gr1である。
可変長符号化として1サンプルごとのライス符号化を用いる例を説明する。
この場合、可変長符号化部4206は、サンプル群Gr1に含まれるサンプルの振幅の大きさまたはその推定値に対応するライスパラメータを用いてサンプル群Gr1に含まれるサンプルを1サンプルごとにライス符号化する。また、可変長符号化部4206は、サンプル群Gr2に含まれるサンプルの振幅の大きさまたはその推定値に対応するライスパラメータを用いてサンプル群Gr2に含まれるサンプルを1サンプルごとにライス符号化し、ライス符号化によって得られた符号列と、ライスパラメータを特定するための補助情報とを出力する。
サンプル群Gr1に含まれるサンプルX(k)を1サンプルごとにライス符号化して得られる符号は、サンプル群Gr1のライスパラメータsに対応する値でサンプルX(k)を除算して得られる商q(k)をアルファ符号化したprefix(k)と、その剰余を特定するsub(k)とを含む。すなわち、この例でのサンプルX(k)に対応する符号はprefix(k)とsub(k)とを含む。なお、ライス符号化対象となるサンプルX(k)は整数表現されたものである。
ライスパラメータs>0の場合、以下のように商q(k)が生成される。ただし、floor(χ)はχ以下の最大の整数である。
q(k)=floor(X(k)/2s-1) (for X(k)≧0) (B1)
q(k)=floor{(-X(k)-1)/2s-1} (for X(k)<0) (B2)
ライスパラメータs=0の場合、以下のように商q(k)が生成される。
q(k)=2×X(k) (for X(k)≧0) (B3)
q(k)=-2×X(k)-1 (for X(k)<0) (B4)
ライスパラメータs>0の場合、以下のようにsub(k)が生成される。
sub(k)=X(k)-2s-1×q(k)+2s-1 (for X(k)≧0) (B5)
sub(k)=(-X(k)-1)-2s-1×q(k) (for X(k)<0) (B6)
ライスパラメータs=0の場合、sub(k)はnullである(sub(k)=null)。
q(k)=floor{(2×|X(k)|-z)/2s} (z=0 or 1 or 2) (B7)
ライス符号化の場合、prefix(k)は商q(k)をアルファ符号化した符号であり、その符号量は、式(B7)を用いて以下のように表現できる。
floor{(2×|X(k)|-z)/2s}+1 (B8)
s’=log2{ln2×(2×D/|Gr1|-z)} (B11)
D/|Gr1|がzよりも十分大きいならば、式(B11)は以下のように近似できる。
s’=log2{ln2×(2×D/|Gr1|)} (B12)
式(B12)で得られるs’は整数化されていないため、s’を整数に量子化した値をライスパラメータsとする。このライスパラメータsは、サンプル群Gr1に含まれるサンプルの振幅の大きさの平均D/|Gr1|に対応し(式(B12)参照)、サンプル群Gr1に含まれるサンプルX(k)に対応する符号の総符号量を最小化する。
サンプル群Gr1に対応するライスパラメータとサンプル群Gr2に対応するライスパラメータとを区別して扱う場合、復号側では、サンプル群Gr1に対応するライスパラメータを特定するための補助情報(第3補助情報)と、サンプル群Gr2に対応するライスパラメータを特定するための補助情報(第4補助情報)とが必要となる。そのため、可変長符号化部4206は、サンプル列を1サンプルごとにライス符号化して得られた符号からなる符号列に加え、第3補助情報および第4補助情報を出力してもよい。
音響信号が符号化対象である場合、サンプル群Gr1に含まれるサンプルの振幅の大きさの平均はサンプル群Gr2に含まれるサンプルの振幅の大きさの平均よりも大きく、サンプル群Gr1に対応するライスパラメータがサンプル群Gr2に対応するライスパラメータよりも大きい。このことを利用してライスパラメータを特定するための補助情報の符号量を削減することもできる。
単独でサンプル群Gr1に対応するライスパラメータを特定できる情報を第5補助情報とし、サンプル群Gr1に対応するライスパラメータとサンプル群Gr2に対応するライスパラメータとの差分を特定できる情報を第6補助情報としてもよい。逆に、単独でサンプル群Gr2に対応するライスパラメータを特定できる情報を第6補助情報とし、サンプル群Gr1に対応するライスパラメータとサンプル群Gr2に対応するライスパラメータとの差分を特定できる情報を第5補助情報としてもよい。なお、サンプル群Gr1に対応するライスパラメータがサンプル群Gr2に対応するライスパラメータよりも大きいことが分かっているため、サンプル群Gr1に対応するライスパラメータとサンプル群Gr2に対応するライスパラメータとの大小関係を表す補助情報(正負を表す情報など)は不要である。
フレーム全体に割り当てられる符号ビット数が定められている場合には、利得の値もかなり制約され、サンプルの振幅のとり得る範囲も大きく制約される。この場合、フレーム全体に割り当てられる符号ビット数からサンプルの振幅の大きさの平均を或る程度の精度で推定できる。可変長符号化部4206は、当該サンプルの振幅の大きさの平均の推定値から推定されるライスパラメータを用いてライス符号化を行ってもよい。
サンプル群Gr1に含まれるサンプルの振幅の大きさが均等ではない場合や、サンプル群Gr2に含まれるサンプルの振幅の大きさが均等ではない場合であっても、サンプル列X(1)/W(1)β,・・・,X(N)/W(N)βの振幅の包絡情報をたよりに、符号量削減効果がより大きなライスパラメータを推定することもできる。たとえば、サンプルの振幅の大きさが高域ほど大きい場合には、サンプル群Gr1に含まれるサンプルのうち高域側のサンプルに対応するライスパラメータを固定的に増加させ、サンプル群Gr2に含まれるサンプルのうち高域側のサンプルに対応するライスパラメータを固定的に増加させることで、符号量をより削減できる。以下に具体例を示す。
Claims (18)
- 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成ステップと、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる整数信号符号と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる整数信号符号と、をループ処理により求める
第1符号化ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる第2整数信号符号を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる第2整数信号符号を得る
第2符号化ステップと、
上記第1符号化ステップで得られた整数信号符号の符号量が上記第2符号化ステップで得られた第2整数信号符号の符号量より大きい場合には、上記第2符号化ステップで得られた第2整数信号符号と上記利得符号とを出力し、
上記第1符号化ステップで得られた整数信号符号の符号量が上記第2符号化ステップで得られた第2整数信号符号の符号量より小さい場合には、上記第1符号化ステップで得られた整数信号符号と上記利得符号とを出力する
比較選択ステップと、
を有することを特徴とする符号化方法。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成ステップと、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる整数信号符号の符号量の推定値と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる整数信号符号の符号量の推定値と、をループ処理により求める
第1符号量推定ステップと、
上記指標が周期性が高いことに対応する場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる第2整数信号符号の符号量の推定値を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる第2整数信号符号の符号量の推定値を得る
第2符号量推定ステップと、
上記指標が周期性が高いことに対応し、かつ、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値が上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値より大きい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる第2整数信号符号と、上記利得符号と、を出力し、
上記指標が周期性が高いことに対応し、かつ、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値が上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値より小さい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる整数信号符号と、上記利得符号と、を出力し、
上記指標が周期性が低いことに対応し、かつ、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値が上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値より大きい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる第2整数信号符号と、上記利得符号と、を出力し、
上記指標が周期性が低いことに対応し、かつ、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値が上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値より小さい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる整数信号符号と、上記利得符号と、を出力する
比較選択符号化ステップと、
を有することを特徴とする符号化方法。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成ステップと、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して予め定められた配分符号量以下の符号量を持つ整数信号符号と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して上記配分符号量以下の符号量を持つ整数信号符号と、をループ処理により求める
第1符号化ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して上記配分符号量以下の符号量を持つ第2整数信号符号を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して上記配分符号量以下の符号量を持つ第2整数信号符号を得る
第2符号化ステップと、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化ステップで得られた整数信号符号を含む符号の符号量をCAとし、上記第2符号化ステップで得られた第2整数信号符号を含む符号の符号量をCBとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)が正である場合には、上記第2符号化ステップで得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G1が負である場合には、上記第1符号化ステップで得られた整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化ステップで得られた整数信号符号を含む符号の符号量をCBとし、上記第2符号化ステップで得られた第2整数信号符号を含む符号の符号量をCAとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとしたときの第2評価尺度G1=-FA×(B-CA)+FB×(B-CB)が負である場合には、上記第2符号化ステップで得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G1が正である場合には、上記第1符号化ステップで得られた整数信号符号と上記利得符号とを出力する
比較選択ステップと、
を有することを特徴とする符号化方法。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成ステップと、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から予め定められた配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、をループ処理により求める
第1符号化ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号を得る
第2符号化ステップと、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化ステップで得られた整数信号符号を含む符号の符号量をCAとし、上記第2符号化ステップで得られた第2整数信号符号を含む符号の符号量をCBとし、上記第1符号化ステップで取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、上記第2符号化ステップで取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)が正である場合には、上記第2符号化ステップで得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G2が負である場合には、上記第1符号化ステップで得られた整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化ステップで得られた整数信号符号を含む符号の符号量をCBとし、上記第2符号化ステップで得られた第2整数信号符号を含む符号の符号量をCAとし、上記第1符号化ステップで取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、上記第2符号化ステップで取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、予め定めた正の値をγとしたときの第2評価尺度G2=DA-DB+γ(CB-CA)が負である場合には、上記第2符号化ステップで得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G2が正である場合には、上記第1符号化ステップで得られた整数信号符号と上記利得符号とを出力する
比較選択ステップと、
を有することを特徴とする符号化方法。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成ステップと、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、予め定められた配分符号量以下の符号量を持つ整数信号符号の符号量の推定値と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ整数信号符号の符号量の推定値と、をループ処理により求める
第1符号量推定ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号の符号量の推定値を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号の符号量の推定値を得る
第2符号量推定ステップと、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値から得られる値をCAとし、上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値から得られる値をCBとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G1が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値から得られる値をCBとし、上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値から得られる値をCAとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G1が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ整数信号符号と、上記利得符号とを出力する
比較選択ステップと、
を有することを特徴とする符号化方法。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成ステップと、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から予め定められた配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号の符号量の推定値と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号の符号量の推定値と、をループ処理により求める
第1符号量推定ステップと、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号の符号量の推定値を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号の符号量の推定値を得る
第2符号量推定ステップと、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値から得られる値をCAとし、上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値から得られる値をCBとし、上記整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、上記第2整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G2が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定ステップで得られた整数信号符号の符号量の推定値から得られる値をCBとし、上記第2符号量推定ステップで得られた第2整数信号符号の符号量の推定値から得られる値をCAとし、上記整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、上記第2整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、予め定めた正の値をγとしたときの第2評価尺度G2=DA-DB+γ(CB-CA)が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G2が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定ステップで得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、上記利得符号とを出力する
比較選択ステップと、
を有することを特徴とする符号化方法。 - 請求項1から6の何れかに記載の符号化方法であって、
上記周波数領域のサンプル列に含まれる情報のうち、上記比較選択ステップで出力された上記整数信号符号または上記第2整数信号符号および上記利得符号のいずれにも対応しない情報を符号化して得られる追加符号を出力する追加符号化ステップを含む
ことを特徴とする符号化方法。 - 請求項1から7の何れかに記載の符号化方法であって、
上記周期性分析ステップは、上記周波数領域のサンプル列の周期を少なくとも含む並べ替えを特定する情報を生成するステップを含み、
上記周期性を利用した符号化方法は、上記周期に基づいて並べ替えられた整数値サンプルによる列を可変長符号化する方法であり、
上記周期性を利用しない符号化方法は、上記周期に基づいて並べ替えられていない整数値サンプルによる列を可変長符号化する方法であり、
上記周期性を利用した符号化方法で符号化して得られる整数信号符号または第2整数信号符号は、上記周期に基づいて並べ替えられた整数値サンプルによる列を可変長符号化して得られる符号と、上記周波数領域のサンプル列の周期に対応する情報と、を少なくとも含み、
上記周期性を利用しない符号化方法で符号化して得られる整数信号符号または第2整数信号符号は、上記周期に基づいて並べ替えられていない整数値サンプルによる列を可変長符号化して得られる符号を少なくとも含む、
ことを特徴とする符号化方法。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成部と、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる整数信号符号と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる整数信号符号と、をループ処理により求める
第1符号化部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる第2整数信号符号を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる第2整数信号符号を得る
第2符号化部と、
上記第1符号化部で得られた整数信号符号の符号量が上記第2符号化部で得られた第2整数信号符号の符号量より大きい場合には、上記第2符号化部で得られた第2整数信号符号と上記利得符号とを出力し、
上記第1符号化部で得られた整数信号符号の符号量が上記第2符号化部で得られた第2整数信号符号の符号量より小さい場合には、上記第1符号化部で得られた整数信号符号と上記利得符号とを出力する
比較選択部と、
を有することを特徴とする符号化装置。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成部と、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる整数信号符号の符号量の推定値と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる整数信号符号の符号量の推定値と、をループ処理により求める
第1符号量推定部と、
上記指標が周期性が高いことに対応する場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる第2整数信号符号の符号量の推定値を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる第2整数信号符号の符号量の推定値を得る
第2符号量推定部と、
上記指標が周期性が高いことに対応し、かつ、上記第1符号量推定部で得られた整数信号符号の符号量の推定値が上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値より大きい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる第2整数信号符号と、上記利得符号と、を出力し、
上記指標が周期性が高いことに対応し、かつ、上記第1符号量推定部で得られた整数信号符号の符号量の推定値が上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値より小さい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる整数信号符号と、上記利得符号と、を出力し、
上記指標が周期性が低いことに対応し、かつ、上記第1符号量推定部で得られた整数信号符号の符号量の推定値が上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値より大きい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる第2整数信号符号と、上記利得符号と、を出力し、
上記指標が周期性が低いことに対応し、かつ、上記第1符号量推定部で得られた整数信号符号の符号量の推定値が上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値より小さい場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる整数信号符号と、上記利得符号と、を出力する
比較選択符号化部と、
を有することを特徴とする符号化装置。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成部と、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して予め定められた配分符号量以下の符号量を持つ整数信号符号と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して上記配分符号量以下の符号量を持つ整数信号符号と、をループ処理により求める
第1符号化部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して上記配分符号量以下の符号量を持つ第2整数信号符号を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して上記配分符号量以下の符号量を持つ第2整数信号符号を得る
第2符号化部と、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化部で得られた整数信号符号を含む符号の符号量をCAとし、上記第2符号化部で得られた第2整数信号符号を含む符号の符号量をCBとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)が正である場合には、上記第2符号化部で得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G1が負である場合には、上記第1符号化部で得られた整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化部で得られた整数信号符号を含む符号の符号量をCBとし、上記第2符号化部で得られた第2整数信号符号を含む符号の符号量をCAとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとしたときの第2評価尺度G1=-FA×(B-CA)+FB×(B-CB)が負である場合には、上記第2符号化部で得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G1が正である場合には、上記第1符号化部で得られた整数信号符号と上記利得符号とを出力する
比較選択部と、
を有することを特徴とする符号化装置。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成部と、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から予め定められた配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、をループ処理により求める
第1符号化部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号化部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号を得る
第2符号化部と、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化部で得られた整数信号符号を含む符号の符号量をCAとし、上記第2符号化部で得られた第2整数信号符号を含む符号の符号量をCBとし、上記第1符号化部で取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、上記第2符号化部で取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)が正である場合には、上記第2符号化部で得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G2が負である場合には、上記第1符号化部で得られた整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号化部で得られた整数信号符号を含む符号の符号量をCBとし、上記第2符号化部で得られた第2整数信号符号を含む符号の符号量をCAとし、上記第1符号化部で取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、上記第2符号化部で取り除かれた上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、予め定めた正の値をγとしたときの第2評価尺度G2=DA-DB+γ(CB-CA)が負である場合には、上記第2符号化部で得られた第2整数信号符号と上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G2が正である場合には、上記第1符号化部で得られた整数信号符号と上記利得符号とを出力する
比較選択部と、
を有することを特徴とする符号化装置。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成部と、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、予め定められた配分符号量以下の符号量を持つ整数信号符号の符号量の推定値と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ整数信号符号の符号量の推定値と、をループ処理により求める
第1符号量推定部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号の符号量の推定値を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号の符号量の推定値を得る
第2符号量推定部と、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定部で得られた整数信号符号の符号量の推定値から得られる値をCAとし、上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値から得られる値をCBとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G1が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定部で得られた整数信号符号の符号量の推定値から得られる値をCBとし、上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値から得られる値をCAとし、上記整数信号符号に対応する整数値サンプルの振幅の絶対値和をFBとし、上記第2整数信号符号に対応する整数値サンプルの振幅の絶対値和をFAとしたときの評価尺度G1=-FA×(B-CA)+FB×(B-CB)が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G1が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる、上記配分符号量以下の符号量を持つ整数信号符号と、上記利得符号とを出力する
比較選択部と、
を有することを特徴とする符号化装置。 - 所定の時間区間ごとの音響信号に由来する周波数領域のサンプル列を得る周波数領域サンプル列生成部と、
上記周波数領域のサンプル列の周期性の程度を示す指標を算出する周期性分析部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から予め定められた配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号の符号量の推定値と、をループ処理により求め、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを除算するための利得に対応する利得符号と、上記周波数領域のサンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号の符号量の推定値と、をループ処理により求める
第1符号量推定部と、
上記指標が周期性が高いことに対応する場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数サンプルによる値列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号の符号量の推定値を得て、
上記以外の場合には、上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号の符号量の推定値を得る
第2符号量推定部と、
上記指標が周期性が高いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定部で得られた整数信号符号の符号量の推定値から得られる値をCAとし、上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値から得られる値をCBとし、上記整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、上記第2整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、予め定めた正の値をγとしたときの評価尺度G2=DA-DB+γ(CB-CA)が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が高いことに対応し、かつ、上記評価尺度G2が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記配分符号量をBとし、上記第1符号量推定部で得られた整数信号符号の符号量の推定値から得られる値をCBとし、上記第2符号量推定部で得られた第2整数信号符号の符号量の推定値から得られる値をCAとし、上記整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDBとし、上記第2整数信号符号を得るために取り除かれる上記配分符号量を上回る分だけの符号に対応する整数値サンプルの振幅の絶対値和をDAとし、予め定めた正の値をγとしたときの第2評価尺度G2=DA-DB+γ(CB-CA)が負である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用した符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる第2整数信号符号と、上記利得符号とを出力し、
上記指標が周期性が低いことに対応し、かつ、上記第2評価尺度G2が正である場合には、
上記周波数領域のサンプル列の各サンプルを上記第1符号量推定部で得られた利得符号に対応する利得で除算して得られる整数値サンプルによる列を周期性を利用しない符号化方法で符号化して得られる符号から上記配分符号量を上回る分だけの符号を取り除いて得られる整数信号符号と、上記利得符号とを出力する
比較選択部と、
を有することを特徴とする符号化装置。 - 請求項9から14の何れかに記載の符号化装置であって、
上記周波数領域のサンプル列に含まれる情報のうち、上記比較選択部が出力した上記整数信号符号または上記第2整数信号符号および上記利得符号のいずれにも対応しない情報を符号化して得られる追加符号を出力する追加符号化部を含む
ことを特徴とする符号化装置。 - 請求項9から15の何れかに記載の符号化装置であって、
上記周期性分析部は、上記周波数領域のサンプル列の周期を少なくとも含む並べ替えを特定する情報を生成し、
上記周期性を利用した符号化方法は、上記周期に基づいて並べ替えられた整数値サンプルによる列を可変長符号化する方法であり、
上記周期性を利用しない符号化方法は、上記周期に基づいて並べ替えられていない整数値サンプルによる列を可変長符号化する方法であり、
上記周期性を利用した符号化方法で符号化して得られる整数信号符号または第2整数信号符号は、上記周期に基づいて並べ替えられた整数値サンプルによる列を可変長符号化して得られる符号と、上記周波数領域のサンプル列の周期に対応する情報と、を少なくとも含み、
上記周期性を利用しない符号化方法で符号化して得られる整数信号符号または第2整数信号符号は、上記周期に基づいて並べ替えられていない整数値サンプルによる列を可変長符号化して得られる符号を少なくとも含む、
ことを特徴とする符号化装置。 - 請求項1から8の何れかの符号化方法の各ステップをコンピュータに実行させるためのプログラム。
- 請求項1から8の何れかの符号化方法の各ステップをコンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記録媒体。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201380051254.XA CN104704559B (zh) | 2012-10-01 | 2013-09-30 | 编码方法以及编码装置 |
EP17181773.7A EP3252762B1 (en) | 2012-10-01 | 2013-09-30 | Encoding method, encoder, program and recording medium |
EP19154181.2A EP3525208B1 (en) | 2012-10-01 | 2013-09-30 | Encoding method, encoder, program and recording medium |
US14/423,581 US9524725B2 (en) | 2012-10-01 | 2013-09-30 | Encoding method, encoder, program and recording medium |
JP2014539717A JP5893153B2 (ja) | 2012-10-01 | 2013-09-30 | 符号化方法、符号化装置、プログラム、および記録媒体 |
EP13844077.1A EP2887349B1 (en) | 2012-10-01 | 2013-09-30 | Coding method, coding device, program, and recording medium |
PL17181773T PL3252762T3 (pl) | 2012-10-01 | 2013-09-30 | Sposób kodowania, koder, program i nośnik zapisu |
ES13844077.1T ES2657039T3 (es) | 2012-10-01 | 2013-09-30 | Método de codificación, dispositivo de codificación, programa, y medio de grabación |
KR1020157005955A KR101700855B1 (ko) | 2012-10-01 | 2013-09-30 | 부호화 방법, 부호화 장치, 프로그램 및 기록 매체 |
PL19154181T PL3525208T3 (pl) | 2012-10-01 | 2013-09-30 | Sposób kodowania, koder, program i nośnik zapisu |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012-219153 | 2012-10-01 | ||
JP2012219153 | 2012-10-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014054556A1 true WO2014054556A1 (ja) | 2014-04-10 |
Family
ID=50434883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/076480 WO2014054556A1 (ja) | 2012-10-01 | 2013-09-30 | 符号化方法、符号化装置、プログラム、および記録媒体 |
Country Status (9)
Country | Link |
---|---|
US (1) | US9524725B2 (ja) |
EP (3) | EP2887349B1 (ja) |
JP (1) | JP5893153B2 (ja) |
KR (1) | KR101700855B1 (ja) |
CN (4) | CN107516530B (ja) |
ES (3) | ES2720253T3 (ja) |
PL (2) | PL3525208T3 (ja) |
TR (1) | TR201902943T4 (ja) |
WO (1) | WO2014054556A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9838700B2 (en) | 2014-11-27 | 2017-12-05 | Nippon Telegraph And Telephone Corporation | Encoding apparatus, decoding apparatus, and method and program for the same |
US10325609B2 (en) * | 2015-04-13 | 2019-06-18 | Nippon Telegraph And Telephone Corporation | Coding and decoding a sound signal by adapting coefficients transformable to linear predictive coefficients and/or adapting a code book |
EP3751565A1 (en) | 2015-01-30 | 2020-12-16 | Nippon Telegraph And Telephone Corporation | Parameter determination device, method, program and recording medium |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2768090T3 (es) | 2014-03-24 | 2020-06-19 | Nippon Telegraph & Telephone | Método de codificación, codificador, programa y soporte de registro |
TR201900472T4 (tr) * | 2014-04-24 | 2019-02-21 | Nippon Telegraph & Telephone | Frekans alanı parametre dizisi oluşturma metodu, kodlama metodu, kod çözme metodu, frekans alanı parametre dizisi oluşturma aparatı, kodlama aparatı, kod çözme aparatı, programı ve kayıt ortamı. |
ES2840349T3 (es) * | 2014-05-01 | 2021-07-06 | Nippon Telegraph & Telephone | Descodificación de una señal de sonido |
CN106663437B (zh) | 2014-05-01 | 2021-02-02 | 日本电信电话株式会社 | 编码装置、解码装置、编码方法、解码方法、记录介质 |
WO2016142002A1 (en) * | 2015-03-09 | 2016-09-15 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal |
US10251438B2 (en) | 2016-08-10 | 2019-04-09 | Lymphatech | Methods of generating compression garment measurement information for a patient body part and fitting pre-fabricated compression garments thereto |
AU2019200433B1 (en) | 2018-02-14 | 2019-05-16 | Lymphatech, Inc. | Methods Of Generating Compression Garment Measurement Information For A Patient Body Part And Fitting Pre-Fabricated Compression Garments Thereto |
EP3776546B1 (en) * | 2018-04-05 | 2022-01-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Support for generation of comfort noise, and generation of comfort noise |
CN111971902B (zh) * | 2018-04-13 | 2024-03-29 | 日本电信电话株式会社 | 编码装置、解码装置、编码方法、解码方法、程序及记录介质 |
DE102018112215B3 (de) * | 2018-04-30 | 2019-07-25 | Basler Ag | Quantisiererbestimmung, computerlesbares Medium und Vorrichtung, die mindestens zwei Quantisierer implementiert |
JP7139897B2 (ja) * | 2018-11-07 | 2022-09-21 | 日本電信電話株式会社 | 符号化装置、復号装置、符号化方法、復号方法、符号化プログラム、復号プログラム |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005181354A (ja) * | 2003-12-15 | 2005-07-07 | Sony Corp | 復号装置及び方法 |
JP2009501943A (ja) * | 2005-07-15 | 2009-01-22 | マイクロソフト コーポレーション | 適応コーディングおよびデコーディングでの複数のエントロピモデルの選択的使用 |
WO2011083849A1 (ja) * | 2010-01-08 | 2011-07-14 | 日本電信電話株式会社 | 符号化方法、復号方法、符号化装置、復号装置、プログラムおよび記録媒体 |
WO2012008330A1 (ja) * | 2010-07-16 | 2012-01-19 | 日本電信電話株式会社 | 符号化装置、復号装置、これらの方法、プログラム及び記録媒体 |
WO2012046685A1 (ja) | 2010-10-05 | 2012-04-12 | 日本電信電話株式会社 | 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体 |
WO2012102149A1 (ja) * | 2011-01-25 | 2012-08-02 | 日本電信電話株式会社 | 符号化方法、符号化装置、周期性特徴量決定方法、周期性特徴量決定装置、プログラム、記録媒体 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0559348A3 (en) * | 1992-03-02 | 1993-11-03 | AT&T Corp. | Rate control loop processor for perceptual encoder/decoder |
FI116992B (fi) * | 1999-07-05 | 2006-04-28 | Nokia Corp | Menetelmät, järjestelmä ja laitteet audiosignaalin koodauksen ja siirron tehostamiseksi |
US6782360B1 (en) * | 1999-09-22 | 2004-08-24 | Mindspeed Technologies, Inc. | Gain quantization for a CELP speech coder |
US6581032B1 (en) * | 1999-09-22 | 2003-06-17 | Conexant Systems, Inc. | Bitstream protocol for transmission of encoded voice signals |
JP2003323199A (ja) * | 2002-04-26 | 2003-11-14 | Matsushita Electric Ind Co Ltd | 符号化装置、復号化装置及び符号化方法、復号化方法 |
JP2004020675A (ja) * | 2002-06-13 | 2004-01-22 | Hitachi Kokusai Electric Inc | 音声符号化/復号化方法及び音声符号化/復号化装置 |
ES2261619T3 (es) * | 2002-07-02 | 2006-11-16 | Teltronic S.A.U. | Metodo de generacion de tramas de ruido aceptable. |
US7792670B2 (en) * | 2003-12-19 | 2010-09-07 | Motorola, Inc. | Method and apparatus for speech coding |
CN101656075B (zh) * | 2004-05-14 | 2012-08-29 | 松下电器产业株式会社 | 音频解码装置、音频解码方法以及通信终端和基站装置 |
CN101243488B (zh) * | 2005-06-30 | 2012-05-30 | Lg电子株式会社 | 用于编码和解码音频信号的装置及其方法 |
CN100524462C (zh) * | 2007-09-15 | 2009-08-05 | 华为技术有限公司 | 对高带信号进行帧错误隐藏的方法及装置 |
EP2224432B1 (en) * | 2007-12-21 | 2017-03-15 | Panasonic Intellectual Property Corporation of America | Encoder, decoder, and encoding method |
JP4516157B2 (ja) * | 2008-09-16 | 2010-08-04 | パナソニック株式会社 | 音声分析装置、音声分析合成装置、補正規則情報生成装置、音声分析システム、音声分析方法、補正規則情報生成方法、およびプログラム |
EP2262267A1 (en) * | 2009-06-10 | 2010-12-15 | Panasonic Corporation | Filter coefficient coding scheme for video coding |
US7978101B2 (en) * | 2009-10-28 | 2011-07-12 | Motorola Mobility, Inc. | Encoder and decoder using arithmetic stage to compress code space that is not fully utilized |
CN102194457B (zh) * | 2010-03-02 | 2013-02-27 | 中兴通讯股份有限公司 | 音频编解码方法、***及噪声水平估计方法 |
RU2559709C2 (ru) * | 2011-02-16 | 2015-08-10 | Ниппон Телеграф Энд Телефон Корпорейшн | Способ кодирования, способ декодирования, кодер, декодер, программа и носитель записи |
-
2013
- 2013-09-30 US US14/423,581 patent/US9524725B2/en active Active
- 2013-09-30 ES ES17181773T patent/ES2720253T3/es active Active
- 2013-09-30 EP EP13844077.1A patent/EP2887349B1/en active Active
- 2013-09-30 EP EP17181773.7A patent/EP3252762B1/en active Active
- 2013-09-30 KR KR1020157005955A patent/KR101700855B1/ko active IP Right Grant
- 2013-09-30 WO PCT/JP2013/076480 patent/WO2014054556A1/ja active Application Filing
- 2013-09-30 CN CN201710728805.1A patent/CN107516530B/zh active Active
- 2013-09-30 EP EP19154181.2A patent/EP3525208B1/en active Active
- 2013-09-30 JP JP2014539717A patent/JP5893153B2/ja active Active
- 2013-09-30 ES ES13844077.1T patent/ES2657039T3/es active Active
- 2013-09-30 TR TR2019/02943T patent/TR201902943T4/tr unknown
- 2013-09-30 CN CN201710728816.XA patent/CN107316646B/zh active Active
- 2013-09-30 CN CN201380051254.XA patent/CN104704559B/zh active Active
- 2013-09-30 ES ES19154181T patent/ES2890706T3/es active Active
- 2013-09-30 PL PL19154181T patent/PL3525208T3/pl unknown
- 2013-09-30 PL PL17181773T patent/PL3252762T3/pl unknown
- 2013-09-30 CN CN201710728723.7A patent/CN107359880B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005181354A (ja) * | 2003-12-15 | 2005-07-07 | Sony Corp | 復号装置及び方法 |
JP2009501943A (ja) * | 2005-07-15 | 2009-01-22 | マイクロソフト コーポレーション | 適応コーディングおよびデコーディングでの複数のエントロピモデルの選択的使用 |
WO2011083849A1 (ja) * | 2010-01-08 | 2011-07-14 | 日本電信電話株式会社 | 符号化方法、復号方法、符号化装置、復号装置、プログラムおよび記録媒体 |
WO2012008330A1 (ja) * | 2010-07-16 | 2012-01-19 | 日本電信電話株式会社 | 符号化装置、復号装置、これらの方法、プログラム及び記録媒体 |
WO2012046685A1 (ja) | 2010-10-05 | 2012-04-12 | 日本電信電話株式会社 | 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体 |
WO2012102149A1 (ja) * | 2011-01-25 | 2012-08-02 | 日本電信電話株式会社 | 符号化方法、符号化装置、周期性特徴量決定方法、周期性特徴量決定装置、プログラム、記録媒体 |
Non-Patent Citations (2)
Title |
---|
"Extended Adaptive Multi-Rate - Wideband (AMR-WB+) codec; Transcoding functions", 3RD GENERATION PARTNERSHIP PROJECT(3GPP), TECHNICAL SPECIFICATION (TS, vol. 26.290, March 2011 (2011-03-01) |
See also references of EP2887349A4 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9838700B2 (en) | 2014-11-27 | 2017-12-05 | Nippon Telegraph And Telephone Corporation | Encoding apparatus, decoding apparatus, and method and program for the same |
EP3751565A1 (en) | 2015-01-30 | 2020-12-16 | Nippon Telegraph And Telephone Corporation | Parameter determination device, method, program and recording medium |
US10325609B2 (en) * | 2015-04-13 | 2019-06-18 | Nippon Telegraph And Telephone Corporation | Coding and decoding a sound signal by adapting coefficients transformable to linear predictive coefficients and/or adapting a code book |
Also Published As
Publication number | Publication date |
---|---|
US9524725B2 (en) | 2016-12-20 |
PL3252762T3 (pl) | 2019-07-31 |
KR101700855B1 (ko) | 2017-01-31 |
ES2657039T3 (es) | 2018-03-01 |
EP2887349A4 (en) | 2016-04-27 |
CN107516530A (zh) | 2017-12-26 |
EP2887349A1 (en) | 2015-06-24 |
JP5893153B2 (ja) | 2016-03-23 |
EP2887349B1 (en) | 2017-11-15 |
CN107359880B (zh) | 2020-08-25 |
EP3525208A1 (en) | 2019-08-14 |
PL3525208T3 (pl) | 2021-12-13 |
ES2890706T3 (es) | 2022-01-21 |
ES2720253T3 (es) | 2019-07-19 |
JPWO2014054556A1 (ja) | 2016-08-25 |
CN107516530B (zh) | 2020-08-25 |
CN107316646A (zh) | 2017-11-03 |
CN104704559A (zh) | 2015-06-10 |
CN107359880A (zh) | 2017-11-17 |
EP3525208B1 (en) | 2021-07-28 |
KR20150041090A (ko) | 2015-04-15 |
CN107316646B (zh) | 2020-11-10 |
EP3252762B1 (en) | 2019-01-30 |
CN104704559B (zh) | 2017-09-15 |
EP3252762A1 (en) | 2017-12-06 |
US20150187366A1 (en) | 2015-07-02 |
TR201902943T4 (tr) | 2019-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5893153B2 (ja) | 符号化方法、符号化装置、プログラム、および記録媒体 | |
KR101762204B1 (ko) | 부호화 방법, 복호 방법, 부호화 장치, 복호 장치, 프로그램 및 기록 매체 | |
JP5596800B2 (ja) | 符号化方法、周期性特徴量決定方法、周期性特徴量決定装置、プログラム | |
JP5612698B2 (ja) | 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体 | |
JP6595687B2 (ja) | 符号化方法、符号化装置、プログラム、および記録媒体 | |
JP5694751B2 (ja) | 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13844077 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014539717 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14423581 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 20157005955 Country of ref document: KR Kind code of ref document: A |
|
REEP | Request for entry into the european phase |
Ref document number: 2013844077 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2013844077 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |