JP2013020166A - Encoding method and device of sound signal - Google Patents
Encoding method and device of sound signal Download PDFInfo
- Publication number
- JP2013020166A JP2013020166A JP2011154685A JP2011154685A JP2013020166A JP 2013020166 A JP2013020166 A JP 2013020166A JP 2011154685 A JP2011154685 A JP 2011154685A JP 2011154685 A JP2011154685 A JP 2011154685A JP 2013020166 A JP2013020166 A JP 2013020166A
- Authority
- JP
- Japan
- Prior art keywords
- frequency
- intensity
- spectrum
- signal
- encoding
- 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
Links
Images
Landscapes
- Auxiliary Devices For Music (AREA)
Abstract
Description
本発明は、音響信号の符号化技術に関し、特に、MIDI形式等の符号データに符号化するのに好適な符号化技術に関する。 The present invention relates to an audio signal encoding technique, and more particularly to an encoding technique suitable for encoding into code data of MIDI format or the like.
従来、MIDI音源を用いて音響信号を再生することを可能とするため、音響信号をMIDI符号等の符号データに変換することが行われている(特許文献1〜5参照)。MIDI音源では、32和音など限定された周波数で再生されるため、符号化の際には、限定された数の周波数を選択して符号化することが必要となる。出願人も、音響信号から限定された数の周波数を選択して符号化する技術について提案している(特許文献1、5参照)。
Conventionally, in order to be able to reproduce an acoustic signal using a MIDI sound source, the acoustic signal is converted into code data such as a MIDI code (see
しかしながら、上記特許文献1に記載の発明では、先に選択された強度が大きい周波数の周辺の信号成分を一律に減衰させることにより、互いに隣接する周波数成分がなるべく選択されないようにしている。そのため、ボーカル再生において子音を表現するのに本来必要な成分も削除されてしまい、返って再現性が低下するという問題を抱えていた。
However, in the invention described in
また、上記特許文献1に記載の発明では、演奏者が演奏していない倍音が残ってしまい、譜面に忠実な符号を完全に再現しきれないという問題がある。倍音を除去する手法については、出願人も提案している(特許文献2参照)が、精度の良い倍音除去が実現できていない。
In addition, the invention described in
そこで、本発明は、譜面に基づいて演奏された音響信号から、倍音による影響を可能な限り除去して、譜面に忠実な状態で符号化することが可能な音響信号の符号化方法および装置を提供することを課題とする。 Therefore, the present invention provides an audio signal encoding method and apparatus that can remove the influence of overtones as much as possible from an audio signal played based on a music score and can encode it in a state faithful to the music score. The issue is to provide.
上記課題を解決するため、本発明第1の態様では、所定のサンプリング周波数でデジタル化されたJ個の時系列のサンプル列として与えられる音響信号を符号化するための符号化するにあたり、前記サンプル列に対して、所定数T(T<J)個のサンプルで構成される単位区間を、隣接する単位区間と時間軸方向に所定数W(W<T)個のサンプルを重複させながら設定し、個々の単位区間ごとに、解析対象とする少なくともN種類の各周波数f(n)について、周波数変換を行うことにより、各単位区間に対して、前記N種類の周波数に対応したスペクトル強度を算出し、前記N種類の各周波数f(n)に対して、整数k(k≧2)分の1の周波数であるf(n)/kに対応するスペクトル強度が存在する場合に、f(n)/kに対応するスペクトル強度に補正強度γを乗じた分だけ周波数f(n)に対応するスペクトル強度を減衰させる補正を周波数f(n)が低い方から順に行い、補正スペクトル強度を作成し、周波数f(n)が高い方は先に補正されたスペクトル強度を用いて当該スペクトル強度を減衰させる補正を行うようにし、前記単位区間の先頭時刻と直後の単位区間の先頭時刻との時間差と、前記単位区間の補正スペクトル強度に基づいて、所定の形式の符号コードを生成するようにしたことを特徴とする。 In order to solve the above-described problem, in the first aspect of the present invention, in encoding for encoding an acoustic signal given as a sample sequence of J time series digitized at a predetermined sampling frequency, the sample is used. A unit interval composed of a predetermined number T (T <J) samples is set for a column while overlapping a predetermined number W (W <T) samples in the time axis direction with an adjacent unit interval. For each unit section, by performing frequency conversion on at least N types of frequencies f (n) to be analyzed, the spectrum intensity corresponding to the N types of frequencies is calculated for each unit section. When there is a spectrum intensity corresponding to f (n) / k that is a frequency that is a fraction of an integer k (k ≧ 2) for each of the N types of frequencies f (n), f (n ) / K Correction for attenuating the spectrum intensity corresponding to the frequency f (n) by the amount obtained by multiplying the spectrum intensity by the correction intensity γ is performed in order from the lowest frequency f (n) to create a corrected spectrum intensity, and the frequency f (n) The higher one uses a previously corrected spectral intensity to attenuate the spectral intensity, corrects the time difference between the head time of the unit section and the head time of the immediately following unit section, and the correction of the unit section. A code code of a predetermined format is generated based on the spectrum intensity.
本発明第1の態様によれば、各単位区間に対して周波数変換を行ってN種類の周波数に対応したスペクトル強度を算出し、N種類の各周波数f(n)に対して、整数k(k≧2)分の1の周波数であるf(n)/kに対応するスペクトル強度が存在する場合に、f(n)/kに対応するスペクトル強度に補正強度γを乗じた分だけ周波数f(n)に対応するスペクトル強度を減衰させる補正を周波数f(n)が低い方から順に行い、減衰補正後の情報に基づいて符号コードを生成するようにしたので、基音が限定される音響信号の低い方の音成分から倍音を順に精度良く除去でき、結果的に複数の基音に基づく倍音を多く含む高い方の音成分からも補正された低い方の音成分(基音)に基づいて倍音を精度良く除去することができ、譜面を忠実に再現した符号化を行うことが可能となる。 According to the first aspect of the present invention, frequency conversion is performed on each unit section to calculate spectrum intensities corresponding to N types of frequencies, and for each of the N types of frequencies f (n), an integer k ( When there is a spectrum intensity corresponding to f (n) / k, which is a frequency of k ≧ 2), the frequency f is equal to the spectrum intensity corresponding to f (n) / k multiplied by the correction intensity γ. Since the correction for attenuating the spectrum intensity corresponding to (n) is performed in order from the lowest frequency f (n) and the code code is generated based on the information after the attenuation correction, an acoustic signal whose fundamental tone is limited Overtones can be accurately removed in order from the lower sound component, and as a result, harmonics based on the lower sound component (fundamental tone) corrected from the higher sound component containing many overtones based on multiple fundamental sounds Can be removed with high accuracy, It is possible to perform the reproduction coded to.
また、本発明第2の態様では、本発明第1の態様において、前記スペクトル強度の算出を、個々の単位区間ごとに、解析対象とする少なくともN種類の各周波数f(n)について、周波数変換を行うことにより、単位区間pに対して、前記N種類の周波数に対応した第1のスペクトル強度E1(p,n)を算出し、前記単位区間pに対して直前に位置する単位区間p−1における第1のスペクトル強度E1(p−1,n)との対応する周波数ごとの変化に基づく評価値が、所定のしきい値より大きい場合に限り、当該単位区間pをq(q≦p)番目の選出単位区間qとして選出し、解析対象とする少なくともN種類の各周波数f(n)について、前記第1のスペクトル算出段階における周波数変換に比較して高精度な周波数変換を行うことにより、前記N種類の周波数に対応した第2のスペクトル強度E2(q,n)を算出することにより、前記スペクトル強度として第2のスペクトル強度E2(q,n)を算出するものであり、前記スペクトルの補正は、前記第2のスペクトル強度E2(q,n)に対して所定の割合だけ減衰させるように補正を行い、前記補正スペクトル強度として補正スペクトル強度E‘(q,n)を作成するようにしていることを特徴とする。 Further, in the second aspect of the present invention, in the first aspect of the present invention, the calculation of the spectral intensity is performed for frequency conversion for at least N types of frequencies f (n) to be analyzed for each unit section. To calculate a first spectral intensity E1 (p, n) corresponding to the N types of frequencies for the unit interval p, and a unit interval p- positioned immediately before the unit interval p. The unit interval p is q (q ≦ p) only when the evaluation value based on the corresponding frequency change with the first spectral intensity E1 (p−1, n) in 1 is larger than a predetermined threshold value. ) To perform frequency conversion with higher accuracy than the frequency conversion in the first spectrum calculation step for at least N types of frequencies f (n) to be selected and analyzed as the first selection unit interval q. The second spectrum intensity E2 (q, n) is calculated as the spectrum intensity by calculating the second spectrum intensity E2 (q, n) corresponding to the N types of frequencies, In the spectrum correction, correction is performed so as to attenuate the second spectrum intensity E2 (q, n) by a predetermined ratio, and a corrected spectrum intensity E ′ (q, n) is created as the corrected spectrum intensity. It is characterized by doing so.
本発明第2の態様によれば、設定された各単位区間に対して簡易な第1の周波数変換を行い、その強度が直前の単位区間と比較して所定の基準以上に大きい場合に、選出単位区間として選出し、その選出単位区間に対してより高精度な第2の周波数変換を行って、得られた解析結果を基に符号コードを生成するようにしたので、固定間隔で音響信号全体に渡って情報を解析しつつ、特徴的な部分のみを符号化することになるため、和音を含む音響信号や、音声信号の周波数変化をより適切に解析することが可能となる。 According to the second aspect of the present invention, a simple first frequency conversion is performed for each set unit section, and the selection is performed when the intensity is greater than a predetermined reference compared to the immediately preceding unit section. Since it was selected as a unit interval, and the second frequency conversion with higher accuracy was performed on the selected unit interval, and a code code was generated based on the obtained analysis result, the entire acoustic signal was fixed at a fixed interval. Thus, only the characteristic part is encoded while analyzing the information over time, so that it is possible to more appropriately analyze the acoustic signal including chords and the frequency change of the audio signal.
また、本発明第3の態様では、本発明第2の態様において、前記第1のスペクトル算出および第2のスペクトル算出を、N種類の各周波数f(n)に対して隣接する周波数を超えない範囲で所定のM種類の副周波数f(n,m)を設定し、前記第1のスペクトル強度E1(p,n)および第2のスペクトル強度E2(q,n)として、前記M種類の副周波数の中で最も大きい強度を示す副周波数に対応する強度値を算出するようにしたことを特徴とする。 Further, in the third aspect of the present invention, in the second aspect of the present invention, the first spectrum calculation and the second spectrum calculation do not exceed frequencies adjacent to each of the N types of frequencies f (n). A predetermined M types of sub-frequency f (n, m) are set in a range, and the M types of sub-frequency f1 (p, n) and second spectrum strength E2 (q, n) are set as the first spectrum strength E1 (p, n). An intensity value corresponding to a sub-frequency indicating the greatest intensity among the frequencies is calculated.
本発明第3の態様によれば、解析する周波数の間隔を微細に設定することにより、より高精度な周波数解析が可能となり、適切な周波数成分を特定することができる。 According to the third aspect of the present invention, by setting the frequency interval to be analyzed finely, it is possible to perform more accurate frequency analysis and specify an appropriate frequency component.
また、本発明第4の態様では、本発明第2または第3の態様において、前記符号コードを生成する際、隣接する2つの選出単位区間qと選出単位区間q+1に対して、前記選出単位区間qがp番目の単位区間pであった場合に、P(q)=pと定義し、前記選出単位区間q+1における周波数f(n)、f(n−1)、f(n+1)に対応する前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)のいずれかと、当該選出単位区間q+1の直前に位置する単位区間P(q+1)−1における周波数f(n)に対応する前記第1のスペクトル強度E1(P(q+1)−1,n)との差が所定のしきい値Ldif未満で、かつ前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)のいずれかおよび前記第1のスペクトル強度E1(P(q+1)−1,n)が所定のしきい値Lminより大きい場合、前記選出単位区間qと選出単位区間q+1を連結し、前記符号コードの基礎となる時間差として、前記選出単位区間qに定義された選出単位区間qの先頭時刻と、選出単位区間q+1の直後の選出単位区間q+2の先頭時刻との時間差を用いるようにしていることを特徴とする。 In addition, in the fourth aspect of the present invention, when the code code is generated in the second or third aspect of the present invention, the selection unit section with respect to two adjacent selection unit sections q and selection unit section q + 1. When q is the p-th unit interval p, it is defined as P (q) = p and corresponds to the frequencies f (n), f (n−1), and f (n + 1) in the selected unit interval q + 1. Any one of the first spectral intensities E1 (P (q + 1), n), E1 (P (q + 1), n-1), E1 (P (q + 1), n + 1) and a position immediately before the selected unit interval q + 1 A difference from the first spectral intensity E1 (P (q + 1) -1, n) corresponding to the frequency f (n) in the unit interval P (q + 1) -1 to be less than a predetermined threshold Ldif, and First spectral intensity E1 (P (q + 1), n) Any of E1 (P (q + 1), n−1), E1 (P (q + 1), n + 1) and the first spectral intensity E1 (P (q + 1) −1, n) is greater than a predetermined threshold value Lmin. If it is larger, the selection unit interval q and the selection unit interval q + 1 are connected, and the start time of the selection unit interval q defined in the selection unit interval q and the selection unit interval q + 1 It is characterized in that the time difference from the head time of the immediately subsequent selection unit section q + 2 is used.
本発明第4の態様によれば、符号コードを生成する際、隣接する2つの選出単位区間のうち、後続の選出単位区間とその直前の単位区間の強度の差が所定のしきい値未満で、後続の選出単位区間の強度とその直前の単位区間の強度がともに所定のしきい値より大きい場合に、隣接する2つの選出単位区間を連結するようにしたので、選出されていないものの、時間的に最も近い単位区間が連結判断の際に考慮されることとなり、適切に音成分を連結することが可能になる。 According to the fourth aspect of the present invention, when the code code is generated, the difference in intensity between the succeeding selected unit section and the immediately preceding unit section of the two adjacent selected unit sections is less than the predetermined threshold value. When the intensity of the subsequent selected unit section and the intensity of the previous unit section are both greater than a predetermined threshold, the two adjacent selected unit sections are connected so that the time is not selected. Therefore, the closest unit section is taken into consideration when determining the connection, and the sound components can be appropriately connected.
また、本発明第5の態様では、本発明第4の態様において、前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)を決定する副周波数に対応する値mmax1、mmax2、mmax3の少なくともいずれか1つと、前記第1のスペクトル強度E1(P(q+1)−1,n)を決定する副周波数に対応する値mmax0との差が所定のしきい値Ndif未満という条件をさらに満たした場合に限り、前記選出単位区間qと選出単位区間q+1を連結するようにしていることを特徴とする。副周波数に対応する値としては、例えば、MIDI規格ではノートナンバーの1/100単位であるセント(後述する実施形態では、少し粗く1/12ノートナンバー)を採用することができる。MIDI規格ではピッチベンドでノートナンバー間の微細な楽器音高変動をセント単位で表現することができる。 According to a fifth aspect of the present invention, in the fourth aspect of the present invention, the first spectral intensities E1 (P (q + 1), n), E1 (P (q + 1), n-1), E1 (P ( q + 1), n + 1) corresponding to at least one of the values mmax1, mmax2, mmax3 corresponding to the sub-frequency and the sub-frequency determining the first spectral intensity E1 (P (q + 1) -1, n) The selection unit section q and the selection unit section q + 1 are connected only when the condition that the difference from the value mmax0 is less than a predetermined threshold value Ndif is further satisfied. As a value corresponding to the sub-frequency, for example, a cent which is 1/100 unit of a note number in the MIDI standard (in the embodiment described later, a slightly coarse 1/12 note number) can be adopted. In the MIDI standard, it is possible to express minute musical instrument pitch fluctuations between note numbers by pitch bend in cent units.
本発明第5の態様によれば、解析する周波数の間隔を微細に設定することにより、より高精度な周波数解析が可能となり、さらに、音成分の連結条件として、後続の選出単位区間とその直前の単位区間の副周波数との差がしきい値未満であることを追加したので、より精度の高い解析結果に基づいて音成分を連結することが可能となる。 According to the fifth aspect of the present invention, it is possible to perform more accurate frequency analysis by finely setting the frequency interval to be analyzed, and further, as a sound component connection condition, the subsequent selection unit section and its immediately preceding section Since the difference from the sub-frequency of the unit interval is less than the threshold value, the sound components can be connected based on the analysis result with higher accuracy.
また、本発明第6の態様では、本発明第5の態様において、前記選出単位区間qが、既に他の選出単位区間と連結されている場合、前記選出単位区間qが連結されている先頭の選出単位区間をqoとし、前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)を決定する副周波数に対応する値mmax1、mmax2、mmax3の少なくともいずれか1つと、前記第1のスペクトル強度E1(P(qo),n)を決定する副周波数に対応する値mmaxoとの差が所定のしきい値Nadif未満という条件をさらに満たした場合に限り、前記選出単位区間qと選出単位区間q+1を連結することを特徴とする。 Also, in the sixth aspect of the present invention, in the fifth aspect of the present invention, when the selection unit section q is already connected to another selection unit section, the head of the selection unit section q is connected. The selected unit interval is qo, and the first spectral intensity E1 (P (q + 1), n), E1 (P (q + 1), n-1), E1 (P (q + 1), n + 1) is determined as a sub-frequency. The difference between at least one of the corresponding values mmax1, mmax2, and mmax3 and the value mmaxo corresponding to the sub-frequency that determines the first spectral intensity E1 (P (qo), n) is a predetermined threshold value Nadif. The selection unit interval q and the selection unit interval q + 1 are connected only when the condition of less than is further satisfied.
本発明第6の態様によれば、さらに、音成分の連結条件として、前方の選出単位区間が、既に他の選出単位区間と連結されている場合、後続の選出単位区間とその直前の選出単位区間が連結されている先頭の選出単位区間の副周波数との差がしきい値未満であることを追加したので、副周波数が緩やかに変化し周波数が異なる音成分に属する後続の選出単位区間を誤って連結することを防ぎ、より精度の高い音成分の連結を実現することが可能となる。 According to the sixth aspect of the present invention, as the sound component connection condition, when the preceding selection unit interval is already connected to another selection unit interval, the subsequent selection unit interval and the immediately preceding selection unit Since the difference between the sub-frequency of the first selection unit section to which the section is connected is less than the threshold value, the subsequent selection unit section belonging to the sound component whose sub-frequency changes slowly and has a different frequency is added. It is possible to prevent erroneous connection and to realize more accurate connection of sound components.
また、本発明第7の態様では、本発明第4から第6のいずれかの態様において、前記符号コードが、ある時刻tに所定の上限以上の数の発音区間が存在することを表現している場合、各発音区間について、前記選出単位区間の先頭時刻から前記時刻tまでの経過時間に基づいて強度値を減衰させて減衰強度値を算出し、前記時刻tにおいて当該減衰強度値が最小となる発音区間を前記時刻tにおいて終了させるよう前記符号コードの発音区間を短縮させるように補正することを特徴とする。 Also, in a seventh aspect of the present invention, in any one of the fourth to sixth aspects of the present invention, the code code expresses that there are more than a predetermined upper limit of sounding intervals at a certain time t. In the case of each sounding interval, an attenuation value is calculated by attenuating the intensity value based on the elapsed time from the start time of the selected unit interval to the time t, and the attenuation intensity value is minimum at the time t. The sounding section of the code code is corrected so as to be shortened so that the sounding section ends at the time t.
本発明第7の態様によれば、符号コードが、ある時刻tに所定の上限以上の数の発音区間が存在することを表現している場合、各発音区間について、選出単位区間の先頭時刻から時刻tまでの経過時間に基づいて強度値を減衰させて減衰強度値を算出し、時刻tにおいて減衰強度値が最小となる発音区間を時刻tにおいて終了させるよう符号コードの発音区間を短縮させるように補正するようにしたので、同時発音数の制限の中で各時刻において可能な限り多くの音を同時発音することが可能となる。 According to the seventh aspect of the present invention, when the code code represents that there are more than a predetermined upper limit number of sounding intervals at a certain time t, for each sounding interval, from the start time of the selected unit interval An attenuation value is calculated by attenuating the intensity value based on the elapsed time up to time t, and the sounding section of the code code is shortened so that the sounding section having the minimum attenuation intensity value at time t is terminated at time t. Therefore, it is possible to simultaneously generate as many sounds as possible at each time within the limitation of the number of simultaneous sounds.
また、本発明第8の態様では、本発明第2から第7のいずれかの態様において、前記第1のスペクトル算出を、前記単位区間の区間信号の構成要素となるべきN種類の要素信号を、各々当該周波数f(n)の周期の整数倍に対応し、前記Tに最も近いT(n)個のサンプルとして準備し、前記N個の各周波数f(n)に対応する要素信号と、それぞれ対応する前記単位区間pのT(n)個のサンプルで構成される区間信号との相関演算を行うことにより、第1のスペクトル強度E1(p,n)を算出し、前記第2のスペクトルの算出を、前記準備された前記N個の各周波数f(n)に対応する要素信号と、それぞれ対応する前記選出単位区間qのT(n)個のサンプルで構成される区間信号との相関演算を行い、相関値が最も高い周波数f(nmax)に対応する要素信号を調和信号として選出し、前記選出された調和信号と当該調和信号について得られた相関値との積で与えられるT(nmax)個のサンプルを含有信号とし、当該含有信号を前記区間信号から減じることにより、T(nmax)個のサンプルで構成される差分信号を演算により求め、前記T(nmax)個のサンプルを反映させ更新されたT(n)個のサンプルを新たな区間信号として、前記調和信号の選出および差分信号の演算を実行して新たな含有信号および差分信号を得る処理を繰り返し行うことによりN個の含有信号を求め、求められた含有信号の相関値に基づいて、前記N種類の周波数に対応した第2のスペクトル強度E2(q,n)を算出することを特徴とする。 Further, in an eighth aspect of the present invention, in any one of the second to seventh aspects of the present invention, the first spectrum calculation is performed using N types of element signals to be constituent elements of the section signal of the unit section. , Each corresponding to an integral multiple of the period of the frequency f (n), prepared as T (n) samples closest to the T, and element signals corresponding to the N frequencies f (n); A first spectrum intensity E1 (p, n) is calculated by performing a correlation operation with a section signal composed of T (n) samples of the corresponding unit section p, and the second spectrum. Is calculated by correlating the prepared element signal corresponding to each of the N frequencies f (n) and the section signal composed of T (n) samples of the corresponding selection unit section q. Calculate the frequency f () with the highest correlation value element) corresponding to max) is selected as a harmonic signal, and T (nmax) samples given by the product of the selected harmonic signal and the correlation value obtained for the harmonic signal are used as the inclusion signal, By subtracting the signal from the interval signal, a differential signal composed of T (nmax) samples is obtained by calculation, and T (n) samples updated to reflect the T (nmax) samples are obtained. As the new interval signal, the selection of the harmonic signal and the calculation of the difference signal are performed to repeatedly obtain the new inclusion signal and the difference signal, thereby obtaining N inclusion signals, and the correlation of the obtained inclusion signals. A second spectrum intensity E2 (q, n) corresponding to the N types of frequencies is calculated based on the value.
本発明第8の態様によれば、全ての単位区間に対する第1のスペクトル算出を、簡易な離散フーリエ変換により行い、選出単位区間に対する第2のスペクトル算出を高精度な一般化調和解析により行うようにしたので、全ての単位区間の解析結果を参考にしつつ、選出単位区間の情報を高精度に得ることを、全体として効率的に行うことが可能となる。 According to the eighth aspect of the present invention, the first spectrum calculation for all unit intervals is performed by simple discrete Fourier transform, and the second spectrum calculation for the selected unit interval is performed by high-precision generalized harmonic analysis. As a result, it is possible to efficiently obtain information on the selected unit section with high accuracy while referring to the analysis results of all the unit sections.
また、本発明第9の態様では、本発明第8の態様において、前記第1のスペクトル算出における前記相関の演算を、直前に位置する単位区間p−1における各周波数f(n)に対応する直前相関演算結果に対し、前記単位区間p−1における先頭Wサンプルに対応する相関演算を行い、各周波数ごとの相関値を前記直前相関演算結果より減算するとともに、前記単位区間pにおけるT(n)サンプル中の最後尾Wサンプルに対応する相関演算を行い、各周波数ごとの相関値を前記直前相関演算結果に加算することにより、前記単位区間pにおける各周波数f(n)に対応する相関演算結果を取得し、当該相関演算結果に基づいて前記第1のスペクトル強度E1(p,n)を算出することにより行うことを特徴とする。 Further, in the ninth aspect of the present invention, in the eighth aspect of the present invention, the calculation of the correlation in the first spectrum calculation corresponds to each frequency f (n) in the unit interval p-1 positioned immediately before. A correlation calculation corresponding to the first W sample in the unit interval p-1 is performed on the previous correlation calculation result, and a correlation value for each frequency is subtracted from the previous correlation calculation result, and T (n in the unit interval p ) Correlation calculation corresponding to each frequency f (n) in the unit interval p by performing correlation calculation corresponding to the last W sample in the sample and adding the correlation value for each frequency to the previous correlation calculation result This is performed by obtaining a result and calculating the first spectral intensity E1 (p, n) based on the correlation calculation result.
本発明第9の態様によれば、第1のスペクトル算出における各単位区間に対する簡易な相関演算を行う際、直前の単位区間に対して行われた相関演算結果を利用し、直前相関演算結果の先頭部分を除去するとともに、当該単位区間の最後尾に対する相関演算を行って、その結果を直前相関演算結果に加算するようにしたので、直前の単位区間の相関演算結果の大部分を流用することができ、全ての単位区間に対する演算処理を高速化することが可能となる。 According to the ninth aspect of the present invention, when performing a simple correlation calculation for each unit section in the first spectrum calculation, the correlation calculation result performed for the previous unit section is used, and the previous correlation calculation result is calculated. Since the head part is removed and the correlation calculation is performed on the tail of the unit interval, and the result is added to the previous correlation calculation result, most of the correlation calculation result of the previous unit interval is used. It is possible to speed up the arithmetic processing for all unit sections.
本発明によれば、譜面に基づいて演奏された音響信号から、倍音による影響を可能な限り除去して、譜面に忠実な状態で符号化することが可能となるという効果を有する。 According to the present invention, it is possible to remove the influence of harmonics as much as possible from an acoustic signal played based on a musical score and to encode it in a state faithful to the musical score.
以下、本発明の好適な実施形態について、図面を参照して詳細に説明する。
図1は、本発明の一実施形態における音響信号の符号化装置のハードウェア構成図である。音響信号の符号化装置は、汎用のコンピュータで実現することができ、図1に示すように、CPU1(CPU: Central Processing Unit)と、コンピュータのメインメモリであるRAM2(RAM: Random Access Memory)と、データを記憶するための大容量のデータ記憶装置3(例えば,ハードディスク)と、CPUが実行するプログラムを記憶するためのプログラム記憶装置4(例えば,ハードディスク)と、キーボード、マウス等のキー入力I/F5と、外部デバイス(データ記憶媒体)とデータ通信するためのデータ入出力インターフェース6と、表示デバイス(ディスプレイ)に情報を送出するための表示出力インターフェース7と、を備え、互いにバスを介して接続されている。
DESCRIPTION OF EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a hardware configuration diagram of an audio signal encoding device according to an embodiment of the present invention. The audio signal encoding apparatus can be realized by a general-purpose computer. As shown in FIG. 1, a CPU 1 (CPU: Central Processing Unit) and a computer main memory RAM 2 (RAM: Random Access Memory) A large-capacity data storage device 3 (for example, a hard disk) for storing data, a program storage device 4 (for example, a hard disk) for storing a program executed by the CPU, and a key input I such as a keyboard and a mouse / F5, a data input /
音響信号の符号化装置のプログラム記憶装置4には、CPU1を動作させ、コンピュータを、音響信号の符号化装置として機能させるための専用のプログラムが実装されている。専用のプログラムを実行することにより、CPU1は、区間設定手段、第1のスペクトル算出手段(要素信号準備手段、相関演算手段を含む)、第2のスペクトル算出手段(要素信号準備手段、調和信号選出手段、差分信号演算手段を含む)、スペクトル補正手段、符号化手段としての機能を実現することになる。また、データ記憶装置3は、処理に必要な様々なデータを記憶する。
The
図2は、本実施形態に係る音響信号の符号化方法の概要を示すフローチャートである。本実施形態に係る音響信号の符号化方法は、図1に示した音響信号の符号化装置が、図2に示した各ステップ(各段階)を実行することにより行われる。 FIG. 2 is a flowchart showing an outline of an audio signal encoding method according to this embodiment. The acoustic signal encoding method according to the present embodiment is performed by the acoustic signal encoding apparatus shown in FIG. 1 executing the steps (stages) shown in FIG.
まず、音響信号の符号化装置は、処理対象であるデジタル音響信号を、データ入出力I/F6を介してデータ入力機器から読み込む。デジタル音響信号は、アナログ音響信号を所定のサンプリング周波数、量子化ビット数でサンプリングしたものであり、本実施形態では、サンプリング周波数44.1kHz、量子化ビット数16ビットでサンプリングした場合を例にとって以下説明していく。サンプリング周波数44.1kHzでサンプリングした場合、デジタル音響信号は、1秒間に44100個のサンプル(強度値)を有するサンプル列(サンプルの配列:強度配列)として構成されることになる。
First, an audio signal encoding apparatus reads a digital audio signal to be processed from a data input device via a data input / output I /
デジタル音響信号を読み込んだら、音響信号の符号化装置は、デジタル音響信号を時間軸方向に所定の倍率K(Kは整数)だけ拡大する(S1)。具体的には、デジタル音響信号を構成するサンプルの数をK倍にする。そして、K個ごとに、元のサンプルと同じ値のものを配置し、その間の(K−1)個のサンプルの値としては、両側に位置する元のサンプルの値を用いて線形補間したものを与える。原音響信号の各サンプルj(j=0・・・J−1)についてのサンプル値をx(j)とすると、コンピュータは、以下の〔数式1〕に従った処理を実行することにより、拡大後の音響信号の各サンプルj・K+k(0≦k≦K−1)についてのサンプル値x´(j・K+k)を算出する。以下の〔数式1〕において、wはk/Kで与えられる0≦w≦1の値をとる実数値とする。 When the digital audio signal is read, the audio signal encoding apparatus expands the digital audio signal by a predetermined magnification K (K is an integer) in the time axis direction (S1). Specifically, the number of samples constituting the digital acoustic signal is multiplied by K. Then, every K samples having the same value as the original sample are arranged, and (K-1) sample values between them are linearly interpolated using the values of the original sample located on both sides. give. Assuming that the sample value for each sample j (j = 0... J-1) of the original sound signal is x (j), the computer expands by executing the processing according to the following [Equation 1]. A sample value x ′ (j · K + k) for each sample j · K + k (0 ≦ k ≦ K−1) of the subsequent acoustic signal is calculated. In the following [Equation 1], w is a real value taking a value of 0 ≦ w ≦ 1 given by k / K.
〔数式1〕
x´(j・K+k)=(1−w)・x(j)+w・x(j+1)
[Formula 1]
x ′ (j · K + k) = (1−w) · x (j) + w · x (j + 1)
S1における処理の結果、デジタル音響信号を構成するJ個のサンプルは、J×K個に拡大される。図3(a)にS1における拡大処理による波形の変化を示す。図3(a)における波形は、サンプルの値をプロットしたものを線分で結んだものであるが、サンプル数が多いため、曲線状に表現されるものである。上記〔数式1〕に従った処理を実行することにより、左側に示したような波形が右側に示したような波形に変化することになる。なお、図3の例では、説明の便宜上K=2の場合を示している。このように、音響信号を時間軸方向に拡大して解析を行うことにより、元の音響信号に対してそのまま解析を行う場合と同等な周波数解析精度を維持しながら、解析における時間分解能を向上させ、周波数変動を高精度に抽出することが可能となる。 As a result of the processing in S1, J samples constituting the digital audio signal are expanded to J × K. FIG. 3A shows a change in waveform due to the enlargement process in S1. The waveform in FIG. 3A is obtained by connecting sampled values plotted with line segments, but is expressed in a curved line due to the large number of samples. By executing the processing according to the above [Equation 1], the waveform shown on the left side changes to the waveform shown on the right side. In the example of FIG. 3, the case of K = 2 is shown for convenience of explanation. In this way, by performing analysis by expanding the acoustic signal in the time axis direction, the time resolution in the analysis is improved while maintaining the same frequency analysis accuracy as when performing the analysis directly on the original acoustic signal. Thus, it is possible to extract frequency fluctuations with high accuracy.
音響信号の符号化装置は、続くS2〜S5において、所定の区間に対して周波数解析を行う。本実施形態では、周波数解析の対象とする区間の設定を、単位区間を設定した後、所定の条件を満たす単位区間を選出単位区間として選出することにより行う。本実施形態における解析対象とする区間の設定の概念を、特許文献3に代表される従来技術と比較して説明する。図4は、従来技術と比較した本実施形態の区間設定の概念を示す図である。従来の場合も本実施形態も、後述するように、サンプリングにより得られた所定数のサンプルを単位区間として設定し、単位区間ごとに周波数解析を行う点は同一である。図4(a)に示すように、特許文献3に開示されている従来技術では、ゼロ交差点を特定し、そのゼロ交差点を利用して単位区間の設定位置を可変とする。図4(a)では例として3つの単位区間が設定されているが、これらの開始位置(左端)の間隔は均一ではない。そして、設定された各単位区間に対して、離散フーリエ変換及び一般化調和解析の両方を実行して解析結果を得る。
The acoustic signal encoding apparatus performs frequency analysis on a predetermined section in subsequent S2 to S5. In the present embodiment, the section to be subjected to frequency analysis is set by selecting a unit section satisfying a predetermined condition as the selected unit section after setting the unit section. The concept of setting the section to be analyzed in the present embodiment will be described in comparison with the prior art represented by
これに対して、図4(b)に示すように、本実施形態では、固定間隔で単位区間を設定し、各単位区間に対して離散フーリエ変換を実行して解析結果を得る。そして、その解析結果を直前の単位区間と比較して、所定の条件を満たす場合に、選出単位区間として選出する。図4(b)の例では、単位区間1、5、6がそれぞれ選出単位区間1、2、3として選出されている。そして、選出単位区間に対して一般化調和解析を実行して解析結果を得る。
On the other hand, as shown in FIG. 4B, in this embodiment, unit intervals are set at fixed intervals, and discrete Fourier transform is performed on each unit interval to obtain an analysis result. Then, the analysis result is compared with the immediately preceding unit section, and when a predetermined condition is satisfied, it is selected as the selected unit section. In the example of FIG. 4B,
具体的には、まず、音響信号の符号化装置が、時間軸方向に拡大されたサンプル上に単位区間を設定する(S2)。単位区間の長さ(サンプル数T)は、サンプリング周波数との関係で設定されるが、サンプリング周波数が44.1kHzの場合、低域部まで忠実に解析するためには、4096サンプル以上必要である。そこで、本実施形態では、1単位区間のサンプル数T=4096として単位区間を設定している。 Specifically, first, the audio signal encoding apparatus sets a unit interval on the sample expanded in the time axis direction (S2). The length of the unit interval (number of samples T) is set in relation to the sampling frequency. However, if the sampling frequency is 44.1 kHz, 4096 samples or more are required to faithfully analyze the low frequency region. . Therefore, in this embodiment, the unit interval is set as the number of samples T per unit interval T = 4096.
単位区間の設定は、特許文献1、4に開示されているように、デジタル音響信号の先頭から順次サンプルを抽出することにより行われる。単位区間は、全てのサンプルを漏らさず設定し、好ましくは、連続する単位区間においてサンプルが重複するように設定する。本発明では、各単位区間の先頭の間隔(シフト幅という)を固定値で設定する。すなわち、重複させるサンプル数を一定として設定する。本実施形態では、シフト幅W=64の固定値とする。これにより、T=4096の場合、先頭の単位区間をj=0〜4095、2番目の単位区間をj=64〜4159、3番目の単位区間をj=128〜4223というように、64個のサンプルを重複させながら、設定することになる。そして、各サンプルの値x(j)を各単位区間p(pは0以上の整数)ごとの値x(p,i)(0≦i≦T−1)と表現する。
Setting of the unit section is performed by sequentially extracting samples from the head of the digital sound signal as disclosed in
次に、設定された各単位区間を対象として第1の周波数解析である離散フーリエ変換を実行し、各単位区間のスペクトルを算出する(S3)。各単位区間のスペクトルの算出は、特許文献1、3、4に開示されているように、MIDIのノートナンバーnに対応する128種の解析周波数f(n)=440・2(n-69)/12の調和信号(調和関数)を基本にした離散フーリエ変換により、128個の成分を抽出することにより行う。“128種”“128個”というのは一例であり、例えば、MIDI規格の場合、ノートナンバーn=0〜127の範囲に対応するが、グランドピアノを再現するための規格音域は、ノートナンバーn=21〜108の範囲である。したがって、この場合、88種類の解析周波数を用いて88個の成分を抽出することになる。また、前述したように、音響信号を時間軸方向に所定の倍率Kだけ拡大して周波数解析を行う場合、後述する時間軸拡大処理を省略すると、低音部に位置する解析周波数では解析不能になるため解析周波数の種類は更に少なくなる。例えば、K=4の場合、解析周波数はMIDI規格上でもノートナンバーn=24〜127(104種類)の範囲に制限され、更にグランドピアノの規格音域では、ノートナンバーn=24〜108(85種類)の範囲に制限される。
Next, discrete Fourier transform, which is the first frequency analysis, is executed for each set unit section, and the spectrum of each unit section is calculated (S3). As disclosed in
本実施形態では、音響信号を時間軸方向にK倍に拡大したことに伴い、nの上限、下限をそれぞれαだけ下方に移動させる。αは、α=12・log2K(例えばK=4の場合α=24)で定義される整数である。したがって、特許文献1、3、4では、0≦n≦127であるが、本実施形態では、−α≦n≦127−αである。これにより各調和信号の周波数は、1/K倍に設定されることになる。ここで、本実施形態における解析周波数の論理的/物理的範囲の関係を図5に示す。図5に示すように、グランドピアノの規格音域は、n=21〜108の範囲であるため、通常の解析を行う場合は、n=21〜108の範囲で行うことになる。ところが、本発明では、時間軸拡大することにより周波数を低音側にシフトして解析処理を行う。また、ノートナンバーn=21以下については、対応する調和信号の1周期が単位区間より長くなるため、時間軸延長(後述)による長周期解析を行う。この結果、n=−3〜84について周波数成分が得られるが、最終的に補正処理を行うことにより、n=21〜108の範囲周波数成分が得られる。
In the present embodiment, as the acoustic signal is expanded K times in the time axis direction, the upper and lower limits of n are respectively moved downward by α. α is an integer defined by α = 12 · log 2 K (for example, α = 24 when K = 4). Therefore, in
ノートナンバーnに対応して解析周波数を設定した場合、周波数が高くなるにつれ、ノートナンバー間の周波数間隔が広くなるため、特に、nが60を超えると解析精度が低下してしまう。そこで、本実施形態では、特許文献4に開示したように、ノートナンバー間をM個の微分音(副周波数)に分割した128M個の要素信号f(n,m)=440・2(n-69+m/M)/12を用いて解析を行い、128M個の成分を抽出する。後述するS10の符号コード作成処理においてピッチベンド符号の付加など特殊な符号化を行わない限り、各ノートナンバーにおけるM個の微分音の情報は不要であるため、M個の微分音の成分の最大値を当該ノートナンバーにおける成分として代表させ、結果的に128個の成分を抽出する。
When the analysis frequency is set in correspondence with the note number n, the frequency interval between the note numbers becomes wider as the frequency becomes higher. In particular, when n exceeds 60, the analysis accuracy decreases. Therefore, in the present embodiment, as disclosed in
音響信号の符号化装置による具体的な処理手順としては、各単位区間pごとに、まず、ノートナンバー分の強度値の配列E1(p,n)(−α≦n≦127−α)と副周波数配列S(p,n)を設定し、初期値を全て0とする。続いて、−α≦n≦127−αおよび0≦m≦M−1に対して以下の〔数式2〕に従った処理を実行し、E1(p,n,m)を最大にする(nmax,mmax)を求める。ただし、処理負荷との関係から、低音部分を必要としない場合は、n<0については処理を省略することにより、処理負荷を軽減することもできる。 As a specific processing procedure by the acoustic signal encoding apparatus, first, for each unit section p, an intensity value array E1 (p, n) (−α ≦ n ≦ 127−α) and a sub-number for each note number are subtracted. The frequency array S (p, n) is set and all initial values are set to 0. Subsequently, the processing according to the following [Formula 2] is executed for -α ≦ n ≦ 127-α and 0 ≦ m ≦ M−1 to maximize E1 (p, n, m) (nmax , Mmax). However, if the bass portion is not required due to the relationship with the processing load, the processing load can be reduced by omitting the processing for n <0.
〔数式2〕
A(p,n,m)=(1/T(n))・Σi=0,T(n)-1x(p,i) sin(2πf(n,m)(i+pW)/fs)
B(p,n,m)=(1/T(n))・Σi=0,T(n)-1x(p,i) cos (2πf(n,m)(i+pW)/fs)
E1(p,n,m)={A(p,n,m)}2+{B(p,n,m)}2
[Formula 2]
A (p, n, m) = (1 / T (n)). Σi = 0, T (n) −1 x (p, i) sin (2πf (n, m) (i + pW) / fs)
B (p, n, m) = (1 / T (n)). Σi = 0, T (n) −1 x (p, i) cos (2πf (n, m) (i + pW) / fs)
E1 (p, n, m) = {A (p, n, m)} 2 + {B (p, n, m)} 2
上記〔数式2〕においてT(n)は解析フレーム長であり、調和信号(調和関数)の1周期が単位区間長T以下の場合、単位区間長Tを超えない範囲で調和信号の周期の最大の整数倍になるように設定する。ただし、本発明では、時間軸拡大することにより周波数を低音側にシフトして解析処理を行うため、調和信号(調和関数)の1周期が単位区間長Tを超える場合が発生する。具体的には、調和信号の1周期が単位区間長Tより大きい場合、T(n)=g×fs/f(n,m)で与え、T<T(n)におけるx(i)の値については、後述する時間軸延長処理に基づき設定する。なお、gは1以上の整数値、fsはサンプリング周波数(例えば、44.1kHz)である。 In the above [Equation 2], T (n) is the analysis frame length. When one period of the harmonic signal (harmonic function) is equal to or shorter than the unit section length T, the maximum period of the harmonic signal is within a range not exceeding the unit section length T. Set to be an integer multiple of. However, in the present invention, the time axis is expanded to shift the frequency to the bass side and the analysis process is performed, so that one period of the harmonic signal (harmonic function) exceeds the unit interval length T. Specifically, when one period of the harmonic signal is larger than the unit section length T, it is given by T (n) = g × fs / f (n, m), and the value of x (i) at T <T (n) Is set based on the time axis extension process described later. Note that g is an integer value of 1 or more, and fs is a sampling frequency (for example, 44.1 kHz).
上記〔数式2〕に従った処理を各単位区間に対して実行し、A(p,n,m)、B(p,n,m)、E1(p,n,m)を求めることも可能である。ここで、本実施形態における単位区間と解析範囲の関係を図6に示す。図6において、上端の波形は原音響信号、下端の波形は調和関数をそれぞれ模式的に示したものである。図6の例では、対象とする単位区間である対象単位区間と、その直前の単位区間である直前単位区間のみを示してあるが、それぞれの相関計算範囲は、矩形の横方向の長さになる。本実施形態では、相関計算範囲Tを4096サンプル、シフト幅Wを64サンプルとしているため、重複部分が非常に大きい。そこで、本実施形態では、重複部分については、直前単位区間における解析結果を利用することにより、解析処理の効率化を図っている。 The processing according to the above [Equation 2] is executed for each unit section, and A (p, n, m), B (p, n, m), E1 (p, n, m) can be obtained. It is. Here, the relationship between the unit interval and the analysis range in the present embodiment is shown in FIG. In FIG. 6, the waveform at the upper end schematically shows the original sound signal, and the waveform at the lower end schematically shows the harmonic function. In the example of FIG. 6, only the target unit section that is the target unit section and the immediately preceding unit section that is the immediately preceding unit section are shown, but each correlation calculation range has a rectangular horizontal length. Become. In this embodiment, since the correlation calculation range T is 4096 samples and the shift width W is 64 samples, the overlapping portion is very large. Therefore, in the present embodiment, the efficiency of the analysis process is improved by using the analysis result in the immediately preceding unit section for the overlapping portion.
本実施形態における単位区間の解析処理の様子を図7に示す。図7に示すように、対象単位区間における解析結果を得る際に、直前単位区間の重複部分を利用する。具体的には、対象単位区間と重複しない直前単位区間の先頭部分を削除し、直前単位区間と重複しない対象単位区間の最後尾部分のみ、相関演算を行って追加する。従って、単位区間内全体に渡って相関演算を行うのは、先頭の単位区間(p=0)に対してだけということになる。 FIG. 7 shows a state of the unit interval analysis processing in the present embodiment. As shown in FIG. 7, when obtaining the analysis result in the target unit section, the overlapping part of the immediately preceding unit section is used. Specifically, the head part of the previous unit section that does not overlap with the target unit section is deleted, and only the tail part of the target unit section that does not overlap with the previous unit section is added by performing correlation calculation. Therefore, the correlation calculation is performed only for the head unit interval (p = 0) over the entire unit interval.
p≧1の場合、すなわち、2番目以降の単位区間pについて処理する場合、直前の単位区間(p−1)についてのA(p−1,n,m)、B(p−1,n,m)が既に算出されている。本実施形態では、A(p−1,n,m)、B(p−1,n,m)を用いて、以下の〔数式3〕に従った処理を実行することにより、単位区間pについてのA(p,n,m) 、B(p,n,m)を算出する。 When p ≧ 1, that is, when processing for the second and subsequent unit intervals p, A (p−1, n, m) and B (p−1, n, m) for the immediately preceding unit interval (p−1). m) has already been calculated. In the present embodiment, by using A (p−1, n, m) and B (p−1, n, m), the processing according to the following [Equation 3] is executed, so that the unit interval p is obtained. A (p, n, m) and B (p, n, m) are calculated.
〔数式3〕
A(p,n,m)=A(p−1,n,m) −(1/T(n))・Σi=0,W-1x(p−1,i) sin(2πf(n,m)(i+(p−1)W)/fs)+(1/T(n))・Σi=T(n)-W,T(n)-1x(p,i) sin(2πf(n,m)(i+pW)/fs)
B(p,n,m)=B(p−1,n,m) −(1/T(n))・Σi=0,W-1x(p−1,i) cos (2πf(n,m)(i+(p−1)W)/fs)+(1/T(n))・Σi=T(n)-W,T(n)-1x(p,i) cos (2πf(n,m)(i+pW)/fs)
E1(p,n,m)={A(p,n,m)}2+{B(p,n,m)}2
[Formula 3]
A (p, n, m) = A (p-1, n, m) − (1 / T (n)) · Σ i = 0, W−1 x (p−1, i) sin (2πf (n , M) (i + (p-1) W) / fs) + (1 / T (n)). Σi = T (n) -W, T (n) -1 x (p, i) sin (2πf (N, m) (i + pW) / fs)
B (p, n, m) = B (p-1, n, m) − (1 / T (n)) · Σ i = 0, W−1 x (p−1, i) cos (2πf (n , M) (i + (p-1) W) / fs) + (1 / T (n)). Σi = T (n) -W, T (n) -1 x (p, i) cos (2πf (N, m) (i + pW) / fs)
E1 (p, n, m) = {A (p, n, m)} 2 + {B (p, n, m)} 2
続いて、ノートナンバーnごとに、0≦m≦M−1の範囲で、E1(p,n,m)を最大にする(p,n,mmax)を求め、E1(p,n)=E1(p,n,mmax)、S(p,n)=mmaxとする処理を行う。そして、算出されたE1(p,n)、S(p,n)をメモリに一時保存する。メモリに一時保存されたE1(p,n)、S(p,n)は、後述する単音成分連結処理において用いる。 Subsequently, for each note number n, (p, n, mmax) that maximizes E1 (p, n, m) in the range of 0 ≦ m ≦ M−1 is obtained, and E1 (p, n) = E1. Processing is performed such that (p, n, mmax) and S (p, n) = mmax. Then, the calculated E1 (p, n) and S (p, n) are temporarily stored in the memory. E1 (p, n) and S (p, n) temporarily stored in the memory are used in a single-tone component connection process to be described later.
次に、単位区間pにおいて算出されたスペクトル強度E1(p,n)と、直前区間(p−1)において算出されたスペクトル強度E1(p−1,n)との変化の評価を行う(S4)。具体的には、まず、以下の〔数式4〕に従った処理を実行することにより、単位区間pの直前区間(p−1)との変化評価値dE(p−1,p)を算出する。 Next, a change between the spectral intensity E1 (p, n) calculated in the unit interval p and the spectral intensity E1 (p-1, n) calculated in the immediately preceding interval (p-1) is evaluated (S4). ). Specifically, first, a change evaluation value dE (p−1, p) with the immediately preceding section (p−1) of the unit section p is calculated by executing processing according to the following [Formula 4]. .
〔数式4〕
dE(p−1,p)=(100/N)・Σn=0,N-1{|E1(p,n)−E1(p−1,n)|/(E1(p,n)+E1(p−1,n))}
[Formula 4]
dE (p−1, p) = (100 / N) · Σ n = 0, N−1 {| E1 (p, n) −E1 (p−1, n) | / (E1 (p, n) + E1 (p-1, n))}
そして、得られた変化評価値dE(p−1,p)が、所定のしきい値未満である場合は、p←p+1としてS2に戻り、次の単位区間pの設定を行う。所定のしきい値としては、適宜設定することが可能であるが、〔数式4〕を用いた場合は、100で正規化してあるため、しきい値=40に設定している。 If the obtained change evaluation value dE (p−1, p) is less than the predetermined threshold value, p ← p + 1 is returned to S2, and the next unit interval p is set. The predetermined threshold value can be set as appropriate, but when [Equation 4] is used, since it is normalized by 100, the threshold value is set to 40.
一方、得られた変化評価値dE(p−1,p)が、所定のしきい値以上である場合は、その単位区間pを選出単位区間qとして選出し、選出単位区間qについて一般化調和解析を行う(S5)。qの値は最初に選出された選出単位区間を0とし、以降は選出されるごとに1ずつ加算した値を与える。具体的には、まず、S3において設定されたE1(p,n)が最大になるE1(p,nmax)を求める。すなわち、−α≦n≦127−αの全てのnのうち、E1(p,n)が最大になるnの値をnmaxとして求めるとともに、そのときのE1(p,n)をE1(p,nmax)として求める。これは、上記〔数式2〕の処理を全てのnに対して実行し、算出されたn個のE1(p,n)のうち最大のものを選択することにより行われる。さらに、求めたnmaxを用いて、mmax=S(p,nmax)と設定する。 On the other hand, when the obtained change evaluation value dE (p−1, p) is equal to or greater than a predetermined threshold value, the unit interval p is selected as the selected unit interval q, and the generalized harmony is selected for the selected unit interval q. Analysis is performed (S5). The value of q is 0 for the first selected unit interval, and thereafter, a value obtained by adding 1 each time it is selected is given. Specifically, first, E1 (p, nmax) that maximizes E1 (p, n) set in S3 is obtained. That is, among all n of −α ≦ n ≦ 127−α, the value of n that maximizes E1 (p, n) is obtained as nmax, and E1 (p, n) at that time is determined as E1 (p, n). nmax). This is performed by executing the process of [Formula 2] for all n and selecting the largest of the calculated n E1 (p, n). Further, using the obtained nmax, mmax = S (p, nmax) is set.
そして、得られたnmax、mmaxを用いて以下の〔数式5〕に従った処理を実行することにより、A(p,nmax,mmax)、B(p,nmax,mmax)を算出する。〔数式5〕に従った処理を実行するに際し、まず、単位区間pはq番目に選出された選出単位区間qであるとした場合に、P(q)=pと設定し、選出単位区間qにおいてノートナンバー分の相関強度配列E2(q,n)を定義し、初期値を全て0未満の値(例えば−1)に設定しておく。 Then, A (p, nmax, mmax) and B (p, nmax, mmax) are calculated by executing processing according to the following [Equation 5] using the obtained nmax and mmax. When executing the processing according to [Formula 5], first, assuming that the unit interval p is the q-th selected unit interval q, P (q) = p is set, and the selected unit interval q , The correlation intensity array E2 (q, n) for the note number is defined, and the initial values are all set to values less than 0 (for example, −1).
〔数式5〕
A(p,nmax,mmax)=(1/T(nmax))・Σi=0,T(nmax)-1x(p,i)・ sin(2πf(nmax,mmax)i/fs)
B(p,nmax,mmax)=(1/T(nmax))・Σi=0,T(nmax)-1x(p,i) cos (2πf(nmax,mmax)i/fs)
E2(q,nmax)={A(p,nmax,mmax)}2+{B(p,nmax,mmax)}2
[Formula 5]
A (p, nmax, mmax) = (1 / T (nmax)) · Σi = 0, T (nmax) −1 x (p, i) · sin (2πf (nmax, mmax) i / fs)
B (p, nmax, mmax) = (1 / T (nmax)) · Σi = 0, T (nmax) −1 x (p, i) cos (2πf (nmax, mmax) i / fs)
E2 (q, nmax) = {A (p, nmax, mmax)} 2 + {B (p, nmax, mmax)} 2
そして、算出されたA(p,nmax,mmax)、B(p,nmax,mmax)を用いて、以下の〔数式6〕に従った処理を実行することにより、単位区間p内のサンプル(p,i)の値x(p,i)を0≦i≦T(nmax)−1に渡って更新する。 Then, by using the calculated A (p, nmax, mmax) and B (p, nmax, mmax), a process in accordance with the following [Equation 6] is performed, whereby a sample (p , I), the value x (p, i) is updated over 0 ≦ i ≦ T (nmax) −1.
〔数式6〕
x(p,i)←x(p,i)−A(p,nmax,mmax) ・sin(2πf(nmax,mmax)i/fs)−B(p,nmax,mmax) ・cos (2πf(nmax,mmax)i/fs)
[Formula 6]
x (p, i) ← x (p, i) −A (p, nmax, mmax) · sin (2πf (nmax, mmax) i / fs) −B (p, nmax, mmax) · cos (2πf (nmax , Mmax) i / fs)
〔数式6〕の処理は、元の音響信号から含有信号を除去する処理である。含有成分を除去した後の音響信号に対して、さらに処理したnmaxの値以外のnを対象としてE2(q,n)が最大になる新たなE2(q,nmax)を求め、その新たなnmaxを用いて、〔数式5〕〔数式6〕に従った処理を実行する。この結果、さらに含有信号が音響信号から除去される。音響信号の符号化装置は、このような処理を128個全てのnに対して実行し、E2(q,n)を得る。 The process of [Formula 6] is a process of removing the contained signal from the original acoustic signal. A new E2 (q, nmax) that maximizes E2 (q, n) is obtained for n other than the processed nmax value for the acoustic signal after removing the contained components, and the new nmax is obtained. Is used to execute processing according to [Equation 5] and [Equation 6]. As a result, the contained signal is further removed from the acoustic signal. The audio signal encoding apparatus performs such processing on all 128 n's to obtain E2 (q, n).
本実施形態では、処理負荷を軽減するため、Mの値については、ノートナンバーに基づいて可変に設定し、例えば解析する周波数間隔が100Hz程度になるようにしている。そして、ノートナンバー60以下は分割せずM=1にする。また、精度は若干落ちるが、相関強度配列E1(p,n)を決定するための〔数式2〕の処理でS(p,n)を決定し、相関強度配列E2(q,n)を決定するための〔数式5〕の処理は、m=S(p,n)に固定して行い、微分音解析を省略するようにしても良い。また、〔数式5〕の処理で、既に同一ノートナンバーに対して副周波数が異なる信号成分が複数回に渡って解析される可能性があるが、E2(q,n)に既に値がセットされている場合は、E1(p,n)の最大値の選定候補から除外するようにしても良い。 In the present embodiment, in order to reduce the processing load, the value of M is variably set based on the note number, for example, the frequency interval to be analyzed is about 100 Hz. And note number 60 and below are not divided and M = 1. Further, although the accuracy is slightly reduced, S (p, n) is determined by the processing of [Equation 2] for determining the correlation strength array E1 (p, n), and the correlation strength array E2 (q, n) is determined. The processing of [Formula 5] for this purpose may be performed with m = S (p, n) fixed, and the differential sound analysis may be omitted. Further, in the processing of [Equation 5], there is a possibility that a signal component having a different sub-frequency with respect to the same note number may be analyzed multiple times, but a value is already set in E2 (q, n). If it is, it may be excluded from selection candidates of the maximum value of E1 (p, n).
ここで、単位区間における解析フレームの設定について説明する。尚、以下説明は上述の選出単位区間においても同様に適用される。図8は、時間軸拡大処理後の音響信号から抽出した単位区間におけるサンプル列と、調和信号の対応関係を示す図である。このうち、図8(a)は、時間軸拡大処理後の音響信号から抽出した単位区間におけるサンプル列である。各サンプルにおけるサンプル値(4096個)を結ぶことにより、図8(a)に示すような波形状で示される。128個の調和信号のうち、図8(b)に示すような1周期が単位区間長T以下の高音部の解析調和信号と相関演算を行う際、および単位区間Tより選出された調和信号である含有信号を減算する際には、調和信号の1周期が単位区間長Tを超えない範囲まで周期を整数倍した長さを解析フレーム長T(n)とし、単位区間Tの先頭からサンプルT(n)個を抽出して、解析フレームとする。 Here, the setting of the analysis frame in the unit section will be described. The following description is similarly applied to the above-described selection unit section. FIG. 8 is a diagram illustrating a correspondence relationship between a sample sequence in a unit section extracted from an acoustic signal after time axis expansion processing and a harmonic signal. Among these, Fig.8 (a) is a sample row | line | column in the unit area extracted from the acoustic signal after a time-axis expansion process. By connecting the sample values (4096) in each sample, a wave shape as shown in FIG. Among the 128 harmonic signals, a harmonic signal selected from the unit interval T when performing a correlation operation with an analysis harmonic signal of a treble part whose period is equal to or less than the unit interval length T as shown in FIG. When subtracting a certain contained signal, the analysis frame length T (n) is a length obtained by multiplying the period of the harmonic signal by an integer up to a range in which the period does not exceed the unit section length T. (N) Extract them and use them as analysis frames.
調和信号の1周期が単位区間長Tより大きい場合、相関計算区間である解析フレーム長T(n)を調和信号の1周期分とするため、単位区間長TにT(n)−T個のサンプル数を追加することにより時間軸延長処理を行う。この場合、調和信号の1周期を4つの分割区間Q1−Q4として設定する。そして、図8(d)に示すように、単位区間長Tが、調和信号の3/4周期に相当する場合は、調和信号の分割区間Q3(1/2周期から3/4周期の区間)に対応する単位区間のサンプルを、調和信号の3/4周期(270度:分割区間Q3と分割区間Q4の境界)の時点において時間軸方向に反転させたサンプルを追加する。270度の時点において時間軸方向に反転させるのは、調和信号の1周期が正弦波であると仮定すると、分割区間Q3と分割区間Q4(3/4周期から1周期の区間)は270度を軸に時間軸方向に左右対称である特徴を利用したものである。このようにして時間軸延長が行われ、図8(c)に示すような波形の解析フレーム(5461サンプル)が得られる。図8(c)(d)の例では、単位区間長Tが、調和信号の3/4周期に相当する場合を示したが、単位区間長Tが、調和信号の3/4周期以上である場合は、同様に処理が行われ、解析フレーム長T(n)は最大5461サンプルとなる。この場合、調和信号の3/4周期を超えた部分の単位区間のサンプルは、単位区間内のいずれかのサンプルが重複して使用されることになる。 When one period of the harmonic signal is larger than the unit section length T, the analysis frame length T (n) that is the correlation calculation section is set to one period of the harmonic signal, so that the unit section length T is T (n) −T. Extend the time axis by adding the number of samples. In this case, one period of the harmonic signal is set as four divided sections Q1-Q4. Then, as shown in FIG. 8D, when the unit section length T corresponds to 3/4 period of the harmonic signal, the harmonic signal division section Q3 (1/2 period to 3/4 period) A sample obtained by inverting the sample of the unit section corresponding to に in the time axis direction at the time of 3/4 period of the harmonic signal (270 degrees: boundary between the divided sections Q3 and Q4) is added. Assuming that one period of the harmonic signal is a sine wave, inversion in the time axis direction at the time of 270 degrees is 270 degrees in divided sections Q3 and Q4 (3/4 period to 1 period). It uses a feature that is symmetrical with respect to the axis in the time axis direction. In this way, the time axis is extended, and a waveform analysis frame (5461 samples) as shown in FIG. 8C is obtained. In the examples of FIGS. 8C and 8D, the case where the unit section length T corresponds to 3/4 period of the harmonic signal is shown, but the unit section length T is 3/4 period or more of the harmonic signal. In this case, the same processing is performed, and the analysis frame length T (n) is 5461 samples at the maximum. In this case, any sample in the unit section of the portion exceeding the 3/4 period of the harmonic signal is used by overlapping one of the samples in the unit section.
また、図9(b)に示すように、単位区間長Tが、調和信号の1/2周期以上で3/4周期未満に相当する場合(単位区間の最終サンプルが分割区間Q3に属する場合)は、分割区間Q4全体と分割区間Q3の一部が欠損しているため、分割区間Q2(1/4周期から1/2周期の区間)に対応する単位区間のサンプルを、調和信号の1/2周期(180度:分割区間Q2と分割区間Q3の境界)の時点において時間軸および振幅軸方向に反転させたサンプルを分割区間Q3に追加し、さらに追加された分割区間Q3のサンプルを、調和信号の3/4周期(270度)の時点において反転させたサンプルを追加する。180度の時点において時間軸および振幅軸方向に反転させるのは、調和信号の1周期が正弦波であると仮定すると、分割区間Q2と分割区間Q3は180度を軸に時間軸および振幅軸方向に180度回転させた対称形である特徴を利用したものである。このようにして時間軸延長が行われ、図9(a)に示すような波形の解析フレーム(最大8192サンプル)が得られる。この場合、調和信号の1/2周期を超えた部分の単位区間のサンプルは、単位区間内のいずれかのサンプルが重複して使用されることになる。 Also, as shown in FIG. 9B, when the unit section length T corresponds to more than 1/2 cycle and less than 3/4 period of the harmonic signal (when the last sample of the unit section belongs to the divided section Q3). Since the entire divided section Q4 and a part of the divided section Q3 are missing, a unit section sample corresponding to the divided section Q2 (a section from a quarter cycle to a half cycle) is converted to 1 / of the harmonic signal. Samples that are inverted in the time axis and amplitude axis directions at the time of two periods (180 degrees: the boundary between the divided sections Q2 and Q3) are added to the divided sections Q3, and the samples of the added divided sections Q3 are harmonized. An inverted sample is added at the time of 3/4 period (270 degrees) of the signal. Inversion in the time axis and amplitude axis directions at the time of 180 degrees assumes that one period of the harmonic signal is a sine wave, the divided sections Q2 and Q3 are 180 degrees in the time axis and amplitude axis directions. A characteristic that is a symmetrical shape rotated 180 degrees is used. The time axis is extended in this way, and a waveform analysis frame (up to 8192 samples) as shown in FIG. 9A is obtained. In this case, any sample in the unit section of the portion exceeding the half period of the harmonic signal is used by overlapping one of the samples in the unit section.
また、図10(b)に示すように、単位区間長Tが、調和信号の1/4周期以上で1/2周期未満に相当する場合(単位区間の最終サンプルが分割区間Q2に属する場合)は、分割区間Q3・Q4全体と分割区間Q2の一部が欠損しているため、Q1区間(先頭から1/4周期の区間)に対応する単位区間のサンプルを、調和信号の1/4周期(90度:分割区間Q1と分割区間Q2の境界)の時点において時間軸方向に反転させたサンプルを分割区間Q2に追加し、さらに追加された分割区間Q2のサンプルを、調和信号の1/2周期(180度)の時点において時間軸および振幅軸方向に反転させたサンプルを分割区間Q3に追加し、さらに追加された分割区間Q3のサンプルを、調和信号の3/4周期(270度)の時点において時間軸方向に反転させたサンプルを追加する。90度の時点において時間軸方向に反転させるのは、調和信号の1周期が正弦波であると仮定すると、分割区間Q1と分割区間Q2は90度を軸に時間軸方向に左右対称である特徴を利用したものである。このようにして時間軸延長が行われ、図10(a)に示すような波形の解析フレーム(最大16384サンプル)が得られる。この場合、調和信号の1/4周期を超えた部分の単位区間のサンプルは、単位区間内のいずれかのサンプルが重複して使用されることになる。
尚、単位区間長Tが、調和信号の1/4周期未満に相当する場合(単位区間の最終サンプルが分割区間Q1に属する場合)も起こり得るが、これをもとに時間軸延長を行って相関計算を行っても、ソースとなる情報量が少なすぎて、有意な相関値が得られないため、単位区間長Tが、調和信号の1/4周期未満に相当する周波数に対しては解析対象としないものとする。
Also, as shown in FIG. 10 (b), when the unit section length T corresponds to not less than ¼ period and less than ½ period of the harmonic signal (when the last sample of the unit section belongs to the divided section Q2). Since the whole of the divided sections Q3 and Q4 and a part of the divided section Q2 are missing, the unit section samples corresponding to the Q1 section (section having a quarter period from the head) are used as the quarter period of the harmonic signal. The sample inverted in the time axis direction at the time of (90 degrees: the boundary between the divided section Q1 and the divided section Q2) is added to the divided section Q2, and the added sample of the divided section Q2 is ½ of the harmonic signal. Samples inverted in the time axis and amplitude axis directions at the time of the period (180 degrees) are added to the divided section Q3, and the added samples of the divided section Q3 are added to the 3/4 period (270 degrees) of the harmonic signal. Time at time To add a sample obtained by reversing the direction. The reason for inversion in the time axis direction at the time of 90 degrees is that if one period of the harmonic signal is a sine wave, the divided sections Q1 and Q2 are symmetrical in the time axis direction about 90 degrees. Is used. The time axis is extended in this way, and a waveform analysis frame (maximum 16384 samples) as shown in FIG. 10A is obtained. In this case, any sample in the unit section of the portion exceeding the quarter period of the harmonic signal is used by overlapping any sample in the unit section.
Note that the unit interval length T may correspond to less than ¼ period of the harmonic signal (when the last sample of the unit interval belongs to the divided interval Q1), but the time axis is extended based on this. Even if the correlation calculation is performed, the amount of information used as a source is too small to obtain a significant correlation value. Therefore, the unit section length T is analyzed for a frequency corresponding to less than a quarter cycle of the harmonic signal. It shall not be covered.
各選出単位区間qについて解析フレームを変化させながら周波数解析を行い、スペクトル(128個の周波数成分)が算出されたら、音響信号の符号化装置は、個々の選出単位区間ごとに、S5において算出されたスペクトルに基づいて、N種類の各周波数に対応して、各周波数を特定可能な周波数情報と、各々に対応するスペクトル強度、および当該選出単位区間の開始と終了を特定可能な時間情報で構成される単音成分を作成する(S6)。具体的には、算出したスペクトルに、各ノートナンバーnの時刻、時間長の情報を追加し、[開始時刻,時間長,主周波数n,副周波数S(P(q),n),強度E2(q,n)]で構成される単音成分を作成する。「開始時刻」としては選出単位区間の先頭の時刻を、デジタル音響信号全体において特定できる情報であれば良く、本実施形態では、単位区間の先頭サンプル(i=0)に付されたデジタル音響信号全体におけるサンプル番号(絶対サンプルアドレス:jに対応)を記録している。この絶対サンプルアドレスをサンプリング周波数(44100)で除算することにより、音響信号先頭からの時刻が得られる。時間長は、本実施形態では選出単位区間ごとに可変で与えられることを特徴とし、直後に後続する一般化調和解析を行った選出単位区間の開始時刻までの差分(後続する選出単位区間の開始時刻−当該選出単位区間の開始時刻)で与えられる。直後に後続する選出単位区間が存在しない場合(最終の選出単位区間)、単位区間のシフト幅Wを時間長として与える。 When frequency analysis is performed while changing the analysis frame for each selected unit interval q and a spectrum (128 frequency components) is calculated, the audio signal encoding device is calculated in S5 for each selected unit interval. Based on the obtained spectrum, it is composed of frequency information that can specify each frequency corresponding to each of the N types of frequencies, spectrum intensity corresponding to each frequency, and time information that can specify the start and end of the selected unit section. A single tone component is created (S6). Specifically, the time and time length information of each note number n is added to the calculated spectrum, and [start time, time length, main frequency n, sub frequency S (P (q), n), intensity E2 A single tone component composed of (q, n)] is created. The “start time” may be any information that can identify the start time of the selected unit section in the entire digital sound signal, and in this embodiment, the digital sound signal attached to the start sample (i = 0) of the unit section. The sample number (corresponding to absolute sample address: j) in the whole is recorded. By dividing this absolute sample address by the sampling frequency (44100), the time from the head of the acoustic signal is obtained. In this embodiment, the length of time is variably given for each selected unit section. The time length is the difference up to the start time of the selected unit section that has been subjected to the generalized harmonic analysis that immediately follows (the start of the subsequent selected unit section). Time-start time of the selected unit section). When there is no subsequent selection unit section immediately after (the last selection unit section), the shift width W of the unit section is given as the time length.
続いて、時間軸方向に拡大して処理されたことによる変動を是正するため、各単音成分を補正する処理を行う(S7)。単音成分が作成されたら、全ての周波数情報(ノートナンバー値に対応)に12・log2Kだけ加算する処理を行う。例えば、K=4の場合、24半音(2オクターブ)だけ全体的に音高を上げる。この処理は、S1においてサンプル数をK倍したことにより周波数が1/Kになっているため、周波数をK倍にして元の状態に戻すために行う。この補正によりノートナンバーが規格値上限の127を超えるノートナンバーをもつ符号コードは削除する。具体的には補正前のノートナンバーが128−12・log2K以上の符号コードが削除される。
Subsequently, in order to correct the variation caused by the processing being enlarged in the time axis direction, processing for correcting each single tone component is performed (S7). When a single tone component is created, a process of adding 12 · log 2 K to all frequency information (corresponding to the note number value) is performed. For example, when K = 4, the overall pitch is raised by 24 semitones (2 octaves). This process is performed to restore the original state by multiplying the frequency by K times because the frequency is 1 / K by multiplying the number of samples by K in S1. By this correction, the code code having the note number whose note number exceeds the standard value
続いて、全ての開始時刻,時間長に1/Kを乗算する。これにより、後述する符号化処理によりMIDI符号に変換した場合、MIDI符号全体の演奏時間、および各ノートイベントの発音時間が1/Kに縮小される。この処理は、S1においてサンプル数をK倍したことにより全体の演奏時間がK倍になっているため、時刻を1/Kにして元の状態に戻すために行う。 Subsequently, all start times and time lengths are multiplied by 1 / K. As a result, when converted to a MIDI code by an encoding process described later, the performance time of the entire MIDI code and the sounding time of each note event are reduced to 1 / K. This process is performed in order to set the time to 1 / K and return to the original state because the total performance time is K times by multiplying the number of samples by K in S1.
S7における処理の結果、周波数(音高)はK倍になるとともに、時間情報は1/Kになる。S7の補正処理による音成分の変化の様子を図3(b)に示す。図3(b)においては、K=2の場合の音成分の変化を、音符により示している。S7の補正処理により左側の“ミ”の音符は、右側では1オクターブ高い(周波数が2倍)“ミ”の音符に変化している。一方、左側の四分音符が、右側では時間的に1/2の八分音符に変化している。 As a result of the processing in S7, the frequency (pitch) becomes K times and the time information becomes 1 / K. FIG. 3B shows how the sound component changes due to the correction process in S7. In FIG. 3B, the change of the sound component in the case of K = 2 is indicated by a note. As a result of the correction processing in S7, the left "mi" note is changed to the "mi" note that is one octave higher (double the frequency) on the right side. On the other hand, the left quarter note is changed to a half eighth note on the right side.
各単音成分の周波数をK倍、時間軸を1/K倍にする処理を行ったら、次に、音響信号の符号化装置は、倍音成分の除去を行う(S8)。具体的には、S7までの処理により得られたE2(q,n)に対して、nの値が小さい順に倍音成分を除去する補正を行いE‘(q,n)に更新し、nより大きいE2(q,n)に対しては、更新されたE‘(q,n)を用いて倍音成分を除去する補正を行う。ここで、nの値が小さい順にE2(q,n)を補正する理由は次の通りである。nが比較的大きいE2(q,n)に含まれる倍音成分には、hを2以上の整数として複数個のE2(q,n−12・log2h)に基づく倍音が含まれている可能性があり、更に各E2(q,n−12・log2h)も、h’を2以上の整数として、それより低いE2(q,n−12・log2h−12・log2h’)に基づく倍音が含まれている可能性があり、倍音成分が階層的に含まれているため倍音成分を特定できず高精度に除去することができない。一方、nが最小に近いE2(q,n)には、E2(q,n−12・log2h)に対応する音成分が存在しないため、倍音成分は存在せず、基音として特定でき、補正する必要がない。次にnが最小より若干大きいE2(q,n)には、E2(q,n−12・log2h)に対応する音成分が1つしか存在しないため、E2(q,n−12・log2h)が含まれる倍音成分の基音として特定でき、倍音成分を除去したE‘(q,n)に補正することができる。これよりnが大きいE2(q,n)に対しては、倍音成分を除去した基音成分のみに補正されたE’(q,n−12・log2h)を用いて倍音成分を高精度に除去することが可能になる。 Once the processing of increasing the frequency of each single tone component by K times and the time axis by 1 / K times is performed, the acoustic signal encoding apparatus then removes the harmonic components (S8). Specifically, E2 (q, n) obtained by the processing up to S7 is corrected to remove overtone components in ascending order of the value of n and updated to E ′ (q, n). For large E2 (q, n), correction is performed to remove overtone components using the updated E ′ (q, n). Here, the reason for correcting E2 (q, n) in ascending order of the value of n is as follows. The overtone component included in E2 (q, n) where n is relatively large may include overtones based on a plurality of E2 (q, n-12 · log 2 h) where h is an integer of 2 or more. Furthermore, each E2 (q, n-12 · log 2 h) is also lower than E2 (q, n-12 · log 2 h-12 · log 2 h ′, where h ′ is an integer of 2 or more. ) May be included, and since harmonic components are hierarchically included, the harmonic components cannot be specified and cannot be removed with high accuracy. On the other hand, since there is no sound component corresponding to E2 (q, n-12 · log 2 h) in E2 (q, n) where n is close to the minimum, there is no overtone component, and it can be specified as a fundamental tone, There is no need to correct. Next, since E2 (q, n-12) where n is slightly larger than the minimum has only one sound component corresponding to E2 (q, n-12 · log 2 h), E2 (q, n-12 · log 2 h) can be specified as the fundamental tone of the harmonic component, and can be corrected to E ′ (q, n) from which the harmonic component is removed. For E2 (q, n) where n is larger than this, the harmonic component is accurately obtained using E ′ (q, n−12 · log 2 h) corrected only to the fundamental component from which the harmonic component is removed. It becomes possible to remove.
図11は、S8における倍音成分補正の詳細を示すフローチャートである。まず、初期設定を行う(S21)。具体的には、倍音変数hを初期値“2”に設定するとともに、倍音成分の総和を記録する変数Vを初期値“0”に設定する。倍音変数hを初期値“2”に設定することにより一番低い倍音である2倍音から処理が行われることになる。 FIG. 11 is a flowchart showing details of overtone component correction in S8. First, initial setting is performed (S21). Specifically, the harmonic variable h is set to the initial value “2”, and the variable V for recording the sum of the harmonic components is set to the initial value “0”. By setting the harmonic variable h to the initial value “2”, processing is performed from the second harmonic, which is the lowest harmonic.
次に、“n−12・log2h”を算出し、“n−12・log2h”と“0”を比較する(S22)。そして、n−12・log2h≧0である場合は、変数Vに{E2(q,n)・E2(q,n−12・log2h)}1/2を加算し、倍音成分の総和Vを更新する処理を行う(S23)。S22において、n−12・log2h<0と判断された場合には、S23における総和Vの更新処理は行わない。これは、E2(q,n)にはn<0に対応する値が存在しないからである。 Next, “n−12 · log 2 h” is calculated, and “n−12 · log 2 h” is compared with “0” (S22). When n-12 · log 2 h ≧ 0, {E2 (q, n) · E2 (q, n-12 · log 2 h)} 1/2 is added to the variable V, and the harmonic component of A process of updating the total sum V is performed (S23). If it is determined in S22 that n-12 · log 2 h <0, the total V update processing in S23 is not performed. This is because there is no value corresponding to n <0 in E2 (q, n).
続いて、倍音変数hをインクリメント(h←h+1)する(S24)。そして、処理対象の上限であるHと比較する(S25)。倍音変数hの上限Hは、何倍音まで処理するかを示している。本実施形態では、H=10に設定し、10倍音まで処理する。この上限値Hを変更することにより、処理する倍音の数を変化させることができる。S25における比較の結果、倍音変数hが上限値H以下である場合は、S22に戻って、次の倍音成分の処理を行う。 Subsequently, the overtone variable h is incremented (h ← h + 1) (S24). And it compares with H which is the upper limit of a process target (S25). The upper limit H of the harmonic variable h indicates how many harmonics are processed. In the present embodiment, H = 10 is set and processing is performed up to 10th harmonic. By changing the upper limit value H, the number of overtones to be processed can be changed. If the harmonic variable h is equal to or lower than the upper limit value H as a result of the comparison in S25, the process returns to S22 and the next harmonic component is processed.
一方、hがHより大きい場合は、2倍音からH倍音までの倍音成分の総和Vが得られたことになるので、E2(q,n)から倍音成分を除去する(S26)。具体的には、以下の〔数式7〕に従った処理を実行し、補正値E‘(q,n)を得る。 On the other hand, if h is greater than H, the sum V of the harmonic components from the second harmonic to the H harmonic is obtained, so the harmonic component is removed from E2 (q, n) (S26). Specifically, a process according to the following [Formula 7] is executed to obtain a correction value E ′ (q, n).
〔数式7〕
E‘(q,n)←E2(q,n)−V・γ
V=Σh=2,10{E2(q,n)・E2(q,n−12・log2h)}1/2
[Formula 7]
E ′ (q, n) ← E2 (q, n) −V · γ
V = Σh = 2,10 {E2 (q, n) · E2 (q, n-12 · log 2 h)} 1/2
上記〔数式7〕に示すように、倍音成分の総和Vには倍音補正強度γが乗じられた後、減算される。倍音補正強度γは、0≦γ≦1の実数値であり、適宜設定が可能である。γの値が大きいほど補正強度が強く、倍音が除去されることになる。なお、S23において加算されていく総和Vは、S26においては、〔数式7〕の第2式のようになっている。 As shown in [Formula 7] above, the sum V of harmonic components is multiplied by the harmonic correction strength γ and then subtracted. The overtone correction intensity γ is a real value of 0 ≦ γ ≦ 1, and can be set as appropriate. The greater the value of γ, the stronger the correction strength and the more the harmonics are removed. The sum V added in S23 is represented by the second equation of [Equation 7] in S26.
補正値E‘(q,n)が得られたら、得られた補正値E‘(q,n)と“0”を比較する(S27)。比較の結果、補正値E‘(q,n)が0以上であれば、そのまま補正値E‘(q,n)として採用し、補正値E‘(q,n)が0未満であれば、補正値E‘(q,n)を“0”に設定する(S28)。このように、補正値E‘(q,n)が0未満となった場合に、強制的に“0”に設定するのは、補正値E‘(q,n)として負の値は物理的に有り得ないためである。 When the correction value E ′ (q, n) is obtained, the obtained correction value E ′ (q, n) is compared with “0” (S27). As a result of the comparison, if the correction value E ′ (q, n) is 0 or more, it is directly adopted as the correction value E ′ (q, n), and if the correction value E ′ (q, n) is less than 0, The correction value E ′ (q, n) is set to “0” (S28). As described above, when the correction value E ′ (q, n) becomes less than 0, the negative value is physically set as the correction value E ′ (q, n). This is because it is impossible.
図11に示す倍音処理は、0≦n≦127の128個の各nについて実行される。S8における倍音成分除去の結果は、補正相関強度配列E‘(q,n)として出力される。 The harmonic overtone processing shown in FIG. 11 is executed for each of 128 n of 0 ≦ n ≦ 127. The result of harmonic component removal in S8 is output as a corrected correlation strength array E ′ (q, n).
倍音成分除去処理を行ったら、次に、音響信号の符号化装置は、連続する選出単位区間において単音成分を連結(統合)する処理を行う(S9)。具体的には、連続する選出単位区間における単音成分が、所定の連結条件を満たす場合、2つの単音成分を連結する。ここで、連結判断の対象とする選出単位区間と単位区間との関係を図12に示す。 Once the harmonic component removal processing has been performed, the acoustic signal encoding device next performs processing for concatenating (integrating) the single tone components in successive selection unit sections (S9). Specifically, when a single sound component in consecutive selected unit sections satisfies a predetermined connection condition, two single sound components are connected. Here, FIG. 12 shows the relationship between the selected unit section and the unit section that are the objects of connection determination.
図12は、図4(b)と同様、単位区間1−6のうち、単位区間1、5、6がそれぞれ選出単位区間1、2、3として選出された例を示している。本実施形態では、連結判断の対象を音成分として選出される選出単位区間の間ではなく、選出単位区間と隣接する単位区間の間で行う点に特徴がある。図12の例では、選出単位区間1と選出単位区間2(単位区間5)を連結するかどうか判断する際に、選出単位区間1と選出単位区間2(単位区間5)の間で連結条件を判断するのではなく、選出単位区間2(単位区間5)とその直前の単位区間4の間で連結条件を判断する。これにより、時間的に最も近い単位区間が連結判断の際に考慮されることとなり、適切に音成分を連結することが可能になる。
FIG. 12 shows an example in which
連結条件としては、同一の音として連続性を有する状態を適宜設定することができる。本実施形態では、選出単位区間qと選出単位区間q+1を連結するか否かを判断するにあたり、4つの条件について判断する。第1の条件は、選出単位区間q+1(単位区間としてはP(q+1))における単音成分の強度から直前の単位区間P(q+1)−1における単音成分の強度を減じた値が所定のしきい値Ldif未満であること。第2の条件は、その双方の強度が所定のしきい値Lminより大きいこと。第3の条件は、ノートナンバーに対して上下1の変移を考慮し、副周波数を考慮した周波数の差が所定の閾値Ndif未満であること。第4の条件は、選出単位区間qが既に他の選出単位区間と連結されている場合、選出単位区間qと連結されている先頭の選出単位区間qoと選出単位区間q+1の副周波数を考慮した周波数の差が所定の閾値Nadif未満であること。以上4つの条件を全て満たす場合に、連続性を有するとして、後続の単音成分を前方の単音成分に連結する。第1の条件と第2の条件においても、ノートナンバーに対して上下1の変移を考慮する。本実施形態では、ノートナンバーの変移を考慮した以下の〔数式8〕〜〔数式10〕に従った4条件を満たすかどうかを判断することにより連結を行うか否かを決定する。
As a connection condition, a state having continuity as the same sound can be appropriately set. In the present embodiment, four conditions are determined when determining whether or not to connect the selection unit interval q and the selection unit
〔数式8〕
E1(P(q+1),n)−E1(P(q+1)−1,n)<Ldif
E1(P(q+1)−1,n)>LminかつE1(P(q+1),n)>Lmin
|S(P(q+1)−1,n)−S(P(q+1),n)|<Ndif
|S(P(qo),n)−S(P(q+1),n)|<Nadif
[Formula 8]
E1 (P (q + 1), n) -E1 (P (q + 1) -1, n) <Ldif
E1 (P (q + 1) -1, n)> Lmin and E1 (P (q + 1), n)> Lmin
| S (P (q + 1) -1, n) -S (P (q + 1), n) | <Ndif
| S (P (qo), n) -S (P (q + 1), n) | <Nadif
上記〔数式8〕において1行目の式は、後続の単音成分の強度から前方の単音成分の強度を減じた値が所定のしきい値Ldif未満であることを示し、2行目の式は、前方の単音成分と後続の単音成分の強度がともに所定のしきい値Lminより大きいことを示し、3行目の式は、副周波数を考慮したノートナンバー単位の周波数の差が所定の閾値Ndif未満であることを示している。4行目の式は、前方の選出単位区間がそれより前方の選出単位区間と既に連結されている場合に、先頭の選出単位区間qoと後続の選出単位区間q+1の副周波数を考慮したノートナンバー単位の周波数の差が所定の閾値Nadif未満であることを示している。 In the above [Equation 8], the expression on the first line indicates that the value obtained by subtracting the intensity of the preceding single sound component from the intensity of the subsequent single sound component is less than a predetermined threshold value Ldif. , Indicating that the intensity of both the preceding single sound component and the subsequent single sound component is larger than the predetermined threshold value Lmin, and the expression in the third row indicates that the frequency difference in note number units considering the sub frequency is a predetermined threshold value Ndif. It shows that it is less than. The expression on the fourth line is a note number that takes into account the sub-frequency of the head selection unit section qo and the subsequent selection unit section q + 1 when the front selection unit section is already connected to the front selection unit section. It shows that the difference in unit frequency is less than a predetermined threshold value Nadif.
〔数式9〕
E1(P(q+1),n−1)−E1(P(q+1)−1,n)<Ldif
E1(P(q+1)−1,n)>LminかつE1(P(q+1),n−1)>Lmin
|S(P(q+1)−1,n)−S(P(q+1),n−1)−M|<Ndif
|S(P(qo),n)−S(P(q+1),n−1)−M|<Nadif
[Formula 9]
E1 (P (q + 1), n-1) -E1 (P (q + 1) -1, n) <Ldif
E1 (P (q + 1) -1, n)> Lmin and E1 (P (q + 1), n-1)> Lmin
| S (P (q + 1) -1, n) -S (P (q + 1), n-1) -M | <Ndif
| S (P (qo), n) -S (P (q + 1), n-1) -M | <Nadif
上記〔数式8〕が同一ノートナンバー同士で比較しているのに対して、上記〔数式9〕においては、後続の単音成分として1ノートナンバー分下げたものを対象としている点が異なっている。3行目の式は、周波数をノートナンバー単位にすると、第1のスペクトル強度E1(P(q+1),n−1)を決定する周波数S(P(q+1),n−1)と、第1のスペクトル強度E1(P(q+1)−1,n)を決定する副周波数S(P(q+1)−1,n)との差が所定のしきい値Ndif未満であることを示している。4行目の式は、周波数をノートナンバー単位にすると、第1のスペクトル強度E1(P(q+1),n−1)を決定する周波数S(P(q+1),n−1)と、第1のスペクトル強度E1(P(qo),n)を決定する副周波数S(P(qo),n)との差が所定のしきい値Nadif未満であることを示している。 The above [Equation 8] compares the same note numbers, whereas the above [Equation 9] differs in that the following single-tone component is reduced by one note number. The expression in the third row is obtained by calculating the frequency S (P (q + 1), n−1) for determining the first spectral intensity E1 (P (q + 1), n−1) and the first The difference from the sub-frequency S (P (q + 1) -1, n) that determines the spectrum intensity E1 (P (q + 1) -1, n) is less than a predetermined threshold value Ndif. The expression in the fourth row is obtained by calculating the frequency S (P (q + 1), n−1) for determining the first spectral intensity E1 (P (q + 1), n−1) and the first It is shown that the difference from the sub-frequency S (P (qo), n) that determines the spectrum intensity E1 (P (qo), n) is less than a predetermined threshold value Nadif.
〔数式10〕
E1(P(q+1),n+1)−E1(P(q+1)−1,n)<Ldif
E1(P(q+1)−1,n)>LminかつE1(P(q+1),n+1)>Lmin
|S(P(q+1)−1,n)−S(P(q+1),n+1)+M|<Ndif
|S(P(qo),n)−S(P(q+1),n+1)+M|<Nadif
[Formula 10]
E1 (P (q + 1), n + 1) -E1 (P (q + 1) -1, n) <Ldif
E1 (P (q + 1) -1, n)> Lmin and E1 (P (q + 1), n + 1)> Lmin
| S (P (q + 1) -1, n) -S (P (q + 1), n + 1) + M | <Ndif
| S (P (qo), n) -S (P (q + 1), n + 1) + M | <Nadif
上記〔数式8〕が同一ノートナンバー同士で比較しているのに対して、上記〔数式10〕においては、後続の単音成分として1ノートナンバー分上げたものを対象としている点が異なっている。3行目の式は、周波数をノートナンバー単位にすると、第1のスペクトル強度E1(P(q+1),n+1)を決定する周波数S(P(q+1),n+1)と、第1のスペクトル強度E1(P(q+1)−1,n)を決定する副周波数S(P(q+1)−1,n)との差が所定のしきい値Ndif未満であることを示している。4行目の式は、周波数をノートナンバー単位にすると、第1のスペクトル強度E1(P(q+1),n+1)を決定する周波数S(P(q+1),n+1)と、第1のスペクトル強度E1(P(qo),n)を決定する副周波数S(P(qo),n)との差が所定のしきい値Nadif未満であることを示している。 While the above [Equation 8] compares the same note numbers, the above [Equation 10] is different in that the following single sound component is increased by one note number. The expression in the third row is obtained by calculating the frequency S (P (q + 1), n + 1) for determining the first spectral intensity E1 (P (q + 1), n + 1) and the first spectral intensity E1 when the frequency is in note number units. It shows that the difference from the sub-frequency S (P (q + 1) -1, n) for determining (P (q + 1) -1, n) is less than a predetermined threshold value Ndif. The expression in the fourth row is expressed as follows: when the frequency is in note number units, the frequency S (P (q + 1), n + 1) for determining the first spectral intensity E1 (P (q + 1), n + 1) and the first spectral intensity E1 It shows that the difference from the sub-frequency S (P (qo), n) for determining (P (qo), n) is less than a predetermined threshold value Nadif.
本実施形態における具体的な処理手順としては、まず、〔数式8〕に示した条件を全て満たすかどうかを判断する。そして、満たす場合には、連結処理へ進む。〔数式8〕に示した条件のうち1つでも満たさないものがある場合は、〔数式9〕に示した条件を全て満たすかどうかを判断する。そして、満たす場合には、連結処理へ進む。〔数式9〕に示した条件のうち1つでも満たさないものがある場合は、〔数式10〕に示した条件を全て満たすかどうかを判断する。そして、満たす場合には、連結処理へ進む。〔数式10〕に示した条件のうち1つでも満たさないものがある場合は、連結を行わないという決定を行う。 As a specific processing procedure in the present embodiment, first, it is determined whether or not all the conditions shown in [Formula 8] are satisfied. And when satisfy | filling, it progresses to a connection process. If any of the conditions shown in [Formula 8] does not satisfy one of the conditions, it is determined whether or not all the conditions shown in [Formula 9] are satisfied. And when satisfy | filling, it progresses to a connection process. If any of the conditions shown in [Equation 9] does not satisfy one of the conditions, it is determined whether or not all of the conditions shown in [Equation 10] are satisfied. And when satisfy | filling, it progresses to a connection process. If any of the conditions shown in [Equation 10] does not satisfy one of the conditions, it is determined that the connection is not performed.
連結後の主周波数、副周波数、強度は前方の選出単位区間における単音成分の各値を採用し、時間長は双方の和で与える。すなわち、選出単位区間qと選出単位区間q+1を連結した場合、主周波数、副周波数、強度は選出単位区間qのものを採用する。この時、強度は倍音成分除去を行った後の値を使用する。連結条件としての具体的なしきい値は、本実施形態では、Ldif=10[単位:128段階ベロシティ換算]、Lmin=1[単位:128段階ベロシティ換算]、Ndif=4/25[単位:ノートナンバー換算] 、Nadif=8/25[単位:ノートナンバー換算]としている。連結処理は、符号コードへの変換前に行うものであるため、各しきい値は、ノートナンバー、ベロシティに換算したものである。S9における連結処理の結果、連結処理されなかった単音成分はそのまま残ることになる。また、連結により連結音成分が得られることになるが、連結音成分は、単音成分と同様、[開始時刻,時間長,主周波数n,副周波数S(P(q),n),強度E‘(q,n)]で構成され、このうち時間長が単音成分より大きい値を有することになる。連結処理により、単音成分と連結音成分が混在することになるが、以降これらをまとめて音成分と呼ぶことにする。なお、S9における連結処理については、実行した方が、長音の音符で表現することになり、符号量が少なくなりMIDI音源で円滑で自然な演奏が行われるようになるため、一般に望ましいが、ピッチベンド符号の付加などが行われないと、逆にビブラートなど音の微妙な時間的変化が消失するためMIDI音源で不自然に聞こえる場合もあるため、必ずしも必須ではない。S9における連結処理を行わない場合、全てが短い音符として表現されることになる。 The main frequency, sub frequency, and intensity after connection use each value of the single tone component in the front selection unit section, and the time length is given as the sum of both. That is, when the selection unit interval q and the selection unit interval q + 1 are connected, the main frequency, the sub frequency, and the intensity are those of the selection unit interval q. At this time, the intensity uses the value after removing the overtone component. In this embodiment, specific threshold values as connection conditions are as follows: Ldif = 10 [unit: 128 step velocity conversion], Lmin = 1 [unit: 128 step velocity conversion], Ndif = 4/25 [unit: note number] Conversion], Nadif = 8/25 [unit: note number conversion]. Since the concatenation process is performed before conversion to a code code, each threshold value is converted into a note number and velocity. As a result of the connecting process in S9, the single sound components that have not been connected remain. In addition, a connected sound component is obtained by connection, and the connected sound component is [start time, time length, main frequency n, sub frequency S (P (q), n), intensity E, as with the single sound component. '(Q, n)], of which the time length has a value greater than the single tone component. By the connection process, a single sound component and a connected sound component are mixed, and these are hereinafter collectively referred to as a sound component. It should be noted that the connection processing in S9 is generally preferable because it is expressed by a long note, and the amount of codes is reduced, so that a smooth and natural performance can be performed with a MIDI sound source. If a code is not added, subtle temporal changes in sound such as vibrato disappear, and it may sound unnatural with a MIDI sound source. When the connection process in S9 is not performed, all are expressed as short notes.
S9の連結処理を終えたら、最終的に得られた[開始時刻,時間長,主周波数n,副周波数S(P(q),n),強度E‘(q,n)]の音成分を、符号コードに変換する(S10)。符号コードの形式としては、周波数情報と、各周波数に対応するスペクトル強度、および単位区間の開始と終了を特定可能な時間情報を有するものであれば、どのような形式のものであっても良いが、本実施形態では、MIDI形式に変換する。MIDIでは、発音開始と発音終了を別のイベントとして発生するため、本実施形態では、1つの音成分を2つのMIDIノートイベントに変換する。具体的には、「開始時刻」で、ノートナンバーnのノートオンイベントを発行し、ベロシティ値は強度E‘(q,n)の最大値をEmaxとして、128・{E‘(q,n)/Emax}1/4で与える。時刻については、Standard MIDI Fileでは、直前イベントとの相対時刻(デルタタイム)で与える必要があり、その時刻単位は任意の整数値で定義でき、例えば、1/1536[秒]の単位に変換して与える。そして、絶対時刻が「開始時刻」+「時間長」で特定される終了時刻で(デルタタイムでは「時間長」で与えられる終了時刻で)、ノートナンバーnのノートオフイベントを発行する。この際、時間長には、0以上1以下の実数を乗じる。これは、使用するMIDI音源の音色にも依存するが、MIDI音源の余韻を考慮して早めにノートオフ指示をするためである。時間長をそのまま用いてもMIDI音源の処理上問題はないが、発音の際、後続音と部分的に重なる場合がある。 When the connection process of S9 is completed, the sound component of [start time, time length, main frequency n, sub frequency S (P (q), n), intensity E ′ (q, n)] obtained finally is obtained. And converted into a code code (S10). The format of the code code may be any format as long as it has frequency information, spectrum intensity corresponding to each frequency, and time information that can specify the start and end of a unit section. However, in this embodiment, the data is converted to the MIDI format. In MIDI, sound generation start and sound generation end are generated as separate events, so in this embodiment, one sound component is converted into two MIDI note events. Specifically, a note-on event of note number n is issued at the “start time”, and the velocity value is 128 · {E ′ (q, n) with the maximum value of intensity E ′ (q, n) as Emax. / Emax} is given by 1/4 . In Standard MIDI File, it is necessary to give the time as a relative time (delta time) with the immediately preceding event, and the time unit can be defined by an arbitrary integer value, for example, converted to 1/1536 [seconds]. Give. Then, the note-off event of the note number n is issued at the end time specified by “start time” + “time length” (the end time given by “time length” in the delta time). At this time, the time length is multiplied by a real number between 0 and 1. This is because a note-off instruction is given early in consideration of the reverberation of the MIDI sound source, although it depends on the tone color of the MIDI sound source to be used. Even if the time length is used as it is, there is no problem in the processing of the MIDI sound source.
S10の符号コード変換処理を終えたら、次に、符号コードに対して必要な調整を行う(S11)。具体的には、和音数(同時発音数)の調整とビットレートの調整の2つの調整を行う。まず、和音数の調整を行う。これは、符号コードの処理可能な同時発音数(すなわち最大和音数)に収まるように、同時に発音する符号コードの数(すなわち和音数)を抑える処理である。本実施形態では、上述のように符号コードとしてMIDI符号に変換する。 After completing the code code conversion process of S10, next, necessary adjustments are made to the code code (S11). Specifically, two adjustments are performed: adjustment of the number of chords (number of simultaneous sounds) and adjustment of the bit rate. First, the number of chords is adjusted. This is a process of suppressing the number of code codes (that is, the number of chords) that are simultaneously generated so as to be within the number of simultaneous pronunciations (that is, the maximum number of chords) that can be processed by the code code. In the present embodiment, the code is converted into the MIDI code as described above.
ここで、本実施形態における和音数の調整の概念について説明する。図13は、本実施形態における和音数の調整の概念を従来の場合と比較した図である。図13において、縦軸はノートナンバー、ベロシティを示し、横軸は時間を示している。また、各矩形は、ノートイベント対で特定される発音区間を示しており、横方向の幅は発音時間を示し、縦方向の位置はノートナンバー、縦方向の幅はベロシティを示している。 Here, the concept of adjusting the number of chords in the present embodiment will be described. FIG. 13 is a diagram comparing the concept of adjusting the number of chords in this embodiment with the conventional case. In FIG. 13, the vertical axis indicates the note number and velocity, and the horizontal axis indicates time. Each rectangle indicates a sound generation section specified by a note event pair, the horizontal width indicates a sound generation time, the vertical position indicates a note number, and the vertical width indicates velocity.
図13(a)のようなMIDIデータを和音数1に調整する場合を考えてみる。この場合、従来の手法では、同時刻に重複する発音区間のうち、一方を単純に削除する処理を行う。このため、調整処理後は、図13(b)に示すように、重複していない部分まで削除されてしまう。本実施形態による調整処理では、発音区間のうち、重複する部分を特定する。図13(c)では、発音区間の重複する部分を濃い網掛けで示している。そして、発音区間の重複する部分のみを削除して和音数が1になるように調整する。この結果、調整処理後は、図13(d)に示すように、重複していない部分を残すことが可能になる。図13(d)の例では、いずれもノートオン時刻の早いものの後部を削除する処理を行っているが、本実施形態では、ノートオン時刻からの経過時間に基づいてベロシティを減衰する補正を行い、重複時刻において補正ベロシティの小さい方を削除するため、現実には、ノートオン時刻が遅い方の発音区間が削除される場合もある。 Let us consider a case where MIDI data as shown in FIG. In this case, according to the conventional method, a process of simply deleting one of the pronunciation intervals overlapping at the same time is performed. For this reason, after the adjustment process, as shown in FIG. 13B, even portions that do not overlap are deleted. In the adjustment process according to the present embodiment, an overlapping portion is specified in the pronunciation interval. In FIG. 13C, the overlapping portions of the sound generation sections are shown by dark shading. Then, only the overlapping portions of the sounding sections are deleted and the chord number is adjusted to be 1. As a result, after the adjustment process, it is possible to leave a non-overlapping portion as shown in FIG. In the example of FIG. 13D, the process of deleting the rear part of the note having the earliest note-on time is performed. However, in the present embodiment, the velocity is attenuated based on the elapsed time from the note-on time. In order to delete the smaller corrected velocity at the overlapping time, in reality, the pronunciation interval with the later note-on time may be deleted.
図13の例は、単旋律の場合であるが、図14に複旋律の場合について示す。図14(a)のようなMIDIデータを和音数2に調整する場合、従来の手法では、同時刻に重複する発音区間のうち、ノートオン時刻が遅いものを単純に削除する処理を行う。このため、調整処理後は、図14(b)に示すように、ノートオン時刻が早いものだけが残り、実際の演奏とは異なったものになる。本実施形態による調整処理では、発音区間のうち、発音区間が3つ以上重複する部分を特定する。図14(c)では、発音区間の重複する部分を濃い網掛けで示している。そして、発音区間の重複する部分のみを削除して和音数が2になるように調整する。この結果、調整処理後は、図14(d)に示すように、実際の演奏に近い状態で残すことが可能になる。
Although the example of FIG. 13 is a case of a single melody, FIG. 14 shows a case of a double melody. When the MIDI data as shown in FIG. 14A is adjusted to the number of
実際には、S11における和音数の調整は、時間軸方向に発音期間中(ノートオン状態)のノートイベントの個数を連続的にカウントし、最大和音数を超えるノートイベントが同時刻に存在する箇所が見つかった場合は、まず、ノートオン時のベロシティ値に対してノートオン時刻からの経過時間で補正した補正ベロシティ値を算出する。そして、算出された補正ベロシティ値で優先度を評価し、最大和音数以下になるように、優先度の低いノートイベント対を強制的にノートオフさせる補正処理を行う。この際、ベロシティ値またはデュレーション値のいずれかが所定の下限値より低い場合、優先度に関係なく削除する処理も行う。i番目のノートイベントEv(i)のノートオン時刻をEv(i).time、ベロシティ値をEv(i).velocityとすると、補正ベロシティ値Vc(i,t)は、以下の〔数式11〕に従った処理を実行することにより算出される。 Actually, the adjustment of the number of chords in S11 is performed by continuously counting the number of note events during the sounding period (note-on state) in the time axis direction, and where there are note events exceeding the maximum number of chords at the same time. Is found, first, a corrected velocity value corrected by the elapsed time from the note-on time with respect to the velocity value at the time of note-on is calculated. Then, the priority is evaluated based on the calculated corrected velocity value, and a correction process for forcibly taking off a note event pair having a low priority so as to be equal to or less than the maximum number of chords is performed. At this time, if either the velocity value or the duration value is lower than the predetermined lower limit value, the deletion process is also performed regardless of the priority. The note-on time of the i-th note event Ev (i) is set to Ev (i). time, and the velocity value is Ev (i). Assuming that the velocity is Velocity, the corrected velocity value Vc (i, t) is calculated by executing processing according to the following [Equation 11].
〔数式11〕
Vc(i,t)=Ev(i).velocity・exp{(t−Ev(i).time)・τ}
[Formula 11]
Vc (i, t) = Ev (i). velocity · exp {(t-Ev (i) .time) · τ}
上記〔数式11〕において、τは減衰係数であり、本実施形態では、τ=−1/1536に設定している。このため、時刻tの単位を1秒あたり1536とすると、Vc(i,t)は1秒後に1/2.7に減衰する。 In the above [Equation 11], τ is an attenuation coefficient, and in this embodiment, τ = −1 / 1536 is set. For this reason, if the unit of time t is 1536 per second, Vc (i, t) attenuates to 1 / 2.7 after 1 second.
S11の和音数の調整の詳細について、図15のフローチャートを用いて説明する。まず、初期設定を行う(S31)。具体的には、入力MIDIイベント配列Ei(i)を用意し、入力MIDIイベント数をNiとし、入力MIDIイベントポインタi に初期値0を設定する。入力MIDIイベント配列Ei(i)は(time,note_number,channel,velocity)の属性をもち、timeの低い順、note_numberの低い順にソートされている。そして、ノートオンテーブルT(n)を全て初期値−1に設定し、ノートオンカウンタCnに初期値0を設定する。また、出力MIDIイベント配列Eo(i) を用意し、出力MIDIイベント数Noに初期値0を設定する。出力MIDIイベント配列Eo(i)も(time,note_number,channel,velocity)の属性をもっている。
Details of the adjustment of the number of chords in S11 will be described using the flowchart of FIG. First, initial setting is performed (S31). Specifically, an input MIDI event array Ei (i) is prepared, the number of input MIDI events is Ni, and an
続いて、i番目のイベントがノートオンであるかどうかを判断する(S32)。具体的には、入力MIDIイベント配列Ei(i)の属性の一つである強度値Ei(i). velocityの値が0より大きいかどうかを判断する。 Subsequently, it is determined whether or not the i-th event is note-on (S32). Specifically, it is determined whether or not the intensity value Ei (i) .velocity, which is one of the attributes of the input MIDI event array Ei (i), is greater than zero.
S32における判断の結果、i番目のイベントがノートオンである場合は、ノートオンテーブルへ登録を行う(S33)。具体的には、T(Ei(i). note_number)の値として iを設定する。そして、ノートオンカウンタCnをインクリメント(Cn←Cn+1)する。さらに、出力MIDIイベント配列へ登録する。具体的には、Eo(No).time←Ei(i). time、Eo(No).note_number←Ei(i). note_number、Eo(No).channel←Ei(i). channel、Eo(No).velocity←Ei(i). velocityとすることにより、i番目の入力MIDIイベントの各属性値を、i番目の出力MIDIイベントの各属性値として与える処理を行う。出力MIDIイベント配列へ登録したら、出力MIDIイベント数Noをインクリメント(No←No+1)する。 If the result of determination in S32 is that the i-th event is note-on, registration is made in the note-on table (S33). Specifically, i is set as the value of T (Ei (i) .note_number). Then, the note-on counter Cn is incremented (Cn ← Cn + 1). Furthermore, it registers in the output MIDI event array. Specifically, Eo (No) .time ← Ei (i) .time, Eo (No) .note_number ← Ei (i) .note_number, Eo (No) .channel ← Ei (i) .channel, Eo (No ) .velocity ← Ei (i). By setting velocity, each attribute value of the i-th input MIDI event is given as each attribute value of the i-th output MIDI event. After registering to the output MIDI event array, the output MIDI event number No is incremented (No ← No + 1).
一方、S32における判断の結果、i番目のイベントがノートオンでない場合は、i番目のイベントがノートオンテーブルに登録済みであるかどうかを判断する(S34)。具体的には、T(Ei(i). note_number)が0以上であるかどうかを判断する。 On the other hand, if the result of determination in S32 is that the i-th event is not note-on, it is determined whether or not the i-th event has already been registered in the note-on table (S34). Specifically, it is determined whether T (Ei (i) .note_number) is 0 or more.
S34における判断の結果、i番目のイベントがノートオンテーブルに登録済みである場合は、ノートオンテーブルからの削除を行う(S35)。具体的には、T(Ei(i). note_number)の値として−1を設定する。そして、ノートオンカウンタCnをデクリメント(Cn←Cn−1)する。さらに、出力MIDIイベント配列へ登録する。具体的には、Eo(No).time←Ei(i). time、Eo(No).note_number←Ei(i). note_number、Eo(No).channel←Ei(i). channel、Eo(No).velocity←Ei(i). velocityとすることにより、i番目の入力MIDIイベントの各属性値を、i番目の出力MIDIイベントの各属性値として与える処理を行う。出力MIDIイベント配列へ登録したら、出力MIDIイベント数Noをインクリメント(No←No+1)する。S34における判断の結果、i番目のイベントがノートオンテーブルに登録済みでない場合は、S35の処理は行わない。 As a result of the determination in S34, if the i-th event has already been registered in the note-on table, it is deleted from the note-on table (S35). Specifically, −1 is set as the value of T (Ei (i) .note_number). The note-on counter Cn is decremented (Cn ← Cn−1). Furthermore, it registers in the output MIDI event array. Specifically, Eo (No) .time ← Ei (i) .time, Eo (No) .note_number ← Ei (i) .note_number, Eo (No) .channel ← Ei (i) .channel, Eo (No ) .velocity ← Ei (i). By setting velocity, each attribute value of the i-th input MIDI event is given as each attribute value of the i-th output MIDI event. After registering to the output MIDI event array, the output MIDI event number No is incremented (No ← No + 1). As a result of the determination in S34, if the i-th event has not been registered in the note-on table, the process of S35 is not performed.
S33においてノートオンテーブルへ登録を行った場合には、ノートオンカウンタが上限を超えたかどうかを判断する(S36)。具体的には、ノートオンカウンタCnが、上限として設定された最大和音数より大きいかどうかを判断する。MIDI符号化を行う場合には、例えば、最大和音数は32に設定される。 If registration is made in the note-on table in S33, it is determined whether or not the note-on counter exceeds the upper limit (S36). Specifically, it is determined whether the note-on counter Cn is greater than the maximum number of chords set as the upper limit. In the case of performing MIDI encoding, for example, the maximum chord number is set to 32.
S36における判断の結果、ノートオンカウンタCnが上限を超えた場合は、ノートオンテーブルからの最小音削除処理を行う(S37)。ノートオンテーブルからの最小音削除処理を終えたら、入力MIDIイベントポインタをインクリメントする(S38)。そして、入力MIDIイベントポインタiが入力MIDIイベント数Niより小さいかどうかを判断する(S39)。判断の結果、入力MIDIイベントポインタiが入力MIDIイベント数Niより小さい場合は、S32に戻って次の入力イベントの処理を行う。S39において、i=Niである場合は、全ての入力イベントについて処理を行ったことになるので、和音数調整処理を終了する。一方、S32において、ノートオフであると判断された入力イベントについては、S35のノートオンテーブルからの削除処理を行ったか否かに関わらず、S37のノートオンテーブルからの最小音削除処理は行わない。 If the note-on counter Cn exceeds the upper limit as a result of the determination in S36, a minimum sound deletion process is performed from the note-on table (S37). When the minimum sound deletion process from the note-on table is completed, the input MIDI event pointer is incremented (S38). Then, it is determined whether or not the input MIDI event pointer i is smaller than the input MIDI event number Ni (S39). If it is determined that the input MIDI event pointer i is smaller than the number of input MIDI events Ni, the process returns to S32 to process the next input event. If i = Ni in S39, all input events have been processed, and the chord number adjustment process is terminated. On the other hand, for the input event determined to be note-off in S32, the minimum sound deletion process from the note-on table in S37 is not performed regardless of whether or not the deletion process from the note-on table in S35 is performed. .
次に、S37のノートオンテーブルからの最小音削除処理の詳細を、図16のフローチャートを用いて説明する。まず、ノートナンバーn、強度最小ノートナンバーnmin、最小ベロシティ値Vminの初期設定を行う(S41)。具体的には、ノートナンバーn←0、強度最小ノートナンバーnmin←-1、最小ベロシティ値Vmin←128に設定する。 Next, details of the minimum sound deletion process from the note-on table in S37 will be described using the flowchart of FIG. First, initial setting of the note number n, the minimum intensity note number nmin, and the minimum velocity value Vmin is performed (S41). Specifically, note number n ← 0, intensity minimum note number nmin ← −1, and minimum velocity value Vmin ← 128 are set.
初期設定後、そのノートナンバーnに対応するノートオンイベントがノートオンテーブルに登録されているかどうかを判断する(S42)。具体的には、T(n)≧0であるかどうかを判断する。登録されている場合は、そのノートオンイベントの補正強度の算出を行う(S43)。具体的には、上記〔数式11〕に従った処理を実行する。入力MIDIイベント配列Ei(i)として(time,note_number,channel,velocity)の属性を持つとすると、上記〔数式11〕は、以下の〔数式11a〕のように表現される。 After the initial setting, it is determined whether or not a note-on event corresponding to the note number n is registered in the note-on table (S42). Specifically, it is determined whether T (n) ≧ 0. If registered, the correction strength of the note-on event is calculated (S43). Specifically, the process according to [Formula 11] is executed. Assuming that the input MIDI event array Ei (i) has the attribute of (time, note_number, channel, velocity), the above [Formula 11] is expressed as the following [Formula 11a].
〔数式11a〕
V(Ei(T(n)))=Ei(T(n)).velocity・exp{(Ei(i).time−Ei(T(n)).time)・τ}
[Formula 11a]
V (Ei (T (n))) = Ei (T (n)). velocity · exp {(Ei (i) .time-Ei (T (n)). time) · τ}
補正強度の算出が行われたら、得られた補正強度V(Ei(T(n)))が最小ベロシティ値より小さいかどうかを判断する(S44)。判断の結果、得られた補正強度V(Ei(T(n)))が最小ベロシティ値より小さい場合は、そのノートナンバーnの値を強度最小ノートナンバーnminとして設定し、得られた補正強度V(Ei(T(n)))の値を最小ベロシティ値Vminとして設定する(S45)。 When the correction strength is calculated, it is determined whether or not the obtained correction strength V (Ei (T (n))) is smaller than the minimum velocity value (S44). As a result of the determination, when the obtained correction intensity V (Ei (T (n))) is smaller than the minimum velocity value, the value of the note number n is set as the intensity minimum note number nmin, and the obtained correction intensity V The value of (Ei (T (n))) is set as the minimum velocity value Vmin (S45).
S42において、ノートオンテーブルに登録されていないと判断された場合には、削除する必要がないため、S43〜S45の処理は行われない。S42において、ノートオンテーブルに登録されていないと判断された場合、またはS45において、強度最小ノートナンバーnmin、最小ベロシティ値Vminが更新された場合には、ノートナンバーnをインクリメント(n←n+1)する(S46)。そして、ノートナンバーnが上限値(本実施形態では128)より小さいかどうかを判断する(S47)。判断の結果、ノートナンバーnが上限値より小さい場合は、S42に戻って次のノートナンバーnのノートオンイベントの処理を行う。S47において、n=128(上限値)である場合は、全てのノートナンバーnのノートオンイベントについて処理を行ったことになるので、その時点で強度最小ノートナンバーnminに設定されているノートナンバーnのノートイベントをノートオンテーブルから削除する(S48)。具体的には、T(nmin)←−1に設定する。そして、ノートオンカウンタCnをデクリメント(Cn←Cn−1)する。 In S42, when it is determined that it is not registered in the note-on table, it is not necessary to delete, so the processing of S43 to S45 is not performed. If it is determined in S42 that it is not registered in the note-on table, or if the minimum intensity note number nmin and the minimum velocity value Vmin are updated in S45, the note number n is incremented (n ← n + 1). (S46). Then, it is determined whether or not the note number n is smaller than the upper limit value (128 in this embodiment) (S47). If it is determined that the note number n is smaller than the upper limit value, the process returns to S42 to process the note-on event of the next note number n. In S47, if n = 128 (upper limit value), the processing has been performed for the note-on events of all the note numbers n, so the note number n set to the minimum intensity note number nmin at that time point. Are deleted from the note-on table (S48). Specifically, T (nmin) ← −1 is set. The note-on counter Cn is decremented (Cn ← Cn−1).
そして、強度最小ノートナンバーnminが、新規登録したイベントであるかどうかを判断する(S49)。具体的には、nminがEi(i). note_numberであるかどうかを判断する。判断の結果、強度最小ノートナンバーnminが、新規登録したイベントである場合は、出力MIDIイベント配列への登録を取り消す(S50)。具体的には、No←No−1に設定する。 Then, it is determined whether or not the minimum intensity note number nmin is a newly registered event (S49). Specifically, it is determined whether nmin is Ei (i) .note_number. As a result of the determination, if the minimum intensity note number nmin is a newly registered event, the registration to the output MIDI event array is canceled (S50). Specifically, No ← No−1 is set.
一方、S49における判断の結果、強度最小ノートナンバーnminが、新規登録したイベントでない場合は、出力MIDIイベント配列へノートオフイベントの登録を行う(S51)。S50の出力MIDIイベント配列への登録またはS51の出力MIDIイベント配列へのノートオフイベントの登録を行ったら、ノートオンテーブルからの最小音削除処理を終え、図15のS38に進んで、入力MIDIイベントポインタのインクリメントを行う。 On the other hand, if the result of determination in S49 is that the minimum intensity note number nmin is not a newly registered event, a note-off event is registered in the output MIDI event array (S51). After registering in the output MIDI event array of S50 or registering the note-off event in the output MIDI event array of S51, the minimum sound deletion processing from the note-on table is finished, and the process proceeds to S38 in FIG. Increment the pointer.
図15、図16に示した処理を実行し、和音数の調整を終えたら、さらに、符号コードで処理可能なビットレートについても考慮するため、ビットレートの調整を行う。MIDI符号に変換する場合、時間軸方向に、例えば1秒間隔にノートイベント対の個数をカウントし、各々の符号データ量を平均5バイト(40ビット)とし、MIDI音源で処理可能な最大ビットレートを9000[bps(ビット/秒)]とすると、1秒間あたりイベント数が9000/40=225個を超えている区間が見つかった場合は、その区間に存在するノートオンまたはノートオフイベントと各々対になるノートオフまたはノートオンイベントを近傍区間内で探索し、各ノートイベント対のベロシティ値とデュレーション値(ノートオフ時刻−ノートオン時刻)の積(エネルギー値)で優先度を評価し、指定イベント個数(この場合“225”)以下になるように優先度の低い(エネルギー値の小さい)ノートイベント対を局所的に削除する処理を行う。この際、ベロシティ値またはデュレーション値のいずれかが所定の下限値より低い場合、優先度に関係なく削除する処理も行う。 When the processing shown in FIGS. 15 and 16 is executed and the adjustment of the number of chords is completed, the bit rate is adjusted to further consider the bit rate that can be processed with the code code. When converting to MIDI code, the number of note event pairs is counted in the time axis direction, for example, at 1-second intervals, and the average amount of code data is 5 bytes (40 bits). Is 9000 [bps (bits / second)], when a section in which the number of events per second exceeds 9000/40 = 225 is found, it is paired with a note-on or note-off event existing in the section. Searches for note-off or note-on events that become in the neighborhood, evaluates the priority by the product (energy value) of the velocity value and duration value (note-off time-note-on time) of each note event pair, and designates the event Note event pairs with low priority (low energy value) to be less than the number (in this case "225") It performs a process of deleting Tokoro manner. At this time, if either the velocity value or the duration value is lower than the predetermined lower limit value, the deletion process is also performed regardless of the priority.
ここで、本実施形態における特徴である倍音除去、和音数調整を施した結果を、従来手法と比較しながら説明する。図17は、対象とする音響信号の原音波形を示す図である。横軸は時間、縦軸は振幅値を示している。図18は、図17に示した音響信号に対して倍音除去を行わずにMIDI符号化を行った結果を示す図である。図19は、図18に示した従来手法による符号化結果を譜面に変換したものである。倍音が音符として記録されるため、本来の譜面を再現することはできない。 Here, the result of applying the harmonic overtone removal and the chord number adjustment, which are the characteristics of the present embodiment, will be described in comparison with the conventional method. FIG. 17 is a diagram showing an original sound waveform of a target acoustic signal. The horizontal axis represents time, and the vertical axis represents the amplitude value. FIG. 18 is a diagram illustrating a result of performing MIDI encoding on the acoustic signal illustrated in FIG. 17 without removing overtones. FIG. 19 shows the result of converting the encoding result obtained by the conventional method shown in FIG. 18 into a musical score. Since the overtones are recorded as musical notes, the original musical score cannot be reproduced.
図20は、図17に示した音響信号に対して特許文献2記載の従来の倍音除去手法によりMIDI符号化を行った結果を示す図である。図20の例では、倍音は除去されているが、同時に本来必要なデータまで除去されてしまっている。図21は、図17に示した音響信号に対して特許文献2記載の従来の和音数削減手法によりMIDI符号化を行った結果を示す図である。図21の例では、倍音の方を誤って抽出し、基音を落としてしまうとともに、データの欠落も生じている。
FIG. 20 is a diagram showing a result of MIDI encoding performed on the acoustic signal shown in FIG. 17 by the conventional harmonic removal method described in
図22は、本発明による倍音除去を用いてMIDI符号化を行った結果を示す図である。図18、図20、図21と比較すると、倍音が除去され、データの欠落もないことがわかる。図23は、最大和音数を1として、本発明による倍音除去を用いてMIDI符号化を行った結果を示す図である。図24は、図23に示した符号化結果を譜面に変換したものである。倍音が除去され、和音数が調整されるため、本来の譜面を忠実に再現することができる。 FIG. 22 is a diagram illustrating a result of performing MIDI encoding using harmonic removal according to the present invention. Compared with FIG. 18, FIG. 20, and FIG. 21, it can be seen that overtones are removed and no data is lost. FIG. 23 is a diagram showing a result of performing MIDI encoding using overtone removal according to the present invention, with the maximum number of chords being 1. In FIG. FIG. 24 is obtained by converting the encoding result shown in FIG. 23 into a musical score. Since the overtones are removed and the number of chords is adjusted, the original musical score can be faithfully reproduced.
以上、本発明の好適な実施形態について説明したが、本発明は上記実施形態に限定されず、種々の変形が可能である。例えば、上記実施形態では、ノートナンバー間をM個の微分音(副周波数)を用いて解析を行うようにしたが、微分音を用いず、ノートナンバーに対応したN種類の周波数のみで解析するようにしても良い。この場合、解析精度は若干落ちるが、解析対象の周波数の数が減るため、処理負荷は軽減される。微分音を用いない場合、S9の単音成分の連結処理の判断において、〔数式8〕〜〔数式10〕では、いずれも3行目、4行目の式は判断しないことになる。 The preferred embodiments of the present invention have been described above. However, the present invention is not limited to the above embodiments, and various modifications can be made. For example, in the above embodiment, the analysis between the note numbers is performed using M differential sounds (sub-frequency), but the differential sounds are not used and the analysis is performed using only N types of frequencies corresponding to the note numbers. You may do it. In this case, the analysis accuracy is slightly reduced, but the processing load is reduced because the number of frequencies to be analyzed is reduced. In the case where the differential sound is not used, in the determination of the connection processing of the single sound component in S9, in the [Equation 8] to [Equation 10], none of the expressions in the third and fourth lines are determined.
また、上記実施形態では、単位区間の設定前に、S1において時系列方向へのサンプル数の拡大処理を行い、単音成分の作成後、S7において単音成分の補正として各単音成分の周波数をK倍、時間軸を1/K倍にする処理を行っているが、特別に高い時間分解能を必要としない場合、必ずしも実行しなくても良い。 In the above embodiment, before setting the unit section, the number of samples in the time series direction is expanded in S1, and after the creation of the single sound component, the frequency of each single sound component is multiplied by K times as the correction of the single sound component in S7. Although the processing for increasing the time axis to 1 / K is performed, it is not always necessary to perform the processing when a particularly high time resolution is not required.
また、上記実施形態では、周波数解析を第1の周波数解析と第2の周波数解析に分け、第1の周波数解析の結果、所定の条件を満たした選出単位区間に対して第2の周波数解析を実行するようにしたが、各単位区間に対して、特許文献1〜4に開示されているような公知の周波数解析を実行するようにしても良い。 In the above embodiment, the frequency analysis is divided into the first frequency analysis and the second frequency analysis. As a result of the first frequency analysis, the second frequency analysis is performed on the selected unit section that satisfies a predetermined condition. Although it was made to perform, you may make it perform the well-known frequency analysis which is disclosed by patent documents 1-4 with respect to each unit area.
また、上記実施形態では、S11において2つの調整処理を行ったが、これらの調整処理は両方とも実行することが望ましいが、いずれか一方だけ実行しても良いし、2つとも実行しなくても良い。 In the above embodiment, two adjustment processes are performed in S11. However, it is desirable to execute both of these adjustment processes. However, only one of these adjustment processes may be executed, or neither of them may be executed. Also good.
本発明は、PCM等により得られた音響信号を、MIDI符号等の符号コードに変換する技術を用いて楽譜の制作、携帯電話の着信メロディの制作、カラオケ向けの演奏データの制作などの音楽コンテンツ制作分野をはじめ、放送メディア(地上・BSなどによるデジタルラジオ・テレビ放送など)、通信メディア(CS放送、インターネット・ストリーミング放送、携帯電話サービス、携帯音楽配信サービスなど)、パッケージメディア(CD、DVD、BlueRay、メモリICカードなど)向けのオーディオコンテンツ制作産業に利用することができる。 The present invention provides music contents such as music score production, mobile phone ring melody production, and karaoke performance data production using a technology for converting an acoustic signal obtained by PCM into a code code such as MIDI code. In the production field, broadcasting media (digital radio and television broadcasting using terrestrial / BS), communication media (CS broadcasting, Internet streaming broadcasting, mobile phone service, mobile music distribution service, etc.), package media (CD, DVD, It can be used in the audio content production industry for BlueRay, memory IC cards, and the like.
1・・・CPU
2・・・RAM
3・・・データ記憶装置
4・・・プログラム記憶装置
5・・・キー入力I/F
6・・・データ入出力I/F
7・・・表示出力I/F
1 ... CPU
2 ... RAM
3 ...
6 ... Data I / O I / F
7 ... Display output I / F
Claims (22)
前記サンプル列に対して、所定数T(T<J)個のサンプルで構成される単位区間を、隣接する単位区間と時間軸方向に所定数W(W<T)個のサンプルを重複させながら設定する区間設定段階と、
個々の単位区間ごとに、解析対象とする少なくともN種類の各周波数f(n)について、周波数変換を行うことにより、各単位区間に対して、前記N種類の周波数に対応したスペクトル強度を算出するスペクトル算出段階と、
前記N種類の各周波数f(n)に対して、整数k(k≧2)分の1の周波数であるf(n)/kに対応するスペクトル強度が存在する場合に、f(n)/kに対応するスペクトル強度に補正強度γを乗じた分だけ周波数f(n)に対応するスペクトル強度を減衰させる補正を周波数f(n)が低い方から順に行い、補正スペクトル強度を作成し、周波数f(n)が高い方は先に補正されたスペクトル強度を用いて当該スペクトル強度を減衰させる補正を行うようにし、補正スペクトル強度を作成するスペクトル補正段階と、
前記単位区間の先頭時刻と直後の単位区間の先頭時刻との時間差と、前記単位区間の補正スペクトル強度に基づいて、所定の形式の符号コードを生成する符号化段階と、
を有することを特徴とする音響信号の符号化方法。 An encoding method for encoding an acoustic signal given as a sample sequence of J time series digitized at a predetermined sampling frequency,
A unit section composed of a predetermined number T (T <J) samples with respect to the sample sequence, while overlapping a predetermined number W (W <T) samples in the time axis direction with an adjacent unit section. Section setting stage to be set,
For each unit section, spectrum conversion corresponding to the N types of frequencies is calculated for each unit section by performing frequency conversion for at least N types of frequencies f (n) to be analyzed. Spectrum calculation stage;
For each of the N types of frequencies f (n), when there is a spectrum intensity corresponding to f (n) / k, which is a frequency that is a fraction of an integer k (k ≧ 2), f (n) / Correction for attenuating the spectrum intensity corresponding to the frequency f (n) by the amount obtained by multiplying the spectrum intensity corresponding to k by the correction intensity γ is performed in order from the lowest frequency f (n) to create a corrected spectrum intensity. If f (n) is higher, a correction is performed to attenuate the spectrum intensity using the previously corrected spectrum intensity, and a spectrum correction stage for creating a corrected spectrum intensity;
An encoding step of generating a code code of a predetermined format based on the time difference between the start time of the unit section and the start time of the immediately following unit section, and the corrected spectrum intensity of the unit section;
A method for encoding an acoustic signal, comprising:
前記スペクトル算出段階は、
個々の単位区間ごとに、解析対象とする少なくともN種類の各周波数f(n)について、周波数変換を行うことにより、単位区間pに対して、前記N種類の周波数に対応した第1のスペクトル強度E1(p,n)を算出する第1のスペクトル算出段階と、
前記単位区間pに対して直前に位置する単位区間p−1における第1のスペクトル強度E1(p−1,n)との対応する周波数ごとの変化に基づく評価値が、所定のしきい値より大きい場合に限り、当該単位区間pをq(q≦p)番目の選出単位区間qとして選出し、解析対象とする少なくともN種類の各周波数f(n)について、前記第1のスペクトル算出段階における周波数変換に比較して高精度な周波数変換を行うことにより、前記N種類の周波数に対応した第2のスペクトル強度E2(q,n)を算出する第2のスペクトル算出段階と、
により構成され、
前記スペクトル強度として第2のスペクトル強度E2(q,n)を算出するものであり、
前記スペクトル補正段階は、前記周波数f(n)に対応するスペクトル強度として、前記第2のスペクトル強度E2(q,n)を減衰させる補正を行い、前記補正スペクトル強度として補正スペクトル強度E‘(q,n)を作成するようにしていることを特徴とする音響信号の符号化方法。 In claim 1,
The spectrum calculation step includes:
For each unit section, by performing frequency conversion for at least N types of frequencies f (n) to be analyzed, the first spectral intensity corresponding to the N types of frequencies for the unit section p. A first spectrum calculation stage for calculating E1 (p, n);
An evaluation value based on a change for each frequency corresponding to the first spectral intensity E1 (p-1, n) in the unit section p-1 located immediately before the unit section p is greater than a predetermined threshold value. Only when it is larger, the unit interval p is selected as the q (q ≦ p) -th selection unit interval q, and at least N kinds of frequencies f (n) to be analyzed are selected in the first spectrum calculation stage. A second spectrum calculation step of calculating a second spectrum intensity E2 (q, n) corresponding to the N kinds of frequencies by performing a frequency conversion with higher accuracy than the frequency conversion;
Composed of
A second spectral intensity E2 (q, n) is calculated as the spectral intensity;
The spectrum correction step performs a correction for attenuating the second spectrum intensity E2 (q, n) as the spectrum intensity corresponding to the frequency f (n), and the corrected spectrum intensity E ′ (q , N) is generated. A method for encoding an acoustic signal,
前記第1のスペクトル算出段階および第2のスペクトル算出段階はN種類の各周波数f(n)に対して隣接する周波数を超えない範囲で所定のM種類の副周波数f(n,m)を設定し、前記第1のスペクトル強度E1(p,n)および第2のスペクトル強度E2(q,n)として、前記M種類の副周波数の中で最も大きい強度を示す副周波数に対応する強度値を算出することを特徴とする音響信号の符号化方法。 In claim 2,
In the first spectrum calculation stage and the second spectrum calculation stage, predetermined M types of sub-frequency f (n, m) are set in a range not exceeding adjacent frequencies for each of the N types of frequencies f (n). Then, as the first spectral intensity E1 (p, n) and the second spectral intensity E2 (q, n), intensity values corresponding to the sub-frequency indicating the highest intensity among the M types of sub-frequency are obtained. A method for encoding an acoustic signal, comprising: calculating an acoustic signal.
前記符号化段階は、隣接する2つの選出単位区間qと選出単位区間q+1に対して、前記選出単位区間qがp番目の単位区間pであった場合に、P(q)=pと定義し、前記選出単位区間q+1における周波数f(n)、f(n−1)、f(n+1)に対応する前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)のいずれかと、当該選出単位区間q+1の直前に位置する単位区間P(q+1)−1における周波数f(n)に対応する前記第1のスペクトル強度E1(P(q+1)−1,n)との差が所定のしきい値Ldif未満で、かつ前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)のいずれかおよび前記第1のスペクトル強度E1(P(q+1)−1,n)が所定のしきい値Lminより大きい場合、前記選出単位区間qと選出単位区間q+1を連結し、前記符号コードの基礎となる時間差として、前記選出単位区間qに定義された選出単位区間qの先頭時刻と、選出単位区間q+1の直後の選出単位区間q+2の先頭時刻との時間差を用いることを特徴とする音響信号の符号化方法。 In claim 2 or claim 3,
The encoding step defines P (q) = p when the selection unit interval q is the p-th unit interval p with respect to two adjacent selection unit intervals q and selection unit interval q + 1. , First spectral intensities E1 (P (q + 1), n), E1 (P (q + 1), n corresponding to frequencies f (n), f (n-1), f (n + 1) in the selected unit interval q + 1. n-1), E1 (P (q + 1), n + 1) and the first spectrum corresponding to the frequency f (n) in the unit section P (q + 1) -1 located immediately before the selected unit section q + 1 The difference from the intensity E1 (P (q + 1) -1, n) is less than a predetermined threshold Ldif, and the first spectrum intensity E1 (P (q + 1), n), E1 (P (q + 1), n -1), E1 (P (q + 1), n + 1) and When the first spectral intensity E1 (P (q + 1) -1, n) is greater than a predetermined threshold value Lmin, the selection unit interval q and the selection unit interval q + 1 are connected, and the time difference that is the basis of the code code And a method of encoding an acoustic signal using a time difference between a head time of a selected unit section q defined in the selected unit section q and a head time of a selected unit section q + 2 immediately after the selected unit section q + 1. .
前記符号化段階は、前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)を決定する副周波数の少なくともいずれか1つと、前記第1のスペクトル強度E1(P(q+1)−1,n)を決定する副周波数とのノートナンバー単位の差が所定のしきい値Ndif未満という条件をさらに満たした場合に限り、前記選出単位区間qと選出単位区間q+1を連結することを特徴とする音響信号の符号化方法。 In claim 4,
The encoding step includes at least sub-frequency determining the first spectral intensities E1 (P (q + 1), n), E1 (P (q + 1), n−1), E1 (P (q + 1), n + 1). When the condition that the difference in note number units between any one and the sub-frequency that determines the first spectral intensity E1 (P (q + 1) -1, n) is less than a predetermined threshold value Ndif is further satisfied As long as the selection unit interval q and the selection unit interval q + 1 are connected, the method of encoding an acoustic signal is characterized.
前記選出単位区間qが、既に他の選出単位区間と連結されている場合、前記選出単位区間qが連結されている先頭の選出単位区間をqoとし、
前記符号化段階は、前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)を決定する副周波数の少なくともいずれか1つと、前記第1のスペクトル強度E1(P(qo),n)を決定する副周波数とのノートナンバー単位の差が所定のしきい値Nadif未満という条件をさらに満たした場合に限り、前記選出単位区間qと選出単位区間q+1を連結することを特徴とする音響信号の符号化方法。 In claim 5,
When the selection unit interval q is already connected to another selection unit interval, the first selection unit interval to which the selection unit interval q is connected is defined as qo,
The encoding step includes at least sub-frequency determining the first spectral intensities E1 (P (q + 1), n), E1 (P (q + 1), n−1), E1 (P (q + 1), n + 1). Only when the condition that the difference in note number units between any one and the sub-frequency that determines the first spectral intensity E1 (P (qo), n) is less than a predetermined threshold value Nadif is satisfied A method for encoding an acoustic signal, comprising connecting the selection unit interval q and the selection unit interval q + 1.
前記符号コードが、ある時刻tに所定の上限以上の数の発音区間が存在することを表現している場合、前記符号化段階は、各発音区間について、前記選出単位区間の先頭時刻から前記時刻tまでの経過時間に基づいて強度値を減衰させて減衰強度値を算出し、前記時刻tにおいて当該減衰強度値が最小となる発音区間を前記時刻tにおいて終了させるよう前記符号コードの発音区間を短縮させるように補正することを特徴とする音響信号の符号化方法。 In any one of Claims 4-6,
When the code code expresses that there are more than a predetermined upper limit number of sounding intervals at a certain time t, the encoding step performs the time from the start time of the selected unit interval for each sounding interval. Attenuation intensity value is calculated by attenuating the intensity value based on the elapsed time until t, and the sounding interval of the code code is terminated so that the sounding interval at which the attenuation intensity value is minimum at the time t is terminated at the time t. A method of encoding an acoustic signal, wherein correction is performed so as to shorten the time.
前記第1のスペクトル算出段階は、前記単位区間の区間信号の構成要素となるべきN種類の要素信号を、各々当該周波数f(n)の周期の整数倍に対応し、前記Tに最も近いT(n)個のサンプルとして準備する要素信号準備段階と、
前記N個の各周波数f(n)に対応する要素信号と、それぞれ対応する前記単位区間pのT(n)個のサンプルで構成される区間信号との相関演算を行うことにより、第1のスペクトル強度E1(p,n)を算出する相関演算段階により構成され、
前記第2のスペクトル算出段階は、
前記要素信号準備段階と、
前記N個の各周波数f(n)に対応する要素信号と、それぞれ対応する前記選出単位区間qのT(n)個のサンプルで構成される区間信号との相関演算を行い、相関値が最も高い周波数f(nmax)に対応する要素信号を調和信号として選出する調和信号選出段階と、
前記選出された調和信号と当該調和信号について得られた相関値との積で与えられるT(nmax)個のサンプルを含有信号とし、当該含有信号を前記区間信号から減じることにより、T(nmax)個のサンプルで構成される差分信号を求める差分信号演算段階と、を有し、
前記T(nmax)個のサンプルを反映させ更新されたT(n)個のサンプルを新たな区間信号として、前記調和信号選出段階および差分信号演算段階を実行して新たな含有信号および差分信号を得る処理を繰り返し行うことによりN個の含有信号を求め、求められた含有信号の相関値に基づいて、前記N種類の周波数に対応した第2のスペクトル強度E2(q,n)を算出することを特徴とする音響信号の符号化方法。 In any one of Claims 2-7,
In the first spectrum calculation step, N element signals to be constituent elements of the section signal of the unit section correspond to integer multiples of the period of the frequency f (n), respectively, and T closest to the T (N) an element signal preparation stage to prepare as samples;
By performing a correlation operation between the element signal corresponding to each of the N frequencies f (n) and a section signal composed of T (n) samples of the corresponding unit section p, It is constituted by a correlation calculation stage for calculating the spectral intensity E1 (p, n),
The second spectrum calculation step includes:
The element signal preparation step;
Correlation is performed between the element signal corresponding to each of the N frequencies f (n) and the section signal composed of T (n) samples of the corresponding selection unit section q, and the correlation value is the highest. A harmonic signal selection step of selecting an element signal corresponding to the high frequency f (nmax) as a harmonic signal;
By using T (nmax) samples given by the product of the selected harmonic signal and the correlation value obtained for the harmonic signal as an inclusion signal, and subtracting the inclusion signal from the interval signal, T (nmax) A differential signal calculation step for obtaining a differential signal composed of a number of samples,
Using the T (n) samples updated to reflect the T (nmax) samples as new interval signals, the harmonic signal selection step and the difference signal calculation step are executed to obtain new inclusion signals and difference signals. N content signals are obtained by repeatedly performing the obtained process, and the second spectrum intensity E2 (q, n) corresponding to the N kinds of frequencies is calculated based on the correlation values of the obtained content signals. A method of encoding an acoustic signal characterized by the above.
前記相関演算段階は、
直前に位置する単位区間p−1における各周波数f(n)に対応する直前相関演算結果に対し、前記単位区間p−1における先頭Wサンプルに対応する相関演算を行い、各周波数ごとの相関値を前記直前相関演算結果より減算するとともに、前記単位区間pにおけるT(n)サンプル中の最後尾Wサンプルに対応する相関演算を行い、各周波数ごとの相関値を前記直前相関演算結果に加算することにより、前記単位区間pにおける各周波数f(n)に対応する相関演算結果を取得し、当該相関演算結果に基づいて前記第1のスペクトル強度E1(p,n)を算出することを特徴とする音響信号の符号化方法。 In claim 8,
The correlation calculation step includes:
A correlation calculation corresponding to the first W sample in the unit interval p-1 is performed on the previous correlation calculation result corresponding to each frequency f (n) in the unit interval p-1 located immediately before, and a correlation value for each frequency is obtained. Is subtracted from the previous correlation calculation result, a correlation calculation corresponding to the last W sample in the T (n) samples in the unit interval p is performed, and a correlation value for each frequency is added to the previous correlation calculation result. Thus, a correlation calculation result corresponding to each frequency f (n) in the unit interval p is acquired, and the first spectral intensity E1 (p, n) is calculated based on the correlation calculation result. A method for encoding an acoustic signal.
前記符号化段階は、前記符号コードとしてMIDI形式を用いて符号化を行い、前記符号コードの前記周波数の情報としてノートナンバーを用い、前記第2のスペクトル強度としてベロシティを用い、前記選出単位区間qの先頭時刻と直後の選出単位区間q+1の先頭時刻との時間差を各々直前のMIDIイベントからの相対時刻であるデルタタイム1とデルタタイム2で定義し、これらの定義されたノートナンバー、ベロシティ、デルタタイム1を基にMIDIのノートオンイベントを作成するとともに、ノートナンバー、デルタタイム2を基にMIDIのノートオフイベントを作成するようにしていることを特徴とする音響信号の符号化方法。 In any one of Claims 1-9,
The encoding step performs encoding using the MIDI format as the code code, uses a note number as the frequency information of the code code, uses velocity as the second spectral intensity, and selects the selected unit interval q Delta time 1 and delta time 2 that are relative times from the immediately preceding MIDI event, respectively, and the defined note number, velocity, delta A method for encoding an audio signal, wherein a MIDI note-on event is created based on time 1 and a MIDI note-off event is created based on note number and delta time 2.
前記サンプル列に対して、所定数T(T<J)個のサンプルで構成される単位区間を、隣接する単位区間と時間軸方向に所定数W(W<T)個のサンプルを重複させながら設定する区間設定手段と、
個々の単位区間ごとに、解析対象とする少なくともN種類の各周波数f(n)について、周波数変換を行うことにより、各単位区間に対して、前記N種類の周波数に対応したスペクトル強度を算出するスペクトル算出手段と、
前記N種類の各周波数f(n)に対して、整数k(k≧2)分の1の周波数であるf(n)/kに対応するスペクトル強度が存在する場合に、f(n)/kに対応するスペクトル強度に補正強度γを乗じた分だけ周波数f(n)に対応するスペクトル強度を減衰させる補正を周波数f(n)が低い方から順に行い、周波数f(n)が高い方は先に補正されたスペクトル強度を用いて当該スペクトル強度を減衰させる補正を行うようにし、補正スペクトル強度を作成するスペクトル補正手段と、
前記単位区間の先頭時刻と直後の単位区間の先頭時刻との時間差と、前記単位区間の補正スペクトル強度に基づいて、所定の形式の符号コードを生成する符号化手段と、
を有することを特徴とする音響信号の符号化装置。 An encoding device for encoding an acoustic signal given as a sample sequence of J time series digitized at a predetermined sampling frequency,
A unit section composed of a predetermined number T (T <J) samples with respect to the sample sequence, while overlapping a predetermined number W (W <T) samples in the time axis direction with an adjacent unit section. Section setting means to set;
For each unit section, spectrum conversion corresponding to the N types of frequencies is calculated for each unit section by performing frequency conversion for at least N types of frequencies f (n) to be analyzed. Spectrum calculation means;
For each of the N types of frequencies f (n), when there is a spectrum intensity corresponding to f (n) / k, which is a frequency that is a fraction of an integer k (k ≧ 2), f (n) / Correction for attenuating the spectrum intensity corresponding to the frequency f (n) by the amount obtained by multiplying the spectrum intensity corresponding to k by the correction intensity γ is performed in order from the lower frequency f (n), and the higher frequency f (n). Performs a correction for attenuating the spectrum intensity using the previously corrected spectrum intensity, and a spectrum correction means for creating a corrected spectrum intensity;
Encoding means for generating a code code of a predetermined format based on the time difference between the start time of the unit section and the start time of the immediately following unit section, and the corrected spectrum intensity of the unit section;
A device for encoding an acoustic signal, comprising:
前記スペクトル算出手段は、
個々の単位区間ごとに、解析対象とする少なくともN種類の各周波数f(n)について、周波数変換を行うことにより、単位区間pに対して、前記N種類の周波数に対応した第1のスペクトル強度E1(p,n)を算出する第1のスペクトル算出手段と、
前記単位区間pに対して直前に位置する単位区間p−1における第1のスペクトル強度E1(p−1,n)との対応する周波数ごとの変化に基づく評価値が、所定のしきい値より大きい場合に限り、当該単位区間pをq(q≦p)番目の選出単位区間qとして選出し、解析対象とする少なくともN種類の各周波数f(n)について、前記第1のスペクトル算出段階における周波数変換に比較して高精度な周波数変換を行うことにより、前記N種類の周波数に対応した第2のスペクトル強度E2(q,n)を算出する第2のスペクトル算出手段と、
により構成され、
前記スペクトル強度として第2のスペクトル強度E2(q,n)を算出するものであり、
前記スペクトル補正手段は、前記周波数f(n)に対応するスペクトル強度として、前記第2のスペクトル強度E2(q,n)を減衰させる補正を行い、前記補正スペクトル強度として補正スペクトル強度E‘(q,n)を作成するようにしていることを特徴とする音響信号の符号化装置。 In claim 11,
The spectrum calculating means includes
For each unit section, by performing frequency conversion for at least N types of frequencies f (n) to be analyzed, the first spectral intensity corresponding to the N types of frequencies for the unit section p. First spectrum calculating means for calculating E1 (p, n);
An evaluation value based on a change for each frequency corresponding to the first spectral intensity E1 (p-1, n) in the unit section p-1 located immediately before the unit section p is greater than a predetermined threshold value. Only when it is larger, the unit interval p is selected as the q (q ≦ p) -th selection unit interval q, and at least N kinds of frequencies f (n) to be analyzed are selected in the first spectrum calculation stage. Second spectrum calculation means for calculating a second spectrum intensity E2 (q, n) corresponding to the N types of frequencies by performing a frequency conversion with higher accuracy than the frequency conversion;
Composed of
A second spectral intensity E2 (q, n) is calculated as the spectral intensity;
The spectrum correction means performs correction for attenuating the second spectrum intensity E2 (q, n) as the spectrum intensity corresponding to the frequency f (n), and corrects the corrected spectrum intensity E ′ (q , N) is produced.
前記第1のスペクトル算出手段および第2のスペクトル算出手段はN種類の各周波数f(n)に対して隣接する周波数を超えない範囲で所定のM種類の副周波数f(n,m)を設定し、前記第1のスペクトル強度E1(p,n)および第2のスペクトル強度E2(q,n)として、前記M種類の副周波数の中で最も大きい強度を示す副周波数に対応する強度値を算出することを特徴とする音響信号の符号化装置。 In claim 12,
The first spectrum calculating means and the second spectrum calculating means set predetermined M kinds of sub-frequency f (n, m) within a range not exceeding adjacent frequencies for each of the N kinds of frequencies f (n). Then, as the first spectral intensity E1 (p, n) and the second spectral intensity E2 (q, n), intensity values corresponding to the sub-frequency indicating the highest intensity among the M types of sub-frequency are obtained. An apparatus for encoding an acoustic signal, comprising: calculating an acoustic signal.
前記符号化手段は、隣接する2つの選出単位区間qと選出単位区間q+1に対して、前記選出単位区間qがp番目の単位区間pであった場合に、P(q)=pと定義し、前記選出単位区間q+1における周波数f(n)、f(n−1)、f(n+1)に対応する前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)のいずれかと、当該選出単位区間q+1の直前に位置する単位区間P(q+1)−1における周波数f(n)に対応する前記第1のスペクトル強度E1(P(q+1)−1,n)との差が所定のしきい値Ldif未満で、かつ前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)のいずれかおよび前記第1のスペクトル強度E1(P(q+1)−1,n)が所定のしきい値Lminより大きい場合、前記選出単位区間qと選出単位区間q+1を連結し、前記符号コードの基礎となる時間差として、前記選出単位区間qに定義された選出単位区間qの先頭時刻と、選出単位区間q+1の直後の選出単位区間q+2の先頭時刻との時間差を用いることを特徴とする音響信号の符号化装置。 In claim 12 or claim 13,
The encoding means defines P (q) = p when the selection unit interval q is the p-th unit interval p for two adjacent selection unit intervals q and selection unit interval q + 1. , First spectral intensities E1 (P (q + 1), n), E1 (P (q + 1), n corresponding to frequencies f (n), f (n-1), f (n + 1) in the selected unit interval q + 1. n-1), E1 (P (q + 1), n + 1) and the first spectrum corresponding to the frequency f (n) in the unit section P (q + 1) -1 located immediately before the selected unit section q + 1 The difference from the intensity E1 (P (q + 1) -1, n) is less than a predetermined threshold Ldif, and the first spectrum intensity E1 (P (q + 1), n), E1 (P (q + 1), n -1), E1 (P (q + 1), n + 1) and When the first spectral intensity E1 (P (q + 1) -1, n) is greater than a predetermined threshold value Lmin, the selection unit interval q and the selection unit interval q + 1 are connected, and the time difference that is the basis of the code code And a time difference between the start time of the selected unit section q defined in the selected unit section q and the start time of the selected unit section q + 2 immediately after the selected unit section q + 1 is used. .
前記符号化手段は、前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)を決定する副周波数の少なくともいずれか1つと、前記第1のスペクトル強度E1(P(q+1)−1,n)を決定する副周波数とのノートナンバー単位の差が所定のしきい値Ndif未満という条件をさらに満たした場合に限り、前記選出単位区間qと選出単位区間q+1を連結することを特徴とする音響信号の符号化装置。 In claim 14,
The encoding means includes at least a sub-frequency for determining the first spectral intensity E1 (P (q + 1), n), E1 (P (q + 1), n-1), E1 (P (q + 1), n + 1). When the condition that the difference in note number units between any one and the sub-frequency that determines the first spectral intensity E1 (P (q + 1) -1, n) is less than a predetermined threshold value Ndif is further satisfied As long as the selection unit interval q and the selection unit interval q + 1 are connected, the apparatus for encoding an acoustic signal is characterized.
前記選出単位区間qが、既に他の選出単位区間と連結されている場合、前記選出単位区間qが連結されている先頭の選出単位区間をqoとし、
前記符号化手段は、前記第1のスペクトル強度E1(P(q+1),n)、E1(P(q+1),n−1)、E1(P(q+1),n+1)を決定する副周波数の少なくともいずれか1つと、前記第1のスペクトル強度E1(P(qo),n)を決定する副周波数とのノートナンバー単位の差が所定のしきい値Nadif未満という条件をさらに満たした場合に限り、前記選出単位区間qと選出単位区間q+1を連結することを特徴とする音響信号の符号化装置。 In claim 15,
When the selection unit interval q is already connected to another selection unit interval, the first selection unit interval to which the selection unit interval q is connected is defined as qo,
The encoding means includes at least a sub-frequency for determining the first spectral intensity E1 (P (q + 1), n), E1 (P (q + 1), n-1), E1 (P (q + 1), n + 1). Only when the condition that the difference in note number units between any one and the sub-frequency that determines the first spectral intensity E1 (P (qo), n) is less than a predetermined threshold value Nadif is satisfied An apparatus for encoding an acoustic signal, wherein the selection unit interval q and the selection unit interval q + 1 are connected.
前記符号コードが、ある時刻tに所定の上限以上の数の発音区間が存在することを表現している場合、前記符号化手段は、各発音区間について、前記選出単位区間の先頭時刻から前記時刻tまでの経過時間に基づいて強度値を減衰させて減衰強度値を算出し、前記時刻tにおいて当該減衰強度値が最小となる発音区間を前記時刻tにおいて終了させるよう前記符号コードの発音区間を短縮させるように補正することを特徴とする音響信号の符号化装置。 In any one of Claims 14-16,
In the case where the code code represents that there are more than a predetermined upper limit number of sounding intervals at a certain time t, the encoding means, for each sounding interval, from the start time of the selected unit interval to the time Attenuation intensity value is calculated by attenuating the intensity value based on the elapsed time until t, and the sounding interval of the code code is terminated so that the sounding interval at which the attenuation intensity value is minimum at the time t is terminated at the time t. An apparatus for encoding an acoustic signal, wherein correction is performed so as to shorten.
前記第1のスペクトル算出手段は、前記単位区間の区間信号の構成要素となるべきN種類の要素信号を、各々当該周波数f(n)の周期の整数倍に対応し、前記Tに最も近いT(n)個のサンプルとして準備する要素信号準備手段と、
前記N個の各周波数f(n)に対応する要素信号と、それぞれ対応する前記単位区間pのT(n)個のサンプルで構成される区間信号との相関演算を行うことにより、第1のスペクトル強度E1(p,n)を算出する相関演算手段により構成され、
前記第2のスペクトル算出手段は、
前記要素信号準備手段と、
前記N個の各周波数f(n)に対応する要素信号と、それぞれ対応する前記選出単位区間qのT(n)個のサンプルで構成される区間信号との相関演算を行い、相関値が最も高い周波数f(nmax)に対応する要素信号を調和信号として選出する調和信号選出手段と、
前記選出された調和信号と当該調和信号について得られた相関値との積で与えられるT(nmax)個のサンプルを含有信号とし、当該含有信号を前記区間信号から減じることにより、T(nmax)個のサンプルで構成される差分信号を求める差分信号演算手段と、を有し、
前記T(nmax)個のサンプルを反映させ更新されたT(n)個のサンプルを新たな区間信号として、前記調和信号選出手段および差分信号演算手段による処理を実行して新たな含有信号および差分信号を得る処理を繰り返し行うことによりN個の含有信号を求め、求められた含有信号の相関値に基づいて、前記N種類の周波数に対応した第2のスペクトル強度E2(q,n)を算出することを特徴とする音響信号の符号化装置。 In any one of Claims 12-17,
The first spectrum calculating means corresponds to N element signals to be constituent elements of the section signal of the unit section, each corresponding to an integral multiple of the period of the frequency f (n), and T closest to the T (N) Element signal preparation means for preparing as samples,
By performing a correlation operation between the element signal corresponding to each of the N frequencies f (n) and a section signal composed of T (n) samples of the corresponding unit section p, It is comprised by the correlation calculating means which calculates spectrum intensity | strength E1 (p, n),
The second spectrum calculation means includes:
The element signal preparation means;
Correlation is performed between the element signal corresponding to each of the N frequencies f (n) and the section signal composed of T (n) samples of the corresponding selection unit section q, and the correlation value is the highest. Harmonic signal selection means for selecting an element signal corresponding to a high frequency f (nmax) as a harmonic signal;
By using T (nmax) samples given by the product of the selected harmonic signal and the correlation value obtained for the harmonic signal as an inclusion signal, and subtracting the inclusion signal from the interval signal, T (nmax) Differential signal calculation means for obtaining a differential signal composed of a number of samples,
The T (nmax) samples updated to reflect the T (nmax) samples are used as new section signals, and the processing by the harmonic signal selection means and the difference signal calculation means is executed to obtain new inclusion signals and differences. N content signals are obtained by repeatedly performing the signal obtaining process, and the second spectrum intensity E2 (q, n) corresponding to the N types of frequencies is calculated based on the correlation values of the obtained content signals. An apparatus for encoding an acoustic signal.
前記相関演算手段は、
直前に位置する単位区間p−1における各周波数f(n)に対応する直前相関演算結果に対し、前記単位区間p−1における先頭Wサンプルに対応する相関演算を行い、各周波数ごとの相関値を前記直前相関演算結果より減算するとともに、前記単位区間pにおけるT(n)サンプル中の最後尾Wサンプルに対応する相関演算を行い、各周波数ごとの相関値を前記直前相関演算結果に加算することにより、前記単位区間pにおける各周波数f(n)に対応する相関演算結果を取得し、当該相関演算結果に基づいて前記第1のスペクトル強度E1(p,n)を算出することを特徴とする音響信号の符号化装置。 In claim 18,
The correlation calculation means includes
A correlation calculation corresponding to the first W sample in the unit interval p-1 is performed on the previous correlation calculation result corresponding to each frequency f (n) in the unit interval p-1 located immediately before, and a correlation value for each frequency is obtained. Is subtracted from the previous correlation calculation result, a correlation calculation corresponding to the last W sample in the T (n) samples in the unit interval p is performed, and a correlation value for each frequency is added to the previous correlation calculation result. Thus, a correlation calculation result corresponding to each frequency f (n) in the unit interval p is acquired, and the first spectral intensity E1 (p, n) is calculated based on the correlation calculation result. An apparatus for encoding an acoustic signal.
前記符号化手段は、前記符号コードとしてMIDI形式を用いて符号化を行い、前記符号コードの前記周波数の情報としてノートナンバーを用い、前記第2のスペクトル強度としてベロシティを用い、前記選出単位区間qの先頭時刻と直後の選出単位区間q+1の先頭時刻との時間差を各々直前のMIDIイベントからの相対時刻であるデルタタイム1とデルタタイム2で定義し、これらの定義されたノートナンバー、ベロシティ、デルタタイム1を基にMIDIのノートオンイベントを作成するとともに、ノートナンバー、デルタタイム2を基にMIDIのノートオフイベントを作成するようにしていることを特徴とする音響信号の符号化装置。 In any one of Claims 11-19,
The encoding means performs encoding using the MIDI format as the code code, uses a note number as the frequency information of the code code, uses velocity as the second spectral intensity, and selects the selected unit interval q Delta time 1 and delta time 2 that are relative times from the immediately preceding MIDI event, respectively, and the defined note number, velocity, delta An apparatus for encoding an audio signal, wherein a MIDI note-on event is created based on time 1 and a MIDI note-off event is created based on note number and delta time 2.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011154685A JP6047863B2 (en) | 2011-07-13 | 2011-07-13 | Method and apparatus for encoding acoustic signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011154685A JP6047863B2 (en) | 2011-07-13 | 2011-07-13 | Method and apparatus for encoding acoustic signal |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013020166A true JP2013020166A (en) | 2013-01-31 |
JP6047863B2 JP6047863B2 (en) | 2016-12-21 |
Family
ID=47691635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011154685A Expired - Fee Related JP6047863B2 (en) | 2011-07-13 | 2011-07-13 | Method and apparatus for encoding acoustic signal |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6047863B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016028269A (en) * | 2014-07-10 | 2016-02-25 | 大日本印刷株式会社 | Acoustic signal encoding device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265330A (en) * | 2000-03-21 | 2001-09-28 | Alpine Electronics Inc | Device and method for extracting melody |
JP2003022096A (en) * | 2001-07-10 | 2003-01-24 | Dainippon Printing Co Ltd | Encoding method for sound signal |
-
2011
- 2011-07-13 JP JP2011154685A patent/JP6047863B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265330A (en) * | 2000-03-21 | 2001-09-28 | Alpine Electronics Inc | Device and method for extracting melody |
JP2003022096A (en) * | 2001-07-10 | 2003-01-24 | Dainippon Printing Co Ltd | Encoding method for sound signal |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016028269A (en) * | 2014-07-10 | 2016-02-25 | 大日本印刷株式会社 | Acoustic signal encoding device |
Also Published As
Publication number | Publication date |
---|---|
JP6047863B2 (en) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7737354B2 (en) | Creating music via concatenative synthesis | |
CN112382257B (en) | Audio processing method, device, equipment and medium | |
WO2020171033A1 (en) | Sound signal synthesis method, generative model training method, sound signal synthesis system, and program | |
JP2004184510A (en) | Device and method for preparing musical data | |
JPH0736455A (en) | Music event index generating device | |
JP4561636B2 (en) | Musical sound synthesizer and program | |
JP2007316269A (en) | Musical sound synthesizer and program | |
JP6047863B2 (en) | Method and apparatus for encoding acoustic signal | |
JP4932614B2 (en) | Code name detection device and code name detection program | |
JP2000293188A (en) | Chord real time recognizing method and storage medium | |
JP6589404B2 (en) | Acoustic signal encoding device | |
JP5609280B2 (en) | Method and apparatus for encoding acoustic signal | |
JP5732910B2 (en) | Method and apparatus for encoding acoustic signal | |
JPH1173200A (en) | Acoustic signal encoding method and record medium readable by computer | |
JP5533021B2 (en) | Method and apparatus for encoding acoustic signal | |
JP2011090189A (en) | Method and device for encoding acoustic signal | |
JP4152502B2 (en) | Sound signal encoding device and code data editing device | |
Klassen et al. | Design of timbre with cellular automata and B-spline interpolation | |
KR20060067721A (en) | Midi synthesis method | |
JP3804522B2 (en) | Waveform compression method and waveform generation method | |
JP2003216147A (en) | Encoding method of acoustic signal | |
JP4156268B2 (en) | Frequency analysis method for time series signal and encoding method for acoustic signal | |
JP3788096B2 (en) | Waveform compression method and waveform generation method | |
JP3304709B2 (en) | Music signal analysis method | |
JP2003022096A (en) | Encoding method for sound signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20130823 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140516 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150707 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150904 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160309 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160502 |
|
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: 20161025 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6047863 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |