JP2013045067A - Device, method, and program for encoding - Google Patents

Device, method, and program for encoding Download PDF

Info

Publication number
JP2013045067A
JP2013045067A JP2011184826A JP2011184826A JP2013045067A JP 2013045067 A JP2013045067 A JP 2013045067A JP 2011184826 A JP2011184826 A JP 2011184826A JP 2011184826 A JP2011184826 A JP 2011184826A JP 2013045067 A JP2013045067 A JP 2013045067A
Authority
JP
Japan
Prior art keywords
bits
usable
bit
quantization
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011184826A
Other languages
Japanese (ja)
Other versions
JP5782921B2 (en
Inventor
Katsumori Hagiwara
克守 萩原
Yoshiteru Tsuchinaga
義照 土永
Shusaku Ito
周作 伊藤
Sosaku Moriki
創作 森木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011184826A priority Critical patent/JP5782921B2/en
Publication of JP2013045067A publication Critical patent/JP2013045067A/en
Application granted granted Critical
Publication of JP5782921B2 publication Critical patent/JP5782921B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the processing load for obtaining quantization values.SOLUTION: An encoder 100 determines each quantization step on the basis of the number of usable bits and a masking threshold. The encoder 100 produces each quantization value by quantizing an input audio signal on the basis of the determined quantization step. When the number of bits used for each quantization value is greater than the number of usable bits, the encoder 100 compensates for the lack of bits using supplementary bits stored in a bit reservoir 140.

Description

本発明は、符号化装置等に関する。   The present invention relates to an encoding device and the like.

従来、入力オーディオ信号を符号化する符号化装置が存在する。従来の符号化装置について説明する。図11は、従来の符号化装置の構成を示す図(1)である。図11に示すように、この符号化装置10は、聴覚心理演算部11、ビット割当部12、ビットリザーバ13、周波数変換部14、量子化部15、ストリーム生成部16を有する。   Conventionally, there exists an encoding device that encodes an input audio signal. A conventional encoding device will be described. FIG. 11 is a diagram (1) illustrating a configuration of a conventional encoding device. As illustrated in FIG. 11, the encoding device 10 includes an auditory psychological calculation unit 11, a bit allocation unit 12, a bit reservoir 13, a frequency conversion unit 14, a quantization unit 15, and a stream generation unit 16.

このうち、聴覚心理演算部11は、入力オーディオ信号に対して聴覚心理演算を実行し、心理聴覚エントロピー(Perceptual Entropy:PE)の値(以下PE値と称す。)およびマスキング閾値を算出する処理部である。聴覚心理演算部11は、PE値を、ビット割当部12に出力する。聴覚心理演算部11は、マスキング閾値の情報を、量子化部15に出力する。   Among them, the auditory psychological computation unit 11 performs auditory psychological computation on the input audio signal, and calculates a psychoacoustic entropy (Perceptual Entropy: PE) value (hereinafter referred to as PE value) and a masking threshold. It is. The auditory psychological calculation unit 11 outputs the PE value to the bit allocation unit 12. The auditory psychological calculation unit 11 outputs masking threshold information to the quantization unit 15.

PE値は、入力オーディオ信号の符号化が簡単か否かを判断するための尺度を示す値である。例えば、入力オーディオ信号の波形が複雑な場合には、符号化が難しくなるため、PE値は大きな値となる。これに対して、入力オーディオ信号の波形が単純なものであれば、PE値は小さな値となる。   The PE value is a value indicating a scale for determining whether or not the encoding of the input audio signal is simple. For example, when the waveform of the input audio signal is complicated, encoding becomes difficult, so the PE value becomes a large value. On the other hand, if the waveform of the input audio signal is simple, the PE value is small.

マスキング閾値は、例えば、入力オーディオ信号に含まれる周波数のうち、ユーザに聞こえる周波数の領域と、ユーザに聞こえない周波数の領域とを示す情報である。   The masking threshold is information indicating, for example, a frequency range that can be heard by the user and a frequency range that cannot be heard by the user, among the frequencies included in the input audio signal.

ビット割当部12は、指定された平均ビットレートとPE値とを基にして、使用可能ビット数を特定する処理部である。ビット割当部12は、使用可能ビット数を、量子化部15に出力する。使用可能ビット数は、量子化部15に利用されるビット数である。   The bit allocation unit 12 is a processing unit that specifies the number of usable bits based on the designated average bit rate and PE value. The bit allocation unit 12 outputs the number of usable bits to the quantization unit 15. The usable number of bits is the number of bits used by the quantization unit 15.

ビット割当部12の処理について具体的に説明する。ビット割当部12は、例えば、PE値と使用可能ビット数との関係を示すテーブルを保持する。ビット割当部12は、聴覚心理演算部11から取得するPE値と、テーブルとを比較して、使用可能ビット数を特定する。   The processing of the bit allocation unit 12 will be specifically described. For example, the bit allocation unit 12 holds a table indicating the relationship between the PE value and the number of usable bits. The bit allocation unit 12 compares the PE value acquired from the psychoacoustic operation unit 11 with the table, and specifies the number of usable bits.

使用可能ビット数を特定した後、ビット割当部12は、使用可能ビット数と、平均ビットレートとを比較する。使用可能ビット数が平均ビットレートの単位時間あたりのビット数よりも小さい場合には、ビット割当部12は、使用可能ビット数と平均ビットレートの単位時間あたりのビット数との差分ビット数を、剰余ビット数として、ビットリザーバ13に通知する。そして、ビット割当部12は、使用可能ビット数を、量子化部15に出力する。   After specifying the number of usable bits, the bit allocation unit 12 compares the number of usable bits with the average bit rate. When the number of usable bits is smaller than the number of bits per unit time of the average bit rate, the bit allocation unit 12 calculates the difference bit number between the number of usable bits and the number of bits per unit time of the average bit rate, This is notified to the bit reservoir 13 as the number of surplus bits. Then, the bit allocation unit 12 outputs the number of usable bits to the quantization unit 15.

使用可能ビット数が平均ビットレートの単位時間あたりのビット数よりも大きい場合には、ビット割当部12は、使用可能ビット数と平均ビットレートの単位時間あたりのビット数との差分ビット数を、不足ビット数としてビットリザーバ13に要求する。ビット割当部12は、不足ビット数を、ビットリザーバ13から受け付けた後に、使用可能ビット数を、量子化部15に出力する。   When the number of usable bits is larger than the number of bits per unit time of the average bit rate, the bit allocation unit 12 calculates the difference bit number between the number of usable bits and the number of bits per unit time of the average bit rate, The bit reservoir 13 is requested as an insufficient bit number. The bit allocation unit 12 receives the insufficient bit number from the bit reservoir 13 and then outputs the usable bit number to the quantization unit 15.

使用可能ビット数と平均ビットレートの単位時間あたりのビット数とが等しい場合には、ビット割当部12は、使用可能ビット数を量子化部15に出力する。   If the number of usable bits is equal to the number of bits per unit time of the average bit rate, the bit allocation unit 12 outputs the number of usable bits to the quantization unit 15.

図12は、使用可能ビット数の変化の一例を示す図(1)である。図12の縦軸は、使用可能ビット数を示し、横軸は、時間を示す。また、区間Taは、符号化の難易度が通常の区間である。区間Tbおよび区間Tcは、符号化が難しい区間である。区間Tdは、符号化が簡単な区間である。ビット数1aは、平均ビットレートの単位時間あたりのビット数である。   FIG. 12 is a diagram (1) illustrating an example of a change in the number of usable bits. The vertical axis in FIG. 12 indicates the number of usable bits, and the horizontal axis indicates time. The section Ta is a section in which the degree of difficulty in encoding is normal. The section Tb and the section Tc are sections that are difficult to encode. The section Td is a section that is easy to encode. The number of bits 1a is the number of bits per unit time of the average bit rate.

図12に示すように、区間Taでは、ビット数1aと使用可能ビット数が同じとなる。区間Tbおよび区間Tcでは、使用可能ビット数が、ビット数1aよりもビット数1b、ビット数1cだけ大きくなる。ビット数1aおよびビット数1cは、不足ビット数に対応する。区間Tdでは、使用可能ビット数が、ビット数1aよりもビット数1dだけ小さくなる。ビット数1dは、剰余ビット数に対応する。   As shown in FIG. 12, in the interval Ta, the number of bits 1a and the number of usable bits are the same. In the section Tb and the section Tc, the number of usable bits is larger than the number of bits 1a by the number of bits 1b and the number of bits 1c. The number of bits 1a and the number of bits 1c correspond to the number of insufficient bits. In the section Td, the number of usable bits is smaller than the number of bits 1a by the number of bits 1d. The number of bits 1d corresponds to the number of remainder bits.

ビットリザーバ13は、補填ビット数を記憶する処理部である。補填ビット数は、伝送路で伝送可能な所定のビット数と、使用可能ビット数との差分を示すビット数である。ビットリザーバ13は、ビット割当部12から、剰余ビット数を受け付けた場合には、補填ビット数に剰余ビット数を加算する。   The bit reservoir 13 is a processing unit that stores the number of compensation bits. The number of compensation bits is the number of bits indicating a difference between a predetermined number of bits that can be transmitted on the transmission path and the number of usable bits. When the bit reservoir 13 receives the number of surplus bits from the bit allocation unit 12, the bit reservoir 13 adds the number of surplus bits to the number of compensation bits.

ビットリザーバ13は、ビット割当部12から、不足ビット数の要求を受け付けた場合には、補填ビット数から不足ビット数を減算する。そして、ビットリザーバ13は、不足ビット数を、ビット割当部12に出力する。   When the bit reservoir 13 receives a request for the number of insufficient bits from the bit allocation unit 12, the bit reservoir 13 subtracts the number of insufficient bits from the number of compensation bits. Then, the bit reservoir 13 outputs the insufficient bit number to the bit allocation unit 12.

図13は、補填ビット数の関係の一例を示す図(1)である。図13の縦軸は、補填ビット数を示し、横軸は、時間を示す。図13の区間Ta、Tb、Tc、Tdは、図12に示した区間に対応する。また、図13のビット数1b、1c、1dは、図12のビット数1b、1c、1dに対応する。図13に示すように、補填ビット数は、符号化の難しい区間Tb、Tcにおいて減少する。また、補填ビット数は、符号化の簡単な区間Tdにおいて増加する。   FIG. 13 is a diagram (1) illustrating an example of the relationship between the number of compensation bits. The vertical axis in FIG. 13 indicates the number of compensation bits, and the horizontal axis indicates time. The sections Ta, Tb, Tc, and Td in FIG. 13 correspond to the sections shown in FIG. The bit numbers 1b, 1c, and 1d in FIG. 13 correspond to the bit numbers 1b, 1c, and 1d in FIG. As shown in FIG. 13, the number of compensation bits decreases in sections Tb and Tc that are difficult to encode. Further, the number of compensation bits increases in a simple section Td for encoding.

図11の説明に戻る。周波数変換部14は、入力オーディオ信号に対して周波数変換を行うことで、入力オーディオ信号の時間と振幅の関係を、周波数と振幅の関係に変換する処理部である。例えば、周波数変換部14は、MDCT(modified discrete cosine transform)を行う。周波数変換部14は、変換後の入力オーディオ信号を、量子化部15に出力する。   Returning to the description of FIG. The frequency conversion unit 14 is a processing unit that converts the time and amplitude relationship of the input audio signal into a frequency and amplitude relationship by performing frequency conversion on the input audio signal. For example, the frequency conversion unit 14 performs a modified discrete cosine transform (MDCT). The frequency conversion unit 14 outputs the input audio signal after conversion to the quantization unit 15.

量子化部15は、マスキング閾値を基にして、各周波数の量子化ステップを特定し、特定した量子化ステップにより、入力オーディオ信号を量子化する。以下の説明において、入力オーディオ信号を量子化したものを、量子化値と表記する。   The quantization unit 15 specifies a quantization step for each frequency based on the masking threshold, and quantizes the input audio signal by the specified quantization step. In the following description, a quantized input audio signal is referred to as a quantized value.

量子化部15は、量子化値を求めた後、量子化値のビット数と使用可能ビット数を比較する。量子化部15は、量子化値のビット数が使用可能ビット数よりも小さい場合には、量子化値をストリーム生成部16に出力する。   After obtaining the quantized value, the quantizing unit 15 compares the number of bits of the quantized value with the number of usable bits. The quantization unit 15 outputs the quantization value to the stream generation unit 16 when the number of bits of the quantization value is smaller than the number of usable bits.

量子化部15は、量子化値のビット数が使用可能ビット数よりも大きい場合には、量子化ステップの大きさを小さくし、再度入力オーディオ信号を量子化し、量子化値を求める。使用可能ビット数から量子化値のビット数を減算したビット数を、推定誤差ビット数と表記する。量子化部15は、推定誤差ビット数が、0以下となるまで、上記処理を繰り返し実行する。   When the number of bits of the quantization value is larger than the number of usable bits, the quantization unit 15 reduces the size of the quantization step, quantizes the input audio signal again, and obtains the quantization value. The number of bits obtained by subtracting the number of bits of the quantization value from the number of usable bits is expressed as an estimated error bit number. The quantization unit 15 repeatedly executes the above processing until the estimated error bit number becomes 0 or less.

ストリーム生成部16は、量子化部15から量子化値を受け付け、受け付けた量子化値をビットストリームに変換して、外部装置に出力する処理部である。   The stream generation unit 16 is a processing unit that receives a quantization value from the quantization unit 15, converts the received quantization value into a bit stream, and outputs the bit stream to an external device.

次に、符号化装置10の問題点について説明する。上記のように、符号化装置10は、推定誤差ビット数が0よりも小さくなるまで、量子化ステップを調整して量子化値を求めるため、量子化値を求めるまでに時間を要してしまうという問題があった。   Next, problems of the encoding device 10 will be described. As described above, since the encoding device 10 adjusts the quantization step to obtain the quantized value until the estimated error bit number becomes smaller than 0, it takes time to obtain the quantized value. There was a problem.

図14は、従来技術の問題点を説明するための図(1)である。図14において、縦軸は量子化値のビット数を示し、横軸は量子化ステップの大きさを示す。量子化ステップ2aは、1回目の量子化時の量子化ステップの大きさに対応する。量子化ステップ3aは、2回目の量子化時の量子化ステップの大きさに対応する。量子化ステップ4aは、N回目の量子化時の量子化ステップの大きさに対応する。例えば、Nは3以上の自然数とする。   FIG. 14 is a diagram (1) for explaining the problems of the prior art. In FIG. 14, the vertical axis indicates the number of bits of the quantization value, and the horizontal axis indicates the magnitude of the quantization step. The quantization step 2a corresponds to the size of the quantization step at the first quantization. The quantization step 3a corresponds to the size of the quantization step at the second quantization. The quantization step 4a corresponds to the size of the quantization step at the Nth quantization. For example, N is a natural number of 3 or more.

また、図14において、量子化値のビット数2bは、量子化ステップ2aにより量子化した場合の量子化値のビット数である。量子化値のビット数3bは、量子化ステップ3aにより量子化した場合の量子化値のビット数である。量子化値のビット数4bは、量子化ステップ4aにより量子化した場合の量子化値のビット数である。   In FIG. 14, the number of bits 2b of the quantized value is the number of bits of the quantized value when quantized by the quantization step 2a. The number of bits 3b of the quantized value is the number of bits of the quantized value when quantized by the quantization step 3a. The number of bits 4b of the quantized value is the number of bits of the quantized value when quantized by the quantization step 4a.

図14に示すように、量子化ステップ2a、3aの場合には、量子化値のビット数が、使用可能ビット数5aを超えてしまうため、推定誤差ビット数が0よりも大きくなる。このため、符号化装置10は、量子化ステップを繰り返し調整して、推定誤差ビット数が0以下となる、量子化ステップ4aを特定する。しかし、量子化ステップ4aを特定するまでに、N回量子化ループを繰り返すことになり、推定誤差ビット数が0以下となる量子化値を求めるまでの処理負荷が増加してしまう。   As shown in FIG. 14, in the case of quantization steps 2a and 3a, the number of bits of the quantized value exceeds the number of usable bits 5a, and therefore the number of estimated error bits is larger than zero. For this reason, the encoding apparatus 10 repeatedly adjusts the quantization step to identify the quantization step 4a in which the number of estimated error bits is 0 or less. However, until the quantization step 4a is specified, the quantization loop is repeated N times, and the processing load until a quantized value with an estimated error bit number of 0 or less is increased.

上記の符号化装置10の問題を解消する従来技術として、符号化装置20が存在する。この符号化装置20は、使用可能ビット数とマスキング閾値とを基にして、量子化ステップの大きさを推測することで、量子化する処理が何度も実行されることを防止する。   As a conventional technique for solving the problem of the encoding device 10 described above, there is an encoding device 20. The encoding device 20 prevents the quantization process from being performed many times by estimating the size of the quantization step based on the number of usable bits and the masking threshold.

図15は、従来の符号化装置の構成を示す図(2)である。図15に示すように、この符号化装置20は、聴覚心理演算部21、ビット割当部22、ビットリザーバ23、周波数変換部24、量子化部25、ストリーム生成部26を有する。このうち、聴覚心理演算部21、ビット割当部22、ビットリザーバ23、周波数変換部24、ストリーム生成部26に関する説明は、図11に示したものと同様であるため、説明を省略する。   FIG. 15 is a diagram (2) illustrating a configuration of a conventional encoding device. As illustrated in FIG. 15, the encoding device 20 includes an auditory psychological calculation unit 21, a bit allocation unit 22, a bit reservoir 23, a frequency conversion unit 24, a quantization unit 25, and a stream generation unit 26. Among these, the explanation regarding the auditory psychological calculation unit 21, the bit allocation unit 22, the bit reservoir 23, the frequency conversion unit 24, and the stream generation unit 26 is the same as that shown in FIG.

量子化部25は、使用可能ビット数とマスキング閾値とを基にして、各周波数の量子化ステップを特定する。量子化部25は、特定した量子化ステップにより、入力オーディオ信号を量子化する。   The quantization unit 25 specifies the quantization step for each frequency based on the number of usable bits and the masking threshold. The quantization unit 25 quantizes the input audio signal by the specified quantization step.

例えば、量子化部25は、使用可能ビット数と量子化ステップの大きさとを対応付けたテーブルを保持する。そして、量子化部25は、ビット割当部22から取得する使用可能ビット数と、テーブルとを比較して量子化ステップを特定する。そして、量子化部25は、マスキング閾値を基にして、ユーザに聞こえない周波数領域の量子化ステップがより大きくなるように、また、ユーザに聞こえる周波数領域の量子化ステップがより小さくなるように量子化ステップを調整して、量子化値を求める。   For example, the quantization unit 25 holds a table that associates the number of usable bits with the size of the quantization step. Then, the quantization unit 25 compares the number of usable bits acquired from the bit allocation unit 22 with the table to identify the quantization step. Based on the masking threshold, the quantization unit 25 performs quantization so that the quantization step in the frequency domain that cannot be heard by the user becomes larger and the quantization step in the frequency domain that can be heard by the user becomes smaller. The quantization step is adjusted to obtain a quantized value.

特開2002−14696号公報JP 2002-14696 A

しかしながら、上述した従来技術では、量子化値を求めるための処理負荷を軽減させることができないという問題があった。   However, the above-described conventional technique has a problem that the processing load for obtaining the quantization value cannot be reduced.

上記の符号化装置20は、使用可能ビット数を基にして、量子化ステップを特定しているものの、特定した量子化ステップの大きさは、あくまでも使用可能ビット数を下回るであろうと考えられる大きさに過ぎない。このため、符号化装置20が、使用可能ビット数から量子化ステップを特定して、量子化値を求めた場合でも、推定誤差ビット数が0よりも大きくなる場合がある。このような場合には、符号化装置20は、再度量子化ステップの大きさを調整し、推定誤差ビット数が、0以下となるまで処理を繰り返し実行する。   Although the encoding device 20 specifies the quantization step based on the number of usable bits, the size of the specified quantization step is considered to be less than the number of usable bits. It's just that. For this reason, even when the encoding device 20 specifies the quantization step from the number of usable bits and obtains the quantization value, the estimated error bit number may be larger than zero. In such a case, the encoding apparatus 20 adjusts the size of the quantization step again, and repeatedly executes the process until the estimated error bit number becomes 0 or less.

図16は、従来技術の問題点を説明するための図(2)である。図15において、縦軸は量子化値のビット数を示し、横軸は量子化ステップの大きさを示す。量子化ステップ6aは、使用可能ビット数を基に特定された1回目の量子化時の量子化ステップの大きさに対応する。量子化ステップ7aは、M回目の量子化時の量子化ステップの大きさに対応する。ここで、Mは、上記Nよりも小さい自然数とする。   FIG. 16 is a diagram (2) for explaining the problems of the prior art. In FIG. 15, the vertical axis indicates the number of bits of the quantization value, and the horizontal axis indicates the size of the quantization step. The quantization step 6a corresponds to the size of the quantization step at the time of the first quantization specified based on the number of usable bits. The quantization step 7a corresponds to the size of the quantization step at the M-th quantization. Here, M is a natural number smaller than N.

図16において、量子化値のビット数6bは、量子化ステップ6aにより量子化した場合の量子化値のビット数である。量子化ビット数7bは、量子化ステップ7aにより量子化した場合の量子化値のビット数である。   In FIG. 16, the bit number 6b of the quantized value is the bit number of the quantized value when quantized by the quantizing step 6a. The quantization bit number 7b is the number of bits of the quantized value when quantized in the quantization step 7a.

図16に示すように、量子化ステップ6aの場合には、量子化値のビット数が、使用可能ビット数5aを超えてしまうため、推定誤差ビット数が0よりも大きくなる。このため、符号化装置20は、量子化ステップを繰り返し調整して、推定誤差ビット数が0以下となる、量子化ステップ7aを特定する。図14に示した場合と比較して、量子化ループの回数は減少するものの、推定誤差ビット数が0以下となる量子化値を求めるまでに依然、処理負荷がかかってしまう。   As shown in FIG. 16, in the case of the quantization step 6a, the number of bits of the quantized value exceeds the usable number of bits 5a, and therefore the estimated error bit number becomes larger than zero. For this reason, the encoding apparatus 20 repeatedly adjusts the quantization step to identify the quantization step 7a in which the estimated error bit number is 0 or less. Although the number of quantization loops is reduced as compared with the case shown in FIG. 14, a processing load is still imposed until a quantized value with an estimated error bit number of 0 or less is obtained.

開示の技術は、上記に鑑みてなされたものであって、量子化値を求めるための処理負荷を軽減させることができる符号化装置、符号化方法および符号化プログラムを提供することを目的とする。   The disclosed technology has been made in view of the above, and an object thereof is to provide an encoding device, an encoding method, and an encoding program capable of reducing a processing load for obtaining a quantized value. .

開示の符号化装置はビット割当部、ビットリザーバ、量子化部を有する。ビット割当部は、指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定する。ビットリザーバは、伝送路で伝送可能な所定のビット数と、使用可能ビット数との差分を補填ビット数として蓄積する。量子化部は、使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって入力オーディオ信号を量子化した量子化値を生成する。また、量子化部は、量子化値のビット数が、使用可能ビット数よりも大きい場合に、使用可能ビット数を超過する量子化値のビット数を、ビットリザーバに蓄積された補填ビット数で補填する。   The disclosed encoding device includes a bit allocation unit, a bit reservoir, and a quantization unit. The bit allocation unit specifies the number of usable bits based on the designated average bit rate and the encoding difficulty level of the input audio signal. The bit reservoir accumulates the difference between the predetermined number of bits that can be transmitted through the transmission path and the number of usable bits as the number of supplementary bits. The quantization unit specifies the size of the quantization step based on the number of usable bits, and generates a quantization value obtained by quantizing the input audio signal by the quantization step. In addition, when the number of bits of the quantization value is larger than the number of usable bits, the quantization unit calculates the number of bits of the quantization value exceeding the usable number of bits as the number of supplemental bits accumulated in the bit reservoir. To compensate.

開示の符号化装置によれば、量子化値を求めるための処理負荷を軽減させることができるという効果を奏する。   According to the disclosed encoding device, it is possible to reduce the processing load for obtaining the quantized value.

図1は、本実施例にかかる符号化装置の構成を示す図である。FIG. 1 is a diagram illustrating the configuration of the encoding apparatus according to the present embodiment. 図2は、加算ビット算出テーブルのデータ構造の一例を示す図である。FIG. 2 is a diagram illustrating an example of a data structure of the addition bit calculation table. 図3は、使用可能ビット数の変化の一例を示す図(2)である。FIG. 3 is a diagram (2) illustrating an example of a change in the number of usable bits. 図4は、補填ビット数の変化の一例を示す図(2)である。FIG. 4 is a diagram (2) illustrating an example of a change in the number of compensation bits. 図5は、ステップ判定テーブルの一例を示す図である。FIG. 5 is a diagram illustrating an example of the step determination table. 図6は、本実施例にかかる符号化装置の処理手順を示すフローチャートである。FIG. 6 is a flowchart illustrating the processing procedure of the encoding apparatus according to the present embodiment. 図7は、量子化処理の処理手順を示すフローチャートである。FIG. 7 is a flowchart showing the processing procedure of the quantization processing. 図8は、使用可能ビット数を算出する処理手順を示すフローチャートである。FIG. 8 is a flowchart showing a processing procedure for calculating the number of usable bits. 図9は、ビット割当部のその他の処理を説明するための図である。FIG. 9 is a diagram for explaining other processing of the bit allocation unit. 図10は、符号化プログラムを実行するコンピュータの一例を示す図である。FIG. 10 is a diagram illustrating an example of a computer that executes an encoding program. 図11は、従来の符号化装置の構成を示す図(1)である。FIG. 11 is a diagram (1) illustrating a configuration of a conventional encoding device. 図12は、使用可能ビット数の変化の一例を示す図(1)である。FIG. 12 is a diagram (1) illustrating an example of a change in the number of usable bits. 図13は、補填ビット数の関係の一例を示す図(1)である。FIG. 13 is a diagram (1) illustrating an example of the relationship between the number of compensation bits. 図14は、従来技術の問題点を説明するための図(1)である。FIG. 14 is a diagram (1) for explaining the problems of the prior art. 図15は、従来の符号化装置の構成を示す図(2)である。FIG. 15 is a diagram (2) illustrating a configuration of a conventional encoding device. 図16は、従来技術の問題点を説明するための図(2)である。FIG. 16 is a diagram (2) for explaining the problems of the prior art.

以下に、本願の開示する符号化装置、符号化方法および符号化プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。   Hereinafter, embodiments of an encoding device, an encoding method, and an encoding program disclosed in the present application will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.

本実施例にかかる符号化装置の構成について説明する。符号化装置100は、入力オーディオ信号を受け付け、受け付けたオーディオ信号を量子化した後に、ストリームを生成する装置である。図1は、本実施例にかかる符号化装置の構成を示す図である。図1に示すように、この符号化装置100は、周波数変換部110、聴覚心理演算部120、ビット割当部130、ビットリザーバ140、量子化部150、ストリーム生成部160、推定部170を有する。   A configuration of the encoding apparatus according to the present embodiment will be described. The encoding apparatus 100 is an apparatus that receives an input audio signal, generates a stream after quantizing the received audio signal. FIG. 1 is a diagram illustrating the configuration of the encoding apparatus according to the present embodiment. As illustrated in FIG. 1, the encoding device 100 includes a frequency conversion unit 110, an auditory psychological calculation unit 120, a bit allocation unit 130, a bit reservoir 140, a quantization unit 150, a stream generation unit 160, and an estimation unit 170.

周波数変換部110は、入力オーディオ信号を受け付け、入力オーディオ信号に対して周波数変換を行うことで、入力オーディオ信号の時間と振幅の関係を、周波数と振幅の関係に変換する処理部である。周波数変換部14は、変換後の入力オーディオ信号を、量子化部150に出力する。例えば、周波数変換部110は、「3GPP TS26.4.1AAC part(5.3 Filter band)」に記載されたMDCT(modified discrete cosine transform)を行う。例えば、周波数変換部110は、式(1)を基にして、周波数変換を行ってもよい。   The frequency conversion unit 110 is a processing unit that receives an input audio signal and converts the time and amplitude of the input audio signal into a frequency and amplitude relationship by performing frequency conversion on the input audio signal. The frequency conversion unit 14 outputs the input audio signal after conversion to the quantization unit 150. For example, the frequency conversion unit 110 performs a modified discrete cosine transform (MDCT) described in “3GPP TS26.4.1AAC part (5.3 Filter band)”. For example, the frequency conversion unit 110 may perform frequency conversion based on Expression (1).

Figure 2013045067
Figure 2013045067

聴覚心理演算部120は、入力オーディオ信号を受け付け、入力オーディオ信号に対して聴覚心理演算を実行し、心理聴覚エントロピー(Perceptual Entropy:PE)の値(以下PE値と称す。)およびマスキング閾値を算出する処理部である。例えば、聴覚心理演算部120は、「3GPP TS26.403AAC part(5.4 Psychoacoustic Model)」に記載された聴覚心理演算を行ってもよい。聴覚心理演算部120は、PE値をビット割当部130に出力する。聴覚心理演算部120は、マスキング閾値の情報を、量子化部150に出力する。   The auditory psychological calculation unit 120 receives an input audio signal, performs an auditory psychological calculation on the input audio signal, and calculates a psychoacoustic entropy (PE) value (hereinafter referred to as a PE value) and a masking threshold. Is a processing unit. For example, the auditory psychological calculation unit 120 may perform the auditory psychological calculation described in “3GPP TS26.403AAC part (5.4 Psychoacoustic Model)”. The auditory psychological calculation unit 120 outputs the PE value to the bit allocation unit 130. The auditory psychological calculation unit 120 outputs masking threshold information to the quantization unit 150.

PE値は、入力オーディオ信号の符号化が簡単か否かを判断するための尺度を示す値である。例えば、入力オーディオ信号の波形が複雑な場合には、符号化が難しくなるため、PE値は大きな値となる。これに対して、入力オーディオ信号の波形が単純なものであれば、PE値は小さな値となる。   The PE value is a value indicating a scale for determining whether or not the encoding of the input audio signal is simple. For example, when the waveform of the input audio signal is complicated, encoding becomes difficult, so the PE value becomes a large value. On the other hand, if the waveform of the input audio signal is simple, the PE value is small.

マスキング閾値は、例えば、入力オーディオ信号に含まれる周波数のうち、ユーザに聞こえる周波数の領域と、ユーザに聞こえない周波数の領域とを示す情報である。   The masking threshold is information indicating, for example, a frequency range that can be heard by the user and a frequency range that cannot be heard by the user, among the frequencies included in the input audio signal.

ビット割当部130は、指定された平均ビットレート、PE値、ビットリザーバ140の補填ビットを基にして、使用可能ビット数を算出する処理部である。また、ビット割当部130は、推定誤差ビット数を基にして、使用可能ビット数を調整する。ビット割当部130は、使用可能ビット数を量子化部150に出力する。   The bit allocation unit 130 is a processing unit that calculates the number of usable bits on the basis of the designated average bit rate, PE value, and the supplemental bits of the bit reservoir 140. Also, the bit allocation unit 130 adjusts the number of usable bits based on the estimated error bit number. The bit allocation unit 130 outputs the number of usable bits to the quantization unit 150.

使用可能ビット数は、量子化部150が量子化ステップを特定する場合に利用するものである。補填ビット数は、伝送路で伝送可能な所定のビット数と、使用可能ビット数との差分を示すビット数であり、ビットリザーバ140に蓄えられる。推定誤差ビット数は、量子化部150が生成する量子化値のビット数と、使用可能ビット数との差分の推定ビット数である。使用可能ビット数、補填ビット数、推定誤差ビット数に関する詳しい説明は後述する。   The number of usable bits is used when the quantization unit 150 specifies a quantization step. The number of compensation bits is the number of bits indicating a difference between a predetermined number of bits that can be transmitted on the transmission path and the number of usable bits, and is stored in the bit reservoir 140. The estimated error bit number is an estimated bit number of a difference between the bit number of the quantized value generated by the quantization unit 150 and the usable bit number. Detailed descriptions regarding the number of usable bits, the number of compensation bits, and the number of estimated error bits will be described later.

ビット割当部130の処理を具体的に説明する。ビット割当部130は、例えば、加算ビット算出テーブルを利用して、加算ビット数を求める。図2は、加算ビット算出テーブルのデータ構造の一例を示す図である。図2に示すように、この加算ビット算出テーブルは、PE値とビットリザーバの補填ビット数と加算ビット数とを対応付ける。   The processing of the bit allocation unit 130 will be specifically described. The bit allocation unit 130 obtains the number of added bits using, for example, an added bit calculation table. FIG. 2 is a diagram illustrating an example of a data structure of the addition bit calculation table. As shown in FIG. 2, the addition bit calculation table associates the PE value with the bit reservoir compensation bit number and the addition bit number.

ビット割当部130は、聴覚心理演算部120から受け付けたPE値およびビットリザーバ140から受け付けた補填ビットと、加算ビット算出テーブルとを比較して、加算ビット数を特定する。加算ビット数は、正のビット数の場合もあり得るし、負のビット数の場合もある。   The bit allocation unit 130 compares the PE value received from the psychoacoustic operation unit 120 and the compensation bit received from the bit reservoir 140 with the addition bit calculation table to identify the number of addition bits. The added bit number may be a positive bit number or a negative bit number.

加算ビット数を算出した後に、ビット割当部130は、予め設定される所定のビット数に、加算ビット数を加算することで、使用可能ビット数を算出する。例えば、ビット割当部130は、予め設定される所定のビット数を、平均ビットレートの単位時間あたりのビット数としてもよい。   After calculating the number of addition bits, the bit allocation unit 130 calculates the number of usable bits by adding the number of addition bits to a predetermined number of bits set in advance. For example, the bit allocation unit 130 may set a predetermined number of bits as the number of bits per unit time of the average bit rate.

ビット割当部130は、加算ビット数を用いて使用可能ビット数を算出した後に、推定誤差ビット数を用いて、使用可能ビット数を調整する。具体的には、ビット割当部130は、使用可能ビット数から推定誤差ビット数を減算したビット数を、調整後の使用可能ビット数とする。ビット割当部130は、調整後の使用可能ビット数を、量子化部150に出力する。また、ビット割当部130は、加算ビット数と、推定誤差ビット数を、ビットリザーバ140に出力する。   The bit allocation unit 130 calculates the usable bit number using the added bit number, and then adjusts the usable bit number using the estimated error bit number. Specifically, the bit allocation unit 130 sets the bit number obtained by subtracting the estimated error bit number from the usable bit number as the adjusted usable bit number. The bit allocation unit 130 outputs the adjusted number of usable bits to the quantization unit 150. In addition, the bit allocation unit 130 outputs the added bit number and the estimated error bit number to the bit reservoir 140.

ここで、使用可能ビット数の変化の一例について説明する。図3は、使用可能ビット数の変化の一例を示す図(2)である。図3の縦軸は、使用可能ビット数を示し、横軸は、時間を示す。また、区間Taは、符号化の難易度が通常の区間である。区間Tbおよび区間Tcは、符号化が難しい区間である。区間Tdは、符号化が簡単な区間である。ビット数1Yは、平均ビットレートの単位時間あたりのビット数である。線分2Yは、推定誤差ビット数による調整を行う前の使用可能ビット数を示す。線分3Yは、推定誤差ビット数による調整を行った後の使用可能ビット数に対応する。   Here, an example of a change in the number of usable bits will be described. FIG. 3 is a diagram (2) illustrating an example of a change in the number of usable bits. The vertical axis in FIG. 3 indicates the number of usable bits, and the horizontal axis indicates time. The section Ta is a section in which the degree of difficulty in encoding is normal. The section Tb and the section Tc are sections that are difficult to encode. The section Td is a section that is easy to encode. The number of bits 1Y is the number of bits per unit time of the average bit rate. A line segment 2Y indicates the number of usable bits before adjustment based on the estimated error bit number. The line segment 3Y corresponds to the number of usable bits after the adjustment based on the estimated error bit number.

図3の区間Taにおいて、使用可能ビット数が推定誤差ビット数X[Ta]だけ下がる。区間Tbにおいて、使用可能ビット数が推定誤差ビット数X[Tb]だけ下がる。区間Tcにおいて、使用可能ビット数が推定誤差ビット数X[Tc]だけ下がる。区間Tdにおいて、使用可能ビット数が推定誤差ビット数X[Td]だけ下がる。   In the interval Ta in FIG. 3, the number of usable bits decreases by the estimated error bit number X [Ta]. In the section Tb, the number of usable bits decreases by the estimated error bit number X [Tb]. In the section Tc, the number of usable bits decreases by the estimated error bit number X [Tc]. In the section Td, the number of usable bits decreases by the estimated error bit number X [Td].

ビットリザーバ140は、補填ビット数を記録する処理部である。ビットリザーバ140は、ビット割当部130から加算ビット数を取得した場合には、補填ビット数から加算ビット数を減算する。加算ビット数が正の値の場合には、補填ビット数は、加算ビット数分だけ減少する。加算ビット数が負の値の場合には、補填ビット数は、加算ビット数分だけ増加する。   The bit reservoir 140 is a processing unit that records the number of compensation bits. When the bit reservoir 140 obtains the added bit number from the bit allocation unit 130, the bit reservoir 140 subtracts the added bit number from the compensation bit number. When the addition bit number is a positive value, the compensation bit number is reduced by the addition bit number. When the number of addition bits is a negative value, the number of compensation bits increases by the number of addition bits.

また、ビットリザーバ140は、量子化部150から、使用可能ビット数を超える量子化値のビット数を受け付けた場合には、超過したビット数が、補填ビット数以下であるか否かを判定する。使用可能ビット数を超える量子化値のビット数を、誤差ビット数と表記する。   Further, when the bit reservoir 140 receives the number of bits of the quantization value exceeding the number of usable bits from the quantization unit 150, the bit reservoir 140 determines whether or not the excess number of bits is equal to or less than the number of compensation bits. . The number of bits of the quantization value exceeding the number of usable bits is expressed as an error bit number.

誤差ビット数が、補填ビット数以下の場合には、ビットリザーバ140は、誤差ビット数を、補填ビット数で補填する。例えば、ビットリザーバ140は、量子化部150に対して、再度の量子化値の算出が不要である情報を出力する。そして、ビットリザーバ140は、補填ビット数から、誤差ビット数を減算する。   When the number of error bits is equal to or less than the number of compensation bits, the bit reservoir 140 compensates the number of error bits with the number of compensation bits. For example, the bit reservoir 140 outputs information that does not require the calculation of the quantized value again to the quantizing unit 150. Then, the bit reservoir 140 subtracts the error bit number from the compensation bit number.

誤差ビット数が、補填ビット数より大きい場合には、ビットリザーバ140は、誤差ビット数を、補填ビット数で補填できない。この場合には、ビットリザーバ140は、量子化部150に対して、補填ビット数が不足する旨の情報を出力する。   When the number of error bits is larger than the number of compensation bits, the bit reservoir 140 cannot compensate the number of error bits with the number of compensation bits. In this case, the bit reservoir 140 outputs information indicating that the number of compensation bits is insufficient to the quantization unit 150.

ここで、補填ビット数の変化の一例について説明する。図4は、補填ビット数の変化の一例を示す図(2)である。図4の縦軸は、補填ビット数を示し、横軸は時間を示す。図4の区間Ta、Tb、Tc、Tdは、図3に示した区間に対応する。線分4Yは、推定誤差ビット数による調整が行われる前の補填ビット数を示す。線分5Yは、推定誤差ビット数による調整が行われた場合の補填ビット数を示す。なお、図4のX[Ta]、X[Tb]、X[Tc]、X[Td]は、図3のX[Ta]、X[Tb]、X[Tc]、X[Td]と同じである。   Here, an example of a change in the number of compensation bits will be described. FIG. 4 is a diagram (2) illustrating an example of a change in the number of compensation bits. The vertical axis in FIG. 4 indicates the number of compensation bits, and the horizontal axis indicates time. The sections Ta, Tb, Tc, and Td in FIG. 4 correspond to the sections shown in FIG. A line segment 4Y indicates the number of compensation bits before adjustment based on the number of estimated error bits. A line segment 5Y indicates the number of compensation bits when adjustment based on the estimated error bit number is performed. Note that X [Ta], X [Tb], X [Tc], and X [Td] in FIG. 4 are the same as X [Ta], X [Tb], X [Tc], and X [Td] in FIG. It is.

図3と図4とを比較すると、使用可能ビット数から推定誤差ビット数が減算されることで、ビットリザーバ140の補填ビット数が増加する。このため、ビットリザーバ140が、補填ビット数で、ビット数を補填する場合に、誤差ビット数が補填ビット数を上回るという状況を発生しにくくすることができる。   Comparing FIG. 3 and FIG. 4, the number of bits to be supplemented in the bit reservoir 140 is increased by subtracting the estimated error bit number from the usable bit number. For this reason, when the bit reservoir 140 compensates the number of bits with the number of compensation bits, it is possible to make it difficult to generate a situation in which the number of error bits exceeds the number of compensation bits.

量子化部150は、特定した量子化ステップに基づいて、入力オーディオ信号を量子化する処理部である。量子化した入力オーディオ信号を量子化値と表記する。量子化部150は、量子化ステップにより、入力オーディオ信号を量子化する場合には、例えば、式(2)を利用する。   The quantization unit 150 is a processing unit that quantizes the input audio signal based on the specified quantization step. The quantized input audio signal is expressed as a quantized value. For example, when the input audio signal is quantized by the quantization step, the quantization unit 150 uses Equation (2).

Figure 2013045067
Figure 2013045067

量子化部150が量子化ステップを特定する処理について説明する。量子化部150は、マスキング閾値と使用可能ビット数に基づいて、各周波数の量子化ステップを特定する。例えば、量子化部150は、ステップ判定テーブルを保持する。図5は、ステップ判定テーブルの一例を示す図である。図5に示すように、このステップ判定テーブルは、使用可能ビット数と量子化ステップとを対応付ける。   A process in which the quantization unit 150 identifies the quantization step will be described. The quantization unit 150 identifies the quantization step for each frequency based on the masking threshold and the number of usable bits. For example, the quantization unit 150 holds a step determination table. FIG. 5 is a diagram illustrating an example of the step determination table. As shown in FIG. 5, this step determination table associates the number of usable bits with a quantization step.

量子化部150は、ビット割当部130から受け付ける使用可能ビット数と、ステップ判定テーブルとを比較して、量子化ステップを特定する。量子化部150は、マスキング閾値に基づいて、ユーザが聞こえる周波数の量子化ステップがより小さくなるように、量子化ステップに重み付けを行う。また、量子化部150は、ユーザが聞こえない周波数の量子化ステップがより大きくなるように、量子化ステップに重み付けを行う。このような処理を量子化部150が実行することで、量子化部150は、各周波数の量子化ステップを特定する。   The quantization unit 150 compares the number of usable bits received from the bit allocation unit 130 with the step determination table to identify the quantization step. Based on the masking threshold, the quantization unit 150 weights the quantization step so that the quantization step of the frequency that the user can hear becomes smaller. Further, the quantization unit 150 weights the quantization step so that the quantization step of the frequency that cannot be heard by the user becomes larger. When the quantization unit 150 executes such processing, the quantization unit 150 identifies the quantization step of each frequency.

次に、量子化部150が、量子化値を算出した後に処理について説明する。量子化値のビット数と使用可能ビット数とを比較して、量子化値のビット数が大きいか否かを判定する。量子化値のビット数が、使用可能ビット数未満の場合には、量子化値をストリーム生成部160に出力する。   Next, the process after the quantization unit 150 calculates the quantization value will be described. The number of bits of the quantized value is compared with the number of usable bits to determine whether the number of bits of the quantized value is large. When the number of bits of the quantization value is less than the number of usable bits, the quantization value is output to the stream generation unit 160.

量子化値のビット数が、使用可能ビット数よりも大きい場合には、量子化部150は、量子化値のビット数から使用可能ビット数を減算した誤差ビット数を、ビットリザーバ140に通知する。量子化部150は、ビットリザーバ140から、誤差ビット数を補填ビット数で補える旨の情報を受け付けた場合には、量子化値をストリーム生成部160に出力する。   When the number of bits of the quantization value is larger than the number of usable bits, the quantization unit 150 notifies the bit reservoir 140 of the number of error bits obtained by subtracting the number of usable bits from the number of bits of the quantization value. . When the quantization unit 150 receives information from the bit reservoir 140 that the number of error bits can be compensated by the number of compensation bits, the quantization unit 150 outputs a quantization value to the stream generation unit 160.

これに対して、量子化部150は、ビットリザーバ140から、誤差ビット数を補填ビット数で補えない旨の情報を受け付けた場合には、量子化ステップの大きさを所定の値だけ大きくして、再度量子化値を求める。量子化部150は、量子化値のビット数を、ビットリザーバ140に送信し、上記処理を再度実行する。   On the other hand, when the quantization unit 150 receives information from the bit reservoir 140 that the number of error bits cannot be compensated by the number of compensation bits, the quantization unit 150 increases the size of the quantization step by a predetermined value. Then, the quantization value is obtained again. The quantization unit 150 transmits the number of bits of the quantization value to the bit reservoir 140, and executes the above process again.

なお、量子化部150は、誤差ビット数を算出するたびに、誤差ビット数の情報を、推定部170に出力する。   Note that the quantization unit 150 outputs information on the number of error bits to the estimation unit 170 every time the number of error bits is calculated.

ストリーム生成部160は、量子化部150から量子化値を受け付け、受け付けた量子化値をビットストリームに変換して、外部装置に出力する処理部である。例えば、ストリーム生成部160は、MPEG-2 AAC(ISO/IEC 1318-7)にて定義されるsyntaxを生成する。   The stream generation unit 160 is a processing unit that receives a quantization value from the quantization unit 150, converts the received quantization value into a bit stream, and outputs the bit stream to an external device. For example, the stream generation unit 160 generates a syntax defined by MPEG-2 AAC (ISO / IEC 1318-7).

推定部170は、誤差ビット数の推定する処理部である。例えば、推定部170は、量子化部150から誤差ビット数を受け付け、受け付けた誤差ビット数を記憶する。推定部170は、記憶した複数の誤差ビット数の平均ビット数を算出することで、誤差ビット数を推定する。推定部170が推定した誤差ビット数は、推定誤差ビット数に対応する。推定部170は、式(3)を用いて、推定誤差ビット数を算出してもよい。推定部170は、推定誤差ビット数をビット割当部130に出力する。   The estimation unit 170 is a processing unit that estimates the number of error bits. For example, the estimation unit 170 receives the number of error bits from the quantization unit 150 and stores the received number of error bits. The estimation unit 170 estimates the number of error bits by calculating the average number of bits stored in the plurality of error bits. The number of error bits estimated by the estimation unit 170 corresponds to the estimated number of error bits. The estimation unit 170 may calculate the estimated error bit number using Equation (3). The estimation unit 170 outputs the estimated error bit number to the bit allocation unit 130.

Figure 2013045067
Figure 2013045067

次に、本実施例にかかる符号化装置の処理手順について説明する。図6は、本実施例にかかる符号化装置の処理手順を示すフローチャートである。例えば、図6に示す処理は、符号化装置100が、入力オーディオ信号を受け付けたことを契機にして実行される。   Next, a processing procedure of the encoding apparatus according to the present embodiment will be described. FIG. 6 is a flowchart illustrating the processing procedure of the encoding apparatus according to the present embodiment. For example, the process illustrated in FIG. 6 is executed when the encoding apparatus 100 receives an input audio signal.

図6に示すように、符号化装置100は、入力オーディオ信号に対して周波数変換を行い(ステップS101)、聴覚心理演算を実行する(ステップS102)。符号化装置100は、推定誤差ビット数を推定する(ステップS103)。   As shown in FIG. 6, the encoding apparatus 100 performs frequency conversion on the input audio signal (step S101), and performs auditory psychological calculation (step S102). The encoding apparatus 100 estimates the number of estimated error bits (step S103).

符号化装置100は、使用可能ビット数を算出し(ステップS104)、量子化を行う(ステップS105)。そして、符号化装置100は、ビットストリームを生成する(ステップS106)。   The encoding apparatus 100 calculates the number of usable bits (step S104) and performs quantization (step S105). Then, the encoding device 100 generates a bit stream (step S106).

次に、図6のステップS105に示した量子化の処理を具体的に説明する。図7は、量子化処理の処理手順を示すフローチャートである。図7に示すように、符号化装置100は、使用可能ビット数とマスキング閾値とを基にして、量子化ステップを決定する(ステップS201)。符号化装置100は、量子化値を算出し(ステップS202)、量子化値のビット数を算出する(ステップS203)。   Next, the quantization process shown in step S105 of FIG. 6 will be specifically described. FIG. 7 is a flowchart showing the processing procedure of the quantization processing. As illustrated in FIG. 7, the encoding apparatus 100 determines a quantization step based on the number of usable bits and a masking threshold (Step S201). The encoding apparatus 100 calculates a quantized value (step S202) and calculates the number of bits of the quantized value (step S203).

符号化装置100は、誤差ビット数を算出し(ステップS204)、誤差ビット数が0以下であるか否かを判定する(ステップS205)。符号化装置100は、誤差ビット数が0以下の場合には(ステップS205,Yes)、ステップS209に移行する。   The encoding apparatus 100 calculates the number of error bits (step S204) and determines whether the number of error bits is 0 or less (step S205). When the number of error bits is 0 or less (step S205, Yes), the encoding apparatus 100 proceeds to step S209.

一方、符号化装置100は、誤差ビット数が0より大きい場合には(ステップS205,No)、補填ビット数で誤差ビットを補填可能であるか否かを判定する(ステップS206)。符号化装置100は、補填ビット数で補填不可能の場合には(ステップS206,No)、量子化ステップを変更し(ステップS207)、ステップS202に移行する。例えば、符号化装置100は、ステップS207において、量子化ステップの大きさを、所定の大きさだけ大きくする。   On the other hand, when the number of error bits is larger than 0 (No at Step S205), the encoding apparatus 100 determines whether or not error bits can be compensated with the number of compensation bits (Step S206). The encoding apparatus 100 changes the quantization step (step S207) when it cannot be compensated with the number of compensation bits (No in step S206), and proceeds to step S202. For example, in step S207, the encoding apparatus 100 increases the size of the quantization step by a predetermined size.

一方、符号化装置100は、補填ビット数で補填可能の場合には(ステップS206,Yes)、ビット数を補填し(ステップS208)、量子化値を出力する(ステップS209)。   On the other hand, when it is possible to compensate with the number of compensation bits (Yes in step S206), the encoding apparatus 100 compensates the number of bits (step S208) and outputs a quantized value (step S209).

次に、図6のステップS104に示した使用可能ビット数を算出する処理を具体的に説明する。図8は、使用可能ビット数を算出する処理手順を示すフローチャートである。図8に示すように、符号化装置100は、PE値と、ビットリザーバの補填ビット数とを基にして、加算ビット数を算出する(ステップS301)。   Next, the process for calculating the number of usable bits shown in step S104 of FIG. 6 will be specifically described. FIG. 8 is a flowchart showing a processing procedure for calculating the number of usable bits. As illustrated in FIG. 8, the encoding apparatus 100 calculates the number of added bits based on the PE value and the number of bit reservoir compensation bits (step S301).

符号化装置100は、所定のビット数に加算ビット数を加算することで、使用可能ビット数を算出する(ステップS302)。符号化装置100は、ビットリザーバの補填ビット数から加算ビット数を減算する(ステップS303)。   The encoding apparatus 100 calculates the number of usable bits by adding the number of added bits to the predetermined number of bits (step S302). The encoding apparatus 100 subtracts the number of added bits from the number of bits supplemented in the bit reservoir (step S303).

符号化装置100は、使用可能ビット数から推定誤差ビット数を減算し(ステップS304)、ビットリザーバの補填ビット数に推定誤差ビット数を加算する(ステップS305)。そして、符号化装置100は、使用可能ビット数を出力する(ステップS306)。   The encoding apparatus 100 subtracts the estimated error bit number from the usable bit number (step S304) and adds the estimated error bit number to the bit reservoir compensation bit number (step S305). Then, the encoding device 100 outputs the number of usable bits (step S306).

次に、本実施例にかかる符号化装置100の効果について説明する。符号化装置100は、量子化値のビット数が使用可能ビット数を上回り、ビット数が不足する場合に、不足するビット数をビットリザーバ140の補填ビット数で補う。このため、量子化値のビット数が使用可能ビット数を上回っても、再度量子化ステップを変更して、量子化値を再計算する処理を行わなくても良いので、符号化装置100の処理負荷を軽減することができる。   Next, effects of the encoding device 100 according to the present embodiment will be described. When the number of bits of the quantized value exceeds the number of usable bits and the number of bits is insufficient, the encoding apparatus 100 supplements the insufficient number of bits with the number of supplemental bits in the bit reservoir 140. For this reason, even if the number of bits of the quantized value exceeds the number of usable bits, it is not necessary to change the quantization step again and perform the process of recalculating the quantized value. The load can be reduced.

また、符号化装置100のビット割当部130は、使用可能ビット数を特定する場合に、使用可能ビット数から推定誤差ビット数を減算し、ビットリザーバ140の補填ビット数に推定誤差ビット数分のビット数を加算する。このため、ビットリザーバ140が、補填ビット数で、ビット数を補填する場合に、誤差ビット数が補填ビット数を上回るという状況を発生しにくくすることができる。   Also, when specifying the number of usable bits, the bit allocation unit 130 of the encoding device 100 subtracts the estimated error bit number from the usable bit number, and subtracts the estimated error bit number from the compensated bit number of the bit reservoir 140. Add the number of bits. For this reason, when the bit reservoir 140 compensates the number of bits with the number of compensation bits, it is possible to make it difficult to generate a situation in which the number of error bits exceeds the number of compensation bits.

ところで、図1に示した符号化装置100の各処理部の処理は一例である。ここでは、ビット割当部130のその他の処理について説明する。ビット割当部130は、使用可能ビット数が、推定誤差ビット数以上の場合に、使用可能ビット数から推定誤差ビット数を減算するように処理を実行しても良い。このような処理を実行することで、使用可能ビット数が、負の値になることを防止することができる。   By the way, the process of each process part of the encoding apparatus 100 shown in FIG. 1 is an example. Here, other processing of the bit allocation unit 130 will be described. The bit allocation unit 130 may execute the process so as to subtract the estimated error bit number from the usable bit number when the usable bit number is equal to or larger than the estimated error bit number. By executing such processing, it is possible to prevent the number of usable bits from becoming a negative value.

図9は、ビット割当部のその他の処理を説明するための図である。図9に示すように、ビット割当部130は、PE値と、ビットリザーバ140の補填ビット数に基づいて、加算ビット数を算出する(ステップS401)。   FIG. 9 is a diagram for explaining other processing of the bit allocation unit. As illustrated in FIG. 9, the bit allocation unit 130 calculates the number of added bits based on the PE value and the number of bits supplemented in the bit reservoir 140 (step S401).

ビット割当部130は、所定のビット数に加算ビット数を加算することで、使用可能ビット数を算出する(ステップS402)。符号化装置100は、ビットリザーバ140の補填ビット数から加算ビット数を減算する(ステップS403)。   The bit allocation unit 130 calculates the number of usable bits by adding the number of added bits to the predetermined number of bits (step S402). The encoding apparatus 100 subtracts the number of added bits from the number of compensation bits in the bit reservoir 140 (step S403).

ビット割当部130は、使用可能ビット数が推定誤差ビット数以上であるか否かを判定する(ステップS404)。ビット割当部130は、使用可能ビット数が、推定誤差ビット数未満の場合には(ステップS404,No)、ステップS407に移行する。   The bit allocation unit 130 determines whether or not the number of usable bits is equal to or greater than the estimated error bit number (step S404). If the number of usable bits is less than the estimated error bit number (No at Step S404), the bit allocation unit 130 proceeds to Step S407.

ビット割当部130は、使用可能ビット数が、推定誤差ビット数以上の場合には(ステップS404,Yes)、使用可能ビット数から推定誤差ビット数を減算したものを使用可能ビット数とする(ステップS405)。   If the number of usable bits is equal to or greater than the estimated error bit number (Yes in step S404), the bit allocation unit 130 sets the number of usable bits obtained by subtracting the estimated error bit number from the usable bit number (step S404). S405).

ビット割当部130は、ビットリザーバ140の補填ビット数に推定誤差ビット数を加算し(ステップS406)、使用可能ビット数を量子化部150に出力する(ステップS407)。   The bit allocation unit 130 adds the estimated error bit number to the number of bits to be supplemented in the bit reservoir 140 (step S406), and outputs the usable bit number to the quantization unit 150 (step S407).

次に、図1に示した符号化装置100と同様の機能を実現する符号化プログラムを実行するコンピュータの一例を説明する。図10は、符号化プログラムを実行するコンピュータの一例を示す図である。   Next, an example of a computer that executes an encoding program that realizes the same function as the encoding device 100 illustrated in FIG. 1 will be described. FIG. 10 is a diagram illustrating an example of a computer that executes an encoding program.

図10に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203を有する。また、コンピュータ200は、記憶媒体からプログラム等を読取る読み取り装置204と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置205とを有する。また、コンピュータ200は、図1のビットリザーバ140に対応するビットリザーバ206を有する。また、コンピュータ200は、各種情報を一時記憶するRAM207と、ハードディスク装置208を有する。そして、各装置201〜208は、バス209に接続される。   As illustrated in FIG. 10, the computer 200 includes a CPU 201 that executes various arithmetic processes, an input device 202 that receives data input from a user, and a display 203. The computer 200 includes a reading device 204 that reads a program and the like from a storage medium, and an interface device 205 that exchanges data with other computers via a network. The computer 200 has a bit reservoir 206 corresponding to the bit reservoir 140 of FIG. The computer 200 also includes a RAM 207 that temporarily stores various information and a hard disk device 208. The devices 201 to 208 are connected to the bus 209.

ハードディスク装置208は、例えば、周波数変換プログラム208a、聴覚心理演算プログラム208b、ビット割当プログラム208c、量子化プログラム208d、ストリーム生成プログラム208eを有する。CPU201は、各プログラム208a〜208eを読み出して、RAM207に展開する。   The hard disk device 208 includes, for example, a frequency conversion program 208a, a psychoacoustic operation program 208b, a bit allocation program 208c, a quantization program 208d, and a stream generation program 208e. The CPU 201 reads each program 208 a to 208 e and develops it in the RAM 207.

周波数変換プログラム208aは、周波数変換プロセス207aとして機能する。聴覚心理演算プログラム208bは、聴覚心理演算プロセス207bとして機能する。ビット割当プログラム208cは、ビット割当プロセス207cとして機能する。量子化プログラム208dは、量子化プロセス207dとして機能する。ストリーム生成プログラム208eは、ストリーム生成プロセス207eとして機能する。   The frequency conversion program 208a functions as a frequency conversion process 207a. The auditory psychological calculation program 208b functions as an auditory psychological calculation process 207b. The bit allocation program 208c functions as a bit allocation process 207c. The quantization program 208d functions as a quantization process 207d. The stream generation program 208e functions as a stream generation process 207e.

例えば、周波数変換プロセス207aは、周波数変換部110に対応する。聴覚心理演算プロセス207bは、聴覚心理演算部120に対応する。ビット割当プロセス207cは、ビット割当部130に対応する。量子化プロセス207dは、量子化部150に対応する。ストリーム生成プロセス207eは、ストリーム生成部160に対応する。   For example, the frequency conversion process 207 a corresponds to the frequency conversion unit 110. The auditory psychological calculation process 207 b corresponds to the auditory psychological calculation unit 120. The bit allocation process 207 c corresponds to the bit allocation unit 130. The quantization process 207 d corresponds to the quantization unit 150. The stream generation process 207 e corresponds to the stream generation unit 160.

なお、各プログラム208a〜208eについては、必ずしも最初からハードディスク装置208に記憶させておかなくてもよい。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200がこれらから各プログラム208a〜208eを読み出して実行するようにしてもよい。   Note that the programs 208a to 208e are not necessarily stored in the hard disk device 208 from the beginning. For example, each program is stored in a “portable physical medium” such as a flexible disk (FD), a CD-ROM, a DVD disk, a magneto-optical disk, and an IC card inserted into the computer 200. Then, the computer 200 may read and execute each of the programs 208a to 208e from these.

ところで、図1に示した各処理部110〜160は、例えば、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、各処理部は、例えば、CPUやMPU(Micro Processing Unit)等の電子回路に対応する。また、各処理部110〜160は、記憶装置を有していてもよい。   1 corresponds to an integrated device such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). Each processing unit corresponds to an electronic circuit such as a CPU or MPU (Micro Processing Unit). In addition, each of the processing units 110 to 160 may have a storage device.

以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。   The following supplementary notes are further disclosed with respect to the embodiments including the above examples.

(付記1)指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定するビット割当部と、
伝送路で伝送可能な所定のビット数と、前記使用可能ビット数との差分を補填ビット数として蓄積するビットリザーバと、
前記使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって前記入力オーディオ信号を量子化した量子化値を生成し、
前記量子化値のビット数が、前記使用可能ビット数よりも大きい場合に、該使用可能ビット数を超過する前記量子化値のビット数を、前記ビットリザーバに蓄積された補填ビット数で補填する量子化部と
を備えたことを特徴とする符号化装置。
(Supplementary Note 1) A bit allocation unit that specifies the number of usable bits based on the designated average bit rate and the encoding difficulty of the input audio signal;
A bit reservoir that accumulates a difference between a predetermined number of bits that can be transmitted on the transmission line and the usable number of bits as a number of compensation bits;
Identifying the size of the quantization step based on the number of usable bits, and generating a quantization value obtained by quantizing the input audio signal by the quantization step;
When the number of bits of the quantized value is larger than the number of usable bits, the number of bits of the quantized value exceeding the usable number of bits is compensated with the number of supplemental bits accumulated in the bit reservoir. An encoding device comprising: a quantization unit.

(付記2)前記量子化値のビット数と前記使用可能ビット数との差分値を順次記憶し、記憶した各差分値を基にして、前記使用可能ビット数を超過する前記量子化値のビット数を推定する推定部を更に有し、前記ビット割当部は、前記使用可能ビット数から前記推定部が推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする付記1に記載の符号化装置。 (Supplementary Note 2) The difference value between the number of bits of the quantized value and the number of usable bits is sequentially stored, and the bit of the quantized value exceeding the usable number of bits based on each stored difference value An estimation unit for estimating a number, wherein the bit allocation unit specifies the number of bits obtained by subtracting the number of bits estimated by the estimation unit from the number of usable bits as the number of usable bits. The encoding device according to attachment 1.

(付記3)前記ビット割当部は、前記推定部が推定したビット数よりも前記使用可能ビット数が大きい場合に、前記使用可能ビット数から前記推定部が推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする付記2に記載の符号化装置。 (Supplementary note 3) When the number of usable bits is larger than the number of bits estimated by the estimation unit, the bit allocation unit subtracts the number of bits obtained by subtracting the number of bits estimated by the estimation unit from the number of usable bits. The encoding apparatus according to appendix 2, wherein the encoding device is specified as the number of usable bits.

(付記4)コンピュータが実行する符号化方法であって、
指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定し、
前記使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって前記入力オーディオ信号を量子化した量子化値を生成し、
前記量子化値のビット数が、前記使用可能ビット数よりも大きい場合に、該使用可能ビット数を超過する前記量子化値のビット数を、伝送路で伝送可能な所定のビット数と、前記使用可能ビット数との差分を補填ビット数として蓄積するビットリザーバの補填ビット数によって補填する
各処理をコンピュータが実行することを特徴とする符号化方法。
(Supplementary Note 4) An encoding method executed by a computer,
Based on the specified average bit rate and the encoding difficulty of the input audio signal, specify the number of usable bits,
Identifying the size of the quantization step based on the number of usable bits, and generating a quantization value obtained by quantizing the input audio signal by the quantization step;
When the number of bits of the quantized value is larger than the number of usable bits, the number of bits of the quantized value exceeding the usable number of bits is set to a predetermined number of bits that can be transmitted on a transmission path, and An encoding method, wherein the computer executes each process of compensating for the difference from the number of usable bits as the number of compensation bits of the bit reservoir that accumulates the difference as the number of compensation bits.

(付記5)前記量子化値のビット数と前記使用可能ビット数との差分値を順次記憶装置に記憶し、記憶した各差分値を基にして、前記使用可能ビット数を超過する前記量子化値のビット数を推定し、前記使用可能ビット数から、推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする付記4に記載の符号化方法。 (Supplementary Note 5) The difference value between the number of bits of the quantized value and the number of usable bits is sequentially stored in a storage device, and the quantization exceeding the number of usable bits based on each stored difference value The encoding method according to appendix 4, wherein the number of bits of the value is estimated, and the number of bits obtained by subtracting the estimated number of bits from the number of usable bits is specified as the number of usable bits.

(付記6)前記推定したビット数よりも前記使用可能ビット数が大きい場合に、前記使用可能ビット数から、前記推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする付記5に記載の符号化方法。 (Supplementary note 6) When the usable bit number is larger than the estimated bit number, the bit number obtained by subtracting the estimated bit number from the usable bit number is specified as the usable bit number. The encoding method according to appendix 5.

(付記7)コンピュータに、
指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定し、
前記使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって前記入力オーディオ信号を量子化した量子化値を生成し、
前記量子化値のビット数が、前記使用可能ビット数よりも大きい場合に、該使用可能ビット数を超過する前記量子化値のビット数を、伝送路で伝送可能な所定のビット数と、前記使用可能ビット数との差分を補填ビット数として蓄積するビットリザーバの補填ビット数によって補填する
各処理を実行させることを特徴とする符号化プログラム。
(Appendix 7)
Based on the specified average bit rate and the encoding difficulty of the input audio signal, specify the number of usable bits,
Identifying the size of the quantization step based on the number of usable bits, and generating a quantization value obtained by quantizing the input audio signal by the quantization step;
When the number of bits of the quantized value is larger than the number of usable bits, the number of bits of the quantized value exceeding the usable number of bits is set to a predetermined number of bits that can be transmitted on a transmission path, and An encoding program characterized by causing each process to be compensated by a bit reservoir compensation bit number that accumulates a difference from the usable bit number as a compensation bit number.

(付記8)前記量子化値のビット数と前記使用可能ビット数との差分値を順次記憶装置に記憶し、記憶した各差分値を基にして、前記使用可能ビット数を超過する前記量子化値のビット数を推定し、前記使用可能ビット数から、推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする付記7に記載の符号化プログラム。 (Supplementary note 8) The difference value between the number of bits of the quantization value and the number of usable bits is sequentially stored in a storage device, and the quantization exceeding the number of usable bits based on each stored difference value The encoding program according to appendix 7, wherein the number of bits of the value is estimated, and the number of bits obtained by subtracting the estimated number of bits from the number of usable bits is specified as the number of usable bits.

(付記9)前記推定したビット数よりも前記使用可能ビット数が大きい場合に、前記使用可能ビット数から、前記推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする付記8に記載の符号化プログラム。 (Supplementary note 9) When the usable bit number is larger than the estimated bit number, the bit number obtained by subtracting the estimated bit number from the usable bit number is specified as the usable bit number. The encoding program according to appendix 8.

100 符号化装置
110 周波数変換部
120 聴覚心理演算部
130 ビット割当部
140 ビットリザーバ
150 量子化部
160 ストリーム生成部
170 推定部
DESCRIPTION OF SYMBOLS 100 Coding apparatus 110 Frequency conversion part 120 Auditory psychological calculation part 130 Bit allocation part 140 Bit reservoir 150 Quantization part 160 Stream generation part 170 Estimation part

Claims (5)

