JP2010191124A - Sound effect generation device - Google Patents
Sound effect generation device Download PDFInfo
- Publication number
- JP2010191124A JP2010191124A JP2009034744A JP2009034744A JP2010191124A JP 2010191124 A JP2010191124 A JP 2010191124A JP 2009034744 A JP2009034744 A JP 2009034744A JP 2009034744 A JP2009034744 A JP 2009034744A JP 2010191124 A JP2010191124 A JP 2010191124A
- Authority
- JP
- Japan
- Prior art keywords
- waveform data
- output
- output waveform
- acceleration
- sound effect
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
Description
本発明は、入力された波形データの加速度およびその変化量である加々速度を利用して音色を制御する効果音発生装置に関する。 The present invention relates to a sound effect generator for controlling a timbre by using acceleration of input waveform data and jerk that is a change amount thereof.
マイクから入力された音声に基づく波形データや、ギターから出力された楽音波形データから、そのピッチを抽出し、抽出されたピッチに基づいて出力用の波形データを生成して出力する技術が知られている。たとえば、特許文献1や特許文献2では、ギターの6つの弦から発せられた楽音波形データのそれぞれのピッチ(音高)およびエンベロープを抽出して、ROMなどから所定の音色の楽音波形データを、抽出されたピッチに基づいて読み出し、抽出されたエンベロープを与えて新たな楽音波形データを生成している。また、特許文献3においては、マイクから入力された音声に基づいてピッチが抽出されている。
A technology is known that extracts the pitch from waveform data based on sound input from a microphone or musical sound waveform data output from a guitar, and generates and outputs waveform data for output based on the extracted pitch. ing. For example, in
特許文献1では、入力された波形データにフィルタ処理を施し、フィルタ処理が施された波形データのゼロクロス点を検出し、波形データが正の値をとる時間をカウンタにて計測するとともに、波形データが負の値をとる時間を他のカウンタにて計測し、双方のカウンタ値を参照して弦の基本波の振動を検知し、波形データのピッチを抽出している。また、特許文献3においては、負から正に変化するゼロクロス点の時間間隔を測定するとともに、正から負に変換するゼロクロス点の時間間隔を測定し、その時間間隔が安定した時点で、当該時間間隔からピッチを決定している。
In
上述したように入力された波形データからピッチを抽出するためには、最低でも1周期の半波の時間を計測することが必要である。たとえば、これをベースの音域で考えると、数十ミリ秒の遅れとなる。ギターの音域であっても、ピッチ抽出には最低でも数ミリ秒を要する。 In order to extract the pitch from the input waveform data as described above, it is necessary to measure the time of at least one half wave. For example, if this is considered in the bass range, there will be a delay of several tens of milliseconds. Even in the guitar range, it takes at least a few milliseconds to extract the pitch.
そこで、入力された波形データにおけるピッチ以外の要素を用いて、入力波形データを反映した出力波形データを、良好なレスポンスで生成する手法が望まれる。 Therefore, there is a demand for a method of generating output waveform data reflecting input waveform data with an excellent response using elements other than the pitch in the input waveform data.
たとえば、加速度は速度変化の存在や振動の存在を感じさせる要素と考えられる。また、加速度の変化を示す加々加速度は、力の変化を感じさせる要素と考えられる。したがって、加速度がプラスからマイナスに転じる時には、加々速度の変化により力が逆方向となったことを感じることができる。 For example, acceleration is considered to be an element that makes the presence of a speed change or vibration. Further, jerk indicating a change in acceleration is considered to be an element that causes a change in force. Therefore, when the acceleration changes from positive to negative, it can be felt that the force is reversed due to the change in jerk.
波形データによりどのような楽音が奏でられているかは、音高(ピッチ)だけでなく、波形データにおける速度の変化である加速度、および、加速度の変化である加々速度によっても規定されていると考えられる。 What musical sound is played by the waveform data is defined not only by the pitch (pitch), but also by the acceleration that is the change in velocity in the waveform data and the jerk that is the change in acceleration. Conceivable.
そこで、本発明は、加速度、および、その変化量である加々速度に基づき、出力される波形データの音色を適切に変化させることができる効果音発生装置を提供することを目的とする。 Accordingly, an object of the present invention is to provide a sound effect generating device that can appropriately change the tone color of output waveform data based on acceleration and jerk that is the amount of change.
本発明の目的は、入力された入力波形データに基づく効果音を発生する効果音発生装置であって、
前記入力波形データの加速度を算出する加速度算出手段と、
出力すべき楽音波形データの基礎となる、予め定められた原波形データを記憶する原波形データ記憶手段と、
前記加速度算出手段により算出された加速度と、前記原波形データ記憶手段に記憶された、過去の原波形データとに基づいて、出力すべき新たな出力波形データを生成する出力波形データ生成手段と、を備えたことを特徴とする効果音発生装置により達成される。
An object of the present invention is a sound effect generator for generating a sound effect based on input waveform data,
Acceleration calculation means for calculating the acceleration of the input waveform data;
Original waveform data storage means for storing predetermined original waveform data, which is the basis of musical sound waveform data to be output;
Output waveform data generating means for generating new output waveform data to be output based on the acceleration calculated by the acceleration calculating means and the past original waveform data stored in the original waveform data storage means; This is achieved by a sound effect generator characterized by comprising:
好ましい実施態様においては、前記出力波形データ生成手段が、現在時刻tにおける加速度A(t)が、当該現在時刻tにおける出力波形データX(t)の加速度となるように、前記加速度A(t)、過去の原波形データg(t−t1)およびg(t−t2)(t1<t2)に基づいて、前記出力波形データX(t)を算出するように構成されている。 In a preferred embodiment, the output waveform data generating means causes the acceleration A (t) so that the acceleration A (t) at the current time t becomes the acceleration of the output waveform data X (t) at the current time t. The output waveform data X (t) is calculated based on the past original waveform data g (t−t1) and g (t−t2) (t1 <t2).
より好ましい実施態様においては、前記出力波形データ生成手段が、
X(t)=A(t)・Δt2+2g(t−1)−g(t−2)
(Δtは波形データのサンプリング周期)
に基づいて、出力波形データX(t)を算出する。
In a more preferred embodiment, the output waveform data generating means is
X (t) = A (t) · Δt 2 +2 g (t−1) −g (t−2)
(Δt is the sampling period of waveform data)
Based on the above, output waveform data X (t) is calculated.
別の好ましい実施態様においては、前記出力波形データ生成手段が、時刻tがn・Δt(nは予め定められた定数)の倍数であるときに、
X(t)=A(t)・Δt2+2g(t−1)−g(t−2)
(Δtは波形データのサンプリング周期)
時刻tがn・Δtの倍数ではないときに、
X(t)=g(t)
に基づいて、出力波形データX(t)を算出する。
In another preferred embodiment, when the output waveform data generating means is time t is a multiple of n · Δt (n is a predetermined constant),
X (t) = A (t) · Δt 2 +2 g (t−1) −g (t−2)
(Δt is the sampling period of waveform data)
When time t is not a multiple of n · Δt,
X (t) = g (t)
Based on the above, output waveform data X (t) is calculated.
さらに別の好ましい実施態様においては、前記出力波形データ生成手段が、
X(t)=A(t)・T2+2g(t−n)−g(t−2n)
(T=n・Δt、Δtは波形データのサンプリング周期、nは予め定められた定数)
に基づいて、出力波形データX(t)を算出する。
In still another preferred embodiment, the output waveform data generating means is
X (t) = A (t) .T 2 +2 g (t−n) −g (t−2n)
(T = n · Δt, Δt is a sampling period of waveform data, and n is a predetermined constant)
Based on the above, output waveform data X (t) is calculated.
また、好ましい実施態様においては、前記出力波形データ生成手段が、出力波形データが発音開始してから所定のタイミングに至るまで、前記加速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、原波形データを新たな出力波形データとして出力する。 Further, in a preferred embodiment, the output waveform data generating means generates waveform data generated based on the acceleration and past original waveform data from the start of output waveform data until a predetermined timing. Then, it is output as new output waveform data, and after the predetermined timing has arrived, the original waveform data is output as new output waveform data.
別の好ましい実施態様においては、前記入力波形データのピッチを抽出するピッチ抽出手段を備え、
前記出力波形データ生成手段が、出力波形データが発音開始してから所定のタイミングに至るまで、前記加速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、前記原波形データ記憶手段に記憶された原波形データを前記抽出されたピッチにしたがって読み出すことにより得られた波形データを新たな出力波形データとして出力する。
In another preferred embodiment, it comprises pitch extraction means for extracting the pitch of the input waveform data,
The output waveform data generation means outputs the waveform data generated based on the acceleration and the past original waveform data as new output waveform data from the start of the sound generation of the output waveform data until a predetermined timing. Then, after the predetermined timing has arrived, waveform data obtained by reading the original waveform data stored in the original waveform data storage means according to the extracted pitch is output as new output waveform data.
また、本発明の目的は、入力された入力波形データに基づく効果音を発生する効果音発生装置であって、
前記入力波形データの加々速度を算出する加速度算出手段と、
出力すべき楽音波形データの基礎となる、予め定められた原波形データを記憶する原波形データ記憶手段と、
前記加速度算出手段により算出された加々速度と、前記原波形データ記憶手段に記憶された、過去の原波形データとに基づいて、出力すべき新たな出力波形データを生成する出力波形データ生成手段と、を備えたことを特徴とする効果音発生装置により達成される。
Another object of the present invention is a sound effect generator for generating a sound effect based on input waveform data,
Acceleration calculation means for calculating the jerk of the input waveform data;
Original waveform data storage means for storing predetermined original waveform data, which is the basis of musical sound waveform data to be output;
Output waveform data generation means for generating new output waveform data to be output based on jerk calculated by the acceleration calculation means and past original waveform data stored in the original waveform data storage means And achieving the sound effect generator.
好ましい実施態様においては、前記出力波形データ生成手段が、現在時刻tにおける加々速度P(t)が、当該現在時刻tにおける出力波形データX(t)の加速度となるように、前記加々速度P(t)、過去の原波形データg(t−t1)、g(t−t2)およびg(t−t3)(t1<t2<t3)に基づいて、前記出力波形データX(t)を算出するように構成されている。 In a preferred embodiment, the output waveform data generating means is configured so that the jerk P (t) at the current time t becomes the acceleration of the output waveform data X (t) at the current time t. Based on P (t), past original waveform data g (t−t1), g (t−t2) and g (t−t3) (t1 <t2 <t3), the output waveform data X (t) is It is configured to calculate.
より好ましい実施態様においては、前記出力波形データ生成手段が、
X(t)=P(t)・Δt3+3g(t−1)−3g(t−2)+g(t−3)
(Δtは波形データのサンプリング周期)
に基づいて、出力波形データX(t)を算出する。
In a more preferred embodiment, the output waveform data generating means is
X (t) = P (t) · Δt 3 +3 g (t−1) −3 g (t−2) + g (t−3)
(Δt is the sampling period of waveform data)
Based on the above, output waveform data X (t) is calculated.
別の好ましい実施態様においては、前記出力波形データ生成手段が、時刻tがn・Δt(nは予め定められた定数)の倍数であるときに、
X(t)=P(t)・Δt3+3g(t−1)−3g(t−2)+g(t−3)
(Δtは波形データのサンプリング周期)
時刻tがn・Δtの倍数ではないときに、
X(t)=g(t)
に基づいて、出力波形データX(t)を算出する。
In another preferred embodiment, when the output waveform data generating means is time t is a multiple of n · Δt (n is a predetermined constant),
X (t) = P (t) · Δt 3 +3 g (t−1) −3 g (t−2) + g (t−3)
(Δt is the sampling period of waveform data)
When time t is not a multiple of n · Δt,
X (t) = g (t)
Based on the above, output waveform data X (t) is calculated.
さらに別の好ましい実施態様においては、前記出力波形データ生成手段が、
X(t)=P(t)・T3+3g(t−n)−3g(t−2n)+g(t−3n)
(T=n・Δt、Δtは波形データのサンプリング周期、nは予め定められた定数)
に基づいて、出力波形データX(t)を算出する。
In still another preferred embodiment, the output waveform data generating means is
X (t) = P (t) · T 3 +3 g (t−n) −3 g (t−2n) + g (t−3n)
(T = n · Δt, Δt is a sampling period of waveform data, and n is a predetermined constant)
Based on the above, output waveform data X (t) is calculated.
また、好ましい実施態様においては、前記出力波形データ生成手段が、出力波形データが発音開始してから所定のタイミングに至るまで、前記加々速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、原波形データを新たな出力波形データとして出力する。 In a preferred embodiment, the output waveform data generating means generates a waveform generated based on the jerk and past original waveform data from the start of output waveform data until a predetermined timing is reached. The data is output as new output waveform data, and after the predetermined timing has arrived, the original waveform data is output as new output waveform data.
別の好ましい実施態様においては、前記入力波形データのピッチを抽出するピッチ抽出手段を備え、
前記出力波形データ生成手段が、出力波形データが発音開始してから所定のタイミングに至るまで、前記加々速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、前記原波形データ記憶手段に記憶された原波形データを前記抽出されたピッチにしたがって読み出すことにより得られた波形データを新たな出力波形データとして出力する。
In another preferred embodiment, it comprises pitch extraction means for extracting the pitch of the input waveform data,
The output waveform data generation means generates new output waveform data from the waveform data generated based on the jerk and the past original waveform data until the predetermined timing is reached after the output waveform data starts sounding. After the predetermined timing has arrived, the waveform data obtained by reading the original waveform data stored in the original waveform data storage means according to the extracted pitch is output as new output waveform data To do.
本発明によれば、加速度、および、その変化量である加々速度に基づき、出力される波形データの音色を適切に変化させることができる効果音発生装置を提供することが可能となる。 According to the present invention, it is possible to provide a sound effect generating device capable of appropriately changing the tone color of the output waveform data based on the acceleration and the jerk that is the amount of change.
以下、添付図面を参照して、本発明の実施の形態について説明する。図1は、本発明の第1の実施の形態にかかる効果音発生装置の構成を示すブロックダイヤグラムである。図1に示すように、本実施の形態にかかる効果音発生装置10は、CPU11、ROM12、RAM13、サウンドシステム14、表示部15、波形データ入力インタフェース(I/F)17および操作部18を備える。
Embodiments of the present invention will be described below with reference to the accompanying drawings. FIG. 1 is a block diagram showing a configuration of a sound effect generator according to a first embodiment of the present invention. As shown in FIG. 1, the
CPU11は、効果音発生装置10全体の制御、操作部18を構成するスイッチ(図示せず)の操作の検出、波形データ入力I/F17を介して入力された入力波形データのRAM13への格納、入力波形データに基づく加速度、加々速度の算出、算出結果に基づく出力波形データの生成など、種々の処理を実行する。
The
ROM12は、操作部18を構成するスイッチの操作の検出、波形データ入力I/F17を介して入力された入力波形データのRAM13への格納、入力波形データに基づく加速度、加々速度の算出、算出結果に基づく出力波形データの生成などの処理プログラムを格納する。また、ROM12は、ピアノ、ギターなどの楽音を生成するための原波形データ(以下、「プリセット波形データ」と称する。)を記憶するプリセット波形データエリアを備えている
RAM13は、ROM12から読み出されたプログラムや、処理の過程で生じたデータを記憶する。処理の過程で生じたデータには、後述する波形データ入力I/F17を介して得られた入力波形データ、入力波形データに基づく速度データ、加速度データ、加々速度データ、ROM12に格納されたプリセット波形データと、加速度データ或いは加々速度データとに基づき得られた新たな出力波形データなどが含まれる。
The
サウンドシステム14は、CPU11からの指示にしたがって、RAM13の出力波形データエリアから出力波形データを読み出して、楽音データを生成して出力する。オーディオ回路22は、楽音データをD/A変換して増幅する。これによりスピーカ23から音響信号が出力される。
The
波形データ入力I/F17は、外部接続端子を有し、ギターや鍵盤楽器からの電気信号を受け入れて、受け入れた電気信号をA/D変換したデータを出力することが可能である。
The waveform data input I /
図2は、本実施の形態にかかる効果音発生装置10にて実行される処理を示すフローチャートである。効果音発生装置10のCPU11は、たとえば、RAM13に一時的に記憶された入力波形データ、入力波形データに基づく速度、加速度、加々速度、出力波形データなどのクリアを含むイニシャライズ処理を行う(ステップ201)。イニシャライズ処理(ステップ201)が終了すると、CPU11は、操作部18のスイッチの操作を検出し、検出された操作にしたがった処理を実行するスイッチ処理を実行する(ステップ202)。
FIG. 2 is a flowchart showing processing executed by the
スイッチ処理においては、発音モードを指定するスイッチ(図示せず)の操作、音色指定スイッチ(図示せず)の操作などが検出され、操作に応じた処理が実行される。図3は、本実施の形態にかかるスイッチ処理の例を示すフローチャートである。本実施の形態においては、後に詳述するように、波形データ入力I/F17を介して入力された入力波形データに基づいて、予めROM12に記憶されたプリセット波形データに基づいて新たな出力波形データが生成される。この新たな出力波形データの生成について、4つの異なる手法が設定可能となっている。
In the switch process, an operation of a switch (not shown) for designating a sound generation mode, an operation of a tone color designation switch (not shown), etc. are detected, and a process corresponding to the operation is executed. FIG. 3 is a flowchart showing an example of the switch processing according to the present embodiment. In the present embodiment, as will be described in detail later, based on the input waveform data input via the waveform data input I /
ピッチ抽出モードにおいては、入力波形データからそのピッチ(音高情報)が抽出され、プリセット波形データに基づいて、抽出されたピッチにしたがった出力波形データが生成される。加速度モードにおいては、入力波形データの加速度が算出され、算出された加速度に基づいて、プリセット波形データが変形されて、新たな出力波形データが算出される。また、加々速度モードにおいては、入力波形データの加速度が算出され、算出された加々速度に基づいて、プリセット波形データが変形されて、新たな出力波形データが算出される。さらに、複合モードにおいては、出力波形データにおいて、最初の所定の部分では加速度モード或いは加々速度モードの何れかにしたがった新たな出力波形データが採用され、その後の部分では、ピッチ抽出モードにしたがった出力波形データが採用される。 In the pitch extraction mode, the pitch (pitch information) is extracted from the input waveform data, and output waveform data according to the extracted pitch is generated based on the preset waveform data. In the acceleration mode, the acceleration of the input waveform data is calculated, the preset waveform data is transformed based on the calculated acceleration, and new output waveform data is calculated. In the jerk mode, the acceleration of the input waveform data is calculated, and based on the calculated jerk, the preset waveform data is transformed and new output waveform data is calculated. Further, in the composite mode, in the output waveform data, new output waveform data according to either the acceleration mode or jerk mode is adopted in the first predetermined portion, and in the subsequent portion, the pitch extraction mode is used. Output waveform data is adopted.
本実施の形態においては、上記モードを設定するために、操作部18には、ピッチ抽出モードスイッチ、加速度モードスイッチ、加々速度モードスイッチ、および、複合モードスイッチが含まれる。CPU11は、ピッチ抽出スイッチがオンであれば(ステップ301)、モードをピッチ抽出モードに設定する(ステップ302)。設定されたモードの情報は、RAM13の所定の領域に格納される。CPU11は、加速度モードスイッチがオンであれば(ステップ303でYes)、モードを加速度モードに設定し(ステップ304)、また、加々速度モードスイッチがオンであれば(ステップ305でYes)、モードを加々速度モードに設定する(ステップ306)。さらに、CPU11は、複合モードスイッチがオンであれば(ステップ307でYes)、モードを複合モードに設定する(ステップ308)。なお、複合モードの場合には、加速度或いは加々速度の何れに基づくかも、操作部15の操作により指定され、何れに基づくかを示す情報も、モードを示す情報とともにRAM13の所定の領域に格納される。
In the present embodiment, in order to set the mode, the
スイッチ処理(ステップ202)の後、CPU11は、入力波形記憶処理を実行する(ステップ203)。図4は、本実施の形態にかかる入力波形記憶処理の例を示すフローチャートである。CPU11は、波形データ入力I/F17に信号の入力があったか否かを判断する(ステップ401)。ステップ401でNoと判断された場合には処理が終了される。ステップ401でYesと判断された場合には、入力波形データを特定する時刻パラメータtinを取得する(ステップ402)。この時刻パラメータtinは、初期的には「1」であり、また、RAM13の所定のデータエリアに記憶される。次いで、CPU11は、波形データ入力I/F17からA/D変換された値を、時刻tinの入力波形データG(tin)として生成して(ステップ403)、RAM13の所定の入力波形データエリアに格納する(ステップ404)。
After the switch process (step 202), the
CPU11は、未処理のデータがある場合には(ステップ405でYes)、時刻パラメータtinをインクリメントして(ステップ406)、ステップ403に戻る。ステップ405でNoの場合には、CPU11は、時刻パラメータtinをRAM13の所定のデータエリアに格納する。この時刻パラメータtinは、次回の入力波形記憶処理において使用される。図6は、本実施の形態における入力波形データ、並びに、その速度、加速度、加々速度の例を示す図である。図6において、入力された波形(符号600)について、所定のサンプリング周期Δtで、時間t1、t2、・・・tnのそれぞれに対応するように、対応するゲインG1、G2、・・・、Gnが取得され、RAM13の入力波形データエリアに格納される。
If there is unprocessed data (Yes in Step 405), the
入力波形記憶処理(ステップ203)の後、CPU11は演奏処理を実行する(ステップ204)。図5は、本実施の形態にかかる演奏処理の例を示すフローチャートである。演奏処理においては、ステップ202のスイッチ処理において設定されたモードにしたがった処理が実行される。CPU11は、モードがピッチ抽出モードであった場合には(ステップ501)、ピッチ抽出処理を実行する(ステップ501)。ピッチ抽出処理として、特許文献1や特許文献2に記載されている手法など既知の手法が採用され得る。たとえば、ピッチ抽出処理においては、CPU11は、入力波形記憶処理203によりRAM13の所定のデータエリアに記憶された入力波形データG(t)を読み出して、入力波形データG(t)のピッチを抽出する。たとえば、特許文献1に記載されたように、入力された波形データにフィルタ処理を施し、フィルタ処理が施された波形データのゼロクロス点を検出し、波形データが正の値をとる時間をカウンタにて計測するとともに、波形データが負の値をとる時間を他のカウンタにて計測し、双方のカウンタ値を参照して弦の基本波の振動を検知し、これにより入力波形データのピッチを抽出しても良い。或いは、特許文献3に記載されたように、負から正に変化するゼロクロス点の時間間隔を測定するとともに、正から負に変換するゼロクロス点の時間間隔を測定し、その時間間隔が安定した時点で、当該時間間隔からピッチを決定しても良い。また、CPU11は、ピッチ抽出処理において抽出された、入力波形データのピッチ(音高情報)にしたがって、プリセット波形データを読み出して、波形データg’(t)を生成する。これにより、入力波形データの音高にしたがった、プリセット波形データに基づく楽音が発音されることになる。
After the input waveform storage process (step 203), the
ステップ501でNoと判断された場合には、CPU11は、モードが加速度モードであるか否かを判断する(ステップ503)。ステップ503でYesと判断された場合には、CPU11は、加速度演算処理を実行する(ステップ504)。図7は、本実施の形態にかかる加速度演算処理の例を示すフローチャートである。図7に示すように、CPU11は、加速度演算処理において読み出すべき入力波形データを特定する時刻パラメータtaを取得する(ステップ701)。時刻パラメータtaは初期的には「1」であり、また、RAM13の所定のデータエリアに記憶される。
When it is determined No in
CPU11は、時刻ta−2ないし時刻taにおける入力波形データG(ta−2)ないしG(ta)を取得し(ステップ702)、これらから速度V(ta−1)およびV(ta)を算出する(ステップ703)。
The
速度V(ta−1)、V(ta)は、以下のように求めることができる。 The speeds V (ta-1) and V (ta) can be obtained as follows.
V(ta−1)=(G(ta−1)−G(ta−2))/Δt
V(ta)=(G(ta)−G(ta−1))/Δt
(Δtはサンプリング周期)
次いで、CPU11は、速度V(ta−1)およびV(ta)から加速度A(ta)を算出する(ステップ704)。
V (ta-1) = (G (ta-1) -G (ta-2)) / Δt
V (ta) = (G (ta) −G (ta−1)) / Δt
(Δt is the sampling period)
Next, the
加速度A(ta)は、以下のように求めることができる。 The acceleration A (ta) can be obtained as follows.
A(ta)=(V(ta)−V(ta−1))/Δt
=(G(ta)−2・G(ta−1)+G(ta−2))/Δt2
その後、CPU11は、算出された加速度A(ta)および当該時刻taより過去におけるプリセット波形データg(ta−2)〜g(ta−1)に基づいて、新たな出力波形データX(ta)を算出する(ステップ705)。ステップ705においては、プリセット波形データg(ta−2)、g(ta−1)およびX(ta)に基づいて得られる加速度が、A(ta)に一致するように、X(ta)が算出される。
A (ta) = (V (ta) −V (ta−1)) / Δt
= (G (ta) -2 · G (ta-1) + G (ta-2)) / Δt 2
Thereafter, the
すなわち、
A(ta)=(X(ta)−2・g(ta−1)+g(ta−2))/Δt2に基づいて、
X(ta)=A(ta)・Δt2+2g(ta−1)−g(ta−2)
と得ることができる。
That is,
Based on A (ta) = (X (ta) −2 · g (ta−1) + g (ta−2)) / Δt 2 ,
X (ta) = A (ta) · Δt 2 +2 g (ta-1) -g (ta-2)
And can be obtained.
CPU11は、算出された出力波形データX(ta)を、RAM13の所定の出力波形データエリアに格納するとともに、算出された速度V、加速度AをRAM13の所定のデータエリアに格納する(ステップ706)。なお、加速度演算処理は繰り返し実行されるが、いったん算出された速度や加速度は、次の処理では新たに算出する必要は無く、RAM13のデータエリアから読み出せば足りる。未処理、つまり、関連する速度等が算出されていない入力波形データがあれば(ステップ707でYes)、CPU11は、時刻パラメータtaをインクリメントして(ステップ708)、ステップ702に戻る。
The
ステップ707でYesと判断された場合には、CPU11は、時刻パラメータtaをRAM13の所定のデータエリアに格納する(ステップ709)。本実施の形態においては、入力された波形(図6の符号600参照)の加速度A2、A3、A4、・・・が順次算出され(符号611参照)、時刻taにおける加速度A(ta)が、時刻taの出力波形データX(ta)の加速度となるように、過去のプリセット波形データg(ta−2)、g(ta−1)に基づいて、新たな出力波形データX(ta)が算出される。
When it is determined Yes in
ステップ503でNoと判断された場合には、CPU11は、モードが加々速度モードであるか否かを判断する(ステップ505)、ステップ505でYesと判断された場合には、CPU11は、加々速度演算処理を実行する(ステップ506)。図8は、本実施の形態にかかる加々速度演算処理の例を示すフローチャートである。図8に示すように、CPU11は、加々速度演算処理において読み出すべき入力波形データを特定する時刻パラメータtbを取得する(ステップ801)。時刻パラメータtbは初期的には「1」であり、また、RAM13の所定のデータエリアに記憶される。
If it is determined No in
CPU11は、時刻tb−3ないし時刻tbにおける入力波形データG(tb−3)ないしG(tb)を取得し(ステップ802)、これらから速度V(ta−2)ないしV(tb)を算出する(ステップ803)。
The
加速度演算処理の場合と同様に、速度V(tb−2)〜V(tb)は、以下のように求めることができる。 As in the case of the acceleration calculation process, the speeds V (tb-2) to V (tb) can be obtained as follows.
V(tb−2)=(G(tb−2)−G(tb−3))/Δt
V(tb−1)=(G(tb−1)−G(tb−2))/Δt
V(tb)=(G(tb)−G(tb−1))/Δt
(Δtはサンプリング周期)
次いで、CPU11は、速度V(tb−2)ないしV(tb)から加速度A(tb−1)およびA(tb)を算出する(ステップ804)。
V (tb-2) = (G (tb-2) -G (tb-3)) / Δt
V (tb-1) = (G (tb-1) -G (tb-2)) /. DELTA.t
V (tb) = (G (tb) −G (tb−1)) / Δt
(Δt is the sampling period)
Next, the
加速度A(tb−1)およびA(tb)は、以下のように求めることができる。 The accelerations A (tb-1) and A (tb) can be obtained as follows.
A(tb−1)=(V(tb−1)−V(tb−2))/Δt
=(G(tb−1)−2・G(tb−2)+G(tb−3))/Δt2
A(ta)=(V(tb)−V(tb−1))/Δt
=(G(tb)−2・G(tb−1)+G(tb−2))/Δt2
さらに、CPU11は、加速度A(tb−1)およびA(tb)から加々速度P(tb)を算出する(ステップ805)。
A (tb-1) = (V (tb-1) -V (tb-2)) / Δt
= (G (tb-1) -2 · G (tb-2) + G (tb-3)) / Δt 2
A (ta) = (V (tb) −V (tb−1)) / Δt
= (G (tb) −2 · G (tb−1) + G (tb−2)) / Δt 2
Further, the
加々速度P(tb)は以下のように求めることができる。 The jerk P (tb) can be obtained as follows.
P(tb)=(A(tb)−A(tb−1))/Δt
=(V(tb)−2・V(tb−1)+V(tb−2))/Δt2
=(G(tb)−3G(tb−1)+3G(tb−2)−G(tb−3))/Δt3
その後、CPU11は、算出された加々速度P(tb)および当該時刻tbより過去におけるプリセット波形データg(tb−3)〜g(tb−1)に基づいて、新たな出力波形データX(tb)を算出する(ステップ806)。ステップ806においては、プリセット波形データg(tb−3)、g(tb−2)、g(tb−1)およびX(tb)に基づいて得られる加々速度が、P(tb)に一致するように、X(tb)が算出される。
P (tb) = (A (tb) −A (tb−1)) / Δt
= (V (tb) −2 · V (tb−1) + V (tb−2)) / Δt 2
= (G (tb) -3G ( tb-1) + 3G (tb-2) -G (tb-3)) / Δt 3
Thereafter, the
すなわち、
P(tb)=(G(tb)−3G(tb−1)+3G(tb−2)−G(tb−3))/Δt3 に基づいて、
X(tb)=P(tb)・Δt3+3g(tb−1)−3g(tb−2)+g(tb−3)
と得ることができる。
That is,
Based on P (tb) = (G (tb) −3G (tb−1) + 3G (tb−2) −G (tb−3)) / Δt 3 ,
X (tb) = P (tb) · Δt 3 +3 g (tb−1) −3 g (tb−2) + g (tb−3)
And can be obtained.
CPU11は、算出された出力波形データX(tb)を、RAM13の所定の出力波形データエリアに格納するとともに、算出された速度V、加速度Aおよび加々速度をRAM13の所定のデータエリアに格納する(ステップ807)。なお、加速度演算処理に関して説明したように、加々速度演算処理は繰り返し実行されるが、いったん算出された速度、加速度、加々速度は、次の処理では新たに算出する必要は無く、RAM13のデータエリアから読み出せば足りる。未処理、つまり、関連する速度等が算出されていない入力波形データがあれば(ステップ808でYes)、CPU11は、時刻パラメータtbをインクリメントして(ステップ809)、ステップ802に戻る。
The
ステップ808でYesと判断された場合には、CPU11は、時刻パラメータtbをRAM13の所定のデータエリアに格納する(ステップ810)。本実施の形態においては、入力された波形(図6の符号600参照)の加々速度P3、P4、P5、・・・が順次算出され(符号612参照)、時刻tbにおける加々速度P(tb)が、時刻tbの出力波形データX(tb)の加速度となるように、過去のプリセット波形データg(tb−3)、g(tb−2)、g(tb−1)に基づいて、新たな出力波形データX(tb)が算出される。
If it is determined Yes in
ステップ505でNoと判断された場合には、CPU11は、モードが複合モードであるか否かを判断する(ステップ507)、ステップ507でYesと判断された場合には、CPU11は、複合モード処理を実行する(ステップ508)。図9は、本実施の形態にかかる複合モード処理の例を示すフローチャートである。複合モードにおいては、プリセット波形データがアタック時には、加速度或いは加々速度の何れかの選択に基づいて、加速度演算処理や加々速度演算処理と同様の処理が実行され、演算により出力波形データが取得される。その一方、アタック以降(つまり、ディケイ時やサステイン時)には、ピッチ抽出処理が行なわれて、抽出された音高情報に基づいて、プリセット波形データが読み出されて、読み出された出力波形データg’(t)が出力波形データとなる。
If NO is determined in
図9に示すように複合モード処理においては、CPU11は、複合モード処理において読み出すべき入力波形データを特定する時刻パラメータtcを取得する(ステップ901)。時刻パラメータtcは初期的には「1」であり、また、RAM13の所定のデータエリアに記憶される。次いで、CPU11は、時刻tcにおけるプリセット波形データg(tc)がアタック時に属するか否かを判断する(ステップ902)。ステップ902でNo、つまり、プリセット波形データが、アタック時よりの後(ディケイ時、サステイン時など)と判断された場合には、CPU11は、ピッチ抽出処理を実行する(ステップ903)。ピッチ抽出処理においては、抽出された入力波形データのピッチ(音高情報)にしたがって、CPU11が、プリセット波形データを読み出して、波形データg’(tc)を生成する。未処理の入力波形データがあれば(ステップ904でYes)、CPU11は、時刻パラメータtcをインクリメントして(ステップ905)、ステップ902に戻る。
As shown in FIG. 9, in the composite mode process, the
ステップ902でYesであった場合には、CPU11は、複合モードにおいて加速度が演算に用いられるかを判断する(ステップ906)。ステップ906でYesと判断された場合には、CPU11は、図7のステップ702〜706に相当する処理を実行する(ステップ907)。これにより、図7を参照して説明したように、出力波形データX(tc)=A(tc)・Δt2+2g(tc−1)−g(tc−2)を得ることができる。
If Yes in
その一方、ステップ906でNoと判断された場合、つまり、複合モードにおいて加々速度が演算に用いられるべき場合、CPU11は、図8のステップ802〜807に相当する処理を実行する(ステップ908)。これにより、図8を参照して説明したように、出力波形データX(tc)=P(tc)・Δt3+3g(tc−1)−3g(tc−2)+g(tc−3)を得ることができる。
On the other hand, when it is determined No in
その後、CPU11はクロスフェード処理を実行する(ステップ909)。図10は、本実施の形態にかかるクロスフェード処理の例を示すフローチャートである。図10に示すように、CPU11は、たとえば、ROM12に格納された複合モードにおけるクロスフェード期間tx、プリセット波形データについてのクロスフェード開始時刻tx0およびクロスフェード終了時刻tx1を取得する(ステップ1001)。なお、tx0+tx=tx1という関係が成立する。
Thereafter, the
次いで、CPU11は、時刻tcが、クロスフェード期間内(つまり、tx0≦tc≦tx1)であるか否かを判断する(ステップ1002)。ステップ1002でNoと判断された場合には、CPU11は処理を終了する。ステップ1002でYesと判断された場合には、CPU11は、入力波形データから抽出されたピッチ(音高情報)に基づいて読み出されたプリセット波形データg’(tc)のクロスフェード出力であるgx(tc)を以下のように求める(ステップ1003)。
Next, the
gx(tc)=((tc−tx0)/tx)・g’(tc)
また、CPU11は、入力波形データの加速度にしたがって算出された出力波形データ、或いは、入力波形データの加々速度にしたがって算出された波形データのクロスフェード出力であるXx(tc)を以下のように求める(ステップ1004)。
gx (tc) = ((tc−tx0) / tx) · g ′ (tc)
Further, the
Xx(tc)=((tx1−tc)/tx)・X(tc)
次いで、CPU11は、算出されたクロスフェード出力gx(tc)とXx(tc)とを加算し、これを、時刻tcにおける新たな出力波形データX(tc)とする(ステップ1005)。図11に示すように、クロスフェード出力Xx(tc)(符号1100参照)は、クロスフェード開始時刻tx0においては、波形データX(tx0)と一致し(符合1101参照)、その後単調に減少して、クロスフェード終了時刻tx1において「0」となる。その一方、クロスフェード出力gx’(tc)(符号1110参照)は、クロスフェード開始時刻tx0においては「0」であり、その後単調に増加して、クロスフェード終了時刻tx1においては、波形データg’(tx1)に一致する(符合1111)。
Xx (tc) = ((tx1-tc) / tx) · X (tc)
Next, the
演奏処理(図2のステップ204)が終了すると、発音処理が実行される(ステップ205)。図12は、本実施の形態にかかる発音処理の例を示すフローチャートである。図12に示すように、CPU11は、出力波形データを特定する時刻パラメータtout取得する(ステップ1201)。この時刻パラメータtoutは、初期的には「1」であり、また、RAM13の所定のデータエリアに記憶される。次いで、CPU11は、RAM13の出力波形データエリア中にまだ発音されていない出力波形データが存在するか否かを判断する(ステップ1202)。ステップ1202でNoと判断された場合には処理を終了する。ステップ1202でYesと判断された場合には、CPU11は、時刻toutの出力波形データX(tout)を発音すべき時刻が到来しているか否かを判断する(ステップ1203)。ステップ1203でNoと判断された場合には、CPU11は、時刻パラメータtoutをRAM13の所定のデータエリアに格納して(ステップ1209)処理を終了する。
When the performance process (step 204 in FIG. 2) ends, the sound generation process is executed (step 205). FIG. 12 is a flowchart showing an example of the sound generation process according to the present embodiment. As shown in FIG. 12, the
ステップ1203でYesと判断された場合には、CPU11は、音源部21に出力波形データX(tout)の発音を指示する。指示に応答して、音源部21は、RAM13の出力波形データエリアから出力波形データX(tout)を読み出す(ステップ1204)。またベロシティデータなど他の必要なデータがあれば、音源部21は、ROM12或いはRAM13から他のデータを読み出す(ステップ1205)。次いで、音源部21は、読み出した出力波形データX(tout)などに基づいて楽音データを生成し、オーディオ回路22に出力する(ステップ1206)。これにより、スピーカ23から楽音データに基づく楽音が出力される。
If it is determined Yes in
CPU11が、RAM13の出力波形データエリアに未処理の出力波形データが存在スすると判断すると(ステップ1207でYes)、時刻パラメータtoutをインクリメントしてステップ1203に戻る。ステップ1207でNoと判断された場合には、CPU11は、時刻パラメータtoutをRAM13の所定のデータエリアに格納して(ステップ1209)処理を終了する。
If the
本実施の形態によれば、算出された加速度と、ROM12に記憶されたプリセット波形データ中の過去の波形データとに基づいて、出力すべき新たな出力波形データが生成される。加速度は、入力波形データの3つのサンプル点から取得することが可能である。したがって、ピッチ抽出と比較して非常に高速に、入力波形データに基づく出力波形データを生成することが可能となる。また、入力波形データにおけるゆれの方向や、振動の存在に基づいて、これらを反映させた出力波形データを生成することが可能となる。
According to the present embodiment, new output waveform data to be output is generated based on the calculated acceleration and past waveform data in the preset waveform data stored in the
また、本実施の形態によれば、現在時刻tにおける加速度A(t)が、当該現在時刻tにおける出力波形データX(t)の加速度となるように、前記加速度A(t)、過去の原波形データg(t−t1)およびg(t−t2)(t1<t2)に基づいて、前記出力波形データX(t)が算出される。たとえば、t1=1、t2=2とすれば、連続する3つのサンプル点から加速度が求められ、出力波形データX(t)は、X(t)=P(t)・Δt3+3g(t−1)−3g(t−2)+g(t−3)(Δtは波形データのサンプリング周期)と得ることができる。 In addition, according to the present embodiment, the acceleration A (t) and the past original are set so that the acceleration A (t) at the current time t becomes the acceleration of the output waveform data X (t) at the current time t. The output waveform data X (t) is calculated based on the waveform data g (t−t 1 ) and g (t−t 2 ) (t 1 <t 2 ). For example, if t 1 = 1 and t 2 = 2, acceleration is obtained from three consecutive sample points, and the output waveform data X (t) is X (t) = P (t) · Δt 3 + 3g ( t-1) -3g (t-2) + g (t-3) (Δt is a sampling period of waveform data).
本実施の形態においては、複合モードにおいて、出力波形データが発音開始してから所定のタイミングに至るまで、前記加速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、前記原波形データ記憶手段に記憶された原波形データを前記抽出されたピッチにしたがって読み出すことにより得られた波形データを新たな出力波形データとして出力する。これにより、出力波形データのアタック時に、入力波形データの加速度を反映した波形とすることができる。 In the present embodiment, in the composite mode, waveform data generated based on the acceleration and past original waveform data from the start of sound generation of the output waveform data until a predetermined timing is used as a new output waveform. After the predetermined timing has arrived, the waveform data obtained by reading the original waveform data stored in the original waveform data storage means according to the extracted pitch is used as new output waveform data. Output. Thereby, when the output waveform data is attacked, a waveform reflecting the acceleration of the input waveform data can be obtained.
本実施の形態によれば、算出された加々速度と、ROM12に記憶されたプリセット波形データ中の、過去の波形データとに基づいて、出力すべき新たな出力波形データが生成される。加々速度は、入力波形データの4つのサンプル点から取得することが可能である。したがって、ピッチ抽出と比較して非常に高速に、入力波形データに基づく出力波形データを生成することが可能となる。また、入力波形データにおける力の変化に基づいて、これを反映させた出力波形データを生成することが可能となる。
According to the present embodiment, new output waveform data to be output is generated based on the calculated jerk and past waveform data in the preset waveform data stored in the
また、本実施の形態によれば、現在時刻tにおける加々速度P(t)が、当該現在時刻tにおける出力波形データX(t)の加速度となるように、前記加々速度P(t)、過去の原波形データg(t−t1)、g(t−t2)およびg(t−t3)(t1<t2<t3)に基づいて、前記出力波形データX(t)が算出される。たとえば、t1=1、t2=2、t3=3とすれば、出力波形データX(t)は、X(t)=P(t)・Δt3+3g(t−1)−3g(t−2)+g(t−3)(Δtは波形データのサンプリング周期)と得ることができる。 Further, according to the present embodiment, the jerk P (t) is such that the jerk P (t) at the current time t becomes the acceleration of the output waveform data X (t) at the present time t. Based on the past original waveform data g (t−t 1 ), g (t−t 2 ), and g (t−t 3 ) (t 1 <t 2 <t 3 ), the output waveform data X (t ) Is calculated. For example, if t 1 = 1, t 2 = 2 and t 3 = 3, the output waveform data X (t) is X (t) = P (t) · Δt 3 + 3g (t−1) −3g ( t−2) + g (t−3) (Δt is a sampling period of waveform data).
さらに、本実施の形態においては、複合モードにおいて、出力波形データが発音開始してから所定のタイミングに至るまで、前記加々速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、前記原波形データ記憶手段に記憶された原波形データを前記抽出されたピッチにしたがって読み出すことにより得られた波形データを新たな出力波形データとして出力する。これにより、出力波形データのアタック時に、入力波形データの加々速度を反映した波形とすることができる。 Furthermore, in the present embodiment, in the composite mode, waveform data generated based on the jerk and the past original waveform data from when the output waveform data starts sounding until a predetermined timing is obtained. Output as new output waveform data, and after the predetermined timing has arrived, the waveform data obtained by reading out the original waveform data stored in the original waveform data storage means according to the extracted pitch Output as output waveform data. As a result, when the output waveform data is attacked, a waveform reflecting the jerk of the input waveform data can be obtained.
次に、本発明の第2の実施の形態について説明する。第1の実施の形態においては、サンプリング周期Δt間隔で速度、加速度、および、加々速度を算出して、サンプリング周期の間隔、つまり、サンプル点ごとに、プリセット波形データおよび加速度、或いは、プリセット波形データおよび加々速度に基づいて、新たな出力波形データを算出している。第2の実施の形態においては、速度や加々速度を算出する時間間隔を可変としている。たとえば、この時間間隔Tを、Δt、2Δt、3Δt、・・・とすることができる。ユーザは、操作部18の所定のスイッチを操作して、時間間隔T(=n・Δt)を入力することができる。CPU11は、スイッチ処理において、入力された時間間隔T(=n・Δt)を、RAM13の所定のデータエリアに格納する。
Next, a second embodiment of the present invention will be described. In the first embodiment, the velocity, acceleration, and jerk are calculated at the sampling period Δt, and the preset waveform data and acceleration or the preset waveform are calculated for each sampling period, that is, for each sample point. New output waveform data is calculated based on the data and jerk. In the second embodiment, the time interval for calculating the speed and jerk is variable. For example, the time interval T can be set to Δt, 2Δt, 3Δt,. The user can input a time interval T (= n · Δt) by operating a predetermined switch of the
図13は、第2の実施の形態にかかる加速度演算処理の例を示すフローチャート、図14は、第2の実施の形態にかかる加々速度演算処理の例を示すフローチャートである。図13に示すように、第2の実施の形態にかかる加速度演算処理においては、CPU11は、CPU11は、加速度演算処理において読み出すべき波形データを特定する時刻パラメータtaを取得する(ステップ1301)。次いで、CPU11は、taが、n・Δtの倍数であるか否かを判断する(ステップ1302)。ステップ1302でYesと判断された場合には、CPU11は、図7のステップ702〜706の処理を実行し、プリセット波形データg(ta−2)、g(ta−1)およびX(ta)に基づいて得られる加速度が、A(ta)に一致するように、出力波形データX(ta)を算出する。算出された出力波形データX(ta)は、RAM13の出力波形データエリアに格納され、また、他の算出されたデータも、それぞれRAM13の所定のデータエリアに格納される(ステップ1305)。
FIG. 13 is a flowchart illustrating an example of acceleration calculation processing according to the second embodiment, and FIG. 14 is a flowchart illustrating an example of jerk calculation processing according to the second embodiment. As shown in FIG. 13, in the acceleration calculation process according to the second embodiment, the
その一方、ステップ1304でNoと判断された場合には、CPU11は、時刻taのプリセット波形データg(ta)を、ROM12から読み出す(ステップ1304)。CPU11は、読み出されたプリセット波形データg(ta)を、出力波形データX(ta)として、RAM13の出力波形データエリアに格納する(ステップ1305)。未処理、つまり、関連する速度等が算出されていない入力波形データがあれば(ステップ1306でYes)、CPU11は、時刻パラメータtaをインクリメントして(ステップ1307)、ステップ1302に戻る。ステップ1306でYesと判断された場合には、CPU11は、時刻パラメータtaをRAM13の所定のデータエリアに格納する(ステップ1308)。
On the other hand, if it is determined No in
また、図14に示すように、第2の実施の形態にかかる加々速度演算処理においては、CPU11は、読み出すべき波形データを特定する時刻パラメータtbを取得する(ステップ1401)。次いで、CPU11は、taが、n・Δtの倍数であるか否かを判断する(ステップ1302)。ステップ1302でYesと判断された場合には、CPU11は、図8のステップ802〜807の処理を実行し、プリセット波形データg(tb−3)、g(tb−2)、g(tb−1)およびX(tb)に基づいて得られる加々速度が、P(tb)に一致するように、出力波形データX(tb)を算出する。算出された出力波形データX(tb)は、RAM13の出力波形データエリアに格納され、また、他の算出されたデータも、それぞれRAM13の所定のデータエリアに格納される(ステップ1405)。
Further, as shown in FIG. 14, in the jerk calculation process according to the second embodiment, the
その一方、ステップ1404でNoと判断された場合には、CPU11は、時刻tbのプリセット波形データg(tb)を、ROM12から読み出す(ステップ1404)。CPU11は、読み出されたプリセット波形データg(tb)を、出力波形データX(tb)として、RAM13の出力波形データエリアに格納する(ステップ1405)。未処理、つまり、関連する速度等が算出されていない入力波形データがあれば(ステップ1406でYes)、CPU11は、時刻パラメータtbをインクリメントして(ステップ1407)、ステップ1402に戻る。ステップ1406でYesと判断された場合には、CPU11は、時刻パラメータtbをRAM13の所定のデータエリアに格納する(ステップ1408)。
On the other hand, if it is determined No in
第2の実施の形態によれば、部分的にプリセット波形データ(原波形データ)が現れるため、原波形の音質により近似した音質をもつ出力波形データを出力することができる。 According to the second embodiment, since preset waveform data (original waveform data) partially appears, output waveform data having sound quality approximate to the sound quality of the original waveform can be output.
次に、本発明の第3の実施の形態について説明する。第1の実施の形態においては、第1の実施の形態においては、サンプリング周期Δt間隔で、隣接する入力波形データ(たとえば、入力波形データX(t)とX(t−1))についての速度、加速度および加々速度を算出している。第3の実施の形態においては、速度、加速度、加々速度を算出するのを隣接するサンプル点とせず、設定された時間間隔だけ離間したサンプル点(たとえば、X(t)とX(t−2)など)の間で、速度、加速度、加々速度を算出する。たとえば、上記時間間隔を、Δt、2Δt、3Δt、・・・とすることができる。ユーザは、操作部18の所定のスイッチを操作して、時間間隔T(=n・Δt)を入力することができる。CPU11は、スイッチ処理において、入力された時間間隔T(=n・Δt)を、RAM13の所定のデータエリアに格納する。
Next, a third embodiment of the present invention will be described. In the first embodiment, in the first embodiment, the speed for adjacent input waveform data (for example, input waveform data X (t) and X (t−1)) at the sampling period Δt interval. Acceleration and jerk are calculated. In the third embodiment, calculation of velocity, acceleration, and jerk is not used as adjacent sample points, but sample points separated by a set time interval (for example, X (t) and X (t− 2) etc.), the speed, acceleration and jerk are calculated. For example, the time interval can be Δt, 2Δt, 3Δt,. The user can input a time interval T (= n · Δt) by operating a predetermined switch of the
図15は、第3の実施の形態にかかる加速度算出処理の例を示すフローチャート、図16は、第3の実施の形態にかかる加々速度算出処理の例を示すフローチャートである。図15に示すように、第3の実施の形態にかかる加速度演算処理においては、CPU11は、CPU11は、加速度演算処理において読み出すべき波形データを特定する時刻パラメータtaを取得する(ステップ1501)とともに、RAM13に記憶された時間間隔T=n・Δtを取得する(ステップ1502)。本実施の形態では、時間間隔を規定する係数「n」および「T」が利用される。
FIG. 15 is a flowchart illustrating an example of acceleration calculation processing according to the third embodiment, and FIG. 16 is a flowchart illustrating an example of jerk calculation processing according to the third embodiment. As shown in FIG. 15, in the acceleration calculation process according to the third embodiment, the
第3の実施の形態においては、CPU11は、入力波形データG(ta−2n)、G(ta−n)およびG(ta)を取得する(ステップ1503)。たとえば、T=2・Δtであれば、入力波形データG(ta−4)、G(ta−2)およびG(ta)が取得される。次いで、CPU11は、取得した入力波形データから、速度V(ta−n)、V(ta)を以下のように算出する(ステップ1504)。
In the third embodiment, the
V(ta−n)=(G(ta−n)−G(ta−2n))/T
V(ta)=(G(ta)−G(ta−n))/T
次いで、CPU11は、速度V(ta−n)およびV(ta)から加速度A(ta)を以下のように算出する(ステップ1505)。
V (ta-n) = (G (ta-n) -G (ta-2n)) / T
V (ta) = (G (ta) -G (ta-n)) / T
Next, the
A(ta)=(V(ta)−V(ta−n))/ΔT
=(G(ta)−2・G(ta−n)+G(ta−2n))/T2
その後、CPU11は、算出された加速度A(ta)および当該時刻taより過去におけるプリセット波形データg(ta−2n)、g(ta−n)に基づいて、新たな出力波形データX(ta)を算出する(ステップ1506)。ステップ1506においては、プリセット波形データg(ta−2n)、g(ta−n)およびX(ta)に基づいて得られる加速度が、A(ta)に一致するように、X(ta)が算出される。
A (ta) = (V (ta) −V (ta−n)) / ΔT
= (G (ta) -2 · G (ta-n) + G (ta-2n)) / T 2
Thereafter, the
すなわち、
A(ta)=(X(ta)−2・g(ta−n)+g(ta−2n))/ΔT2に基づいて、
X(ta)=A(ta)・ΔT2+2g(ta−n)−g(ta−2n)
と得ることができる。
That is,
Based on A (ta) = (X (ta) −2 · g (ta−n) + g (ta−2n)) / ΔT 2 ,
X (ta) = A (ta) · ΔT 2 +2 g (ta−n) −g (ta−2n)
And can be obtained.
ステップ1507〜ステップ1510は、図7のステップ706〜709と同様である。
また、図16に示すように、第3の実施の形態にかかる加々速度演算処理においては、CPU11は、加々速度演算処理において読み出すべき波形データを特定する時刻パラメータtbを取得する(ステップ1601)とともに、RAM13に記憶された時間間隔T=n・Δtを取得する。本実施の形態では、時間間隔を規定する係数「n」および「T」が利用される。
Further, as shown in FIG. 16, in the jerk calculation process according to the third embodiment, the
CPU11は、入力波形データG(tb−3n)、G(tb−2n)、G(tb−n)およびG(tb)を取得し(ステップ1603)、これらから速度V(ta−2n)、V(tb−n)およびV(tb)を以下のように算出する(ステップ1604)。
The
V(tb−2n)=(G(tb−2n)−G(tb−3n))/T
V(tb−n)=(G(tb−n)−G(tb−2n))/T
V(tb)=(G(tb)−G(tb−n))/T
次いで、CPU11は、速度V(tb−2n)、V(tb−n)およびV(tb)から、以下のように、加速度A(tb−n)およびA(tb)を算出する(ステップ1605)。
V (tb-2n) = (G (tb-2n) -G (tb-3n)) / T
V (tb-n) = (G (tb-n) -G (tb-2n)) / T
V (tb) = (G (tb) -G (tb-n)) / T
Next, the
A(tb−n)=(V(tb−n)−V(tb−2n))/T
=(G(tb−n)−2・G(tb−2n)+G(tb−3n))/T2
A(ta)=(V(tb)−V(tb−n))/T
=(G(tb)−2・G(tb−n)+G(tb−2n))/T2
さらに、CPU11は、加速度A(tb−n)およびA(tb)から、以下のように加々速度P(tb)を算出する(ステップ1606)。
A (tb-n) = (V (tb-n) -V (tb-2n)) / T
= (G (tb−n) −2 · G (tb−2n) + G (tb−3n)) / T 2
A (ta) = (V (tb) −V (tb−n)) / T
= (G (tb) -2 · G (tb-n) + G (tb-2n)) / T 2
Further, the
P(tb)=(A(tb)−A(tb−n))/T
=(V(tb)−2・V(tb−n)+V(tb−2n))/T2
=(G(tb)−3G(tb−n)+3G(tb−2n)−G(tb−3n))/T3
その後、CPU11は、算出された加々速度P(tb)および当該時刻tbより過去におけるプリセット波形データg(tb−3n)、g(tb−2n)およびg(tb−n)に基づいて、新たな出力波形データX(tb)を算出する(ステップ1607)。ステップ1607においては、プリセット波形データg(tb−3n)、g(tb−2n)、g(tb−n)およびX(tb)に基づいて得られる加々速度が、P(tb)に一致するように、X(tb)が算出される。
P (tb) = (A (tb) −A (tb−n)) / T
= (V (tb) −2 · V (tb−n) + V (tb−2n)) / T 2
= (G (tb) -3G (tb-n) + 3G (tb-2n) -G (tb-3n)) / T 3
Thereafter, the
すなわち、
P(tb)=(G(tb)−3G(tb−n)+3G(tb−2n)−G(tb−3n))/T3 に基づいて、
X(tb)=P(tb)・T3+3g(tb−n)−3g(tb−2n)+g(tb−3n)
と得ることができる。
That is,
Based on P (tb) = (G (tb) −3G (tb−n) + 3G (tb−2n) −G (tb−3n)) / T 3 ,
X (tb) = P (tb) · T 3 +3 g (tb−n) −3 g (tb−2n) + g (tb−3n)
And can be obtained.
ステップ1608〜ステップ1611は、図8のステップ807〜810と同様である。
第3の実施の形態によれば、加速度や加々速度を算出する際に時間の幅を増大させることにより、第1の実施の形態に比較して、入力波形データの変化(速度の変化や加速度の変化)に対して穏やかに変化する出力波形データを得ることが可能となる。 According to the third embodiment, by increasing the time width when calculating the acceleration and jerk, compared to the first embodiment, the input waveform data changes (speed changes and It is possible to obtain output waveform data that gently changes with respect to (acceleration change).
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。 The present invention is not limited to the above embodiments, and various modifications can be made within the scope of the invention described in the claims, and these are also included in the scope of the present invention. Needless to say.
たとえば、第1の実施の形態にかかる複合モードにおいてプリセット波形データがアタック時には、加速度或いは加々速度の何れかの選択に基づいて、加速度演算処理や加々速度演算処理と同様の処理が実行され、演算により出力波形データが取得される。その一方、アタック以降(つまり、ディケイ時やサステイン時)には、ピッチ抽出処理が行なわれて、抽出された音高情報に基づいて、プリセット波形データが読み出されて、読み出された出力波形データg’(t)が出力波形データとなる。しかしながら、アタック以降(つまり、ディケイ時やサステイン時)において、ピッチ抽出を行うことなく、単にプリセット波形データg(t)を読み出すように構成しても良い。 For example, when the preset waveform data is attacked in the composite mode according to the first embodiment, processing similar to acceleration calculation processing and jerk calculation processing is executed based on the selection of either acceleration or jerk. The output waveform data is acquired by the calculation. On the other hand, after the attack (that is, during decay or sustain), pitch extraction processing is performed, preset waveform data is read out based on the extracted pitch information, and the read output waveform is read out. Data g ′ (t) becomes output waveform data. However, after the attack (that is, at the time of decay or sustain), the preset waveform data g (t) may be simply read without performing pitch extraction.
これにより、出力波形データのアタック時に、入力波形データの加速度或いは加々速度を反映した波形とすることができる。 Thus, when the output waveform data is attacked, a waveform reflecting the acceleration or jerk of the input waveform data can be obtained.
10 効果音発生装置
11 CPU
12 ROM
13 RAM
14 サウンドシステム
15 表示部
17 波形データ入力I/F
18 操作部
21 音源部
22 オーディオ回路
23 スピーカ
10
12 ROM
13 RAM
14
18
Claims (14)
前記入力波形データの加速度を算出する加速度算出手段と、
出力すべき楽音波形データの基礎となる、予め定められた原波形データを記憶する原波形データ記憶手段と、
前記加速度算出手段により算出された加速度と、前記原波形データ記憶手段に記憶された、過去の原波形データとに基づいて、出力すべき新たな出力波形データを生成する出力波形データ生成手段と、を備えたことを特徴とする効果音発生装置。 A sound effect generator for generating a sound effect based on input waveform data,
Acceleration calculation means for calculating the acceleration of the input waveform data;
Original waveform data storage means for storing predetermined original waveform data, which is the basis of musical sound waveform data to be output;
Output waveform data generating means for generating new output waveform data to be output based on the acceleration calculated by the acceleration calculating means and the past original waveform data stored in the original waveform data storage means; A sound effect generator comprising:
X(t)=A(t)・Δt2+2g(t−1)−g(t−2)
(Δtは波形データのサンプリング周期)
に基づいて、出力波形データX(t)を算出することを特徴とする請求項2に記載の効果音発生装置。 The output waveform data generating means is
X (t) = A (t) · Δt 2 +2 g (t−1) −g (t−2)
(Δt is the sampling period of waveform data)
The sound effect generator according to claim 2, wherein the output waveform data X (t) is calculated based on
X(t)=A(t)・Δt2+2g(t−1)−g(t−2)
(Δtは波形データのサンプリング周期)
時刻tがn・Δtの倍数ではないときに、
X(t)=g(t)
に基づいて、出力波形データX(t)を算出することを特徴とする請求項2に記載の効果音発生装置。 When the output waveform data generating means is time t is a multiple of n · Δt (n is a predetermined constant),
X (t) = A (t) · Δt 2 +2 g (t−1) −g (t−2)
(Δt is the sampling period of waveform data)
When time t is not a multiple of n · Δt,
X (t) = g (t)
The sound effect generator according to claim 2, wherein the output waveform data X (t) is calculated based on
X(t)=A(t)・T2+2g(t−n)−g(t−2n)
(T=n・Δt、Δtは波形データのサンプリング周期、nは予め定められた定数)
に基づいて、出力波形データX(t)を算出することを特徴とする請求項2に記載の効果音発生装置。 The output waveform data generating means is
X (t) = A (t) .T 2 +2 g (t−n) −g (t−2n)
(T = n · Δt, Δt is a sampling period of waveform data, and n is a predetermined constant)
The sound effect generator according to claim 2, wherein the output waveform data X (t) is calculated based on
前記出力波形データ生成手段が、出力波形データが発音開始してから所定のタイミングに至るまで、前記加速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、前記原波形データ記憶手段に記憶された原波形データを前記抽出されたピッチにしたがって読み出すことにより得られた波形データを新たな出力波形データとして出力することを特徴とする請求項1ないし5の何れか一項に記載の効果音発生装置。 Pitch extraction means for extracting the pitch of the input waveform data,
The output waveform data generation means outputs the waveform data generated based on the acceleration and the past original waveform data as new output waveform data from the start of the sound generation of the output waveform data until a predetermined timing. Then, after the predetermined timing has arrived, waveform data obtained by reading the original waveform data stored in the original waveform data storage means according to the extracted pitch is output as new output waveform data The sound effect generator according to any one of claims 1 to 5, wherein
前記入力波形データの加々速度を算出する加速度算出手段と、
出力すべき楽音波形データの基礎となる、予め定められた原波形データを記憶する原波形データ記憶手段と、
前記加速度算出手段により算出された加々速度と、前記原波形データ記憶手段に記憶された、過去の原波形データとに基づいて、出力すべき新たな出力波形データを生成する出力波形データ生成手段と、を備えたことを特徴とする効果音発生装置。 A sound effect generator for generating a sound effect based on input waveform data,
Acceleration calculation means for calculating the jerk of the input waveform data;
Original waveform data storage means for storing predetermined original waveform data, which is the basis of musical sound waveform data to be output;
Output waveform data generation means for generating new output waveform data to be output based on jerk calculated by the acceleration calculation means and past original waveform data stored in the original waveform data storage means And a sound effect generator.
X(t)=P(t)・Δt3+3g(t−1)−3g(t−2)+g(t−3)
(Δtは波形データのサンプリング周期)
に基づいて、出力波形データX(t)を算出することを特徴とする請求項9に記載の効果音発生装置。 The output waveform data generating means is
X (t) = P (t) · Δt 3 +3 g (t−1) −3 g (t−2) + g (t−3)
(Δt is the sampling period of waveform data)
10. The sound effect generator according to claim 9, wherein the output waveform data X (t) is calculated based on
X(t)=P(t)・Δt3+3g(t−1)−3g(t−2)+g(t−3)
(Δtは波形データのサンプリング周期)
時刻tがn・Δtの倍数ではないときに、
X(t)=g(t)
に基づいて、出力波形データX(t)を算出することを特徴とする請求項9に記載の効果音発生装置。 When the output waveform data generating means is time t is a multiple of n · Δt (n is a predetermined constant),
X (t) = P (t) · Δt 3 +3 g (t−1) −3 g (t−2) + g (t−3)
(Δt is the sampling period of waveform data)
When time t is not a multiple of n · Δt,
X (t) = g (t)
10. The sound effect generator according to claim 9, wherein the output waveform data X (t) is calculated based on
X(t)=P(t)・T3+3g(t−n)−3g(t−2n)+g(t−3n)
(T=n・Δt、Δtは波形データのサンプリング周期、nは予め定められた定数)
に基づいて、出力波形データX(t)を算出することを特徴とする請求項9に記載の効果音発生装置。 The output waveform data generating means is
X (t) = P (t) · T 3 +3 g (t−n) −3 g (t−2n) + g (t−3n)
(T = n · Δt, Δt is a sampling period of waveform data, and n is a predetermined constant)
10. The sound effect generator according to claim 9, wherein the output waveform data X (t) is calculated based on
前記出力波形データ生成手段が、出力波形データが発音開始してから所定のタイミングに至るまで、前記加々速度と過去の原波形データとに基づいて生成された波形データを、新たな出力波形データとして出力し、前記所定のタイミングが到来した後に、前記原波形データ記憶手段に記憶された原波形データを前記抽出されたピッチにしたがって読み出すことにより得られた波形データを新たな出力波形データとして出力することを特徴とする請求項8ないし12の何れか一項に記載の効果音発生装置。 Pitch extraction means for extracting the pitch of the input waveform data,
The output waveform data generation means generates new output waveform data from the waveform data generated based on the jerk and the past original waveform data until the predetermined timing is reached after the output waveform data starts sounding. After the predetermined timing has arrived, the waveform data obtained by reading the original waveform data stored in the original waveform data storage means according to the extracted pitch is output as new output waveform data The sound effect generator according to claim 8, wherein the sound effect generator is provided.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009034744A JP5470893B2 (en) | 2009-02-18 | 2009-02-18 | Sound effect generator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009034744A JP5470893B2 (en) | 2009-02-18 | 2009-02-18 | Sound effect generator |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2010191124A true JP2010191124A (en) | 2010-09-02 |
JP2010191124A5 JP2010191124A5 (en) | 2012-04-05 |
JP5470893B2 JP5470893B2 (en) | 2014-04-16 |
Family
ID=42817235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009034744A Active JP5470893B2 (en) | 2009-02-18 | 2009-02-18 | Sound effect generator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5470893B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04174498A (en) * | 1990-07-27 | 1992-06-22 | Yamaha Corp | Musical sound signal generating device |
JPH05232958A (en) * | 1992-02-21 | 1993-09-10 | Yamaha Corp | Electronic musical instrument |
JPH07181975A (en) * | 1993-12-21 | 1995-07-21 | Yamaha Corp | Waveform generation device and waveform storage device |
JPH09179487A (en) * | 1995-12-26 | 1997-07-11 | Casio Comput Co Ltd | Musical sound generation directing device |
JPH10116079A (en) * | 1996-10-08 | 1998-05-06 | Roland Corp | Electronic musical instrument |
-
2009
- 2009-02-18 JP JP2009034744A patent/JP5470893B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04174498A (en) * | 1990-07-27 | 1992-06-22 | Yamaha Corp | Musical sound signal generating device |
JPH05232958A (en) * | 1992-02-21 | 1993-09-10 | Yamaha Corp | Electronic musical instrument |
JPH07181975A (en) * | 1993-12-21 | 1995-07-21 | Yamaha Corp | Waveform generation device and waveform storage device |
JPH09179487A (en) * | 1995-12-26 | 1997-07-11 | Casio Comput Co Ltd | Musical sound generation directing device |
JPH10116079A (en) * | 1996-10-08 | 1998-05-06 | Roland Corp | Electronic musical instrument |
Also Published As
Publication number | Publication date |
---|---|
JP5470893B2 (en) | 2014-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6391265B2 (en) | Electronic keyboard instrument | |
WO2007010637A1 (en) | Tempo detector, chord name detector and program | |
JP2006215204A (en) | Voice synthesizer and program | |
JP2006251375A (en) | Voice processor and program | |
US11222618B2 (en) | Sound signal generation device, keyboard instrument, and sound signal generation method | |
JP4702392B2 (en) | Resonant sound generator and electronic musical instrument | |
JP6175812B2 (en) | Musical sound information processing apparatus and program | |
CN108573689B (en) | Electronic musical instrument, musical sound generating method, and recording medium | |
WO2007139034A1 (en) | Music sound combining device and method | |
US10319353B2 (en) | Method for audio sample playback using mapped impulse responses | |
JP5470893B2 (en) | Sound effect generator | |
EP3757984B1 (en) | Electronic musical instrument, method and program | |
JP2009025589A (en) | Resonance sound adding device of electronic musical instrument and electronic musical instrument | |
JP5699418B2 (en) | Musical sound generating device and musical sound generating program | |
JP5169753B2 (en) | Resonance sound adding device and electronic musical instrument | |
JP5151603B2 (en) | Electronic musical instruments | |
JP4238807B2 (en) | Sound source waveform data determination device | |
JP5807419B2 (en) | Signal processing device | |
JP5151523B2 (en) | Electronic musical instruments | |
JP2003255951A (en) | Waveform processing method and apparatus | |
JP3620405B2 (en) | Musical sound fluctuation information generating method, musical sound fluctuation information generating apparatus, and recording medium | |
JP3659121B2 (en) | Music signal analysis / synthesis method, music signal synthesis method, music signal synthesis apparatus and recording medium | |
JP2006133342A (en) | Musical tone control unit and program for musical tone control processing | |
JP5707673B2 (en) | Resonance sound adding device and electronic musical instrument | |
JP3783566B2 (en) | Musical sound data conversion device and musical sound data conversion method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120216 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120216 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130730 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130927 |
|
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: 20140107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140120 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5470893 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |