JP3945435B2 - Waveform data compressing method, tone signal generation method, the tone signal processing device and program - Google Patents

Waveform data compressing method, tone signal generation method, the tone signal processing device and program Download PDF

Info

Publication number
JP3945435B2
JP3945435B2 JP2003087299A JP2003087299A JP3945435B2 JP 3945435 B2 JP3945435 B2 JP 3945435B2 JP 2003087299 A JP2003087299 A JP 2003087299A JP 2003087299 A JP2003087299 A JP 2003087299A JP 3945435 B2 JP3945435 B2 JP 3945435B2
Authority
JP
Grant status
Grant
Patent type
Prior art keywords
frame
loop
read
loop start
section
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.)
Active
Application number
JP2003087299A
Other languages
Japanese (ja)
Other versions
JP2004294780A (en )
Inventor
雅嗣 岡▲崎▼
登喜男 白川
Original Assignee
ヤマハ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Grant date

Links

Images

Description

【0001】 [0001]
【発明の属する技術分野】 BACKGROUND OF THE INVENTION
本発明は、波形データをフレーム圧縮して記憶し、当該波形データを演奏情報に基づいて再生する音源装置に用いて好適な波形データ圧縮方法、楽音信号発生方法、楽音信号処理装置およびプログラムに関する。 The present invention stores waveform data and frame compression, suitable waveform data compression method using the tone generator to reproduce based on the waveform data in performance information, musical tone signal generating method, a musical tone signal processing device and a program.
【0002】 [0002]
【従来の技術】 BACKGROUND OF THE INVENTION
波形メモリ音源装置における波形データの記憶容量を削減するために、波形データを所定のフレーム区間に区切って符号化し圧縮する「フレーム圧縮方式」が知られている。 To reduce the storage capacity of the waveform data in the waveform memory tone generator to encode compressed "frame format" it is known by separating waveform data at a predetermined frame interval. 波形データの符号化方法には種々の方法があるが、「線形予測方式」は圧縮効率が高く、再生時における処理負荷も少ないために多用されている。 Although the encoding method of the waveform data There are a variety of methods, "linear prediction method" high compression efficiency, and is often used for smaller processing load at the time of reproduction. なお、線形予測方式とは、ある注目サンプルより過去の数個のサンプリング値と所定の生成多項式とに基づいて当該注目サンプルの予測値を求め、その予測値と実際値との差(残差値)をデータとして記録してゆく方式である。 Note that the linear prediction method, based on than a target sample in past and several sampling values ​​and a predetermined generator polynomial calculated predicted value of the target sample, the difference (residual value and the actual value and the predicted value ), which is a recording to Yuku system as data.
【0003】 [0003]
また、波形データを再生するにあたっては、波形データの先頭部分すなわちアタック区間を1回だけ再生し、その後は残りの部分すなわちループ区間を繰り返し再生することが一般的である。 Further, when reproducing the waveform data is reproduced only once the top portion or the attack segment of the waveform data, then it is common to play repeatedly remaining portion or loop section. このため、一連のフレーム中、ループ区間の先頭および最終のサンプリング点であるループ開始点およびループ終了点を特定しておく必要がある。 Therefore, it is necessary to identify in a series of frames, the loop start and loop end point is a sampling point of the first and last of the loop section. 従来、フレーム圧縮方式においては、波形データをフレーム単位で再生する必要があったため、ループ開始点およびループ終了点がフレームの境界位置に制限されるという問題があった。 Conventionally, in the frame compression method, since it was necessary to reproduce the waveform data in units of frames, the loop start and loop end point is a problem that is limited to the boundary position of the frame. すなわち、ループ開始点およびループ終了点を最適なサンプリング点に設定することができなかったため、波形データの再生点がループ終了点からループ開始点に戻る際に、信号レベルや位相の不連続性に伴うノイズが発生するという問題があった。 That is, it was not possible to set the loop start point and a loop end point to an optimum sampling point, when the reproduction point of the waveform data is returned from the loop end point to the loop start point, the discontinuity of the signal level and the phase noise with there is a problem that occurs.
【0004】 [0004]
そこで、特許文献1においては、ループ開始点およびループ終了点として波形データ上の任意の点が指定されると、波形データ全体に対して時間軸補正(時間軸方向の圧縮、伸長またはシフト)を実行し、これによってループ開始点とループ終了点とをフレームの境界点に合致させ、かかるノイズを防止する技術が開示されている。 Therefore, in Patent Document 1, when an arbitrary point on the waveform data loop start point and a loop end point are specified, the time axis correction for the entire waveform data (compressed in the time axis direction, extension or shift) run, thereby to conform a loop start point and a loop end point to the boundary point of the frame, a technique to prevent such noise is disclosed.
【0005】 [0005]
【特許文献1】 [Patent Document 1]
特許第2674155号公報【0006】 Japanese Patent No. 2674155 [0006]
【発明が解決しようとする課題】 [Problems that the Invention is to Solve
しかし、特許文献1記載の技術においては、波形データに対して時間軸方向の圧縮または伸長を行う際に波形データの品質が劣化するという問題があり、波形データ全体に対して処理を行うために処理量が膨大になるという問題もあった。 However, in the technology disclosed in Patent Document 1, there is a problem that the quality of the waveform data is deteriorated when performing compression or extension of the time-axis direction with respect to the waveform data, in order to perform the processing for the entire waveform data there is also a problem that the processing amount becomes enormous. また、特許文献1記載の技術によれば、各フレームの先頭部分に圧縮符号を伸長するためのヘッダ情報が記憶されており、伸長処理を開始する前に該フレームのヘッダ情報を全て読み出しておく必要がある。 Further, according to the technology described in Patent Document 1, the header information for decompressing the compressed code at the beginning portion of each frame are stored in advance is read all the header information of the frame before starting the decompression process There is a need. このため、あるフレームについて伸長処理を実行している途中に、次のフレームのヘッダ情報を予め読み出しておく時間的余裕が必要である。 Therefore, during running expansion processing for a frame, it is necessary enough time in advance reads the header information of the next frame. 特許文献1記載の技術はそもそも「フレーム毎に全ての圧縮符号を伸長する」ことを前提にしているため、かかる余裕を確保することは容易であると考えられる。 Because it assumes the technology described in Patent Document 1 first place to "extend all the compressed code for each frame", to ensure such a margin is considered to be easy. しかし、ループ開始点またはループ終了点をフレームの途中に設定できる装置、換言すれば「一部のフレームの再生時間がきわめて短くなりうる装置」にかかるデータ構造を採用すると、予めヘッダ情報を読み出すための時間が充分に確保できないという問題が生じる。 However, since the reading apparatus which can set the loop start point or loop end point in the middle of the frame, when in other words adopting the data structure according to the "playback time of a part of the frame is very short it may device", a pre-header information It caused a problem that the time can not be sufficiently ensured of.
この発明は上述した事情に鑑みてなされたものであり、ループ区間を指定する際の自由度が高く、しかも高品質なループ再生を簡易な処理によって実現できる波形データ圧縮方法、楽音信号発生方法、楽音信号処理装置およびプログラムを提供することを目的としている。 The present invention has been made in view of the above circumstances, high degree of freedom in specifying the loop section, moreover waveform data compressing method can be realized by a simple process a high-quality loop reproduction, tone signal generation method, and its object is to provide a tone signal processing device and a program.
【0007】 [0007]
【課題を解決するための手段】 In order to solve the problems]
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。 In the present invention for solving the above problems, characterized by comprising the following configuration. なお、括弧内は例示である。 Note that the parentheses is illustrative.
請求項1記載の波形データ圧縮方法にあっては、複数のサンプリング値から成る波形データと、該波形データに対して指示された仮ループ開始点(LSP1)および仮ループ終了点(LEP1)を記憶する過程と、前記波形データを複数の区間に分割する過程と、前記仮ループ終了点(LEP1)が属する区間内の最後のサンプリング点に、ループ終了点(LEP)を設定する過程と、前記仮ループ開始点(LSP1)を基準として、前記仮ループ終了点(LEP1)および前記ループ終了点(LEP)間のサンプル数に相当するサンプル数だけ後のサンプリング点に、ループ開始点(LSP)を設定する過程と、前記仮ループ開始点(LSP1)から前記ループ開始点(LSP)の直前までのサンプリング値を、前記仮ループ終了点(LE In the waveform data compressing method of claim 1, wherein the storage and waveform data composed of a plurality of sampling values, a temporary loop start point directed against waveform data (LSP1) and the temporary loop end point (LEP1) the method comprising the steps of dividing the waveform data into a plurality of sections, at the end of the sampling points of the temporary loop end point (LEP1) belongs within the interval, the process of setting the loop end point (LEP), the temporary set loop start point as a reference (LSP1), wherein the temporary loop end point (LEP1) and sampling points after only the number of samples corresponding to the number of samples between the loop end point (LEP), the loop start point (LSP) the method comprising, the sampling value from the temporary loop start point (LSP1) until immediately before the loop start point (LSP), the temporary loop end point (LE 1)の直後のサンプリング点から前記ループ終了点(LEP)のサンプリング値に複写する過程と、前記各区間毎に前記波形データを圧縮することにより前記各区間毎のフレームを形成する圧縮過程とを有し、前記圧縮過程は、前記ループ開始点(LSP)を含むループ開始区間(LSF)と、前記ループ終了点(LEP)を含むループ終了区間(LEF)または前記ループ開始区間(LSF)の次に再生される区間のうち一方の区間とから成る特定の二区間に対して同一の伸長パラメータを適用するとともに、該特定の二区間に対して該同一の伸長パラメータによって基づいて伸長可能な圧縮符号を各々決定する第1の決定過程と、前記特定の二区間以外の各区間の波形データに基づいて、これら各区間の伸長パラメータと、該伸長パラ A process of copying from a sampling point immediately following 1) the sampling value of the loop end point (LEP), and a compression process of forming the frame of each of said sections by compressing the waveform data the in each section It has the compression process, following the loop start point and the loop start section (LSF) containing (LSP), the loop end point (LEP) loop end section including (LEF) or the loop start section (LSF) while with applying the same extension parameters for a particular second section consisting of a section of, stretchable compression code based by of identity one extension parameters for the particular double-section of the section to be reproduced a first determination step of respectively determining, on the basis of the waveform data of each section other than the specific second section, and extension parameters of each of these sections, 該伸 length para ータに基づいて伸長可能な圧縮符号とを決定する第2の決定過程と、前記各区間中の一の区間(F1)のサンプリング値の圧縮符号(W1)と、該一の区間の後に再生される区間(F2)の圧縮符号(W2)を伸長するための伸長パラメータ(P2)とによって、一のフレーム(F1)を形成するフレーム形成過程であって、該伸長パラメータは、該伸長パラメータを記憶するフレームの全データの読出しが終了したときに、利用可能になるように前記一のフレーム(F1)に記憶されるフレーム形成過程とを有することを特徴とす A second determination process of determining the extendable compressed code based on the over data, reproducing said compressed code (W1) of the sampled values ​​of one period in each section (F1), after the first section by a section (F2) extending parameter (P2) for compression and expansion of the code (W2) of which is, a frame forming process of forming a one frame (F1),該伸length parameter, a該伸length parameter when the reading of all the data frames to be stored is completed, you; and a frame forming step of the stored one frame (F1) to become available.
また、請求項記載の波形データ圧縮方法にあっては、複数のサンプリング値から成る波形データと、該波形データに対して指示された仮ループ開始点(LSP1)および仮ループ終了点(LEP1)を記憶する過程と、前記波形データを複数の区間に分割する過程と、前記仮ループ開始点(LSP1)が属する区間の次の区間の先頭のサンプリング点にループ開始点(LSP)を設定する過程と、前記仮ループ終了点(LEP1)を基準として、前記仮ループ開始点(LSP1)および前記ループ開始点(LSP)間のサンプル数に相当するサンプル数だけ後のサンプリング点に、ループ終了点(LEP)を設定する過程と、前記仮ループ開始点(LSP1)から前記ループ開始点(LSP)の直前までのサンプリング値を、前記仮ループ Further, in the waveform data compressing method according to claim 2, the waveform data composed of a plurality of sampling values, a temporary loop start point directed against waveform data (LSP1) and the temporary loop end point (LEP1) a step of storing, the step of setting a step of dividing the waveform data into a plurality of sections, the temporary loop start point (LSP1) loop start point to the beginning of the sampling point belongs interval next interval of (LSP) If the reference to the temporary loop end point (LEP1), the temporary loop start point (LSP1) and said loop start point to the sampling point after only the number of samples corresponding to the number of samples between (LSP), the loop end point ( a process of setting the LEP), the sampling value immediately before the temporary loop start point (LSP1) from the loop start point (LSP), the temporary loop 了点(LEP1)の直後のサンプリング点から前記ループ終了点(LEP)のサンプリング値に複写する過程と、前記各区間毎に前記波形データを圧縮することにより前記各区間毎のフレームを形成する圧縮過程とを有し、前記圧縮過程は、前記ループ終了点(LEP)を含むループ終了区間(LEF)と、前記ループ開始点(LSP)を含むループ開始区間(LSF)または前記ループ終了区間(LEF)の前に再生される区間のうち一方の区間とから成る特定の二区間に対して同一の伸長パラメータを適用するとともに、該特定の二区間に対して該同一の伸長パラメータによって基づいて伸長可能な圧縮符号を各々決定する第1の決定過程と、前記特定の二区間以外の各区間の波形データに基づいて、これら各区間の伸長パラメータと A process in which the sampling point immediately after the Ryoten (LEP1) copied to the sampling value of the loop end point (LEP), compressed to form a frame of each of said sections by compressing the waveform data the in each section and a process, the compression process, the loop end point and loop end section (LEF) containing (LEP), the loop start point (LSP) loop start section including (LSF) or the loop end sections (LEF with applying the same extension parameters for a particular second section consisting of one segment of the segment to be played before), extendable based by extension parameters of identity flush against the particular second section a first determination step of each determining Do compressed code, based on the waveform data of each section other than the specific second section, and extension parameters of each section 該伸長パラメータに基づいて伸長可能な圧縮符号とを決定する第2の決定過程と、前記各区間中の一の区間(F1)のサンプリング値の圧縮符号(W1)と、該一の区間の後に再生される区間(F2)の圧縮符号(W2)を伸長するための伸長パラメータ(P2)とによって、一のフレーム(F1)を形成するフレーム形成過程であって、該伸長パラメータは、該伸長パラメータを記憶するフレームの全データの読出しが終了したときに、利用可能になるように前記一のフレーム(F1)に記憶されるフレーム形成過程とを有することを特徴とす A second determination process of determining the extendable compression code based on 該伸 length parameter, wherein the compressed code (W1) of the sampled values ​​of one period in each section (F1), after the first section by the extension parameters for decompressing the compressed code (W2) of the section (F2) to be reproduced (P2), a frame forming process of forming a one frame (F1),該伸length parameter,該伸length parameter when the reading of all the data frames to be stored has finished,; and a frame forming step of the stored one frame (F1) to become available.
さらに、請求項記載の構成にあっては、請求項または記載の波形データ圧縮方法において、前記第1の決定過程は、前記特定の二区間の波形データを結合した波形データに基づいて前記同一の伸長パラメータを定める過程であることを特徴とする。 Further, in the configuration of claim 3, wherein, in the waveform data compressing method according to claim 1 or 2, wherein the first decision process, based on the waveform data that combines the waveform data of said specific second section characterized in that it is a process of defining the same stretching parameters.
さらに、請求項記載の構成にあっては、請求項1ないしの何れかに記載の波形データ圧縮方法において、前記各伸長パラメータは、前記各フレーム内に分散して配置されることを特徴とする。 Further, in the configuration of claim 4, wherein the waveform data compressing method according to any of claims 1 to 3, wherein each extension parameter shall be arranged dispersed in said each frame to.
また、請求項記載の楽音信号発生方法にあっては、一区間に渡る波形データを圧縮した圧縮符号と、次の区間の圧縮符号を伸長するための伸長パラメータとを含むフレームを複数記憶する過程と、発生すべき楽音信号の音高に応じた速度で変化するように読出しアドレスを計数する過程と、該計数された読出しアドレス(GFAD)に基づいて、前記各フレームを読み出す読出過程と、読み出された一の前記フレーム内の圧縮符号と、過去に読み出されたフレーム内の伸長パラメータとに基づいて、一の前記フレーム内の圧縮符号を伸長することによって楽音信号を再生する伸長過程と、 前記読出過程により読み出されたデータから前記各フレームに記憶された伸長パラメータを取り出す取出過程であって、該伸長パラメータは、該伸長パ Further, in the musical tone signal generating method according to claim 5, stores a plurality of frames including a compressed code obtained by compressing the waveform data over a section, and a decompression parameters for decompressing the compressed code of the next interval the steps, the steps of counting the read address so as to change at a rate corresponding to the pitch of tone to be generated signals, and a read process based on the regimen number read-out address (GFAD), reading said respective frame, a compression code in one of the frames read, based on the extension parameter in a frame read in the past, extension process of reproducing a musical tone signal by expanding the compressed code in one of the frame When, a takeout step of taking out the extension parameter stored in said each frame from the data read by the reading process,該伸length parameter,該伸length Pas メータを記憶するフレームの全データの読出しが終了したときに、利用可能になる取出過程と、前記読出しアドレス(GFAD)が所定のループ終了フレーム(LEF)の末尾のサンプリング点であるループ終了点(LEP)に達したことを条件として、前記読出しアドレス(GFAD)を、所定のループ開始フレーム(LSF)内の途中のサンプリング点であるループ開始点(LSP)に設定する過程とを有し、前記ループ開始フレーム(LSF)には、前記ループ終了フレーム(LEF)または前記ループ開始フレーム(LSF)の次のフレームに適用される伸長パラメータと同一の伸長パラメータが適用される(図8 (b) (c) ことを特徴とする。 When the reading of all data frames for storing meter is completed, and the retrieval process becomes available, the read address (GFAD) loop end point is the end of the sampling points of the predetermined loop end frame (LEF) ( on condition that reached LEP), and a process of setting the read address (GFAD), the loop start point (LSP) in the middle of sampling points within a given loop start frame (LSF), the the loop start frame (LSF), the same extension parameters and extension parameters that apply to the next frame of said loop end frame (LEF) or the loop start frame (LSF) is applied (FIG. 8 (b), the (c)) it is characterized.
さらに、請求項記載の構成にあっては、請求項記載の楽音信号発生方法において、前記伸長過程は、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF=図8(b)のF4)が最初に読み出された場合は、該ループ開始フレーム(LSF)の直前に読み出されたフレーム(F3)内の伸長パラメータ(PX1)に基づいて、該ループ開始フレーム(F4)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF=F4)が2回目以降に読み出された場合は、前記ループ終了フレーム(LEF=F8)内の圧縮符号の伸長に適用された伸長パラメータ(PX1)に基づいて、該ループ開始フレーム(LSF)内の圧縮符号を伸長し、前記読出過程において一の前記フ Further, in the configuration of claim 6, wherein in the tone signal generation method of claim 5, wherein the extension process, the loop start frame as one of the frame in the reading process (LSF = FIG 8 (b) If the F4) is first read, based on the extended parameter (PX1) of the read frame (F3) just before the loop start frame (LSF), the loop start frame (F4) in compressed codes to the extension, the case where the loop start frame as one of the frame in the reading process (LSF = F4) is read for the second time or later, the compressed code within the loop end frame (LEF = F8) based on the applied elongation parameter extension (PX1), decompresses the compressed code within the loop start frame (LSF), one said full in said read process ームとして前記ループ開始フレームの次のフレーム(F5)が最初に読み出された場合は、該ループ開始フレーム(LSF=F4)に含まれる伸長パラメータに基づいて、該ループ開始フレームの次のフレーム(F5)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして前記ループ開始フレームの次のフレーム(F5)が2回目以降に読み出された場合は、前記ループ終了フレーム(LEF)に含まれる伸長パラメータに基づいて、該ループ開始フレーム(LSF)の次のフレーム内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する過程 If the next frame of said loop start frame as chromatography beam (F5) is first read, based on the extension parameters included in the loop start frame (LSF = F4), the next frame of the loop start frame (F5) compressed codes to the extension in the case where the next frame of said loop start frame as one of the frame in the reading process (F5) has been read out at the second time and thereafter, the loop end frame (LEF) based on the extension parameters included in, the loop beginning frame (LSF) decompresses the compressed code in the next frame, if other frames as one of the frame in said read process is read, one based on the extension parameters of the read frame immediately before the frame, the process of decompressing the compressed code in one of the frame あることを特徴とする。 Characterized in that there.
さらに、請求項記載の構成にあっては、請求項記載の楽音信号発生方法において、前記伸長過程は、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF=図8(c)のF4)の次のフレーム(F5)が最初に読み出された場合は、該ループ開始フレーム(LSF)に含まれる伸長パラメータ(PX2)に基づいて、該ループ開始フレームの次のフレーム(F5)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF)の次のフレーム(F5)が2回目以降に読み出された場合は、前記ループ終了フレーム(LEF)に含まれる伸長パラメータ(PX2)に基づいて、該ループ開始フレーム(LSF)の次のフレーム(F5)内の圧縮符号を伸長し、前記読出過程 Further, in the configuration of claim 7, wherein, in the tone signal generation method of claim 5, wherein the extension process, the loop start frame as one of the frame in the reading process (LSF = FIG 8 (c) If the next frame of the F4) (F5) is first read, based on the extended parameter (PX2) included in the loop start frame (LSF), the next frame of the loop start frame (F5) It decompresses the compressed code of the inner, the case where the next frame of said loop start frame as one of the frame in the reading process (LSF) (F5) has been read out at the second time and thereafter, the loop end frame (LEF) based on the extension parameter (PX2) contained in, it decompresses the compressed code in the next frame (F5) of the loop start frame (LSF), the reading process おいて一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する過程であることを特徴とする。 Hey if other frames as one of the frame is read out, based on the extended parameter in a frame read just before one of the frame, the process of decompressing the compressed code in one of the frame and characterized in that.
また、請求項記載の楽音信号発生方法にあっては、一区間に渡る波形データを圧縮した圧縮符号と、次の区間の圧縮符号を伸長するための伸長パラメータとを含むフレームを複数記憶する過程と、発生すべき楽音信号の音高に応じた速度で変化するように読出しアドレスを計数する過程と、該計数された読出しアドレス(GFAD)に基づいて、前記各フレームを読み出す読出過程と、読み出された一の前記フレーム内の圧縮符号と、過去に読み出されたフレーム内の伸長パラメータとに基づいて、一の前記フレーム内の圧縮符号を伸長することによって楽音信号を再生する伸長過程と、 前記読出過程により読み出されたデータから前記各フレームに記憶された伸長パラメータを取り出す取出過程であって、該伸長パラメータは、該伸長パ Further, in the musical tone signal generating method according to claim 8, stores a plurality of frames including a compressed code obtained by compressing the waveform data over a section, and a decompression parameters for decompressing the compressed code of the next interval the steps, the steps of counting the read address so as to change at a rate corresponding to the pitch of tone to be generated signals, and a read process based on the regimen number read-out address (GFAD), reading said respective frame, a compression code in one of the frames read, based on the extension parameter in a frame read in the past, extension process of reproducing a musical tone signal by expanding the compressed code in one of the frame When, a takeout step of taking out the extension parameter stored in said each frame from the data read by the reading process,該伸length parameter,該伸length Pas メータを記憶するフレームの全データの読出しが終了したときに、利用可能になる取出過程と、前記読出しアドレス(GFAD)が所定のループ終了フレーム(LEF)の途中のサンプリング点であるループ終了点(LEP)に達したことを条件として、前記読出しアドレス(GFAD)を、所定のループ開始フレーム(LSF)内の先頭のサンプリング点であるループ開始点(LSP)に設定する過程とを有し、前記ループ終了フレーム(LEF)には、前記ループ開始フレーム(LSF)または前記ループ終了フレーム(LEF)の前のフレームに適用される伸長パラメータと同一の伸長パラメータが適用される(図8 (d) (e) ことを特徴とする。 When the reading of all data frames for storing meter is completed, and the retrieval process becomes available, the read address (GFAD) loop end point is in the middle of the sampling points of the predetermined loop end frame (LEF) ( on condition that reached LEP), and a process of setting the read address (GFAD), the loop starting point is the head of the sampling points within a given loop start frame (LSF) (LSP), the the loop end frame (LEF), the same extension parameters and extension parameters that apply to the previous frame of said loop start frame (LSF) or the loop end frame (LEF) is applied (FIG. 8 (d), the (e)) can be characterized.
さらに、請求項記載の構成にあっては、請求項記載の楽音信号発生方法において、前記伸長過程は、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF=図8(d)のF4)が最初に読み出された場合は、該ループ開始フレーム(LSF)の直前に読み出されたフレーム(F3)内の伸長パラメータに基づいて、該ループ開始フレーム(LSF)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF)が2回目以降に読み出された場合は、前記ループ終了フレーム(LEF)内の圧縮符号の伸長に適用された伸長パラメータ(PX3)に基づいて、該ループ開始フレーム(LSF)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして他のフレ Further, in the structure of claim 9, wherein, in the tone signal generation method according to claim 8, wherein the extension process, the loop start frame as one of the frame in the reading process (LSF = FIG 8 (d) If the F4) is first read, based on the extension parameters of the read frame (F3) just before the loop start frame (LSF), the compression codes in the loop start frame (LSF) It decompresses the said case where said loop start frame as one of the frame in the reading process (LSF) is read out at the second time and thereafter, applied elongation in extension of the compression code for the loop end frame (LEF) based on parameters (PX3), decompresses the compressed code within the loop start frame (LSF), the other frame as one of the frame in said read process ムが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する過程であることを特徴とする。 If beam is read, based on the extended parameter in a frame read just before one of the frame, characterized in that it is a process of decompressing the compressed code in one of said frame.
さらに、請求項10記載の構成にあっては、請求項記載の楽音信号発生方法において、前記伸長過程は、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF=図8(e)のF4)が最初に読み出された場合は、該ループ開始フレーム(LSF)の直前に読み出されたフレーム(F3)内の伸長パラメータに基づいて、該ループ開始フレーム(LSF)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして前記ループ開始フレーム(LSF)が2回目以降に読み出された場合は、前記ループ終了フレーム(LEF)の直前のフレーム(F7)に含まれていた伸長パラメータに基づいて、該ループ開始フレーム(LSF)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして前記ルー Further, in the configuration of claim 10, wherein in the tone signal generation method according to claim 8, wherein the extension process, the loop start frame as one of the frame in the reading process (LSF = Fig 8 (e) If the F4) is first read, based on the extension parameters of the read frame (F3) just before the loop start frame (LSF), the compression codes in the loop start frame (LSF) It decompresses the said case where said loop start frame as one of the frame in the reading process (LSF) is read out at the second time and thereafter, is included in the frame (F7) immediately before the loop end frame (LEF) were based on the extended parameter, decompresses the compressed code within the loop start frame (LSF), the root as one of the frame in said read process 終了フレーム(LEF=F8)が読み出された場合は、前記ループ終了フレーム(LEF)の直前のフレーム(F7)に適用されていた伸長パラメータ(PX4)に基づいて、ループ終了フレーム(LEF)内の圧縮符号を伸長し、前記読出過程において一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する過程であることを特徴とする。 If the end frame (LEF = F8) is read, based on the applied once was extended parameter (PX4) in the frame (F7) immediately before the loop end frame (LEF), the loop end frame (LEF) in compressed code to the extension of the, if other frames as one of the frame in said read process is read, based on the extended parameter in a frame read just before one of the frame, one of the characterized in that it is a process of decompressing the compressed code within a frame.
また、請求項11記載の楽音信号処理装置にあっては、請求項1ないし10の何れかに記載の方法を実行することを特徴とする。 Moreover, in the tone signal processing device according to claim 11 is characterized by carrying out the method according to any one of claims 1 to 10.
また、請求項12記載のプログラムにあっては、請求項1ないし10の何れかに記載の方法を処理装置に実行させることを特徴とする。 Further, in the claim 12, wherein the program is characterized in that it is executed by the processor the method according to any one of claims 1 to 10.
【0008】 [0008]
【発明の実施の形態】 DETAILED DESCRIPTION OF THE INVENTION
1. 1. 第1実施形態 First Embodiment
1.1. 1.1. 実施形態におけるデータ構造 Data structure in embodiment
1.1.1. 1.1.1. 波形データの全体構造次に本発明の一実施形態について説明するが、最初に本実施形態において採用されている波形データを波形メモリに記憶するためのデータ構造を、図2〜図3を参照し説明する。 An embodiment of the present invention the entire structure next waveform data will be described, but the data structure for storing waveform data is employed initially in the present embodiment the waveform memory, with reference to FIGS. 2-3 explain. まず、図2において200は波形データファイルであり、その内部には各種の楽音波形が格納される波形データ領域204,206,……が設けられている。 First, 200 in FIG. 2 is a waveform data file, the waveform data region 204, 206 in which various tone waveform are stored, ... is provided therein. 202は管理領域であり、これら波形データ領域204,206,……のデータサイズ、波形の名称等の管理情報が格納される。 202 is a management area, these waveform data regions 204 and 206, the data size of ..., management information such as the name of the waveform is stored. また、一の波形データ領域は、複数のフレーム211〜21nと、ヘッダ部210とから構成されている。 Another aspect of the waveform data region includes a plurality of frames 211 to 21n, and a header portion 210..
【0009】 [0009]
1.1.2. 1.1.2. フレーム構造本実施形態においては、線形予測形式により圧縮された波形データが上記各フレームに記憶されている。 In the frame structure present embodiment, the waveform data compressed are stored in the respective frame by linear prediction format. すなわち、過去の数サンプルにおけるサンプリング値に対して所定の生成多項式を施すことによって注目サンプルの予測値が予め求められ、実際のサンプリング値からこの予測値を減算した減算結果が「残差符号」として各フレームに記憶されている。 That is, the predicted value of the target sample by performing a predetermined generator polynomial the sampling value is determined in advance in the past few samples, the subtraction result obtained by subtracting the predicted values ​​from the actual sampled value is the "residue code" stored in each frame. その詳細を図3を参照し説明する。 The details will be described with reference to FIG.
【0010】 [0010]
図3(a)は「1」フレーム内におけるデータ構造を示す。 3 (a) shows a data structure in the "1" in the frame. 図において「1」フレームは「160」ビットから成り、「16」ビット毎に「10」個のサブフレームに分割されている。 "1" frame is divided "160" consists of the bit, the "10" sub-frame "16" each bit in FIG. これらサブフレームは、波形メモリの各アドレスに記憶されるデータであって、フレーム内のアドレスSFADに対応させて「00」〜「09」のサブフレーム番号が付与されている。 These sub-frames is data stored in each address of the waveform memory, in correspondence to the address SFAD in the frame sub-frame number "00" to "09" are assigned. 一のサブフレームの先頭「4」ビットは副情報であり、残り「12」ビットは残差符号が格納されている。 Top "4" bits of one sub-frame is side information, the remaining "12" bits are stored residue code. 「1」フレーム中の副情報中において、第00サブフレームにおいては残差符号のビット数bn(「1」,「2」,「3」,「4」,「6」または「12」)が記憶される。 During the sub-information in the "1" frame, the number of bits of the residue code in the 00 subframe bn ( "1", "2", "3", "4", "6" or "12") is It is stored. なお、「1」フレーム中ではこのビット数bnは共通である。 Note that "1" in the frame this number of bits bn is common. 次に、第01〜第05サブフレームの副情報においては、上記生成多項式において用いられる予測係数が記憶される。 Then, in the first 01 sub-information of the 05 sub-frames, the prediction coefficients used in the generating polynomial are stored.
【0011】 [0011]
また、第06,第07サブフレームの副情報には、量子化幅すなわちサンプリング結果の最下位ビットに対応するレベル幅が記憶される。 In addition, the 06, the sub-information of the 07 sub-frame, the level width corresponding to the least significant bit of the quantization width or sampling results are stored. また、第08,第09サブフレームの副情報においては、その他各種の情報が記憶される。 Further, in the first 08, the sub information 09 subframes, and other various information is stored. これら副情報のうち、ビット数bn、予測係数および量子化幅は、残差符号の伸長のために用いられる情報であるから「伸長パラメータ」と呼ぶ。 Of these sub-information, the number of bits bn, prediction coefficients and the quantization width, called because it is information used for the residual code and extension "extension parameters". ここで、各フレームに含まれる副情報は、原則的には「当該フレームの次に読み出されるフレーム内の残差符号に対する副情報」である。 Here, the sub-information contained in each frame, in principle a "sub information for the residue code in a frame to be read next the frame."
【0012】 [0012]
例えば、図3(a)の例においては一の残差符号のビット数bnは「4」ビットであるから、このフレームの前に読み出されるフレームにおいて、第00サブフレームの副情報には「4」が記憶されることになる。 For example, since the number of bits bn of one residue code in the example of FIG. 3 (a) is "4" bits, in the frame to be read prior to the frame, the sub-information of the 00 sub-frame "4 "is to be stored. これは、本実施形態においては「1」フレーム内の各サブフレームが必要な数だけ順次読み出され、楽音信号が再生されるため、最初の(第00サブフレーム)の残差符号が読み出される前に上記各副情報を確定させておく必要があることに鑑みてである。 This is because, in the present embodiment are sequentially read necessary number each subframe "1" in the frame, because the musical tone signal is reproduced, the residue code of the initial (first 00 sub-frames) is read it is in view of the fact that it is necessary to to confirm the above-mentioned sub information before. このため、最初の第1フレームに対する副情報はヘッダ部210に記憶されている。 Therefore, the sub information for the first of the first frame is stored in the header portion 210. 但し、繰り返しループ再生される区間(ループ区間)に関連する副情報については、上述した原則とは異なる態様で記憶されている場合もある。 However, the sub-information related to a section (loop section) that is repeatedly looping, it may have been stored in a different manner from the principles described above. その詳細については後述する。 The details of which will be described later.
【0013】 [0013]
次に、復号化される各サブフレームのストリームを図3(b)に示す。 Next, it is shown in FIG. 3 (b) a stream of each subframe being decoded. 図において第Kフレームを構成する第K_00〜第K_09サブフレームが順次読み出されることによって、これらサブフレームに含まれる残差符号がデコードされ、楽音波形が逐次再生される。 By first K_00~ second K_09 sub frame forming the first K frame are sequentially read in the figure, the residue code contained in these sub frame is decoded, tone waveform is sequentially reproduced. 各フレーム毎に残差符号のビット数bnは各々異なるが、これは「楽音波形の変化の大きさ」および求められる精度に応じて、符号化時に最適なビット幅が選択された結果である。 Number of bits bn for each frame every residual codes different from each other, but this is in accordance with the accuracy required and "magnitude of the musical tone waveform change" is the result of the optimum bit width at the time of encoding is selected. 換言すれば、本実施形態においては、求められる精度に応じて残差符号のビット数bnは種々変化するが、「1」フレームのデータ長はビット数bnに拘らず常に一定(160ビット)である。 In other words, in the present embodiment, the number of bits bn residue code in accordance with the accuracy required is that various changes, "1" the data length of a frame regardless the number of bits bn always constant (160 bits) is there.
【0014】 [0014]
1.2. 1.2. 実施形態のハードウエア構成 Hardware configuration of an embodiment
1.2.1. 1.2.1. 全体構成次に、本実施形態による電子楽器のハードウエア構成を図1を参照し説明する。 Overall structure Next, the hardware configuration of an electronic musical instrument according to the present embodiment will be described with reference to FIG. なお、本実施形態の電子楽器は、汎用パーソナルコンピュータと、該パーソナルコンピュータ上で動作するアプリケーションプログラムとによって構成されている。 The electronic musical instrument of this embodiment includes a general-purpose personal computer, is constituted by the application program running on the personal computer.
図において、100は音源部であり、パーソナルコンピュータに挿入されるカードとして構成されている。 In the figure, 100 is a sound source unit is constructed as a card inserted into the personal computer. 2はRAMであり、パーソナルコンピュータにおいて使用される各種データおよびプログラムが記憶されている。 2 is a RAM, various data and programs used in the personal computer is stored. 特に、RAM2には、音源部100において使用される波形データが記憶されている。 In particular, the RAM 2, waveform data used in the tone generator 100 is stored. 波形データのデータ構造は先に図2,図3において説明した通りである。 Data structure of waveform data as described above 2, 3. このように、パーソナルコンピュータが元々装備しているRAMの一部を波形メモリとして使用することにより、音源部100自体が装備すべきメモリ容量を削減することが可能になる。 Thus, by using a part of the RAM that the personal computer is originally equipped as a waveform memory, it is possible to sound source unit 100 itself to reduce the memory capacity to be installed.
【0015】 [0015]
4はフラッシュメモリであり、パーソナルコンピュータのイニシャルプログラムローダ等が格納される。 4 is a flash memory, an initial program loader or the like of the personal computer is stored. 6はCPUであり、後述するプログラムに基づいて、バスライン14を介して各部を制御する。 6 is a CPU, based on the program described below, controls each unit through a bus line 14. 8は操作子であり、パーソナルコンピュータとして元々装備すべきキーボード、マウス等の操作子の他、演奏用のキーボード等も含まれる。 8 is an operation element, originally keyboard to be implemented as a personal computer, other operator such as a mouse, also includes a keyboard or the like for playing. 10は表示器であり、ユーザに対して各種情報を表示する。 10 is a display device, displays various information to the user. 12は通信I/O部であり、ローカルエリアネットワークを介して他の機器との間で波形データ等のやりとりを行う。 12 is a communication I / O unit, exchanges such waveform data with other devices via the local area network. 16はサウンドシステムであり、音源部100から供給された楽音信号を放音する。 16 is a sound system to sound the musical tone signal supplied from the sound source unit 100.
【0016】 [0016]
音源部100の内部において120は制御レジスタであり、音源部100を制御するために、CPU6によって種々のパラメータが書き込まれる。 120 inside of the sound source unit 100 is a control register, for controlling the sound source unit 100, various parameters are written by CPU 6. 102はフレーム読出し部であり、合成フレームアドレスGFADに応じて、RAM2の波形メモリ領域から必要とする残差符号を含むサブフレームを「1」サブフレーム単位で読み出す。 102 is a frame reading unit, in response to the composite frame address GFAD, reads the subframe containing a residue code it needs from RAM2 waveform memory areas "1" sub-frame. 104はアドレス発生部であり、制御レジスタ120に書き込まれたfナンバ(記録時の楽音信号のピッチと出力すべき楽音信号のピッチとの比)と、当該フレームのサンプリング周期とに応じて、合成フレームアドレスGFADと、サンプルアドレスSCNTとを出力する。 104 is an address generator, and written f-number in the control register 120 (the ratio between the pitch of the musical tone signal to be output to the pitch of the recording time of the musical tone signal), in accordance with the sampling period of the frame, the synthetic It outputs the frame address GFAD, and a sample address SCNT. ここで、合成フレームアドレスGFADとは、読み出すべきフレームを示すフレームアドレスFADと、当該フレーム内において読み出すべきサブフレームを示すサブフレームアドレスSFADとを合成して成る信号である。 Here, the composite frame address GFAD, and frame address FAD illustrating a frame to be read, a signal formed by combining the sub-frame address SFAD showing a sub-frame to be read within the frame. また、サンプルアドレスSCNTは、整数部SCNTiと小数部SCNTfから成る。 Further, the sample address SCNT consists integer part SCNTi and fraction SCNTf. 整数部SCNTiは「1」フレーム内における残差符号の番号を示し、小数部SCNTfはその前後の波形サンプル値に対する補間係数を示す。 Integer part SCNTi indicates the number of the residue code in the "1" in a frame, the fractional part SCNTf shows the interpolation coefficients for waveform sample values ​​before and after. ここで、サブフレームアドレスSFADは、サンプルアドレスSCNTの整数部が各サブフレームに記憶された残差符号の数だけ増加する毎に、「1」増加する。 Here, the sub-frame address SFAD, every time the integer part of the sample address SCNT is increased by the number of stored residual code to each sub-frame, it increases "1".
【0017】 [0017]
106は副情報デコード部であり、フレーム読出し部102が読み出したサブフレームのうち副情報部分が入力され、これを各フレームの期間にわたり蓄積することにより、その次のフレームに対する副情報をデコードし、次のフレーム期間、該フレームの残差符号の復号化等のために音源部100の各ブロックに供給する。 106 is a sub information decoding unit, the sub-information portion of the subframe frame reading unit 102 has read is input, by storing for a period of each frame this, decodes the sub information for the next frame, the next frame period, and supplies the respective blocks of the sound source unit 100 for such decoding the residual code of the frame. 108は残差情報キャッシュ部であり、フレーム読出し部102が読み出したサブフレームのうちの残差符号部分が入力され、そこに含まれる最新の数サンプルの残差符号を記憶するとともに、サンプルアドレス整数部SCNTiの進行量に相当する数の残差符号を逐次出力する。 108 is a residual information cache, residue code portion of the sub-frame frame reading unit 102 has read is input, it stores the residual code of the most recent several samples contained therein, the sample address integer sequentially outputs the number of the residue code corresponding to the progression amount of parts SCNTi. 残差情報キャッシュ部108から出力すべき残差符号が足りなくなるタイミングで、アドレス発生部104から次のサブフレームを示す合成フレームアドレスGFADがフレーム読出し部102に供給され、対応するサブフレームが読み出されることにより、該サブフレームに含まれる残差符号が残差情報キャッシュ部108に記憶される。 At the timing when residual code to be outputted from the residual information cache unit 108 is insufficient, composite frame address GFAD from the address generating unit 104 indicating the next sub-frame is supplied to the frame reading unit 102, the corresponding sub-frame is read by, residue code contained in the sub-frame is stored in the residual information cache unit 108. 110はデコーダ部であり、残差情報キャッシュ部108から残差符号が出力される毎に、副情報デコード部106からの副情報に含まれる予測係数や量子化幅を用いて該残差符号をデコードすることによって波形データのサンプル値を求め、求めたサンプル値をデコーダ部110の内部に設けられているキャッシュメモリに逐次格納してゆく。 110 is a decoder, each time the residue code from the residual information cache unit 108 is output, The residue difference codes using the prediction coefficients and the quantization width is included in the sub-information from the sub information decoding unit 106 calculated sample values ​​of the waveform data by decoding, slide into sequentially stored in the cache memory is provided to the obtained sample values ​​inside the decoder 110.
【0018】 [0018]
112は補間部であり、デコーダ部110において得られた最新の「2」サンプル値に対して、サンプルアドレス小数部SCNTfに基づく補間演算を施す。 112 is an interpolation unit for the latest "2" sample value obtained in the decoder unit 110 performs an interpolation operation based on the sample address decimal part SCNTf. 114は音量EG部であり、この補間されたサンプル値に対して、所定の音量エンベロープを付与する。 114 is a volume EG unit for the interpolated sample values, it applies a predetermined volume envelope. ここで、上記構成要素102〜114は、複数発音チャンネルの楽音信号を合成するためにサンプリング周期毎に時分割で駆動される。 Here, the components 102-114 are driven by time division to synthesize tone signals of plural tone generation channels in each sampling period. すなわち、サンプリング周期を発音チャンネル数で分割した時分割のスロット毎に全く異なる発音チャンネルの処理が行われる。 That is, quite processing different sound channels for each slot of the time division obtained by dividing the sampling period in polyphony channel is performed. また、後述する各レジスタ、バッファ等も発音チャンネル毎に設けられている。 Further, the registers to be described later, and a buffer or the like is also provided for each sound channel. 116はミキサ部であり、各サンプリング周期毎に、音量EG部114から出力された複数発音チャンネルの楽音信号をミキシングし、ステレオの楽音信号として出力する。 116 is a mixer unit, for each sampling period, mixes the tone signals of plural tone generation channels outputted from the sound volume EG unit 114, and outputs as a stereo music signal. 118はDAコンバータであり、このステレオの楽音信号をアナログ信号に変換する。 118 is a DA converter, for converting the musical tone signal of the stereo analog signal. このアナログ信号の楽音信号は、サウンドシステム16を介して発音されることになる。 Tone signal of the analog signal will be sounded through the sound system 16.
【0019】 [0019]
1.2.2. 1.2.2. アドレス発生部104の構成次に、アドレス発生部104の構成を図4を参照し説明する。 Configuration of the address generating unit 104 next with reference to FIG. 4 the structure of the address generating unit 104 will be described. 図において144は1/3サンプル累算器であり、1サンプリング周期毎に、fナンバの「1/3」の値を逐次累算する。 144 is a 1/3 sample accumulator in FIG, every sampling cycle, sequentially accumulates the value of "1/3" in f-number. また、1/3サンプル累算器144には、制御レジスタ120を介して、ループ開始点LSPおよびループ終了点LEPが供給される。 In addition, the 1/3 sample accumulator 144, via a control register 120, a loop start point LSP and loop end point LEP is supplied. 150は乗算器であり、この累算結果ACに「3」を乗算する。 150 is a multiplier, multiplied by the "3" to the accumulation result AC. すなわち、この乗算結果はfナンバをサンプリング周期毎に累積した値に等しいものであり、該乗算結果はサンプルアドレスSCNTとして出力される。 That is, the multiplication results are equal to the value obtained by accumulating the f-number for each sampling period, multiplication result is outputted as a sample address SCNT.
【0020】 [0020]
148は変換器であり、累算器144の累算結果ACと、残差符号のビット数bnとに基づいて、サブフレームアドレスSFAD=AC・bn/4を出力する。 148 is a converter, accumulation result AC accumulator 144, based on the number of bits bn residue code, and outputs the sub-frame address SFAD = AC · bn / 4. ここで、変換器148において用いられる「ビット数bn」は、通常は副情報デコード部106から逐次供給されるビット数bnである。 Here, "the number of bits bn" used in converter 148 is typically a number of bits bn, which sequentially supplied from the sub information decoding unit 106. ここで、例えば、ビット数bnが最大値「12」であったと仮定すると、サブフレームアドレスSFADは累算結果ACの3倍すなわちサンプルアドレスSCNTに等しくなる。 Here, for example, the number of bits bn is assumed that the maximum value "12", the sub-frame address SFAD is equal to three times or sample address SCNT of the accumulation result AC. 従って、サンプルアドレスSCNTが「1」増加する毎に「1」サブフレームが読み出されることになる。 Accordingly, the sample address SCNT is "1", "1" subframe every increase is read. また、ビット数bnが「4」であったと仮定すると、サブフレームアドレスSFADは累算結果ACすなわち、サンプルアドレスSCNTの「1/3」に等しくなる。 Further, the number of bits bn is assumed to be a and "4", the sub-frame address SFAD the accumulation result AC i.e., equal to "1/3" in the sample address SCNT. 従って、サンプルアドレスSCNTが「3」増加する毎に「1」サブフレームが読み出されることになる。 Accordingly, the sample address SCNT is "1" subframe every increase "3" is read out.
【0021】 [0021]
以上の動作は、ビット数bnが「12」または「4」以外の値であった場合も同様である。 Above operation is the same if the number of bits bn is a value other than "12" or "4". このように、サブフレームアドレスSFADは、サンプルアドレスSCNTが各サブフレームに含まれる残差符号のサンプル数だけ増加する毎に、「1」づつ増加する。 Thus, the sub-frame address SFAD, every time the sample address SCNT is increased by the number of samples residue code contained in each subframe, increased by one "1". 各ビット数bnに対する「1」フレームあたりのサンプル数と、サブフレームアドレスSFADとの関係を以下に列挙しておく。 And the number of samples per '1' frame for each number of bits bn, previously listed below the relationship between the sub-frame address SFAD.
【0022】 [0022]
このように、本実施形態においては、累算器144の累算単位をサンプルアドレスSCNTの「1/3」にしたため、サンプルアドレスSCNTに対応するサブフレームアドレスSFADを算出するための演算は、「1/4」または「1/2」を除数とする除算と、乗算の組み合わせにより実現できる。 Thus, in the present embodiment, because of the accumulation unit accumulator 144 to "1/3" in the sample address SCNT, operation for calculating the sub-frame address SFAD corresponding to the sample address SCNT is " 1/4 "or" 1/2 "and divide-by can be achieved by the combination of the multiplication. ここで、「1/4」または「1/2」を除数とする除算はシフト演算によって実行可能であり、乗算は加算器とシフタとによって実現できるため、変換器148はシフタおよび加算器等によって実現することができ、除算器等は不要である。 Here, divide-by the "1/4" or "1/2" is executable by shift operations, since multiplication can be realized by the adder and shifter, the transducer 148 shifter and the adder such can be realized, divider, etc. is not required. これにより、変換器148の構成をきわめて簡易にすることができる。 This makes it possible to extremely simplify the construction of the transducer 148.
【0023】 [0023]
さて、変換器148においては、サブフレームアドレスSFADが「9」(第09サブフレームに対応する)に達した後に桁上りすると、フレーム終了パルスFENDが累算器144に供給される。 Now, in transducer 148, the sub-frame address SFAD to carry-over after reaching the "9" (corresponding to the 09 sub-frame), the frame end pulse FEND is supplied to the accumulator 144. 累算器144においては、フレーム終了パルスFENDが供給されると、累算結果から「今回のフレームにおける残差符号数/3」に相当する値が減算され、累算が続行される。 In accumulator 144, the frame end pulse FEND is supplied, a value corresponding to "residual number of codes / 3 in the current frame" is subtracted from the accumulated result, accumulation is continued. また、フレームアドレスFADがループ終了フレームLEFである旨を示すループ終了フレーム検出信号LEFFが供給されると、1/3サンプル累算器144は、以下のように動作する。 Also, when the loop end frame detection signal LEFF indicating frame address FAD is the loop end frame LEF is supplied, 1/3 sample accumulator 144 operates as follows. すなわち、1/3サンプル累算器144においては、累算結果ACがループ終了点LEPに対応する値に達すると、ループエンド検出信号LENDを出力するとともに、該累算結果ACがループ開始点LSPに対応する値に強制的にリセットされる。 That is, in the 1/3 sample accumulator 144, when the accumulation result AC reaches a value corresponding to the loop end point LEP, and outputs a loop end detection signal LEND, 該累 calculation results AC loop start point LSP It is forcibly reset to a value corresponding to.
【0024】 [0024]
次に、142はフレームカウンタであり、ここには制御レジスタ120内に記憶されたアタック開始フレームASF、ループ開始フレームLSFおよびループ終了フレームLEFが供給される。 Next, 142 is a frame counter, wherein the attack start frame ASF stored in the control register 120, the loop start frame LSF and loop end frame LEF is supplied. そして、フレームカウンタ142においては、アタック開始フレームASFを初期値として、上記フレーム終了パルスFENDが供給される毎にカウント結果を「1」フレーム分のアドレス数(この場合は「10」)づづインクリメントする。 Then, in the frame counter 142, the attack start frame ASF as an initial value, the count result for each of the frame end pulse FEND is supplied "1" frame number address (in this case, "10") increments Dzudzu . このカウント結果がフレームアドレスFADとして出力される。 The count result is output as the frame address FAD. そして、フレームカウンタ142のカウント結果がループ終了フレームLEFに一致すると、上述したループ終了フレーム検出信号LEFFがフレームカウンタ142から1/3サンプル累算器144に出力される。 When the counting result of the frame counter 142 matches the loop end frame LEF, loop end frame detection signal LEFF described above is output from the frame counter 142 to 1/3 sample accumulator 144. しかる後に、1/3サンプル累算器144からフレームカウンタ142に対してループエンド検出信号LENDが供給されると、フレームカウンタ142においては、フレームアドレスFADがループ開始フレームLSFに強制的にリセットされる。 Thereafter, when the loop end detection signal LEND to the frame counter 142 from 1/3 sample accumulator 144 is supplied, in the frame counter 142, a frame address FAD is forcibly reset to the loop start frame LSF . 146は合成部であり、上記フレームアドレスFADとサブフレームアドレスSFADとを合成し、その結果を合成フレームアドレスGFADとして出力する。 146 is a synthetic unit synthesizes the above frame address FAD and the sub-frame address SFAD, and outputs the result as a composite frame address GFAD. なお、ここでのサンプリング周期は、音源部100の各ブロックが動作の基準としているサンプリング周期ではなく、波形メモリに記憶されている波形データの各サンプルの記録順としてのサンプリング周期である。 The sampling period here is not the sampling period each block of the sound source unit 100 is a reference of operation, the sampling period of the recording order of each sample of the waveform data stored in the waveform memory.
【0025】 [0025]
1.2.3. 1.2.3. デコーダ部110の構成次に、デコーダ部110の詳細構成を図5を参照し説明する。 Configuration of the decoder unit 110 Next, detailed configuration of the decoder unit 110 will be described with reference to FIG.
図において160は逆量子化部であり、残差符号と量子化幅とに基づいて、予測値と実際値の残差である残差値を出力する。 160 in the figure is an inverse quantization unit, based on the residual code and the quantization scale, and outputs the residual value is a residual of the actual value and the predicted value. 162は線形予測部であり、過去の「2」サンプリング周期におけるサンプリング値D1,D2と予測係数とに対して所定の生成多項式を適用することにより、最新のサンプリング周期におけるサンプリング値の予測値を算出する。 162 is a linear prediction unit, by applying a predetermined generator polynomial with respect to the prediction coefficient and the sampling values ​​D1, D2 in the past "2" sampling period, calculates a predicted value of the sampling values ​​in the latest sampling period to. 164は加算器であり、この予測値と残差値とを加算することにより、最新のサンプリング周期におけるサンプリング値を算出する。 164 is an adder, by adding the the predicted value and the residual value, to calculate the sampled value at the latest sampling period.
【0026】 [0026]
168はループスタートサンプリング値バッファであり、ループスタートフレームアドレスLSの直前フレームにおける最後の「2」サンプリング値を記憶する。 168 is a loop start sampling value buffer stores the last "2" sampling value immediately before the frame of the loop start frame address LS. 166は波形データキャッシュメモリであり、算出されたサンプリング値を複数周期に渡って記憶するとともに、過去の「2」サンプリング周期におけるサンプリング値D1,D2を上記線形予測部162に供給する。 166 is a waveform data cache memory stores across the calculated sampling value a plurality of cycles, and supplies the sampling value D1, D2 in the past "2" sampling cycle to the linear prediction unit 162.
【0027】 [0027]
但し、現在のサンプリング周期がループ開始点LSPである場合は、ループスタートサンプリング値バッファ168に記憶された「2」サンプリング値がD1,D2として線形予測部162に供給される。 However, if the current sampling period is the loop start point LSP, stored in loop start sampling value buffer 168 "2" sampling value is supplied to the linear prediction unit 162 as D1, D2. また、現在のサンプリング周期がループ開始点LSPの次のサンプリング周期である場合は、ループ開始点LSPのサンプリング値がD1として、バッファ168に記憶された最後の「1」サンプリング値がD2として線形予測部162に供給される。 Further, if the current sampling period is the next sampling cycle of the loop starting point LSP, linear prediction as the sampling value of the loop start point LSP is D1, as the last "1" sampling values ​​stored in the buffer 168 is D2 It is supplied to the section 162. これは、アタック区間からループ区間に移行した時と、ループ区間の繰り返し再生を行っている時とにおいて、ループ区間の再生結果を一致させるためである。 This is a case where transition from the attack section to the loop section, in the case that performing the repeated reproduction of the loop section, in order to match the reproduction result of the loop section.
【0028】 [0028]
以上の本実施形態では、楽音のピッチに応じた速さで増加するサンプルアドレスSCNTに応じて、残差情報キャッシュ部108から順次残差符号を取り出してデコードしている。 In the above embodiment, depending on the sample address SCNT to increase at a rate corresponding to the pitch of the musical tone, and decodes removed sequentially residue code from the residual information cache unit 108. そして、残差情報キャッシュ部108内にサンプルアドレスSCNTに対応する残差符号が無ければ、その残差符号を含むサブフレームのアドレスGFADがアドレス発生部104からフレーム読出し部102に供給され、該アドレスGFADにより読み出されたサブフレームの残差符号が残差情報キャッシュ部108に補充される。 Then, if there is no residual code corresponding to the sample address SCNT to the residual information in the cache unit 108, the address GFAD subframe including the residual code supplied from the address generator 104 to the frame reading unit 102, the address residue code of the sub-frame read by GFAD is replenished to the residual information cache unit 108. 読み出されたサブフレームに含まれる副情報は、同時に副情報デコード部106にも供給され、フレーム毎に副情報が再生される。 Sub information contained in the sub-frames read is supplied to the sub information decoding unit 106 at the same time, the sub information is reproduced for each frame.
【0029】 [0029]
残差符号を復号するためには各フレームの副情報が必要であるが、本実施形態では残差符号のために読み出されたサブフレームから副情報が再生されるので、別途RAM2をアクセスして副情報を読み出す必要が無い。 Although in order to decode the residual code is necessary side information in each frame, in the present embodiment since the sub-information from the sub-frames read for the residual code is reproduced, it accesses a separate RAM2 there is no need to read the sub-information Te. そのため、伸長に必要な副情報を供給する回路の構成をきわめて簡単にすることができる。 Therefore, it is possible to extremely simplify the construction of the circuit for supplying the sub-information necessary for decompression. また、本実施形態では、CPU6等の他のデバイスと共有されたバスライン14を使用して波形メモリをアクセスしているが、各発音チャンネル毎の波形メモリへのアクセス頻度が略一定であり、あまり変動しないので、他のデバイスの動作に与える悪影響が少ない。 Further, in the present embodiment, by accessing the waveform memory using the bus line 14, which is shared with other devices such as CPU 6, the frequency of access to the waveform memory for each sound channel is substantially constant, because so much does not change, the less adverse effect on the operation of other devices.
【0030】 [0030]
1.3. 1.3. 実施形態の動作 Operation of the Embodiment
1.3.1. 1.3.1. 圧縮処理 Compression processing
(1)全体動作まず、通信I/O部12等を介して未圧縮状態の波形データがRAM2に供給される。 (1) Overall Operation First, waveform data of the uncompressed state through the communication I / O unit 12 or the like is supplied to the RAM 2. そして、当該波形データに対してループ再生を行う場合には、ユーザによって仮のループ区間が設定される。 Then, when performing loop reproduction with respect to the waveform data, temporary loop interval is set by the user. すなわち、任意の「2」のサンプリング点が仮ループ開始点/終了点として指定される。 That is, an arbitrary sampling point of "2" is designated as the temporary loop start point / end point. ここで、仮ループ開始点/終了点が所定の「ループ条件」を満たさない場合には、ループ条件を満たすように適宜波形データが修正される。 Here, when a temporary loop start point / end point does not satisfy the "loop condition" given the appropriate waveform data is modified so as to satisfy the loop condition. ここで、「ループ条件」とは、上記仮ループ開始点の前後の数サンプルと、上記仮ループ終了点の前後の数サンプルが、レベル方向および時間方向にほぼ一致している、とする条件である。 Here, the "loop condition", and several samples before and after the temporary loop starting point, several samples before and after the temporary loop end point, substantially coincides with the level and time directions, with conditions that is there. この「ループ条件」が満たされていれば、該波形データの該仮ループ開始点と終了点の間をループ読み出しして再生したときに、該読み出しが該仮ループ終了点から該仮ループ開始点へリターンする部分が滑らかにつながるので不快なノイズが発生しない。 If this "loop condition" is satisfied, between the tentative loop start and end points of the waveform data when playing loops read, tentative loop starting point the read from the temporary loop end point unpleasant noise does not occur because the portion of the return leads to smooth to. そして、該波形データが複数の「フレーム」に対応する「フレーム区間」に分割される。 Then, the waveform data are divided into the "frame period" corresponding to a plurality of "frames". その際、各波形データの再生時に求められる精度や波形レベルの変動の複雑さ等に基づいて、実時間上のフレームサイズ(すなわち「120/ビット数bn」)が決定される。 At that time, based on the complexity or the like of the variation in the accuracy and waveform level required at the time of reproduction of the waveform data, the frame size on the real-time (i.e., "120 / number of bits bn") is determined.
【0031】 [0031]
また、波形データを複数のフレームに分割する際には、図8(b)または図(c)に示される一部「2」フレームにおける伸長パラメータの共通化(詳細は後述する)を実現するため、仮ループ開始点が属するフレームから3フレームの区間と、仮ループ終了点が属するフレーム区間の計「4」区間については、該フレームのサンプル数(各フレームの圧縮に使用されるビット数に応じて決定される)が同一になるよう設定される。 Also, when dividing the waveform data into a plurality of frames, and FIG. 8 (b) or part "2" shown in FIG. (C) common extension parameter in the frame (details will be described later) for realizing the , a section of the three frames from a frame temporary loop starting point belongs, for a total of "4" sections of the frame section temporary loop end point belongs, depending on the number of bits used to compress the number of samples (each frame of the frame is determined Te) is set to be the same. なお、上記「2」フレームの伸長パラメータの共通化のためには、最低その「2」フレーム区間さえ揃っていればよいが、処理の簡単化のため、ここでは上記「4」フレーム区間のサンプル数を揃えるようにしている。 Incidentally, for the common extension parameter of the "2" frames, a minimum its "2" frame sections even it is enough uniform, for simplification of the process, samples of the "4" frame section herein so that align the number. また、ループ開始点が属するフレームからループ終了点が属するフレームまでの各フレーム区間のサンプル数を揃えるようにすれば、処理はさらに簡単化になる。 Further, if to align the number of samples of each frame section of the frame loop start point belongs to the frame where the loop end point belongs becomes more simplified processing.
【0032】 [0032]
次に、ユーザによって所定の操作が行われると、図6に示す圧縮処理ルーチンが起動される。 Then, when a predetermined operation is performed by the user, the compression process routine shown in FIG 6 is started. 図6において処理がステップSP102に進むと、ユーザによって指定された仮ループ開始点が変数LSP1に、また仮ループ終了点が変数LEP1に代入される。 When the process proceeds to step SP102 in FIG. 6, the temporary loop start point specified by the user in a variable LSP1, also temporary loop end point is assigned to the variable LEP1. なお、波形データのうち、先頭のサンプリング点から仮ループ開始点LSP1の直前までの範囲を「A区間」、仮ループ開始点LSP1から仮ループ終了点LEP1までの区間を「B区間」、仮ループ終了点LEP1より後の区間を「C区間」と呼ぶ。 Among the waveform data, the top "A section" the range from the sampling point immediately before the temporary loop start point LSP1 of the section from the temporary loop start point LSP1 to temporary loop end point LEP1 "B section", the temporary loop a section of the later than the end point LEP1 referred to as the "C section". 次に、処理がステップSP104に進むと、波形データの先頭フレーム区間の内容が参照される。 At next step SP104, the contents of the first frame segment of the waveform data is referred to. 次に、処理がステップSP106に進むと、参照されているフレーム区間に仮ループ開始点LSP1が含まれるか否かが判定される。 Then, at step SP106, whether the Referenced frame section includes temporary loop start point LSP1 is determined.
【0033】 [0033]
ここで「NO」と判定されると、処理はステップSP108に進み、参照されているフレーム区間の波形データに対し、自己相関法や共分散法に基づく予測係数算出演算と波形圧縮演算の試行を繰り返すことにより、伸長パラメータ(ビット数bn,予測係数,量子化幅)およびその他副情報が決定され、当該フレーム区間の波形データに対して該伸長パラメータを使用した圧縮処理が実行される。 If the decision is "NO", the procedure goes to step SP108, to the waveform data of the referenced frame section, the prediction coefficient calculation operation and a waveform compression operation attempts based on the autocorrelation method or the covariance method by repeating the elongation parameters (number of bits bn, prediction coefficients, quantization width), and other side information are determined, the compression processing using 該伸 length parameter for the waveform data of the frame section is executed. すなわち、当該フレーム区間に対応するフレームの残差符号と、その前のフレームの副情報とが形成され、RAM2に記憶される。 That is, the residual code of the frame corresponding to the frame section, is a sub-information formation of the previous frame, stored in the RAM 2. 次に、処理がステップSP110に進むと、圧縮処理された次のフレーム区間が参照される。 At next step SPIlO, compression processed next frame period is referred to. 次に、処理がステップSP112に進むと、未だ圧縮処理されていないフレーム区間が存在するか否かが判定される。 Then, at step SP112, whether the frame section that has not yet been compressed is present is determined. 圧縮処理されていないフレーム区間が存在する場合にはここで「YES」と判定され、処理はステップSP106に戻る。 Here the decision is "YES" if the frame section is not compressed is present, the process returns to step SP106. 以下、仮ループ開始点LSP1を含むフレーム区間が参照されるまで、ステップSP106〜SP112の処理が繰り返され、参照されているフレームの区間の波形データが順次圧縮され、残差符号と副情報とが順次RAM2に記憶されていくことになる。 Hereinafter, until the frame section including a temporary loop start point LSP1 is referenced, the process of step SP106~SP112 are repeated, the waveform data of the section of the referenced frame are sequentially compressed, and the residue code and sub information so that is sequentially RAM2 in memory. なお、ループ区間が元々仮設定されていなかった場合には、最終フレームまでステップSP106〜SP112の処理が繰り返され、全フレームの圧縮処理が施された後、本ルーチンの処理は終了する。 In the case where the loop section has not been originally tentatively set, the processing of step SP106~SP112 is repeated until the last frame, after the compression processing of all frames has been performed, the process of the present routine is terminated.
【0034】 [0034]
ここで、仮ループ開始点LSP1を含むフレームがステップSP110において参照された後に処理がステップSP106に進むと、ここで「YES」と判定され、処理はステップSP114に進む。 Here, the process after the frame containing the temporary loop start point LSP1 is referred to in step SP110 proceeds to step SP106, where the decision is "YES", the processing proceeds to step SP114. ここでは、仮ループ開始点/終了点LSP1,LEP1の位置を調節した結果が各々ループ開始/終了点LSP,LEPとして設定される。 Here, the temporary loop start point / end point LSP1, position result of adjusting the LEP1 are each loop start / end point LSP, it is set as the LEP. この結果、ループ開始点LSPを含むループ開始フレームLSFは、元々仮ループ開始点LSP1が含まれていたフレームの次のフレームになる場合もある。 As a result, the loop start frame LSF including the loop start point LSP is sometimes originally become the next frame of the frame contains the temporary loop start point LSP1. なお、このステップSP114の詳細な内容については後述する。 The detailed contents of this step SP114 will be described later. 次に、処理がステップSP116に進むと、調節後のループ区間含む各フレームに関して、実時間上のフレームサイズ(ビット数bn),予測係数,量子化幅およびその他の副情報が決定され、これら各フレームに対して圧縮処理が実行される。 At next step SP116, for each frame containing a loop section after adjustment, the frame size on a real-time (the number of bits bn), prediction coefficients, quantization width and other sub information are determined, each of these compression processing with respect to the frame is performed. なお、このステップSP116の詳細についても後述する。 Will be described later also details of the step SP116. 以上のステップにより、本ルーチンの処理が終了する。 By the above steps, the process of the present routine is terminated.
【0035】 [0035]
(2)ループ開始/終了点LSP,LEPの調節(SP114) (2) loop start / end point LSP, regulation of LEP (SP114)
ここで、上記ステップSP114におけるループ開始/終了点の調節処理の詳細を図7を参照し説明する。 Here, the details of the regulation process of the loop start / end point in step SP114 will be described with reference to FIG. 図7(a)は、録音された波形データの波形図であり、同図(b)はそのフレーム境界(分割点)を示す図である。 7 (a) is a waveform diagram of a recording waveform data, FIG. (B) is a diagram showing the frame boundary (split point). 同図(b)において縦線がフレーム境界に該当する。 Vertical line corresponds to the frame boundary in FIG. (B). これらの図においてLSP1およびLEP1は、上記ステップSP102において設定された仮ループ開始点および終了点である。 LSP1 and LEP1 In these figures, a temporary loop start and end points set in the step SP 102. また、同図(c)は、上述したステップSP114において調整された結果であるループ開始/終了点LSP,LEPの位置を示す。 Further, FIG. (C) shows the loop start / end point LSP which is a result of the adjustment in the step SP114 described above, the position of the LEP.
【0036】 [0036]
まず、調整後のループ終了点LEPは、仮ループ終了点LEP1の属するフレーム(ループ終了フレームLEF)の最終サンプリング点に設定される。 First, the loop end point LEP after adjustment is set to the last sampling point of a frame belongs temporary loop end point LEP1 (loop end frame LEF). そして、調整後のループ開始点LSPは、仮ループ開始点LSP1よりも「仮ループ終了点LEP1からループ終了点LEPに至るまでのサンプリング数」だけ後のサンプリング点に設定される。 Then, the loop start point LSP after adjustment is set to the sampling points after only "sampling number from the temporary loop end point LEP1 up to the loop end point LEP" than temporary loop start point LSP1. そして、仮ループ開始点LSP1からループ開始点LSPまでの各サンプリング値が、仮ループ終了点LEP1からループ終了点LEPまでの区間にコピーされるのである。 Each sampling value from the temporary loop start point LSP1 until the loop start point LSP is of being copied to the section from the temporary loop end point LEP1 until the loop end point LEP. なお、ループ終了点LEP以降の波形データは不要であるために破棄される。 The waveform data after the loop end point LEP is discarded because it is not necessary.
【0037】 [0037]
ここで、仮ループ開始点/終了点LSP1,LEP1に基づいて該波形データを再生したと仮定した場合の出力信号について検討する。 Here, consider the output signal assumed reproducing the waveform data based on the temporary loop start point / end point LSP1, LEP1. 図7(b)を参照すると、まずA区間の波形データが最初に「1」回だけ再生され、しかる後にB区間の波形データが繰り返し再生されることが解る。 Referring to FIG. 7 (b), the first waveform data of section A is reproduced only the first "1" once, it can be seen that waveform data of section B and thereafter is repeatedly reproduced. 次に、調整後のループ開始/終了点LSP,LEPに基づいて該波形データを再生したと仮定した場合の出力信号について検討する。 Next, the loop start / end point LSP after adjustment, consider the output signal assumed reproducing the waveform data based on the LEP. 図7(c)によれば、ループ開始点LSPの直前までの区間(すなわちA区間の全体+B区間の先頭部分)が「1」回だけ再生され、しかる後にループ開始/終了点LSP,LEP間の区間(すなわちB区間の先頭部分以外の部分+B区間の先頭部分)が繰り返し再生されることが解る。 According to FIG. 7 (c), the period just before the loop start point LSP (i.e. the top portion of the total + B section of the A section) is reproduced by "1" once, the loop start / end point LSP Thereafter, between LEP intervals (i.e., the top portion of the head portion other than the portion + B section B section) is repeatedly played it is seen. すなわち、何れの場合においても、再生される波形データには全く相違が生じないのである。 That is, in any case, it is not at all occur difference in the waveform data reproduced.
【0038】 [0038]
このように、本実施形態によれば、ループ終了点LEPをフレーム境界に一致させるべく仮ループ開始点/終了点LSP1,LEP1をシフトしてループ開始/終了点LSP,LEPの位置を設定したにもかかわらず、シフトを行わなかった場合と全く同様の、ループ読み出しによるノイズの含まれない楽音信号を生成することができる。 Thus, according to this embodiment, the loop end point LEP to match the frame boundary temporary loop start point / end point LSP1, LEP1 shifted the loop start / end point LSP, to set the position of the LEP Nevertheless, exactly the same as if you did not shift, it is possible to generate a musical tone signal which does not include noise due to the loop readout. これにより、波形データに対する時間軸方向の圧縮/伸長等は不要になり、高品質な楽音再生を可能にしつつループ終了点LEPをループ終了点LEPをフレーム境界に一致させることができるのである。 Thus, compression / decompression, etc. in the time axis direction with respect to the waveform data is not required, it is the loop end point LEP while allowing high-quality tone reproduction than the loop end point LEP can be made to coincide with the frame boundary.
【0039】 [0039]
(3)各フレームに対する伸長パラメータの決定(SP116) (3) Determination of extension parameters for each frame (SP116)
次に、上記ステップSP116における伸長パラメータ決定処理の詳細について図8を参照し説明する。 Details of the extension parameter determination processing in step SP116 will be described with reference to FIG. まず、波形データが全「8」フレーム(フレームF1〜F8)から成るとともにループ区間が設定されていなかった場合の各フレームの構成を図8(a)に示す。 First, the structure of each frame in the case where the waveform data has not loop region is set with consist of all "8" frames (frames F1 to F8) in FIG. 8 (a). 図においてフレームF1〜F8には、各々残差符号W1〜W8が含まれている。 Frame F1~F8 in FIG includes a respective residual code W1 to W8. そして、これら残差符号W1〜W8のデコードに適用される伸長パラメータをP1〜P8とする。 Then, the extension parameters that apply to the decoding of residual code W1~W8 and P1 to P8. そして、最初のフレームF1に適用される伸長パラメータP1はヘッダ部210に記憶され、各フレームF1〜F7には、次に再生されるフレームに対する残差符号W2〜W8に適用される伸長パラメータP2〜P8が記憶されることになる。 The extended parameter P1 is the applied to the first frame F1 is stored in the header section 210, in each frame F1-F7, extension then applied to the residual code W2~W8 for a frame to be reproduced parameter P2~ so that P8 is stored.
【0040】 [0040]
次に、上記波形データに対してループ区間が設定された場合の処理を図8(b)を参照し説明する。 Next, the process reference to FIG. 8 (b) will be described in a case where the loop section is set for the waveform data. 図示の例においては、フレームF4の途中にループ開始点LSPが設定され、フレームF8の最終サンプリング点にループ終了点LEPが設定されている。 In the illustrated example, is set in the middle in the loop starting point LSP frame F4, the loop end point LEP is set to the last sampling point of a frame F8. そして、フレームF4,F8には、共通の伸長パラメータPX1が適用される。 Then, the frame F4, F8 is applied common elongation parameters PX1. このため、フレームF4,F8には、この伸長パラメータPX1によって符号化された残差符号W41,W81が各々記憶されることになる。 Therefore, the frame F4, F8 would this extension parameter PX1 encoded residual code W41, W81 by are respectively stored. さらに、フレームF4,F8の直前に各々再生されるフレームF3,F7には、当該伸長パラメータPX1が記憶されることになる。 Furthermore, the frame F3, F7, each of which is reproduced until the frame F4, F8 would the extension parameter PX1 are stored.
【0041】 [0041]
そして、フレームF8には、該フレームF8の「2」フレーム後に再生される(フレームF4の次に再生される)フレームであるフレームF5に適用される伸長パラメータP5が記憶される。 Then, the frame F8 is extended parameter P5 to be applied to the frame F5 is "2" is reproduced after the frame (be reproduced next frame F4) frame of the frame F8 is stored. これは、ループ再生時においてはフレームF4は途中から(ループ開始点LSPから)読み出されるため、フレームF4に含まれる伸長パラメータP5を完全に復元することができなくなることに鑑みてである。 This, during loop playback for frame F4 is read from the middle (the loop start point LSP), it is in view of the fact that it is impossible to completely restore the elongation parameter P5 included in the frame F4.
【0042】 [0042]
上述したように、フレームF4,F8には、共通の伸長パラメータPX1が適用されるが、この伸長パラメータPX1の決定方法について説明しておく。 As described above, the frame F4, F8 is applied common extension parameter PX1, previously described method of determining the extension parameter PX1. 図9(a)に示すように、フレームF8,F4の部分を連結した波形データを想定し、この波形データに対して自己相関法や共分散法に基づく予測係数算出演算と波形圧縮演算の試行を繰り返すことにより、伸長バラメータPX1を決定することが考えられる。 As shown in FIG. 9 (a), assuming a waveform data obtained by connecting portions of the frame F8, F4, attempts prediction coefficient calculating operation and the waveform compression operation based on the autocorrelation method or the covariance method for this waveform data by repeating, it is conceivable to determine the elongation Barameta PX1. また、同図(b)に示すように、両フレームの波形データをクロスフェードして成る波形データに基づいて伸長パラメータPX1を決定してもよい。 Further, as shown in FIG. (B), the waveform data of both frames may be determined extension parameter PX1 on the basis of the waveform data formed by cross-fade. また、フレームF4,F8はループ再生時に連結されるフレームであるため、両者の波形データは類似の特性を有する傾向が強い。 The frame F4, F8 since a frame to be coupled during loop playback, both the waveform data has a strong tendency to have similar characteristics. このため、フレームF4,F8に係る波形データのうち一方のみに基づいて伸長パラメータPX1を決定しても差し支えない場合が多い。 Therefore, in many cases no harm be determined extension parameter PX1 based only on one of the waveform data according to the frame F4, F8. かかる場合には、図9(c)に示すように、ループ再生を行わない場合(図8(a))における伸長パラメータP4,P8の何れか一方(図示の場合はP8)を伸長パラメータPX1として用いてもよい。 In such a case, as shown in FIG. 9 (c), as the case without the loop playback decompresses (FIG. 8 (a)) either the extension parameter P4, P8 in (P8 in the illustrated) parameters PX1 it may be used.
【0043】 [0043]
1.3.2. 1.3.2. 再生処理次に、本実施形態における再生処理について説明する。 Reproduction processing will be described next regeneration process in the present embodiment. 周知の電子楽器と同様に、SMF(スタンダードMIDIファイル)形式の曲データの自動演奏を実行したり、あるいは、通信I/O部12等を介してMIDI信号を入力することにより、ノートオンイベントが発生すると、該イベントが音源部100の有する複数発音チャンネルの何れかに割り当てられる。 Like the known electronic musical instrument, and perform automatic performance of the music data SMF (Standard MIDI File) format, or by inputting a MIDI signal via the communication I / O unit 12 or the like, note-on event If occurs, the event is assigned to one of a plurality sound channel with the sound source unit 100. 次に、CPU6制御の下、該イベントの示す演奏パートで選択されている音色、および、同イベントの示す音高、強度に対応した楽音生成のための各種パラメータが、制御レジスタ120の割り当てられた当該発音チャンネルに対応する個所に書き込まれる。 Then, under the CPU6 control, tone color selected in the performance part indicated by the event, and, pitch indicated by the same event, various parameters for the tone generation corresponding to the intensity was assigned Control Register 120 It is written in a location corresponding to the sound channel.
【0044】 [0044]
このとき制御レジスタ120に書き込まれるパラメータには、1/3周波数ナンバ、アタック開始フレームASF、ループ開始/終了フレームLSF,LEFおよびループ開始/終了点LSP,LEP、各種音量EGパラメータ等の情報も含まれる。 This time parameter to be written to the control register 120, contains 1/3 frequency number, the attack start frame ASF, loop start / end frame LSF, LEF and loop start / end point LSP, LEP, also information such as various volume EG parameter It is. さらに、CPU6が当該発音チャンネルに対して発音開始を指示することにより、音源部100において、当該発音チャンネルに係る再生処理が開始される。 Furthermore, by CPU6 instructs the start of sounding respect to the sound channel, the sound source unit 100, the reproduction processing according to the sound channel is started. 該再生処理では、RAM2からの波形データのサブフレーム単位の読み出し、該サブフレームに含まれる各残差符号のデコード、デコードされた波形データに対する音量エンベロープの付与等が行われ、このようにして生成された当該発音チャンネルの楽音信号は、他の発音チャンネルの楽音信号とミキシングされアナログ信号に変換される。 In regeneration process reads the subframe of the waveform data from the RAM 2, the decoding of the residual code included in the sub-frame, such as addition of volume envelope for the decoded waveform data is carried out, thus generated tone signal of the sound channels that are are converted into tone signals and mixed by analog signals of other sound channels.
【0045】 [0045]
前記サブフレーム単位の読み出しにおいては、前記イベントで指示された音高に対応する速さで増加するサンプルアドレスSCNTが累算器144、乗算器150により生成され、SCNTに応じた残差符号が、残差情報キャッシュ108に既に読み込まれている残差符号の中から取り出され、デコーダ部110に供給される。 In reading the sub-frame, the sample address SCNT is accumulator 144 to increase at a rate corresponding to tone pitch indicated by the event, generated by the multiplier 150, the residual code corresponding to SCNT, retrieved from the residual code to the residual information cache 108 is already loaded and supplied to the decoder section 110. 残差情報キャッシュ108にSCNTに応じた残差符号が読み込まれていない場合は、次のサブフレームを読み出すための合成フレームアドレスGFADが、フレームカウンタ142、累算器144、加算器146、変換部148により生成される。 If residual code corresponding to SCNT to the residual information cache 108 is not loaded, the composite frame address GFAD for reading the next sub-frame, frame counter 142, accumulator 144, an adder 146, a conversion unit 148 produced by. フレーム読み出し部102によりRAM2からGFADの示すサブフレームが読み出され、読み出されたサブフレームの残差符号が残差情報キャッシュ108に供給されるとともに、同サブフレームの副情報が副情報デコーダ部106に供給される。 Frame readout unit 102 is a sub-frame indicated from RAM2 of GFAD read, along with the residue code of the sub-frames read is supplied to the residual information cache 108, the sub-information in the same sub-frame sub information decoder It is supplied to the 106.
【0046】 [0046]
ここで、ループ再生時における動作の具体例を図11を参照し説明しておく。 Here, a specific example of the operation during loop playback with reference to FIG. 11 described. まず、ループ開始/終了フレームLSF,LEFのビット数bnが「4」(残差符号数が「30」)であって、ループ終了点LEPがループ終了フレームLEFの最終サンプリング点であり、ループ開始点LSPがループ開始フレームLSFの「15」番目のサンプリング点であったとする。 First, the loop start / end frame LSF, a number of bits of LEF bn "4" (residual number code "30"), is the final sampling point of the loop end point LEP loop end frame LEF, loop start point LSP is assumed to be "15" th sampling point of the loop start frame LSF. この実施形態では、ループ終了フレームLEFとループ開始フレームLSFの伸長パラメータを共通化することが要件である。 In this embodiment, it is a requirement that a common extension parameters of the loop end frame LEF and loop start frame LSF. また、ループ終了フレームの「28」番目の残差符号まで再生が終了したサンプリング周期の次のサンプリング周期に、1/3サンプル累算器144においてfナンバの「1/3」が累算され、サンプルアドレス整数部SCNTiが「4」だけ増加したとする。 Also, the next sampling period of the sampling period has finished playing to "28" th residue code loop end frame, is accumulated "1/3" of the f-number in 1/3 sample accumulator 144, sample address integer part SCNTi it is assumed that the increase only "4".
【0047】 [0047]
上記例においては、1/3サンプル累算器144からはループエンド検出信号LENDが出力され、フレームカウンタ142におけるフレームアドレスFADはループ開始フレームLSFに設定される。 In the above example, from 1/3 sample accumulator 144 is output loop end detection signal LEND, frame address FAD of the frame counter 142 is set in the loop start frame LSF. また、ループ開始点LSPが「15」番目のサンプルであったとすると、次の再生点(ループ終了フレームの「28」番目の残差符号から「4」サンプル進んだ点)はループ開始フレームLSFの「16」番目のサンプリング点になる。 Further, the loop start point LSP is assumed to be "15" th sample, the next playback point (loop end frame "28" th from residue code "4" samples advanced point) is the loop start frame LSF It becomes "16" th sampling point. 本実施形態においては、「線形予測方式」を採用しているため、各再生点間に属する全ての残差符号を順次復号してゆかなければ各再生点におけるサンプリング値を得ることはできない。 In the present embodiment, because it uses the "linear prediction method", it can not be obtained sampling value at each reproduction point if Yuka sequentially decodes all residual code belonging between each reproduction point. このため、次の再生点に至る迄の全ての残差符号(図上でハッチングを施した部分の残差符号)を得ておく必要がある。 Therefore, it is necessary to get all of the residual code of up to the next playback point (residual code of hatched portions in the diagram).
【0048】 [0048]
本実施形態において残差符号はサブフレーム単位で読み出される。 Residue code in the present embodiment is read in units of sub-frame. 従って、図11の例においては、元々ループ終了フレームLEFの「28」番目の残差符号まで再生されていたため、ハッチングを施した残差符号のうち「29」,「30」番目の残差符号は既に残差情報キャッシュ部108に取り込まれている筈である。 Thus, in the example of FIG. 11, since that has been reproduced originally to "28" th residue code loop end frame LEF, among residual code hatched "29", "30" th residue code It ought already taken into residual information cache unit 108. そして、未だ得られていないループ開始フレームLSF内の「15」,「16」番目のサンプルを得るために、「2」のサブフレームSF04,SF05がRAM2から読み出されることになる。 Then, "15" in the loop start frame LSF not yet been obtained, in order to obtain the "16" th sample, subframe SF04, SF05 "2" is to be read from the RAM 2.
【0049】 [0049]
すなわち、当該サンプリング周期では、まず、残差情報キャッシュ部108から既に取り込まれているループ終了フレームの「29」と「30」番目の残差符号が順次デコーダ部106に供給される。 That is, in the sampling cycle, firstly, the residue code as "29", "30" th loop end frame from the residual information cache unit 108 has already been taken is sequentially supplied to the decoder unit 106. 次に、サブフレームSF04が読み出されたとき、該サブフレームに含まれる残差符号が残差情報キャッシュ部108に取り込まれ、その中からループ開始フレームの「15」番目の残差符号がデコーダ部106に供給される。 Then, when the sub-frame SF04 is read, residue code contained in the sub-frame is taken to the residual information cache unit 108, is "15" th residue code loop start frame from the decoder It is supplied to the section 106. さらに、サブフレームSF05が読み出されたとき、該サブフレームに含まれる残差符号が残差情報キャッシュ部108等に取り込まれ、「16」番目の残差符号がデコーダ部106に供給される。 Further, when the sub-frame SF05 is read, residue code contained in the sub-frame is taken to the residual information cache unit 108 and the like, "16" th residue code is supplied to the decoder section 106. この場合、残差情報キャッシュ部108は各発音チャンネルあたり最低限「1」サブフレーム分の容量を持っていれば動作可能であるが、さらに発音チャンネルあたり数サブフレーム分の容量を持たせることにより、フレーム読み出し部102、残差情報キャッシュ部108等のタイミング設計が容易になる。 In this case, although the residual information cache unit 108 is operable if you have a capacity of minimum "1" sub-frame per each sounding channel, by further providing the capacity of the number of per tone generating channels subframe , the frame reading unit 102, the timing design of such residual information cache unit 108 is facilitated. 何れにしても、残差情報キャッシュ部108には1フレームに相当する10サブフレームもの容量は必要ない。 In any case, the capacity of even 10 subframes corresponding to one frame to the residual information cache unit 108 is not necessary.
【0050】 [0050]
ここで、ループ再生時において再生されるフレームと、当該フレームに適用される副情報との関係を図10(a)、(b)に示す。 Here, a frame to be reproduced during loop playback, the relationship between the sub-information to be applied to the frame in FIG. 10 (a), (b). フレームF6、F7、F8の残差符号の伸長には、各々直前のフレームに記憶されている伸長パラメータP6、P7、PX1が適用されている。 Frame F6, F7, F8 extension of the residue code of the extension are stored in each previous frame parameter P6, P7, PX1 is applied. 上述したように、ループ終了フレームF8の読み出しに続いてループ開始フレームF4が読み出されるが、この2つのフレームの伸長パラメータは共通とされているので、ループ開始フレームF4ではループ終了フレームF8で適用されていた伸長パラメータPX1が引き続き残差符号の伸長に適用される。 As described above, the loop start frame F4 Following the reading of the loop end frame F8 is read, extension parameters of the two frames because it is common, is applied in a loop ending frame F8 In the loop start frame F4 which was extended parameter PX1 is subsequently applied to the extension of the residue code. 次のフレームF5からは、再び、各々そのフレームF5、F6・・・の直前のフレームに記憶されている伸長パラメータP5、P6・・・が適用される。 From the next frame F5, again, each the frame F5, F6 extension is stored in the previous frame of ... parameter P5, P6, ... are applied.
【0051】 [0051]
以上のように、本実施形態によれば、時間軸方向の圧縮/伸長等、波形データの品質を劣化させる処理を行うことなくループ終了点LEPをフレーム境界に一致させることができる。 As described above, according to this embodiment, it is possible to match the compression / decompression, etc. in the time axis direction, the loop end point LEP without performing a process of degrading the quality of the waveform data to the frame boundary. そして、ループ開始/終了フレームLSF,LEFに適用される伸長パラメータPX1を共通にしてループ終了フレームLEF直前のフレームに含ませるとともに、ループ開始フレームLSFの次のフレームに適用される伸長パラメータP5をループ開始/終了フレームLSF,LEFの双方に含ませたから、ループ開始点LSPを途中に含むループ開始フレームLSFを再生するときに直前のループ終了フレームLEFで適用していた伸長パラメータPX1を継続的に適用することができるので、全てのフレームを支障なくループ再生することができる。 The loop start / end frame LSF, causes included in the loop end frame LEF previous frame and the extended parameter PX1 to be commonly applied to LEF, loop extension parameter P5 to be applied to the next frame of the loop start frame LSF start / end frame LSF, because was included in both the LEF, continuously applying the extension parameter PX1 that were applied in loop end frame LEF immediately before when playing loop start frame LSF including during a loop start point LSP it is possible to, can be without any trouble loop play all of the frame. さらに、本実施形態によれば、伸長パラメータ等の副情報を一フレーム内に分散配置され、過去に読み込まれたフレームに含まれる伸長パラメータに基づいて現在読み込まれているフレーム内の残差符号が伸長されるから、残差符号を得るために順次サブフレームを読み出していくことにより同時に各フレームの副情報も得ることができ、副情報を読み出すための専用のRAMアクセスが不要となる。 Further, according to this embodiment, are distributed sub information such extension parameter in one frame, the residue code in the frame that is currently loaded on the basis of the extension parameters included in the frame read in the past since the extension can also be obtained at the same time the sub information for each frame by going sequentially reads out the sub-frame to obtain a residue code, dedicated RAM access for reading the sub-information is not necessary.
【0052】 [0052]
2. 2. 第2実施形態次に、本発明の第2実施形態について説明する。 Next the second embodiment, a description of a second embodiment of the present invention. 第2実施形態の内容は第1実施形態と大略同様であるが、伸長パラメータの決定方法(SP116)とループ再生における伸長パラメータの適用の態様が異なる。 The contents of the second embodiment is a generally similar to the first embodiment, aspects of the application of the extension parameter determination method extension parameters (SP116) in the loop reproduction is different. 本実施形態における伸長パラメータ決定処理の内容を図8(c)を参照し説明する。 The contents of the extension parameter determination process in this embodiment with reference to FIG. 8 (c) will be described. 図示の例においては、図8(b)の場合と同様に、フレームF4の途中にループ開始点LSPが設定され、フレームF8の最終サンプリング点にループ終了点LEPが設定されている。 In the illustrated example, as in the case of FIG. 8 (b), the set is the way to the loop start point LSP frame F4, the loop end point LEP is set to the last sampling point of a frame F8. ループ開始フレームLSFとその直後のフレームであるF4,F5には、共通の伸長パラメータPX2が適用される。 The F4, F5 loop start frame LSF and its immediately following frame is applied common elongation parameters PX2.
【0053】 [0053]
このため、フレームF4,F5には、この伸長パラメータPX2によって符号化された残差符号W42,W52が各々記憶されることになる。 Therefore, the frame F4, F5 would this extension parameter PX2 encoded residual code W42, W52 by are respectively stored. さらに、フレームF4の直前に再生されるフレームF3,F8には、当該伸長パラメータPX2が記憶されることになる。 Furthermore, the frame F3, F8 is reproduced until the frame F4 would the extension parameter PX2 are stored. この共通の伸長パラメータPX2の決定方法は上述した伸長パラメータPX1の決定方法と同様であり、フレームF4,F8に係る波形データのうち一方、あるいは双方を連結した波形データに基づいて、伸長パラメータPX2が決定される。 Method of determining the common extension parameter PX2 is the same as the method of determining the extension parameters PX1 described above, whereas among the waveform data of the frame F4, F8, or on the basis of the waveform data obtained by connecting both elongation parameters PX2 It is determined.
【0054】 [0054]
そして、該波形データの再生時においては、アタック区間からループ区間に移行する場合には、フレームF3に含まれていた伸長パラメータPX2に基づいてフレームF4の残差符号W42が伸長され、引き続きフレームF4に含まれていた伸長パラメータPX2に基づいてフレームF5の残差符号W52が伸長される。 Then, at the time of the waveform data reproduction, when the transition from the attack section to the loop section, residue code W42 frame F4 is extended based on the extended parameter PX2 contained in the frame F3, subsequently frame F4 residue code W52 frame F5 is extended based on the extended parameter PX2 contained in. 一方、再生位置がループ終了点LEPからループ開始点LSPに戻った場合には、ループ終了フレームLEFであるフレームF8に含まれていた伸長パラメータPX2が、ループ開始フレームLSFであるフレームF4の残差符号W42の伸長に適用されるとともに、引き続きその直後のフレームF5の残差符号W52の伸長にも適用される。 On the other hand, if the reproduction position is returned from the loop end point LEP loop start point LSP is extended parameter PX2 contained in frame F8 is a loop end frame LEF is, residual frame F4 is a loop start frame LSF with applied elongation code W42, it is subsequently applied to the extension of the residue code W52 of the immediately following frame F5. (図10(a)、(b)を参照)。 (See Figure 10 (a), (b)).
【0055】 [0055]
3. 3. 第3実施形態次に、本発明の第3実施形態について説明する。 Next to the third embodiment, a description of a third embodiment of the present invention. 第3実施形態の内容は第1実施形態と大略同様であるが、圧縮前の波形データに対するフレーム区間の設定方法と、ループ開始/終了点LSP,LEPの決定方法(ステップSP114)と、伸長パラメータの決定方法(SP116)と、ループ再生における伸長パラメータの適用の態様が異なる。 Although the content of the third embodiment is generally similar to the first embodiment, the set frame interval for the pre-compression waveform data, a loop start / end point LSP, LEP method for determining the (step SP114), extended parameters a method of determining (SP116), the different aspects of the application of the extended parameter in the loop reproduction. そこで、そこで、これらの各々について詳細に説明する。 Therefore, where, describing each of the detail.
【0056】 [0056]
3.1. 3.1. 圧縮前の波形データに対するフレーム区間の設定本実施形態においては、波形データに対してフレーム区間が設定される際には、仮ループ開始点が属するフレーム区間の次のフレーム区間、仮ループ終了点が属するフレーム区間、およびその次のフレーム区間の計「3」区間は、サンプル数(すなわち実時間上のフレームサイズ)が同一になるように設定される。 In setting this embodiment of the frame section relative to the uncompressed waveform data, when the frame section is set for the waveform data, the next frame section of frame section temporary loop starting point belongs, it is temporary loop end point frame sections belonging, and a total of "3" section of the next frame interval, number of samples (i.e. frame size on the real time) is set to be the same. これは、これら「3」区間に対応するフレームのうち何れか「2」フレームに対して共通の伸長パラメータが適用されるため(詳細は後述する)、当該副情報に含まれる「ビット数bn」に応じて共通の実時間上のフレームサイズを設定しておく必要があるためである。 This is because these "3" any of the frames corresponding to the section "2" for a common stretch parameter is applied to the frame (details will be described later), "the number of bits bn" included in the sub information This is because it is necessary to set the frame size of a common real-time according to. なお、上記「2」フレームの伸長パラメータの共通化のためには、最低その「2」フレーム区間さえ揃っていればよいが、処理の簡単化のため、ここでは上記「3」フレーム区間のサンプル数を揃えるようにしている。 Incidentally, for the common extension parameter of the "2" frames, a minimum its "2" frame sections even it is enough uniform, for simplification of the process, samples of the "3" frame section herein so that align the number. また、ループ開始点が属するフレームの次のフレームからループ終了点が属するフレームまでの各フレーム区間のサンプル数を揃えるようにすれば、処理はさらに簡単になる。 Further, if to align the number of samples of each frame section from the next frame of the frame loop start point belongs to the frame where the loop end point belongs, the process becomes more simple.
【0057】 [0057]
3.2. 3.2. ループ開始/終了点LSP,LEPの調節(SP114) Loop start / end point LSP, regulation of LEP (SP114)
次に、本実施形態におけるループ開始/終了点LSP,LEPの決定方法を再び図7を参照し説明する。 Next, the loop start / end point LSP in the present embodiment, again referring to explaining FIG method for determining the LEP. 上述したように、図7(a),(b)は各々録音された波形データの波形およびフレーム境界(分割点)を示す図である。 As described above, FIG. 7 (a), the diagrams showing the (b) respectively recorded waveform data of the waveform and frame boundaries (division points). そして、同図(d)は本実施形態のステップSP114において調整された結果であるループ開始/終了点LSP,LEPの位置を示す。 Then, FIG. (D) are shown the loop start / end point LSP which is a result of the adjustment in step SP114 of the present embodiment, the position of the LEP.
【0058】 [0058]
同図(d)においては、仮ループ開始点LSP1の属するフレームの次のフレームがループ開始フレームLSFに設定され、該ループ開始フレームLSFの先頭のサンプリング点がループ開始点LSPに設定される。 In FIG. (D), the next frame of the frame belongs temporary loop start point LSP1 is set in the loop start frame LSF, the beginning of the sampling points of the loop start frame LSF is set in the loop start point LSP. そして、ループ終了点LEPは、仮ループ終了点LEP1よりも「仮ループ開始点LSP1からループ開始点LSPに至るまでのサンプリング数」だけ後のサンプリング点に設定される。 Then, the loop end point LEP is set to the sampling points after only "sampling number from the temporary loop start point LSP1 up to the loop start point LSP" than temporary loop end point LEP1. この結果、ループ終了フレームLEFは、元々仮ループ終了点LEP1が含まれていたフレームの次のフレームになる場合がある。 As a result, the loop end frame LEF may originally be the next frame of the frame contains the temporary loop end point LEP1. そして、仮ループ開始点LSP1からループ開始点LSPまでの各サンプリング値が、仮ループ終了点LEP1からループ終了点LEPまでの区間にコピーされるのである。 Each sampling value from the temporary loop start point LSP1 until the loop start point LSP is of being copied to the section from the temporary loop end point LEP1 until the loop end point LEP. 本実施形態においても、ループ終了点LEP以降の波形データは不要であるために破棄される。 In this embodiment, waveform data after the loop end point LEP is discarded because it is not necessary.
【0059】 [0059]
このように、本実施形態によれば、ループ開始点LSPがフレーム境界に一致するように仮ループ開始点/終了点LSP1,LEP1をシフトしてループ開始/終了点LSP,LEPの位置が設定される。 Thus, according to this embodiment, the loop start / end point LSP by shifting the temporary loop start point / end point LSP1, LEP1, the position of the LEP is set so that the loop start point LSP is equal to frame boundaries that. そして、上記第1および第2実施形態と同様に、シフトを行わなかった場合と全く同様の楽音信号を生成することができる。 Then, as in the first and second embodiments, it can generate exactly the same musical tone signal and if you did not shift. これにより、本実施形態においても、波形データに対する時間軸方向の圧縮/伸長等は不要になり、高品質な楽音再生を可能にしつつループ終了点LEPをループ終了点LEPをフレーム境界に一致させることができる。 Thus, also in this embodiment, compression / decompression, etc. in the time axis direction with respect to the waveform data is not required, making the loop end point LEP while allowing high-quality musical tone reproducing match loop end point LEP to frame boundaries can.
【0060】 [0060]
3.3. 3.3. 各フレームに対する伸長パラメータの決定(SP116) Determining extension parameters for each frame (SP116)
次に、本実施形態における伸長パラメータ決定処理の内容を図8(d)を参照し説明する。 Next, the contents of the extension parameter determination process in this embodiment with reference to FIG. 8 (d) will be described. 図示の例においては、フレームF4の先頭にループ開始点LSPが設定され、フレームF8の途中のサンプリング点にループ終了点LEPが設定されている。 In the illustrated example, the loop start point LSP is set to the beginning of the frame F4, the loop end point LEP is set in the middle of the sampling points of the frame F8. そして、ループ開始/終了フレームLSF,LEFであるF4,F8には、共通の伸長パラメータPX3が適用される。 The loop start / end frame LSF, the F4, F8 is LEF, apply common extension parameters PX3.
【0061】 [0061]
このため、フレームF4,F8には、この伸長パラメータPX3によって符号化された残差符号W43,W83が各々記憶されることになる。 Therefore, the frame F4, F8 would this extension parameter PX3 encoded residual code W 43, W83 by are respectively stored. さらに、各々フレームF4,F8の直前に再生されるフレームF3,F7には、当該伸長パラメータPX3が記憶されることになる。 In addition, the frame F3, F7, each being reproduced immediately before the frame F4, F8, so that the extended parameter PX3 are stored. この共通の伸長パラメータPX3の決定方法は上述した伸長パラメータPX1の決定方法と同様であり、フレームF4,F8に係る波形データのうち一方、あるいは双方を連結した波形データに基づいて、伸長パラメータPX3が決定される。 Method of determining the common extension parameter PX3 is similar to the method of determining the extension parameters PX1 described above, whereas among the waveform data of the frame F4, F8, or on the basis of the waveform data obtained by connecting both elongation parameters PX3 It is determined.
【0062】 [0062]
そして、該波形データの再生時においては、アタック区間からループ区間に移行する場合には、フレームF3に含まれていた伸長パラメータPX3に基づいてフレームF4の残差符号W43が伸長される。 Then, at the time of the waveform data reproduction, when the transition from the attack section to the loop section, residue code W43 frame F4 is extended based on the extended parameter PX3 contained in the frame F3. 引き続きループ区間内の各フレームの残差符号が伸長され、ループ終了フレームLEFであるF8内の残差符号W83はフレームF7に含まれていた伸長パラメータPX3に基づいて伸長される。 Continue to be the residual code extension of each frame in the loop section, residue code W83 in F8 is a loop end frame LEF is extended based on the extended parameter PX3 contained in the frame F7. そして、再生位置がループ終了点LEPからループ開始点LSPに戻った場合には、ループ終了フレームEFであるF8で適用されていた伸長パラメータFX3が、引き続きループ開始フレームLSFであるF4の残差符号W43の伸長にも適用されることになる(図10(d), (e)を参照)。 Then, when the reproduction position is returned from the loop end point LEP loop start point LSP is extended parameter FX3 that was applied by F8 is a loop end frame EF is, F4 residue code continues a loop start frame LSF also becomes applicable that the extension of the W 43 (see FIG. 10 (d), (e)).
【0063】 [0063]
4. Four. 第4実施形態次に、本発明の第4実施形態について説明する。 Next the fourth embodiment, a description of a fourth embodiment of the present invention. 第4実施形態の内容は第3実施形態と大略同様であるが、伸長パラメータの決定方法(SP116)と、ループ再生における伸長パラメータの適用の態様が異なる。 Although the content of the fourth embodiment is generally similar to the third embodiment, a method of determining the extension parameter (SP116), aspects of the application of the extended parameter in the loop reproduction is different. 本実施形態における伸長パラメータ決定処理の内容を図8(e)を参照し説明する。 The contents of the extension parameter determination process in this embodiment with reference to FIG. 8 (e) will be described. 図示の例においては、図8(d)の場合と同様に、フレームF4の先頭にループ開始点LSPが設定され、フレームF8の途中のサンプリング点にループ終了点LEPが設定されている。 In the illustrated example, as in the case of FIG. 8 (d), the looped start point LSP is set to the beginning of the frame F4, the loop end point LEP is set in the middle of the sampling points of the frame F8. そしてループ終了フレームLEFとその直後のフレームであるF7,F8には、共通の伸長パラメータPX4が適用される。 The loop end frame LEF and its is immediately after the frame F7, the F8 is applied common elongation parameters PX4.
【0064】 [0064]
このため、フレームF7,F8には、この伸長パラメータPX4によって符号化された残差符号W74,W84が各々記憶されることになる。 Therefore, the frame F7, F8 will be the extended parameter PX4 encoded residual code W74, W84 by are respectively stored. さらに、フレームF7の直前に再生されるフレームF6には、当該伸長パラメータPX4が記憶されることになる。 Furthermore, the frame F6 is reproduced until the frame F7 would the extension parameter PX4 are stored. この共通の伸長パラメータPX4の決定方法は上述した伸長パラメータPX1〜PX3の決定方法と同様であり、フレームF7,F8に係る波形データのうち一方、あるいは双方を連結した波形データに基づいて、伸長パラメータPX4が決定される。 Method of determining the common extension parameter PX4 is similar to the method of determining the extension parameters PX1~PX3 described above, whereas among the waveform data of the frame F7, F8, or on the basis of the waveform data obtained by connecting both extension parameters PX4 is determined. さらに、フレームF7には、ループ開始フレームLSFであるF4に適用される伸長パラメータP4が記憶される。 Furthermore, the frame F7 is extended parameters P4 to be applied to F4 is a loop start frame LSF is stored.
【0065】 [0065]
そして、該波形データの再生時において、再生位置がフレームF6に達すると、残差符号W6とともに伸長パラメータPX4が読み出される。 Then, when the waveform data reproduction, the reproduction position reaches the frame F6, extension parameter PX4 are read out together with the residue code W6. そして、この読み出された伸長パラメータPX4に基づいて、その次のフレームF7の残差符号W74が伸長されるとともに、さらにその次のループ終了フレームLEFであるF8の残差符号W84も伸長される。 Then, this read based on the extended parameter PX4, together with residue code W74 of the next frame F7 is extended, further its residue code W84 of F8 is a next loop end frame LEF be extended . すなわち、フレームF7で残差符号W74と同時に読み出された伸長パラメータP4は、その次のフレームF8の残差波形W84には適用されず、さらにその次のループ開始フレームLSFであるF4において残差符号W4の伸長に適用される(図10(d),(f)を参照)。 That is, extension parameter P4 read simultaneously residue code W74 in frame F7, the the residual waveform W84 of the next frame F8 is not applied, further residual in that the next loop start frame LSF F4 is applied to the extension of the code W4 (see FIG. 10 (d), (f)).
【0066】 [0066]
5. Five. 変形例本発明は上述した実施形態に限定されるものではなく、例えば以下のように種々の変形が可能である。 Modification The present invention is not intended to be limited to the embodiments described above, for example and can be variously modified as follows.
(1)上記各実施形態においては図2および図3に示した波形データのフォーマットを用いたが、波形データのフォーマットは必要に応じて種々変更してもよい。 (1) In the above respective embodiments it is used the format of the waveform data shown in FIGS. 2 and 3, the format of the waveform data may be variously changed as necessary. 例えば、各種データの配置を上記実施形態のものとは異なる配置にすることができる。 For example, the arrangement of various data can be arranged differently from those of the above embodiment. 「1」サブフレームの大きさは「16」ビットに限られるものではなく、「8」ビット、「32」ビット等の幅にしてもよい。 "1" the size of the sub-frame is not limited to the "16" bits, "8" bits, or may be a width such as "32" bits. 同様に「1」フレームの大きさは「10」ワード=「160」ビットに限られるものではなく、「6」ワード、「14」ワード等の大きさにしてもよい。 Similarly, "1" the size of the frame is not limited to "10" word = "160" bits, "6" word may be sized such as "14" words. また、残差符号のビット数は「1」,「2」,「3」,「4」,「6」または「12」以外の値、例えば「8」または「16」等であってもよい。 Further, the number of bits of the residue code is "1", "2", "3", "4", a value other than "6" or "12" may be, for example, "8" or "16", etc. .
【0067】 [0067]
(2)上記各実施形態は2次の線形予測を適用したものであったが、それ以上の高次線形予測を適用してもよく、あるいは複数段の線形予測を適用してもよい。 (2) In the above embodiments have been obtained by applying a second-order linear prediction may be applied to higher order linear prediction, or a plurality of stages linear prediction of may be applied. さらに、全く異なる圧縮方式(例えばフォルマント合成)を適用してもよい。 Furthermore, it may be applied entirely different compression schemes (e.g., formant synthesis). また、上記各実施形態において各フレームに記憶される伸長パラメータは「ビット数bn」、「予測係数」および「量子化幅」であったが、必要な伸長パラメータは圧縮方式に応じて異なることは言うまでもない。 Further, extension parameters stored in each frame in the above embodiments, "Number of bits bn", although there was a "prediction coefficients" and "quantization width" extension parameters required may vary depending on the compression scheme needless to say.
【0068】 [0068]
(3)上記各実施形態においては、パーソナルコンピュータ上で動作するアプリケーションプログラムによって電子楽器を実現したが、このアプリケーションプログラムのみをCD−ROM、フレキシブルディスク等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布することもできる。 (3) In the above embodiments has been realized an electronic musical instrument by an application program running on a personal computer, distribute and store only the application program CD-ROM, a recording medium such as a flexible disk, or the transmission It can also be distributed through the road. また、音源部100内の各部の動作も当該アプリケーションプログラムによってソフトウエア的に実行してもよいことは言うまでもない。 Also, it may of course be executed software manner by work the application program in each unit in the tone generator 100.
【0069】 [0069]
【発明の効果】 【Effect of the invention】
以上説明したように、指示された仮ループ開始点および仮ループ終了点に基づいてループ開始点およびループ終了点を設定する構成によれば、ループ開始点またはループ終了点のうち少なくとも一方をフレームの境界に一致させることができ、完全に再生されないフレームを一フレームのみに抑えることができる。 As described above, according to the configuration of the loop start point and setting the loop end point based on the temporary loop start point and the temporary loop end point is instructed, the frame at least one of the loop start point or loop end point can be matched to the boundary, completely not play frame can be suppressed to only one frame. これにより、波形データ自体の時間軸方向の圧縮または伸長が不要になり、高品質な楽音再生が可能になる。 Thus, compression or extension of the time axis waveform data itself is not required, allowing high-quality tone reproduction.
さらに、特定の二区間に対して同一の伸長パラメータを適用する構成によれば、両区間に対する伸長パラメータの読出しを一回で済ますことができる。 Further, according to the configuration of applying the same extension parameters for a particular second section, the reading of extension parameters for both sections can be dispensed with once.
また、読み出された一のフレーム内の圧縮符号と、過去に読み出されたフレーム内の伸長パラメータとに基づいて楽音信号を再生する構成によれば、該一のフレームを再生しようとする際に既に伸長パラメータが得られているため、楽音信号の再生を迅速に開始させることができる。 Further, a compression code in one frame that has been read, according to the configuration of reproducing a musical tone signal based on the extension parameter in a frame read in the past, when trying to reproduce the one frame because it is already extended parameter is obtained, it is possible to rapidly initiate the reproduction of the musical tone signal.
【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS
【図1】 本発明の一実施形態の電子楽器のハードウエアブロック図である。 1 is a hardware block diagram of an electronic musical instrument according to an embodiment of the present invention.
【図2】 一実施形態における波形データファイル200の構造を示す図である。 2 is a diagram showing the structure of the waveform data files 200 in one embodiment.
【図3】 各フレーム211〜21nのデータ構造を示す図である。 3 is a diagram showing the data structure of each frame 211 to 21n.
【図4】 アドレス発生部104のブロック図である。 4 is a block diagram of the address generator 104.
【図5】 残差情報キャッシュ部108のブロック図である。 5 is a block diagram of a residual information cache unit 108.
【図6】 圧縮処理ルーチンのフローチャートである。 6 is a flow chart of the compression process routine.
【図7】 ループ開始点LSPおよびループ終了点LEPを設定する際の動作説明図である。 7 is an operation explanatory diagram for setting the loop start point LSP and loop end points LEP.
【図8】 伸長パラメータ決定処理の動作説明図である。 8 is a diagram for describing operation of the decompression parameter determination process.
【図9】 共通の伸長パラメータを決定する処理の動作説明図である。 9 is an operation explanatory diagram of a process for determining a common extension parameter.
【図10】 ループ再生時における動作説明図である。 FIG. 10 illustrates the operation at the time of the loop playback.
【図11】 ループ再生時における他の動作説明図である。 11 is another operation explanatory view during loop playback.
【符号の説明】 DESCRIPTION OF SYMBOLS
2:RAM、4:フラッシュメモリ、6:CPU、8:操作子、10:表示器、12:通信I/O部、14:バスライン、16:サウンドシステム、100:音源部、102:フレーム読出し部、104:アドレス発生部、106:副情報デコード部、108:残差情報キャッシュ部、110:デコーダ部、112:補間部、114:音量EG部、116:ミキサ部、118:DAコンバータ、120:制御レジスタ、142:フレームカウンタ、144:1/3サンプル累算器、144:累算器、146:合成部、148:変換器、150:乗算器、160:逆量子化部、162:線形予測部、164:加算器、166:波形データキャッシュメモリ、168:バッファ、168:ループスタートサンプリング値バッファ、200:波形デ 2: RAM, 4: Flash Memory, 6: CPU, 8: operator, 10: display, 12: communication I / O unit, 14: Bus line 16: sound system, 100: sound source unit, 102: frame read part, 104: address generator, 106: auxiliary information decoding unit, 108: residual information cache unit, 110: decoder, 112: interpolation unit, 114: sound volume EG unit, 116: mixer unit, 118: DA converter, 120 : control register, 142: frame counter, 144: 1/3 sample accumulator 144: accumulator 146: combining unit, 148: converter, 150: multiplier, 160: inverse quantization unit, 162: linear prediction unit, 164: adder, 166: waveform data cache memory, 168: buffer, 168: loop start sampling value buffer, 200: waveform data タファイル、202:管理領域、204,206,……:波形データ領域、210:ヘッダ部、211〜21n:フレーム。 Datafile, 202: management area 204, 206, ...: waveform data region, 210: header, 211 to 21n: frame.

Claims (12)

  1. 複数のサンプリング値から成る波形データと、該波形データに対して指示された仮ループ開始点および仮ループ終了点を記憶する過程と、 A waveform data composed of a plurality of sampling values, a step of storing the temporary loop start point and the temporary loop end point is instructed to the waveform data,
    前記波形データを複数の区間に分割する過程と、 A step of dividing the waveform data into a plurality of sections,
    前記仮ループ終了点が属する区間内の最後のサンプリング点に、ループ終了点を設定する過程と、 Wherein the last sampling point in the interval the temporary loop end point belongs, a process of setting the loop end point,
    前記仮ループ開始点を基準として、前記仮ループ終了点および前記ループ終了点間のサンプル数に相当するサンプル数だけ後のサンプリング点に、ループ開始点を設定する過程と、 Wherein based on the temporary loop start point, the sampling point after only the number of samples corresponding to the number of samples between the temporary loop end point and said loop end point, and the process of setting the loop start point,
    前記仮ループ開始点から前記ループ開始点の直前までのサンプリング値を、前記仮ループ終了点の直後のサンプリング点から前記ループ終了点のサンプリング値に複写する過程と、 A step of copying the sampled values ​​from the temporary loop start point to immediately before the loop start point, the sampling value of the loop end point from the sampling point immediately after the temporary loop end point,
    前記各区間毎に前記波形データを圧縮することにより前記各区間毎のフレームを形成する圧縮過程と A compression process of forming a frame of each of said sections by compressing the waveform data the in each section
    を有し、 Have,
    前記圧縮過程は、 The compression process,
    前記ループ開始点を含むループ開始区間と、前記ループ終了点を含むループ終了区間または前記ループ開始区間の次に再生される区間のうち一方の区間とから成る特定の二区間に対して同一の伸長パラメータを適用するとともに、該特定の二区間に対して該同一の伸長パラメータによって基づいて伸長可能な圧縮符号を各々決定する第1の決定過程と、 A loop start section containing the loop start point, the same extension for a particular second section consisting of one segment of the segment to be played next to the loop end section or the loop start section containing the loop end point with applying the parameters, a first determination process for each determining a stretchable compression code based by extension parameters of identity flush against the particular second section,
    前記特定の二区間以外の各区間の波形データに基づいて、これら各区間の伸長パラメータと、該伸長パラメータに基づいて伸長可能な圧縮符号とを決定する第2の決定過程と、 On the basis of the waveform data of each section other than the specific second section, and extension parameters of each section, and a second determination process of determining the extendable compression code based on 該伸 length parameter,
    前記各区間中の一の区間のサンプリング値の圧縮符号と、該一の区間の後に再生される区間の圧縮符号を伸長するための伸長パラメータとによって、一のフレームを形成するフレーム形成過程であって、該伸長パラメータは、該伸長パラメータを記憶するフレームの全データの読出しが終了したときに、利用可能になるように前記一のフレームに記憶されるフレーム形成過程と Wherein the compressed code of the sampled values of one period in each section, by the extension parameters for decompressing the compressed code of the section to be reproduced after said one section, met frame forming process to form the one frame Te,該伸length parameter, when the reading of all data frames for storing該伸length parameter is completed, the frame forming process the stored one frame so as to be available
    を有することを特徴とす波形データ圧縮方法。 Waveform data compressing method you further comprising a.
  2. 複数のサンプリング値から成る波形データと、該波形データに対して指示された仮ループ開始点および仮ループ終了点を記憶する過程と、 A waveform data composed of a plurality of sampling values, a step of storing the temporary loop start point and the temporary loop end point is instructed to the waveform data,
    前記波形データを複数の区間に分割する過程と、 A step of dividing the waveform data into a plurality of sections,
    前記仮ループ開始点が属する区間の次の区間の先頭のサンプリング点にループ開始点を設定する過程と、 A process of setting the loop start point to the beginning of the sampling point in the next section of the section the temporary loop start point belongs,
    前記仮ループ終了点を基準として、前記仮ループ開始点および前記ループ開始点間のサンプル数に相当するサンプル数だけ後のサンプリング点に、ループ終了点を設定する過程と、 Wherein based on the temporary loop end point, the sampling point after only the number of samples corresponding to the number of samples between the temporary loop start point and said loop start point, the process of setting the loop end point,
    前記仮ループ開始点から前記ループ開始点の直前までのサンプリング値を、前記仮ループ終了点の直後のサンプリング点から前記ループ終了点のサンプリング値に複写する過程と、 A step of copying the sampled values ​​from the temporary loop start point to immediately before the loop start point, the sampling value of the loop end point from the sampling point immediately after the temporary loop end point,
    前記各区間毎に前記波形データを圧縮することにより前記各区間毎のフレームを形成する圧縮過程と A compression process of forming a frame of each of said sections by compressing the waveform data the in each section
    を有し、 Have,
    前記圧縮過程は、 The compression process,
    前記ループ終了点を含むループ終了区間と、前記ループ開始点を含むループ開始区間または前記ループ終了区間の前に再生される区間のうち一方の区間とから成る特定の二区間に対して同一の伸長パラメータを適用するとともに、該特定の二区間に対して該同一の伸長パラメータによって基づいて伸長可能な圧縮符号を各々決定する第1の決定過程と、 A loop end section containing the loop end point, the same extension for a particular second section consisting of one segment of the segment to be played before the loop start section or the loop end sections containing the loop start point with applying the parameters, a first determination process for each determining a stretchable compression code based by extension parameters of identity flush against the particular second section,
    前記特定の二区間以外の各区間の波形データに基づいて、これら各区間の伸長パラメータと、該伸長パラメータに基づいて伸長可能な圧縮符号とを決定する第2の決定過程と、 On the basis of the waveform data of each section other than the specific second section, and extension parameters of each section, and a second determination process of determining the extendable compression code based on 該伸 length parameter,
    前記各区間中の一の区間のサンプリング値の圧縮符号と、該一の区間の後に再生される区間の圧縮符号を伸長するための伸長パラメータとによって、一のフレームを形成するフレーム形成過程であって、該伸長パラメータは、該伸長パラメータを記憶するフレームの全データの読出しが終了したときに、利用可能になるように前記一のフレームに記憶されるフレーム形成過程と Wherein the compressed code of the sampled values of one period in each section, by the extension parameters for decompressing the compressed code of the section to be reproduced after said one section, met frame forming process to form the one frame Te,該伸length parameter, when the reading of all data frames for storing該伸length parameter is completed, the frame forming process the stored one frame so as to be available
    を有することを特徴とす波形データ圧縮方法。 Waveform data compressing method you further comprising a.
  3. 前記第1の決定過程は、 Wherein the first determination process,
    前記特定の二区間の波形データを結合した波形データに基づいて前記同一の伸長パラメータを定める過程であることを特徴とする請求項または記載の波形データ圧縮方法。 Waveform data compressing method according to claim 1 or 2, wherein said based on the particular waveform data combines the waveform data of the second section is the process of defining the same stretching parameters.
  4. 前記各伸長パラメータは、前記各フレーム内に分散して配置されることを特徴とする請求項1ないしの何れかに記載の波形データ圧縮方法。 Wherein each extension parameter waveform data compressing method according to any of claims 1 to 3, characterized in that it is arranged dispersed in said each frame.
  5. 一区間に渡る波形データを圧縮した圧縮符号と、次の区間の圧縮符号を伸長するための伸長パラメータとを含むフレームを複数記憶する過程と、 A step of storing a plurality of frames including a compressed code obtained by compressing the waveform data over a section, and a decompression parameters for decompressing the compressed code of the next interval,
    発生すべき楽音信号の音高に応じた速度で変化するように読出しアドレスを計数する過程と、 A step of counting a read address so as to change at a rate corresponding to the tone pitch of a tone to be generated signals,
    該計数された読出しアドレスに基づいて、前記各フレームを読み出す読出過程と、 Based on the number of read-out addresses the regimen, a reading step of reading said respective frame,
    読み出された一の前記フレーム内の圧縮符号と、過去に読み出されたフレーム内の伸長パラメータとに基づいて、一の前記フレーム内の圧縮符号を伸長することによって楽音信号を再生する伸長過程と、 A compression code in one of the frames read, based on the extension parameter in a frame read in the past, extension process of reproducing a musical tone signal by expanding the compressed code in one of the frame When,
    前記読出過程により読み出されたデータから前記各フレームに記憶された伸長パラメータを取り出す取出過程であって、該伸長パラメータは、該伸長パラメータを記憶するフレームの全データの読出しが終了したときに、利用可能になる取出過程と、 A takeout process for taking out the extension parameter stored in said each frame from the data read by the reading process,該伸length parameter, when the reading of all data frames for storing該伸length parameter has been completed, and the take-out process that will be available,
    前記読出しアドレスが所定のループ終了フレームの末尾のサンプリング点であるループ終了点に達したことを条件として、前記読出しアドレスを、所定のループ開始フレーム内の途中のサンプリング点であるループ開始点に設定する過程と Setting the condition that the read address has reached the loop end point is the end of the sampling points of the predetermined loop end frame, the read address, the loop start point is in the middle of sampling points within a given loop start frame the method comprising the steps of:
    を有し、前記ループ開始フレームには、前記ループ終了フレームまたは前記ループ開始フレームの次のフレームに適用される伸長パラメータと同一の伸長パラメータが適用される Has, in the loop start frame, extension parameters same extension as parameters applied to the next frame of said loop end frame or the beginning of the loop frame is applied
    ことを特徴とする楽音信号発生方法。 Musical tone signal generating method, characterized in that.
  6. 前記伸長過程は、 Said extension process,
    前記読出過程において一の前記フレームとして前記ループ開始フレームが最初に読み出された場合は、該ループ開始フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、該ループ開始フレーム内の圧縮符号を伸長し、 If the loop start frame as one of the frame in said read process is first read, based on the extended parameter in a frame read immediately before the loop start frame, compression of the loop start frame sign the extension,
    前記読出過程において一の前記フレームとして前記ループ開始フレームが2回目以降に読み出された場合は、前記ループ終了フレーム内の圧縮符号の伸長に適用された伸長パラメータに基づいて、該ループ開始フレーム内の圧縮符号を伸長し、 If the loop start frame as one of the frame in said read process is read out at the second time and thereafter, based on the applied elongation parameters decompression of the compressed code of the loop end within the frame, the loop start frame compressed code to the extension of,
    前記読出過程において一の前記フレームとして前記ループ開始フレームの次のフレームが最初に読み出された場合は、該ループ開始フレームに含まれる伸長パラメータに基づいて、該ループ開始フレームの次のフレーム内の圧縮符号を伸長し、 The next frame of the loop start frame as one of the frame in the reading process when it is first read, based on the extension parameters included in the loop start frame, in the next frame of the loop start frame the compressed code extended,
    前記読出過程において一の前記フレームとして前記ループ開始フレームの次のフレームが2回目以降に読み出された場合は、前記ループ終了フレームに含まれる伸長パラメータに基づいて、該ループ開始フレームの次のフレーム内の圧縮符号を伸長し、 Wherein if the next frame of the loop start frame is read out at the second time or later, based on the extension parameters included in said loop end frame as one of the frame in the reading process, the next frame of the loop start frame the compressed code of the inner extended,
    前記読出過程において一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する 過程であることを特徴とする請求項記載の楽音信号発生方法。 If other frames as one of the frame in said read process is read, based on the extended parameter in a frame read just before one of the frames, it expands the compressed code in one of the frame tone signal generation method according to claim 5, characterized in that it is a process of.
  7. 前記伸長過程は、 Said extension process,
    前記読出過程において一の前記フレームとして前記ループ開始フレームの次のフレームが最初に読み出された場合は、該ループ開始フレームに含まれる伸長パラメータに基づいて、該ループ開始フレームの次のフレーム内の圧縮符号を伸長し、 The next frame of the loop start frame as one of the frame in the reading process when it is first read, based on the extension parameters included in the loop start frame, in the next frame of the loop start frame the compressed code extended,
    前記読出過程において一の前記フレームとして前記ループ開始フレームの次のフレームが2回目以降に読み出された場合は、前記ループ終了フレームに含まれる伸長パラメータに基づいて、該ループ開始フレームの次のフレーム内の圧縮符号を伸長し、 Wherein if the next frame of the loop start frame is read out at the second time or later, based on the extension parameters included in said loop end frame as one of the frame in the reading process, the next frame of the loop start frame the compressed code of the inner extended,
    前記読出過程において一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する過程であることを特徴とする請求項記載の楽音信号発生方法。 If other frames as one of the frame in said read process is read, based on the extended parameter in a frame read just before one of the frames, it expands the compressed code in one of the frame tone signal generation method according to claim 5, characterized in that it is a process of.
  8. 一区間に渡る波形データを圧縮した圧縮符号と、次の区間の圧縮符号を伸長するための伸長パラメータとを含むフレームを複数記憶する過程と、 A step of storing a plurality of frames including a compressed code obtained by compressing the waveform data over a section, and a decompression parameters for decompressing the compressed code of the next interval,
    発生すべき楽音信号の音高に応じた速度で変化するように読出しアドレスを計数する過程と、 A step of counting a read address so as to change at a rate corresponding to the tone pitch of a tone to be generated signals,
    該計数された読出しアドレスに基づいて、前記各フレームを読み出す読出過程と、 Based on the number of read-out addresses the regimen, a reading step of reading said respective frame,
    読み出された一の前記フレーム内の圧縮符号と、過去に読み出されたフレーム内の伸長パラメータとに基づいて、一の前記フレーム内の圧縮符号を伸長することによって楽音信号を再生する伸長過程と、 A compression code in one of the frames read, based on the extension parameter in a frame read in the past, extension process of reproducing a musical tone signal by expanding the compressed code in one of the frame When,
    前記読出過程により読み出されたデータから前記各フレームに記憶された伸長パラメータを取り出す取出過程であって、該伸長パラメータは、該伸長パラメータを記憶するフレームの全データの読出しが終了したときに、利用可能になる取出過程と、 A takeout process for taking out the extension parameter stored in said each frame from the data read by the reading process,該伸length parameter, when the reading of all data frames for storing該伸length parameter has been completed, and the take-out process that will be available,
    前記読出しアドレスが所定のループ終了フレームの途中のサンプリング点であるループ終了点に達したことを条件として、前記読出しアドレスを、所定のループ開始フレーム内の先頭のサンプリング点であるループ開始点に設定する過程と Setting condition that has been reached in the loop end point is a sampling point in the middle of the read address is terminated predetermined loop frame, said read address, a loop start point is a head of the sampling points within a given loop start frame the method comprising the steps of:
    を有し、前記ループ終了フレームには、前記ループ開始フレームまたは前記ループ終了フレームの前のフレームに適用される伸長パラメータと同一の伸長パラメータが適用される Has, in the loop end frame, the loop start frame or elongation parameters same extension as parameters applied to the previous frame of said loop end frame is applied
    ことを特徴とする楽音信号発生方法。 Musical tone signal generating method, characterized in that.
  9. 前記伸長過程は、 Said extension process,
    前記読出過程において一の前記フレームとして前記ループ開始フレームが最初に読み出された場合は、該ループ開始フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、該ループ開始フレーム内の圧縮符号を伸長し、 If the loop start frame as one of the frame in said read process is first read, based on the extended parameter in a frame read immediately before the loop start frame, compression of the loop start frame sign the extension,
    前記読出過程において一の前記フレームとして前記ループ開始フレームが2回目以降に読み出された場合は、前記ループ終了フレーム内の圧縮符号の伸長に適用された伸長パラメータに基づいて、該ループ開始フレーム内の圧縮符号を伸長し、 If the loop start frame as one of the frame in said read process is read out at the second time and thereafter, based on the applied elongation parameters decompression of the compressed code of the loop end within the frame, the loop start frame compressed code to the extension of,
    前記読出過程において一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する 過程であることを特徴とする請求項記載の楽音信号発生方法。 If other frames as one of the frame in said read process is read, based on the extended parameter in a frame read just before one of the frames, it expands the compressed code in one of the frame tone signal generation method of claim 8, characterized in that the process of.
  10. 前記伸長過程は、 Said extension process,
    前記読出過程において一の前記フレームとして前記ループ開始フレームが最初に読み出された場合は、該ループ開始フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、該ループ開始フレーム内の圧縮符号を伸長し、 If the loop start frame as one of the frame in said read process is first read, based on the extended parameter in a frame read immediately before the loop start frame, compression of the loop start frame sign the extension,
    前記読出過程において一の前記フレームとして前記ループ開始フレームが2回目以降に読み出された場合は、前記ループ終了フレームの直前のフレームに含まれていた伸長パラメータに基づいて、該ループ開始フレーム内の圧縮符号を伸長し、 If the loop start frame as one of the frame in said read process is read out at the second time and thereafter, based on the extended parameter contained in the immediately preceding frame of said loop end frame of the loop start frame the compressed code extended,
    前記読出過程において一の前記フレームとして前記ループ終了フレームが読み出された場合は、前記ループ終了フレームの直前のフレームに適用されていた伸長パラメータに基づいて、ループ終了フレーム内の圧縮符号を伸長し、 If the loop end frame as one of the frame is read in the reading process, based on the extended parameter that applied to the previous frame of the loop end frame, it decompresses the compressed code in the loop end frame ,
    前記読出過程において一の前記フレームとして他のフレームが読み出された場合は、一の前記フレームの直前に読み出されたフレーム内の伸長パラメータに基づいて、一の前記フレーム内の圧縮符号を伸長する 過程であることを特徴とする請求項記載の楽音信号発生方法。 If other frames as one of the frame in said read process is read, based on the extended parameter in a frame read just before one of the frames, it expands the compressed code in one of the frame tone signal generation method of claim 8, characterized in that the process of.
  11. 請求項1ないし10の何れかに記載の方法を実行することを特徴とする楽音信号処理装置。 Tone signal processing apparatus characterized by performing a method according to any one of claims 1 to 10.
  12. 請求項1ないし10の何れかに記載の方法を処理装置に実行させることを特徴とするプログラム。 It claims 1 to program characterized by executing the processing apparatus the method according to any one of 10.
JP2003087299A 2003-03-27 2003-03-27 Waveform data compressing method, tone signal generation method, the tone signal processing device and program Active JP3945435B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003087299A JP3945435B2 (en) 2003-03-27 2003-03-27 Waveform data compressing method, tone signal generation method, the tone signal processing device and program

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2003087299A JP3945435B2 (en) 2003-03-27 2003-03-27 Waveform data compressing method, tone signal generation method, the tone signal processing device and program
US10676205 US7378586B2 (en) 2002-10-01 2003-09-30 Compressed data structure and apparatus and method related thereto
US11289881 US7256340B2 (en) 2002-10-01 2005-11-29 Compressed data structure and apparatus and method related thereto
US11810872 US7692087B2 (en) 2002-10-01 2007-06-06 Compressed data structure and apparatus and method related thereto
US11860484 US7521621B2 (en) 2002-10-01 2007-09-24 Compressed data structure and apparatus and method related thereto

Publications (2)

Publication Number Publication Date
JP2004294780A true JP2004294780A (en) 2004-10-21
JP3945435B2 true JP3945435B2 (en) 2007-07-18

Family

ID=33401709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003087299A Active JP3945435B2 (en) 2003-03-27 2003-03-27 Waveform data compressing method, tone signal generation method, the tone signal processing device and program

Country Status (1)

Country Link
JP (1) JP3945435B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3144926A3 (en) * 2015-09-15 2017-06-21 Casio Computer Co., Ltd. Waveform data structure for electronic musical instrument with scalable frame length for coding and storing both transient aperiodic and periodic tones

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5789993B2 (en) * 2011-01-20 2015-10-07 ヤマハ株式会社 Tone signal generation device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3144926A3 (en) * 2015-09-15 2017-06-21 Casio Computer Co., Ltd. Waveform data structure for electronic musical instrument with scalable frame length for coding and storing both transient aperiodic and periodic tones

Also Published As

Publication number Publication date Type
JP2004294780A (en) 2004-10-21 application

Similar Documents

Publication Publication Date Title
US7283967B2 (en) Encoding device decoding device
US5687157A (en) Method of recording and reproducing digital audio signal and apparatus thereof
US5414795A (en) High efficiency digital data encoding and decoding apparatus
US5867819A (en) Audio decoder
US7292902B2 (en) Frame-based audio transmission/storage with overlap to facilitate smooth crossfading
US6281424B1 (en) Information processing apparatus and method for reproducing an output audio signal from midi music playing information and audio information
US20040008615A1 (en) Audio decoding method and apparatus which recover high frequency component with small computation
US5917917A (en) Reduced-memory reverberation simulator in a sound synthesizer
US7333929B1 (en) Modular scalable compressed audio data stream
US5890126A (en) Audio data decompression and interpolation apparatus and method
US5744739A (en) Wavetable synthesizer and operating method using a variable sampling rate approximation
US6661357B2 (en) System for sampling rate conversion in digital audio applications
US6096960A (en) Period forcing filter for preprocessing sound samples for usage in a wavetable synthesizer
JPH10313251A (en) Device and method for audio signal conversion, device and method for prediction coefficeint generation, and prediction coefficeint storage medium
US5488704A (en) Speech codec
US5824936A (en) Apparatus and method for approximating an exponential decay in a sound synthesizer
JP2004289196A (en) Digital signal encoding method, decoding method, encoder, decoder, digital signal encoding program, and decoding program
US6480550B1 (en) Method of compressing an analogue signal
US20040069118A1 (en) Compressed data structure and apparatus and method related thereto
JP2003332914A (en) Encoding method for digital signal, decoding method therefor, apparatus for the methods and program thereof
US5625158A (en) Musical tone generating apparatus
JPH11109996A (en) Voice coding device, voice coding method and optical recording medium recorded with voice coding information and voice decoding device
JPH07199996A (en) Device and method for waveform data encoding, decoding device for waveform data, and encoding and decoding device for waveform data
US20040107090A1 (en) Audio decoding method and apparatus for reconstructing high frequency components with less computation
US20060009967A1 (en) Sinusoidal audio coding with phase updates

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050125

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070109

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070227

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: 20070320

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070402

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110420

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120420

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130420

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140420

Year of fee payment: 7