指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定するビット割当部と、
伝送路で伝送可能な所定のビット数と、前記使用可能ビット数との差分を補填ビット数として蓄積するビットリザーバと、
前記使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって前記入力オーディオ信号を量子化した量子化値を生成し、
前記量子化値のビット数が、前記使用可能ビット数よりも大きい場合に、該使用可能ビット数を超過する前記量子化値のビット数を、前記ビットリザーバに蓄積された補填ビット数で補填する量子化部と
を備えたことを特徴とする符号化装置。
A bit allocation unit that specifies the number of usable bits based on the specified average bit rate and the encoding difficulty of the input audio signal;
A bit reservoir that accumulates a difference between a predetermined number of bits that can be transmitted on the transmission line and the usable number of bits as a number of compensation bits;
Identifying the size of the quantization step based on the number of usable bits, and generating a quantization value obtained by quantizing the input audio signal by the quantization step;
When the number of bits of the quantized value is larger than the number of usable bits, the number of bits of the quantized value exceeding the usable number of bits is compensated with the number of supplemental bits accumulated in the bit reservoir. An encoding device comprising: a quantization unit.
前記量子化値のビット数と前記使用可能ビット数との差分値を順次記憶し、記憶した各差分値を基にして、前記使用可能ビット数を超過する前記量子化値のビット数を推定する推定部を更に有し、前記ビット割当部は、前記使用可能ビット数から前記推定部が推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする請求項1に記載の符号化装置。   The difference value between the number of bits of the quantized value and the number of usable bits is sequentially stored, and the number of bits of the quantized value exceeding the number of usable bits is estimated based on each stored difference value. 2. The method according to claim 1, further comprising an estimation unit, wherein the bit allocation unit specifies the number of bits obtained by subtracting the number of bits estimated by the estimation unit from the number of usable bits as the number of usable bits. The encoding device described. 前記ビット割当部は、前記推定部が推定したビット数よりも前記使用可能ビット数が大きい場合に、前記使用可能ビット数から前記推定部が推定したビット数を減算したビット数を、使用可能ビット数として特定することを特徴とする請求項2に記載の符号化装置。   The bit allocation unit, when the number of usable bits is larger than the number of bits estimated by the estimation unit, the number of bits obtained by subtracting the number of bits estimated by the estimation unit from the number of usable bits. The encoding apparatus according to claim 2, wherein the encoding apparatus is specified as a number. コンピュータが実行する符号化方法であって、
指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定し、
前記使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって前記入力オーディオ信号を量子化した量子化値を生成し、
前記量子化値のビット数が、前記使用可能ビット数よりも大きい場合に、該使用可能ビット数を超過する前記量子化値のビット数を、伝送路で伝送可能な所定のビット数と、前記使用可能ビット数との差分を補填ビット数として蓄積するビットリザーバの補填ビット数によって補填する
各処理をコンピュータが実行することを特徴とする符号化方法。
An encoding method executed by a computer,
Based on the specified average bit rate and the encoding difficulty of the input audio signal, specify the number of usable bits,
Identifying the size of the quantization step based on the number of usable bits, and generating a quantization value obtained by quantizing the input audio signal by the quantization step;
When the number of bits of the quantized value is larger than the number of usable bits, the number of bits of the quantized value exceeding the usable number of bits is set to a predetermined number of bits that can be transmitted on a transmission path, and An encoding method, wherein the computer executes each process of compensating for the difference from the number of usable bits as the number of compensation bits of the bit reservoir that accumulates the difference as the number of compensation bits.
コンピュータに、
指定された平均ビットレートと入力オーディオ信号の符号化難易度とを基にして、使用可能ビット数を特定し、
前記使用可能ビット数を基にして量子化ステップの大きさを特定し、該量子化ステップによって前記入力オーディオ信号を量子化した量子化値を生成し、
前記量子化値のビット数が、前記使用可能ビット数よりも大きい場合に、該使用可能ビット数を超過する前記量子化値のビット数を、伝送路で伝送可能な所定のビット数と、前記使用可能ビット数との差分を補填ビット数として蓄積するビットリザーバの補填ビット数によって補填する
各処理を実行させることを特徴とする符号化プログラム。
On the computer,
Based on the specified average bit rate and the encoding difficulty of the input audio signal, specify the number of usable bits,
Identifying the size of the quantization step based on the number of usable bits, and generating a quantization value obtained by quantizing the input audio signal by the quantization step;
When the number of bits of the quantized value is larger than the number of usable bits, the number of bits of the quantized value exceeding the usable number of bits is set to a predetermined number of bits that can be transmitted on a transmission path, and An encoding program characterized by causing each process to be compensated by a bit reservoir compensation bit number that accumulates a difference from the usable bit number as a compensation bit number.
JP2011184826A 2011-08-26 2011-08-26 Encoding apparatus, encoding method, and encoding program Expired - Fee Related JP5782921B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011184826A JP5782921B2 (en) 2011-08-26 2011-08-26 Encoding apparatus, encoding method, and encoding program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011184826A JP5782921B2 (en) 2011-08-26 2011-08-26 Encoding apparatus, encoding method, and encoding program

Publications (2)

Publication Number Publication Date
JP2013045067A true JP2013045067A (en) 2013-03-04
JP5782921B2 JP5782921B2 (en) 2015-09-24

Family

ID=48008986

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011184826A Expired - Fee Related JP5782921B2 (en) 2011-08-26 2011-08-26 Encoding apparatus, encoding method, and encoding program

Country Status (1)

Country Link
JP (1) JP5782921B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10573324B2 (en) 2016-02-24 2020-02-25 Dolby International Ab Method and system for bit reservoir control in case of varying metadata

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000174635A (en) * 1998-09-29 2000-06-23 Matsushita Electric Ind Co Ltd Variable bit rate encoder
JP2006145782A (en) * 2004-11-18 2006-06-08 Canon Inc Encoding device and method for audio signal
JP2007133323A (en) * 2005-11-14 2007-05-31 Canon Inc Audio signal encoding apparatus and method
JP2007212895A (en) * 2006-02-10 2007-08-23 Matsushita Electric Ind Co Ltd Apparatus and method for coding audio signal, and program
JP2008083295A (en) * 2006-09-27 2008-04-10 Fujitsu Ltd Audio coding device
US20100169080A1 (en) * 2008-12-26 2010-07-01 Fujitsu Limited Audio encoding apparatus
JP2010175634A (en) * 2009-01-27 2010-08-12 Sony Corp Encoding device and method and program
US8346547B1 (en) * 2009-05-18 2013-01-01 Marvell International Ltd. Encoder quantization architecture for advanced audio coding

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000174635A (en) * 1998-09-29 2000-06-23 Matsushita Electric Ind Co Ltd Variable bit rate encoder
JP2006145782A (en) * 2004-11-18 2006-06-08 Canon Inc Encoding device and method for audio signal
JP2007133323A (en) * 2005-11-14 2007-05-31 Canon Inc Audio signal encoding apparatus and method
JP2007212895A (en) * 2006-02-10 2007-08-23 Matsushita Electric Ind Co Ltd Apparatus and method for coding audio signal, and program
JP2008083295A (en) * 2006-09-27 2008-04-10 Fujitsu Ltd Audio coding device
US20100169080A1 (en) * 2008-12-26 2010-07-01 Fujitsu Limited Audio encoding apparatus
JP2010156837A (en) * 2008-12-26 2010-07-15 Fujitsu Ltd Audio encoder
JP2010175634A (en) * 2009-01-27 2010-08-12 Sony Corp Encoding device and method and program
US8346547B1 (en) * 2009-05-18 2013-01-01 Marvell International Ltd. Encoder quantization architecture for advanced audio coding

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10573324B2 (en) 2016-02-24 2020-02-25 Dolby International Ab Method and system for bit reservoir control in case of varying metadata
US11195536B2 (en) 2016-02-24 2021-12-07 Dolby International Ab Method and system for bit reservoir control in case of varying metadata

Also Published As

Publication number Publication date
JP5782921B2 (en) 2015-09-24

Similar Documents

Publication Publication Date Title
US11145317B1 (en) Human auditory system modeling with masking energy adaptation
US9437197B2 (en) Encoding device, encoding method, and program
US8831960B2 (en) Audio encoding device, audio encoding method, and computer-readable recording medium storing audio encoding computer program for encoding audio using a weighted residual signal
JP6113294B2 (en) Reduced complexity converter SNR calculation
KR101690899B1 (en) Generation of a comfort noise with high spectro-temporal resolution in discontinuous transmission of audio signals
EP3525206B1 (en) Encoding method and apparatus
RU2009142471A (en) AUDIO PROCESSOR AND METHOD OF SOUND PROCESSING WITH HIGH-QUALITY CORRECTION OF KEY FREQUENCY (OPTIONS)
US9131290B2 (en) Audio coding device, audio coding method, and computer-readable recording medium storing audio coding computer program
EP2937861B1 (en) Prediction method and coding/decoding device for high frequency band signal
JP6979048B2 (en) Low complexity tonality adaptive audio signal quantization
JP2008076636A (en) Audio signal interpolation method and audio signal interpolation device
US20150162011A1 (en) Method and Apparatus for Allocating Bit in Audio Signal
JP5201375B2 (en) Speech signal coding using interchannel and temporal redundancy suppression.
MX2012002182A (en) Frequency band scale factor determination in audio encoding based upon frequency band signal energy.
US9165559B2 (en) Method and apparatus for frequency domain watermark processing a multi-channel audio signal in real-time
JP2020518030A (en) Difference data in digital audio signal
US8593321B2 (en) Computation apparatus and method, quantization apparatus and method, and program
JP2005328533A (en) Method and apparatus for encoding/decoding digital signal utilizing linear quantization by blocks
JP5782921B2 (en) Encoding apparatus, encoding method, and encoding program
JP6179087B2 (en) Audio encoding apparatus, audio encoding method, and audio encoding computer program
US8601039B2 (en) Computation apparatus and method, quantization apparatus and method, and program
KR20140000260A (en) Warped spectral and fine estimate audio encoding
CN112309418A (en) Method and device for inhibiting wind noise
JP5704018B2 (en) Audio signal encoding method and apparatus
US10861477B2 (en) Recording medium recording utterance impression determination program by changing fundamental frequency of voice signal, utterance impression determination method by changing fundamental frequency of voice signal, and information processing apparatus for utterance impression determination by changing fundamental frequency of voice signal

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140508

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150515

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150623

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150706

R150 Certificate of patent or registration of utility model

Ref document number: 5782921

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees