JP2007132965A - 音源ハードウエア・アクセラレータ - Google Patents
音源ハードウエア・アクセラレータ Download PDFInfo
- Publication number
- JP2007132965A JP2007132965A JP2005323018A JP2005323018A JP2007132965A JP 2007132965 A JP2007132965 A JP 2007132965A JP 2005323018 A JP2005323018 A JP 2005323018A JP 2005323018 A JP2005323018 A JP 2005323018A JP 2007132965 A JP2007132965 A JP 2007132965A
- Authority
- JP
- Japan
- Prior art keywords
- data
- volume
- signal
- volume control
- value
- 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.)
- Withdrawn
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
【課題】MIDIデータに基づくパラメータ転送が途絶えたときに、出力音を徐々に低減して最終的に停止させる。
【解決手段】音源CPUからのパラメータ転送が途絶え、フレーム周期中に書込制御信号WEが検出できなかったとき、次のフレームの開始時にエラー検出部30Aからエラー検出信号ERRが出力される。これにより、音量制御部10Aでは、次のフレームの音量データVOL1を強制的に“0”に設定する。これにより、音量制御信号VCの値は、現フレームの最初の音量データVOL0から、1フレーム期間をかけて直線的に“0”まで減少するように制御される。
【選択図】図1
【解決手段】音源CPUからのパラメータ転送が途絶え、フレーム周期中に書込制御信号WEが検出できなかったとき、次のフレームの開始時にエラー検出部30Aからエラー検出信号ERRが出力される。これにより、音量制御部10Aでは、次のフレームの音量データVOL1を強制的に“0”に設定する。これにより、音量制御信号VCの値は、現フレームの最初の音量データVOL0から、1フレーム期間をかけて直線的に“0”まで減少するように制御される。
【選択図】図1
Description
本発明は、MIDI(Musical Instrument Digital Interface)データに基づいて生成されたパラメータを用いて、波形合成を行うに音源ハードウエア・アクセラレータに関するものである。
図2は、従来の音源ハードウエア・アクセラレータの構成図である。
この音源ハードウエア・アクセラレータは、データ入力部1、波形データ読出制御部2、波形メモリ3、フィルタ部4、利得調整部5、加算部6、ディジタル・アナログ変換器(以下、「DAC」という)7、タイミング制御部8、及び音量制御部10を備えている。
この音源ハードウエア・アクセラレータは、データ入力部1、波形データ読出制御部2、波形メモリ3、フィルタ部4、利得調整部5、加算部6、ディジタル・アナログ変換器(以下、「DAC」という)7、タイミング制御部8、及び音量制御部10を備えている。
データ入力部1は、図示しない音源CPUによってMIDIデータに基づいて生成されたパラメータPARAを、書込制御信号WEに従って入力するものである。データ入力部1は、例えば、1秒間に44100回の割合で行われるサンプリングの256回分に相当する時間を1フレームとして、1フレーム単位に、音程データINT、音色データTON、音量データVOL等のパラメータを入力し、波形データ読出制御部2、フィルタ部4、及び音量制御部10に与えるようになっている。
波形データ読出制御部2は、波形メモリ3に予め記憶されている楽器毎の基本的な波形データWAVを、サンプリング周期毎に読み出すためのアドレスADRを生成するものである。なお、複数の楽器を同時に演奏する場合、波形データ読出制御部2では、サンプリング周期毎に時分割で各楽器に対する読出アドレスADRを算出して出力するようになっている。波形メモリ3は、波形データ読出制御部2から与えられる読出アドレスADRに従い、波形データWAVを読み出してフィルタ部4へ与えるものである。フィルタ部4は、波形メモリ3から与えられる波形データWAVと、データ入力部1から与えられる音程データINTに従って雑音となる高調波成分を除去し、音程の調整と音質の向上を図るものである。
利得調整部5は乗算器で構成され、フィルタ部4から出力される信号S4に、音量制御部10から与えられる音量制御信号VCを掛け合わせ、出力レベルを調整するものである。利得調整部5から出力される信号S5は、加算部6へ与えられるようになっている。加算部6は、複数の楽器を同時に演奏する場合に、利得調整部5から楽器毎に出力された信号S5の瞬時値を加算し、サンプリング周期毎にその合計値を出力するものである。加算部6から出力される信号S6はDAC7に与えられ、アナログ信号S7に変換されるようになっている。なお、このアナログ信号S7は、図示しない増幅器に与えられ、スピーカ等から音響信号として出力されるようになっている。
タイミング制御部8は、書込制御信号WEとシステムクロックSCLK(例えば、10MHz)に基づいて、1フレームの開始を示すフレームパルスFRMPと、サンプリングのタイミングを示すサンプリング信号SMPL等のタイミング信号を生成するものである。音量制御部10は、現在波形合成を行っているフレームの音量データVOL0から、次のフレームの音量データVOL1へ滑らかに音量を調整するための音量制御信号VCを生成するものである。
この音量制御部10は、データ入力部1から与えられた次のフレームの音量データVOL1を保持するフリップ・フロップ(以下、「FF」という)11と、波形合成中のフレームの音量データVOL0を保持するFF12を有している。音量データVOL0,VOL1は、減算器13によってその差Δが算出され、更に、差Δは割算器14によって1/256に割り算されて、FF15に保持されるようになっている。なお、FF15に保持された値Δ/256は、1サンプリング周期毎の音量変化の値に対応している。
FF15の出力側は加算器16の一方の入力側に接続され、この加算器16の出力側がFF17に接続されている。FF17は、サンプリング信号SMPLに従って加算器16の出力信号を音量制御信号VCとして保持するもので、この音量制御信号VCが利得調整部5へ与えられると共に、加算器16の他方の入力側とセレクタ18の第1入力側に与えられるようになっている。セレクタ18は、フレームパルスFRMPが“H”のときに第1入力側を選択し、“L”のときには第2入力側を選択するものである。セレクタ18の出力側は、FF12の入力側に接続され、FF12の出力側がセレクタ12の第2入力側と減算器13に接続されている。なお、FF12,15は、システムクロックSCLKに同期して動作するものである。
次に動作を説明する。
フレーム周期の開始毎に、フレームパルスFRMPが“H”になると、FF11には、データ入力部1から次のフレームの音量データVOL1が与えられて保持される。一方、FF12には、FF17に保持されている音量制御信号VCが、セレクタ18を介して与えられ、音量データVOL0として保持される。これにより、FF15には、音量データVOL0,VOL1の差Δの1/256の値Δ/256が保持される。その後、フレームパルスFRMPが“L”になると、セレクタ18は第2入力側に切り替えられ、FF12,15の値はそのまま保持される。従って、FF15に保持されている値Δ/256も、そのまま保持される。
フレーム周期の開始毎に、フレームパルスFRMPが“H”になると、FF11には、データ入力部1から次のフレームの音量データVOL1が与えられて保持される。一方、FF12には、FF17に保持されている音量制御信号VCが、セレクタ18を介して与えられ、音量データVOL0として保持される。これにより、FF15には、音量データVOL0,VOL1の差Δの1/256の値Δ/256が保持される。その後、フレームパルスFRMPが“L”になると、セレクタ18は第2入力側に切り替えられ、FF12,15の値はそのまま保持される。従って、FF15に保持されている値Δ/256も、そのまま保持される。
波形データ読出制御部2では、サンプリング信号SMPLに従い、サンプリング周期毎に、音程データINTと音色データTONに基づいて、波形メモリ3の読出アドレスADRを算出して出力する。波形メモリ3から読み出された波形データWAVは、フィルタ部4へ与えられて音程と音質の調整が行われた後、利得調整部5へ与えられる。
利得調整部5では、フィルタ部4から与えられた信号S5と音量制御部10から与えられる音量制御信号VCが乗算され、加算部6へ与えられる。加算部6では、複数の楽器を同時に演奏する場合に、利得調整部5から楽器毎に出力された信号S5の瞬時値を加算し、サンプリング周期毎にその合計値の信号S6を出力する。加算部6から出力される信号S6は、DAC7に与えられ、アナログの信号S7に変換され、図示しない増幅器を介してスピーカ等から音響信号として出力される。
次のサンプリング周期に移ると、対応する波形データWAVが波形メモリ3から読み出され、フィルタ部4を通して信号S4として利得調整部5に与えられる。
この時、音量制御部10では、サンプリング信号SMPLによってFF17の値が、加算器16の加算結果に書き替えられる。即ち、加算器16の入力側には、FF17からそれまでの音量制御信号VCと、FF15から値Δ/256とが与えられている。従って、加算結果は、それまでの音量制御信号VCが値Δ/256だけ増加した値となる。そして、この加算結果が、新しい音量制御信号VCとしてFF17に保持され、利得制御部5に与えられる。これにより、2回目のサンプリング周期では、利得調整部5から出力される信号S5は、1回目のサンプリング周期よりもΔ/256だけ増加した値となる。
このような繰り返しにより、1フレーム分、即ち、256回のサンプリングが終了した時点では、FF17に保持された音量制御信号VCの値と、FF11に保持された音量データVOL1の値は一致する。
従って、現在波形合成を行っているフレームの音量データVOL0から、次のフレームの音量データVOL1へ滑らかに音量を調整することができる。
しかしながら、この音源ハードウエア・アクセラレータでは、音源CPU等の誤動作によってパラメータPARAの転送が途絶えると、波形合成を行うパラメータ、特に音量データVOLが変化しないので、ブザー音のような音が鳴り続けるという問題があった。
本発明は、パラメータPARAの転送が途絶えたときに、出力音を徐々に低減して最終的に停止させることを目的としている。
本発明は、MIDIデータに基づいて生成されたパラメータが与えられるデータ入力手段と、前記与えられたパラメータの内の音程データ及び音色データに基づいて楽音信号を生成する楽音生成手段と、前記与えられたパラメータの内の音量データに基づいて、現フレームの音量データの値から次フレームの音量データの値までサンプリング周期毎に直線的に変化する音量制御信号を生成する音量制御手段と、前記楽音信号のレベルを前記音量制御信号で制御して合成信号を出力する利得調整手段とを備えた音源ハードウエア・アクセラレータにおいて、前記音量制御手段を、前記パラメータの入力が途絶えたときに、次フレームの音量データの値を0に設定するように構成したことを特徴としている。
本発明では、パラメータの入力が途絶えたときに、次フレームの音量データの値を0に設定しているので、音量が徐々に減少して最終的に停止されるという効果がある。
音量制御手段を、パラメータの入力が途絶えたときに、次フレームの音量データの値を0に設定し、その後、パラメータの入力が再開されたときには、現フレームの音量データを0に設定するように構成すると、再開時の違和感をなくすことができる。
この発明の前記並びにその他の目的と新規な特徴は、次の好ましい実施例の説明を添付図面と照らし合わせて読むと、より完全に明らかになるであろう。但し、図面は、もっぱら解説のためのものであって、この発明の範囲を限定するものではない。
図1は、本発明の実施例1を示す音源ハードウエア・アクセラレータの構成図であり、図2中の要素と共通の要素には共通の符号が付されている。
この音源ハードウエア・アクセラレータは、図2中の音量制御部10に代えて構成が若干異なる音量制御部10Aを設けると共に、この音量制御部10Aに対する制御信号(エラー検出信号)を生成するためのエラー検出部30Aを設けたものである。
即ち、この音源ハードウエア・アクセラレータは、図示しない音源CPU等によってMIDIデータに基づいて生成されたパラメータPARAを、書込制御信号WEに従って入力するデータ入力部1を有している。データ入力部1は、例えば、1秒間に44100回(44.1kHz)の割合で行われるサンプリングの256回分に相当する時間を1フレームとして、1フレーム単位に、音程データINT、音色データTON、音量データVOL等のパラメータPARAを入力するようになっている。
入力されたパラメータPARAの内、音程データINTと音色データTONは、波形データ読出制御部2に与えられるようになっている。波形データ読出制御部2は、波形メモリ3に予め記憶されている楽器毎の基本的な波形データWAVを、サンプリング周期毎に読み出すためのアドレスADRを生成するものである。即ち、波形データ読出制御部2では、音色データTONによって演奏する楽器の種別を判定し、対応する楽器の波形データWAVが存在する領域を調べ、更に音程データINTに従って指定された音程の波形が出力されるように読み出すアドレスを算出し、波形メモリ3へ読出アドレスADRとして出力するようになっている。なお、複数の楽器を同時に演奏する場合、波形データ読出制御部2では、サンプリング周期毎に時分割で各楽器毎の読出アドレスADRを算出して出力する。
波形メモリ3は、波形データ読出制御部2から与えられる読出アドレスADRに従って、波形データWAVを読み出して出力するものである。波形メモリ3から読み出された波形データWAVは、フィルタ部4へ与えられるようになっている。
フィルタ部4は、波形メモリ3から与えられる波形データWAVと、データ入力部1から与えられる音程データINTに従って雑音となる高調波成分を除去することにより、音程の調整と音質の向上を図るものである。フィルタ部4の出力信号S4は、利得調整部5へ与えられるようになっている。
利得調整部5は乗算器で構成され、フィルタ部4から出力される信号S4に、後述する音量制御部10Aから与えられる音量制御信号VCを掛け合わせて、出力レベルを調整するものである。利得調整部5から出力される信号S5は、加算部6へ与えられるようになっている。
加算部6は、複数の楽器を同時に演奏する場合に、利得調整部5から楽器毎に出力された信号S5の瞬時値を加算し、サンプリング周期毎にその合計値を出力するものである。加算部6から出力される信号S6はDAC7に与えられ、アナログ信号S7に変換されるようになっている。なお、このアナログ信号S7は、図示しない増幅器に与えられ、スピーカ等から音響信号として出力されるようになっている。
一方、データ入力部1に入力されたパラメータPARAの内の音量データVOLは、音量制御部10Aに与えられるようになっている。音量制御部10Aは、現在波形合成を行っているフレームの音量データVOL0から、次のフレームの音量データVOL1へ滑らかに音量を調整するための音量制御信号VCを生成するものである。更に、この音量制御部10Aは、エラー検出部30Aからエラー検出信号が与えられたときには、音量制御信号VCを徐々に0にさせる機能を有している。
この音量制御部10Aは、データ入力部1から入力された次のフレームの音量データVOL1を保持するFF11と、波形合成中のフレームの音量データVOL0を保持するFF12を有している。FF11の音量データVOL1は、セレクタ19の第1入力側に与えられ、このセレクタ19の第2入力側には固定データ“0”が与えられている。セレクタ19の出力側は、減算器13の+入力端子に接続され、この減算器13の−入力端子にはFF12の出力側が接続されている。
減算器13によって算出された差Δは、割算器14によって除数256に割り算され、FF15に保持されるようになっている。このFF15に保持された値Δ/256は、1サンプリング周期毎の音量変化の値に対応している。
FF15の出力側は加算器16の一方の入力側に接続され、この加算器16の出力側がFF17に接続されている。FF17は、サンプリング信号SMPLに従って加算器16の出力信号を音量制御信号VCとして保持するもので、この音量制御信号VCが利得調整部5へ与えられると共に、加算器16の他方の入力側とセレクタ18の第1入力側に与えられるようになっている。セレクタ18は、フレームパルスFRMPが“H”のときに第1入力側を選択し、“L”のときには第2入力側を選択するものである。セレクタ18の出力側は、FF12の入力側に接続され、FF12の出力側がセレクタ12の第2入力側と減算器13に接続されている。なお、FF12,15は、システムクロックSCLK(例えば、10MHz)に同期して動作するようになっている。
エラー検出部30Aは、1フレーム期間内に、書込制御信号WEが与えられなかった場合に、次のフレーム期間にエラー検出信号ERRを出力するものである。
このエラー検出部30Aは、書込制御信号WEとフレームパルスFRMPを選択信号とするセレクタ31、このセレクタ31の出力信号を保持するFF32、フレームパルスFRMPを選択信号とするセレクタ33、及びこのセレクタ33の出力信号を保持するFF34を有している。
セレクタ31は、書込制御信号WEが“H”のときに入力信号“L”を選択し、書込制御信号WEが“L”でフレームパルスFRMPが“H”のときに入力信号“H”を選択し、書込制御信号WEとフレームパルスFRMPが共に“L”のときにFF32から出力される信号S32を選択するものである。また、セレクタ33は、フレームパルスFRMPが“H”のときにFF32の信号S32を選択し、“L”のときにFF34から出力されるエラー検出信号ERRを選択するものである。なお、FF32,34は、システムクロックSCLKに同期して動作するようになっている。
更に、この音源ハードウエア・アクセラレータは、書込制御信号WEと内部で生成されるシステムクロックSCLKに基づいて、フレームパルスFRMPとサンプリング信号SMPL等のタイミング信号を生成するタイミング制御部8を有している。
図3は、図1の動作を示す信号波形図であり、特に音量制御部10Aとエラー検出部30Aの動作を示している。以下、この図3を参照しつつ、図1の動作を説明する。
図3のフレーム周期F1の開始で、フレームパルスFRMPが“H”になると、音量制御部10AのFF11には、データ入力部1から次のフレームの音量データVOL1(=200)が与えられて保持される。一方、FF12には、FF17に保持されている音量制御信号VCが、セレクタ18を介して与えられ、音量データVOL0(=100)として保持される。
この時、エラー検出信号ERRは“L”であるので、セレクタ19ではFF11の音量データVOL1が選択され、減算器13に与えられる。減算器13には、FF17の音量データVOL0が与えられているので、この減算器13から音量データVOL0,VOL1の差Δ(VOL1−VOL0=100)が出力される。差Δは、割算器14によって1/256に割り算される。これにより、FF15には、値Δ/256(=100/256)が保持される。その後、フレームパルスFRMPが“L”になると、セレクタ18は第2入力側に切り替えられるので、FF11,12の値もそのまま保持される。従って、FF15に保持されている値Δ/256も、変化せずにそのまま保持される。
波形データ読出制御部2では、サンプリング信号SMPLに従い、サンプリング周期毎に、音程データINTと音色データTONに基づいて、波形メモリ3の読出アドレスADRを算出して出力する。波形メモリ3から読み出された波形データWAVは、フィルタ部4へ与えられて音程と音質の調整が行われた後、利得調整部5へ与えられる。
利得調整部5では、フィルタ部4から与えられた信号S5と音量制御部10から与えられる音量制御信号VCが乗算され、加算部6へ与えられる。加算部6では、複数の楽器を同時に演奏する場合に、利得調整部5から楽器毎に出力された信号S5の瞬時値を加算し、サンプリング周期毎にその合計値の信号S6を出力する。加算部6から出力される信号S6は、DAC7に与えられ、アナログ信号S7に変換され、図示しない増幅器を介してスピーカ等から音響信号として出力される。
次のサンプリング周期に移ると、波形データ読出制御部2によって、対応する波形データWAVが波形メモリ3から読み出され、フィルタ部4を通して信号S4として利得調整部5に与えられる。
この時、音量制御部10Aでは、サンプリング信号SMPLによってFF17の値が、加算器16の加算結果に書き替えられる。即ち、加算器16の入力側には、FF17からそれまでの音量制御信号VCと、FF15から値Δ/256とが与えられている。従って、加算結果は、それまでの音量制御信号VCが値Δ/256だけ増加した値(=101)となる。そして、この加算結果が、新しい音量制御信号VCとしてFF17に保持され、利得制御部5に与えられる。これにより、2回目のサンプリング周期では、利得調整部5から出力される信号S5は、1回目のサンプリング周期よりもΔ/256だけ増加した値となる。
このような繰り返しにより、1フレーム分、即ち、256回のサンプリングが終了した時点では、FF17に保持された音量制御信号VCの値は、FF11に保持された音量データVOL1の値(=200)に一致する。従って、現在波形合成を行っているフレームの音量データVOL0から、次のフレームの音量データVOL1へ滑らかに音量を調整することができる。
このフレーム周期F1の期間内に、書込制御信号WEが“H”になると、エラー検出部30AのFF32の信号S32は“L”となる。これにより、次のフレーム周期F2の開始時に、フレームパルスFRMPによってこの信号S32がFF34に保持されると共に、信号S32は“H”に変化する。従って、エラー検出信号ERRは“L”のまま変化せず、次のフレーム周期F2においても、フレーム周期F1と同様の動作が行われる。
ここで、フレーム周期F2の期間内に、書込制御信号WEが“H”にならなかったとする。この場合、次のフレーム周期F3の開始時に、フレームパルスFRMPによってこの信号S32がFF34に保持されると共に、信号S32は“H”に変化する。このため、エラー検出信号ERRは“H”に変化する。
エラー検出信号ERRが“H”になると、音量制御部10Aのセレクタ19によって固定データ“0”が選択され、次のフレームの音量データVOL1として出力される。これにより、フレーム周期F3の期間に、音量制御信号VCは、値“50”から値“0”に徐々に減少する。
以上のように、この実施例1の音源ハードウエア・アクセラレータは、1フレーム期間内に、書込制御信号WEが与えられなかった場合に、次のフレーム期間にエラー検出信号ERRを出力するエラー検出部30Aと、このエラー検出信号ERRが与えられたときには、次のフレームの音量データVOL1を強制的に“0”に設定し、次のフレーム期間内に音量制御信号VCを徐々に“0”まで低下させる音量制御部10Aを有している。これにより、パラメータPARAの転送が途絶えたときに、出力音を徐々に低減して最終的に停止させることができるという利点がある。
図4は、本発明の実施例2を示す音量制御部とエラー検出部の構成図である。これらの音量制御部10Bとエラー検出部30Bは、それぞれ図1中の音量制御部10Aとエラー検出部30Aに代えて用いられるもので、要素と共通の要素には共通の符号が付されている。
エラー検出部30Bは、エラー検出信号ERRを1フレーム期間だけ遅らせた信号をゲイン値選択信号GSとして出力するために、FF34の後段にセレクタ35とFF36からなるシフト回路を設けたものである。
一方、音量制御部10Bは、ゲイン値選択信号GSが“H”となっているフレームの最初の音量データVOL0を、強制的に“0”に設定する機能を付加したもので、FF12の出力側と減算器13の入力側の間にセレクタ20を設けると共に、加算器16の出力側とFF17の入力側の間にセレクタ21を設けている。そして、これらのセレクタ20,21は、ゲイン値選択信号GSが“H”の時に固定値“0”を選択するようになっている。その他の構成は、図1と同様である。
この実施例2では、音源ハードウエア・アクセラレータが、音源CPUからのデータ転送の異常を検出したときに、エラー検出信号ERRを音源CPUに送るようにしている。一方、音源CPUではエラー検出信号ERRに基づいてソフトウエアリセット等の処理によってシステムの初期化動作を行い、システムが回復した後、音源ハードウエア・アクセラレータに対して前回のフレーム時に転送したパラメータを再送することを前提としている。その結果、新たにノート・オンコマンドが入力されなくても、前回波形合成を行っていたパラメータがそのまま使用されるため、音源CPUの誤動作によって消音した音の再復帰が可能である。また、前回の音量データをそのまま使用した場合、急激に音量が大きくなり、人間の耳にはノイズとして聞こえる可能性があるため、現フレームの音量データを“0”から開始させることにより、なお良い効果が得られる。
図5は、図4の動作を示す信号波系図である。以下、この図5を参照しつつ図4の動作を説明する。
フレーム周期F1〜F3の動作は、図3と全く同じである。
即ち、フレーム周期F1,F2では、各フレーム周期の最初に、音源CPUから与えられた音量データVOL1に基づいて直線的に音量が変化するように音量制御信号VCが制御される。フレーム周期F3では、フレーム周期F2の期間中にデータ転送のエラーが発生したため、エラー検出信号ERRが“H”となり、このフレーム周期F3の音量データVOL1が強制的に“0”に設定され、音量制御信号VCの値は最終的に“0”となるように直線的に減少する。
即ち、フレーム周期F1,F2では、各フレーム周期の最初に、音源CPUから与えられた音量データVOL1に基づいて直線的に音量が変化するように音量制御信号VCが制御される。フレーム周期F3では、フレーム周期F2の期間中にデータ転送のエラーが発生したため、エラー検出信号ERRが“H”となり、このフレーム周期F3の音量データVOL1が強制的に“0”に設定され、音量制御信号VCの値は最終的に“0”となるように直線的に減少する。
フレーム周期F4では、エラー検出信号ERRが1フレーム周期遅れてゲイン値選択信号GSとなるので、このゲイン値選択信号GSは“H”となる。これにより、音量制御部10Bのセレクタ20,21によって固定値“0”が選択され、音量データVOL0として減算器13に“0”が与えられると共に、FF17には音量制御信号VCとして“0”が与えられる。これにより、音量制御信号VCの値は“0”から最終的な音量データVOL1まで直線的に増加する。
以上のように、この実施例2の音量制御部10Bは、エラー検出信号ERRがあった後のフレームの音量データVOL0と音量制御信号VCを強制的に“0”に設定するようにしている。これにより、実施例1の利点に加えて、次のフレームでの演奏時に音源CPUに対して新たにノート・オンコマンドが入力されなくても、音源ハードウエア・アクセラレータに対して、前回と同様のパラメータを転送することにより、音が消滅した後、自動的に同様の演奏を行うことができるという利点がある。
なお、本発明は、上記実施例に限定されず、種々の変形が可能である。この変形例としては、例えば、次のようなものがある。
(1) 1フレームのサンプリング数を256として説明したが、このサンプリング数は任意である。なお、サンプリング数をNとした場合、割算器14の除数はNとなる。
(2) サンプリング周波数を44.1kHzとして説明したが、このサンプリング周波数も任意である。
(3) 音量制御部10A,10Bや、エラー検出部30A,30Bの回路構成は一例であり、同様の機能を果たすものであれば、どのような回路構成でも適用可能である。
(1) 1フレームのサンプリング数を256として説明したが、このサンプリング数は任意である。なお、サンプリング数をNとした場合、割算器14の除数はNとなる。
(2) サンプリング周波数を44.1kHzとして説明したが、このサンプリング周波数も任意である。
(3) 音量制御部10A,10Bや、エラー検出部30A,30Bの回路構成は一例であり、同様の機能を果たすものであれば、どのような回路構成でも適用可能である。
1 データ入力部
2 波形データ読出制御部
3 波形メモリ
4 フィルタ部
5 利得調整部
6 加算部
7 DAC
8 タイミング制御部
10A,10B 音量制御部
30A,30B エラー検出部
2 波形データ読出制御部
3 波形メモリ
4 フィルタ部
5 利得調整部
6 加算部
7 DAC
8 タイミング制御部
10A,10B 音量制御部
30A,30B エラー検出部
Claims (2)
- MIDIデータに基づいて生成されたパラメータが与えられるデータ入力手段と、
前記与えられたパラメータの内の音程データ及び音色データに基づいて楽音信号を生成する楽音生成手段と、
前記与えられたパラメータの内の音量データに基づいて、現フレームの音量データの値から次フレームの音量データの値までサンプリング周期毎に直線的に変化する音量制御信号を生成する音量制御手段と、
前記楽音信号のレベルを前記音量制御信号で制御して合成信号を出力する利得調整手段とを備えた音源ハードウエア・アクセラレータにおいて、
前記音量制御手段は、前記パラメータの入力が途絶えたときに、次フレームの音量データの値を0に設定するように構成したことを特徴とする音源ハードウエア・アクセラレータ。 - MIDIデータに基づいて生成されたパラメータが与えられるデータ入力手段と、
前記与えられたパラメータの内の音程データ及び音色データに基づいて楽音信号を生成する楽音生成手段と、
前記与えられたパラメータの内の音量データに基づいて、現フレームの音量データの値から次フレームの音量データの値までサンプリング周期毎に直線的に変化する音量制御信号を生成する音量制御手段と、
前記楽音信号のレベルを前記音量制御信号で制御して合成信号を出力する利得調整手段とを備えた音源ハードウエア・アクセラレータにおいて、
前記音量制御手段は、前記パラメータの入力が途絶えたときに、次フレームの音量データの値を0に設定し、その後、該パラメータの入力が再開されたときには、現フレームの音量データの値を0に設定するように構成したことを特徴とする音源ハードウエア・アクセラレータ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005323018A JP2007132965A (ja) | 2005-11-08 | 2005-11-08 | 音源ハードウエア・アクセラレータ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005323018A JP2007132965A (ja) | 2005-11-08 | 2005-11-08 | 音源ハードウエア・アクセラレータ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007132965A true JP2007132965A (ja) | 2007-05-31 |
Family
ID=38154709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005323018A Withdrawn JP2007132965A (ja) | 2005-11-08 | 2005-11-08 | 音源ハードウエア・アクセラレータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007132965A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10887708B2 (en) | 2017-03-23 | 2021-01-05 | Yamaha Corporation | Audio system and power supply circuit |
-
2005
- 2005-11-08 JP JP2005323018A patent/JP2007132965A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10887708B2 (en) | 2017-03-23 | 2021-01-05 | Yamaha Corporation | Audio system and power supply circuit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7612281B2 (en) | Reverberation effect adding device | |
JP3106774B2 (ja) | デジタル音場創生装置 | |
JP4702392B2 (ja) | 共鳴音発生装置および電子楽器 | |
JP3175179B2 (ja) | デジタルピッチシフター | |
US9628907B2 (en) | Audio device and method having bypass function for effect change | |
JP2007132965A (ja) | 音源ハードウエア・アクセラレータ | |
JP2002345075A (ja) | 信号処理装置 | |
JP2739669B2 (ja) | 楽音発生装置 | |
JPH07306681A (ja) | 楽音生成装置 | |
US6972362B2 (en) | Method and device for generating electronic sounds and portable apparatus utilizing such device and method | |
JP4172452B2 (ja) | ノイズゲートを備えたカラオケ装置 | |
JP2000293169A (ja) | 楽音生成装置 | |
JP2734797B2 (ja) | 電子楽器 | |
JP2822860B2 (ja) | 楽音合成装置 | |
JP6400408B2 (ja) | 楽音発生装置 | |
JP3727110B2 (ja) | 楽音合成装置 | |
JP5035388B2 (ja) | 共鳴音発生装置および電子楽器 | |
JP2004053932A (ja) | 波形再生装置 | |
JPS6332595A (ja) | エコ−ミユ−テイング装置 | |
JPH05181497A (ja) | ピッチ変換装置 | |
JPH03174592A (ja) | 電子楽器の音源回路 | |
JP2005215250A (ja) | 音場制御システム及び音場制御方法 | |
JPH08110787A (ja) | 音声信号発生処理装置及びこれを用いたビデオゲーム装置 | |
JPH07221576A (ja) | 音場制御装置 | |
JPH08123421A (ja) | 楽音信号合成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090203 |