JPH09297579A - 楽音合成装置 - Google Patents

楽音合成装置

Info

Publication number
JPH09297579A
JPH09297579A JP9058634A JP5863497A JPH09297579A JP H09297579 A JPH09297579 A JP H09297579A JP 9058634 A JP9058634 A JP 9058634A JP 5863497 A JP5863497 A JP 5863497A JP H09297579 A JPH09297579 A JP H09297579A
Authority
JP
Japan
Prior art keywords
musical tone
processing
program
sound source
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9058634A
Other languages
English (en)
Other versions
JP3765152B2 (ja
Inventor
Masashi Hirano
正志 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP05863497A priority Critical patent/JP3765152B2/ja
Publication of JPH09297579A publication Critical patent/JPH09297579A/ja
Application granted granted Critical
Publication of JP3765152B2 publication Critical patent/JP3765152B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】異常時にクリックノイズ等が出力されることを
防止する。 【解決手段】正常時はスイッチ制御信号(SW CONT)に
より、スイッチ25がDAC24側に切り換えられて、
楽音波形信号が音源11から出力される。異常時にはM
PUが暴走してスイッチ制御信号がローレベルとなるた
め、スイッチ25がアース側に切り換えられ、DAC2
4から出力されるクリックノイズ等が出力されることを
防止することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、演算処理装置を備
える汎用処理装置により楽音を合成できるようにした楽
音合成装置に関するものである。
【0002】
【従来の技術】従来の楽音合成装置は、通常、MIDI
(Musical Instrument Digital Interface)、鍵盤ある
いはシーケンサなどからの演奏情報を入力する演奏入力
部、楽音波形を発生する音源部、入力された演奏情報に
応じて前記音源部を制御する中央処理装置(CPU)な
どから構成されている。ここで、CPUは、入力された
演奏情報に応じて、チャンネルアサイン、パラメータ変
換などの音源ドライバ処理(演奏処理)を実行し、音源
部の割り当てたチャンネルに変換したパラメータと発音
開始指示(ノートオン)を供給する。また、音源部とし
ては供給されたパラメータに基づいて楽音波形を生成す
る内蔵音源や、MIDIデータが供給される外部音源が
用いられる。
【0003】また、パーソナルコンピュータなどの汎用
コンピュータにおいて、MIDIイベントなどの演奏情
報を入力データとし、対応する波形データを演算生成す
るアプリケーションプログラム、いわゆるソフトウエア
音源を使用して楽音を合成する楽音合成方法が提案され
ている。この音源処理を行うプログラムを使用すること
により、専用の楽音発生装置を用いることなく、CPU
とソフトウエアの他にはDA変換用のチップだけを備え
るだけで、楽音を発生させることが可能とされている。
【0004】
【発明が解決しようとする課題】しかしながら、このよ
うな楽音合成装置においては、楽音合成プログラムや自
動演奏プログラムをアプリケーション・プログラムとし
て実行させているが、何らかの原因によりこれらのプロ
グラムがストップしたり、実行継続不能となるいわゆる
ハング・アップ状態に陥ってしまうことがある。する
と、楽音発音指示(KEY-ON)が出力されたままの状態で
プログラムがハング・アップした場合は、対応した楽音
が出力されたままとなってしまうという問題点が生じ
る。さらに、プログラムがストップしたりハング・アッ
プ状態に陥いると、DA変換器への楽音波形データの供
給が途中でストップして、その結果、DA変換器から直
流分が出力されることになり、後段のサウンドシステム
でクリック・ノイズが発生されたり、場合によっては直
流分が漏れてスピーカなどを破壊する恐れが生じること
になる。
【0005】そこで、本発明は、プログラムがストップ
したりハング・アップ状態に陥いっても、楽音が出力さ
れたままとなったり、直流分がサウンドシステム側に漏
れたり、クリックノイズ等を発生しない楽音合成装置を
提供することを目的としている。
【0006】
【課題を解決するための手段】上記目的を達成するため
に、本発明の楽音合成装置は、楽音波形の発生を行う処
理手段と、該処理手段の処理動作において異常を検出す
る異常検出手段とを少なくとも備え、上記異常検出手段
が上記処理手段の異常を検出した時に、上記楽音波形が
出力されることを阻止するようにしたものである。
【0007】また、本発明の他の楽音合成装置は、楽曲
の演奏に関連した情報を発生する処理手段と、該処理手
段から供給される上記情報に基づいて楽音波形を発生す
る楽音発生手段と、上記処理手段の処理動作において異
常を検出する異常検出手段とを少なくとも備え、上記異
常検出手段が上記処理手段の異常を検出した時に、上記
楽音波形が出力されることを阻止するようにしたもので
ある。
【0008】このような本発明によれば、プログラムの
実行を監視し、その異常が検出された時に、発音の停止
や、DA変換器の入出力データのリセット等の対応処理
を行うようにしたので、楽音が出力されたままとなった
り、直流分がサウンドシステムに漏れたり、クリックノ
イズ等を発生しない楽音合成装置とすることができる。
【0009】
【発明の実施の形態】本発明の汎用処理装置からなる楽
音合成装置の実施の形態の構成を示すブロック図を図1
に示す。この図において、1は自動演奏用のMIDIイ
ベントを音源に渡すべき制御パラメータに変換する等の
処理を行ったり、楽音発生用のアプリケーションプログ
ラム等を実行して楽音波形サンプルの合成等の各種制御
を行なうマイクロプロセッサユニット(MPU)、2は
システムにより管理されて、異常動作時にタイムアップ
し強制的な割り込み(NMI:Non Maskable Interrup
t)をMPU1にかけるシステムタイマー(System Time
r) である。
【0010】また、、3はOS(Operating System)の
記憶エリア、自動演奏プログラムや楽音発生プログラム
等のアプリケーションプログラムの記憶エリアを少なく
とも有するランダム・アクセス・メモリ(RAM)、4
はMPU1のシステム初期化プログラム等が記憶されて
いるリード・オンリ・メモリ(ROM)、5は楽音を合
成する楽音発生プログラムや自動演奏プログラム等のア
プリケーションプログラムが予めインストールされてい
ると共に、楽音波形サンプルを合成するために使用する
楽音波形データ等が記録されているハードディスク装置
(HDD)、6は英字、かな、数字、記号などを備える
いわゆるパーソナル・コンピュータ用のキーボード(KE
YBOARD)と、ユーザが処理装置と対話するためのディス
プレイ(DISPLAY )である。
【0011】さらに、7は処理装置内部においてデータ
やアドレスが伝送されるメインバス(MAIN BUS)、8は
処理装置の機能を拡張する周辺機器用の拡張バス9と処
理装置内のメインバス7との間のデータの受け渡しを制
御することにより、処理装置に拡張された周辺機器を接
続できるようにした拡張インターフェースコントローラ
(EXPAND I/F CONTROLLER ) 、9は拡張された周辺機器
(拡張ボード)が接続される拡張バス(EXPAND BUS) 、
10はMIDIイベントが入力されると共に、生成され
たMIDIイベントを出力する拡張されたMIDIイン
タフェース、11はMPU1により作成された制御パラ
メータを受け取って、その制御パラメータに応じた楽音
波形を合成したり、MPU1が演算生成した楽音波形サ
ンプルデータを受け取る拡張された音源(T.G.)1
1である。
【0012】次に、音源(T.G.)11の構成を示す
ブロック図を図3に示すが、この音源11は拡張ボード
上に構成されている。この図において、21は音源
(T.G.)11に入力された制御パラメータTGPAR を
音源ユニット(TONE GENERATING UNIT)22に供給する
と共に、入力された楽音波形サンプルデータ(SDATA )
およびミキシング係数(MIX COEF)をデータミキサ(DA
TA MIXER)23に、入力されたスイッチ制御信号(SW C
ONT )をスイッチ25に供給するバスデータインターフ
ェース(BUS DATA INTERFACE )、22は供給された制御
パラメータTGPAR に基づいて楽音波形サンプルデータ
(TG DATA )を合成する音源ユニット(TONE GENERATIN
G UNIT)であり、LSIチップで拡張ボードに搭載され
たり、あるいはドーターボード(DAUGHTER BOARD)とし
て拡張ボードに搭載されている。
【0013】23は音源ユニット22により合成された
楽音波形サンプルデータ(TG DATA)と、楽音波形合成
用のアプリケーションプログラム(ソフトウェア音源)
をMPU1が実行することにより合成された楽音波形サ
ンプルデータ(SDATA )とが入力され、入力された2つ
の楽音波形サンプルデータを、ミキシング係数(MX COE
F )に応じてミキシングして出力するデータミキサ(DA
TA MIXER)、24はデータミキサ(DATA MIXER)23か
ら出力されたミキシングされた楽音波形サンプルデータ
(OUT DATA) をアナログの楽音波形信号に変換するディ
ジタル・アナログ変換器(DAC)、25はDAC24
の出力と、アースレベルとのいずれかをスイッチ制御信
号(SW CONT )に応じて選択するスイッチ、26はスイ
ッチ25から出力されたアナログ信号(AOUT)のうちの
不要周波数帯域成分を除去する出力フィルタ(OUTPUT F
ILTER )である。
【0014】なお、図2にRAM3のRAMマップを示
すが、OSがロードされるOS領域、自動演奏プログラ
ムがロードされる領域、楽音発生プログラムがロードさ
れる領域、およびその他のプログラムが書き込まれる領
域や空き領域がRAM3に作成されている。このように
構成された楽音合成装置において、電源を投入するとR
OM4に記憶されている初期化プログラムよりシステム
の初期化が行われる。そして、RAM3内に読み込まれ
たOSの管理下のもとで、ユーザの操作等に応じて実行
されるアプリケーションプログラムがHDD5から読み
出されRAM3にロードされる。
【0015】この時、ロードされたアプリケーションプ
ログラムがカラオケのアプリケーションプログラムであ
るとする。カラオケは、一般に知られているように伴奏
(メロディを含んでいてもよい)を聞きながら、ディス
プレイ6に表示される曲の進行に合わせてカラーワイプ
される歌詞を見て歌うものである。したがって、カラオ
ケのアプリケーションプログラムは、少なくとも伴奏等
の楽曲の演奏イベントデータを順次出力する自動演奏プ
ログラムと、その演奏イベントデータを受けて楽音波形
を合成する楽音発生プログラムとを含んでいる。
【0016】なお、図1に示すように拡張ボードに搭載
された音源11が処理装置に備えられている場合は、こ
の音源11に演奏イベントデータを供給することによ
り、音源11で楽音波形を合成することができる。そこ
で、ユーザが拡張ボードに搭載された音源11からなる
ハードウェア音源と、楽音発生プログラムによるソフト
ウェア音源のいずれかを選択して選ぶことができたり、
あるいは、両音源を用いて合奏させることができるよう
にされている。
【0017】これは、データミキサ23に供給するミキ
シング係数(MX COEF )を制御することにより行ってい
る。例えば、ミキシング係数を「0」とするとソフトウ
ェア音源で合成された楽音波形サンプルデータSDATA だ
けが出力され、ミキシング係数を「1」とするとハード
ウェア音源で合成された楽音波形サンプルデータTGDATA
だけが出力され、ミキシング係数を0〜1の間にすると
両音源で合成された楽音波形サンプルデータが混合され
て出力される。なお、合奏する場合にはソフトウェア音
源による楽音波形の演算生成に時間がかかるため、両音
源のタイミングを合わせる手段が必要となる。
【0018】このようにして、ユーザの選択した態様で
合成された楽曲が自動演奏されて図示しないサウンドシ
ステムから出力されるようになるが、何らかの原因によ
りプログラムがハングアップすることがある。この時、
自動演奏プログラムがキーオンを出したままハングアッ
プすると、対応した楽音が出たままとなる。また、DA
C24にデータが入力された状態でハングアップされる
と、入力データは変化せずDAC24からは入力データ
に対応した直流レベルが出たままとなる。これにより、
音源11よりの出力信号TG OUTが供給されるサウンドシ
ステムからクリックノイズが発生したり、この直流が漏
れた場合には、スピーカなどを破壊する恐れが生じる。
【0019】そこで、プログラムがハングアップしたこ
とを検出して、音源11内のスイッチ25をDAC24
側からアース側へと切り換えるようにし、音源11から
アースレベルを出力するようにする。これにより、上記
した問題点を解決することができる。このスイッチ25
の制御は、MPU1がスイッチ25をアース側へ切り換
えるスイッチ制御信号(SW CONT )を音源11に供給す
ることにより行われる。なお、プログラムがハングアッ
プした時に、MPU1がスイッチ25をアース側へ切り
換えるスイッチ制御信号(SW CONT )を音源11に供給
する処理は、図1に示すシステムタイマー2がプログラ
ムがハングアップした時にタイムアップして強制割り込
みNMIをMPU1にかけることにより行っている。
【0020】なお、システムタイマー2はOSおよびア
プリケーションの処理状況を管理するために設けられて
いるタイマーであり、処理がOSに戻る度に所定のタイ
マー時間が設定されてリスタートされる。この所定のタ
イマー時間は、MPU1が正常に処理を進めていれば、
少なくともこの時間内にはOS処理に戻ってくるとされ
る時間値である。
【0021】また、図4に示す構成により、プログラム
がハングアップしたことを検出して、音源11内のスイ
ッチ25をDAC24側からアース側へと切り換えるこ
とにより、DAC24出力を遮断して音源11からアー
スレベルを出力するようにしてもよい。図4示す構成の
動作タイミングを図5に示す。この例は、図4に示すよ
うに、リトリガブルタイマー(TIMER)31を音源11内
に備えるようにし、このタイマー31にオフタイマー時
間値OFFTIMが入力されている。MPU1は正常動作中は
オフタイマー時間値OFFTIM以内に、リトリガー信号をタ
イマー31に与える。したがって、正常動作中は、図5
(a)の前半に示すようにタイマー31は周期的にリト
リガーされてタイムアップすることはない。この時、タ
イマー31の出力するハイレベルのスイッチ制御信号
(SW CONT)により、スイッチ25はDAC24側へ切
り換えられてDAC24の出力がスイッチ25から出力
される。
【0022】そして、プログラムがハングアップする
と、MPU1からリトリガー信号が図5(a)の後半に
示すようにタイマー31に供給されなくなるため、最後
のリトリガー信号が与えられてからオフタイマー時間値
OFFTIM経過した後にタイマー31はタイムアップするよ
うになる。タイマー31がタイムアップすると同図
(b)に示すように、タイマー31から出力されるスイ
ッチ制御信号(SW CONT )がローレベルに立ち下がるよ
うになるため、DAC24出力を遮断するようスイッチ
25はアース側へ切り換えられてスイッチ25からアー
スレベルが出力されるようになる。これにより、上記問
題を解決することができる。
【0023】なお、リトリガー信号は、MPU1が楽音
発生プログラムの実行中に周期的に出力するようにして
いるが、データ転送等の音源11に対するMPU1から
のアクセスを検出して、検出した時に音源11内におい
てリトリガー信号を作成するようにしてもよい。また、
リトリガブルタイマー31がタイムアップした時に、図
5(c)に示すようにMPU1に割り込み要求IRQが
かかり、MPU1に、異常が発生してタイマー31がタ
イムアップしたことを認識させるようにしている。ま
た、自動演奏プログラムが楽音発生プログラムに対して
何らかの指示やイベントを出力するタイミング、自動演
奏のテンポクロック、あるいはそれに準じたタイミング
で、リトリガー信号を発生するようにしてもよい。
【0024】さらに、以上挙げたようなリトリガー信号
の発生要因を組み合わせて、実際のリトリガー信号を発
生するようにしてもよい。組み合わせの一例としては、
楽音発生プログラムの実行中に所定周期で出力されるリ
トリガー信号と、自動演奏プログラムで演奏イベントの
発生と同期して発生するリトリガー信号との双方によ
り、リトリガブルタイマー31を制御する例が挙げられ
る。この例では、例えば、楽音発生プログラムと自動演
奏プログラムの双方あるいはいずれか一方で異常の発生
があると、リトリガブルタイマー31がタイムアップし
て異常を検出するようになる。
【0025】異常の要因解析は、異常検出前のリトリガ
ー信号が何(どのプログラム)によって発生されたかな
どを記録しておくことにより、ある程度把握することが
できる。例えば、リトリガー信号の最新のいくつかの発
生元をリトリガー信号の発生毎に記憶しておくなどし
て、リトリガー信号の来歴データから異常の要因を知る
ことができる。また、さらには実行するプログラム(タ
スク)毎に対応して、独立したリトリガブルタイマーを
有させることにより、個々に異常検出を行うようにする
ことも可能である。
【0026】上記のように動作する本発明の楽音合成装
置を、次にフローチャートを用いて説明する。図6はM
PU1のメインルーチンを示すフローチャートであり、
電源等が投入されると、MPU処理がスタートされる。
すると、ステップS10にてROM4に内蔵されている
初期化プログラムが実行され、HDD5からOSなどが
読み出されRAM3にロードされる。これ以後はOSに
システム管理が受け渡される。OS管理下においては、
ユーザの操作等に応じて実行されるアプリケーションプ
ログラムがHDD5等から読み出されRAM3にロード
される。ここでは、自動演奏プログラムと楽音発生プロ
グラムとがロードされて実行されるものとして以下説明
する。
【0027】ステップ11のOS処理においては、シス
テムタイマー2のリスタート処理が行われると共に、ジ
ョブスケジューリング等のシステム管理処理が行われ
る。なお、OSはマルチタスク方式とされており、複数
のタスク(アプリケーション)がOSによってスイッチ
ングされながらその処理が実行されている。すなわち、
ステップS12のタスクスイッチングにより、実行され
るいずれかのタスクが選択されるようになる。この場
合、タスクの優先度やその時の処理状況に応じて移るタ
スクは変化する。
【0028】ステップS12のタスクスイッチングによ
ってステップS13の自動演奏プログラム処理に移る
と、選択指定された演奏データと曲の進行に従い、演奏
イベントデータが生成される。また、ステップS12の
タスクスイッチングによってステップS14の楽音発生
プログラム処理に移ると、生成された演奏イベントデー
タに応じて対応する楽音が合成される。さらに、ステッ
プS12のタスクスイッチングによってステップS15
のその他のプログラムに移ると、その他のプログラムの
処理が行われるようになる。そして、ステップS13、
ステップS14、ステップS15のいずれかの処理が終
了すると、ステップS11のOS処理に戻り、再度シス
テムタイマーのリスタート処理や、システム管理処理が
行われる。
【0029】このように、メインルーチンは循環して実
行されており、このメインルーチンが正常に実行されて
いる場合は、ステップS11のOS処理により所定時間
以内毎にシステムタイマー2がリスタートされるように
なる。すなわち、MPU1にNMIがかかることはな
い。なお、ステップS14の楽音発生プログラム処理に
おける楽音波形サンプルデータの合成方法としては、 (1)「楽音発生プログラム」内に記述されているプロ
グラムを実行することにより楽音波形サンプルデータを
合成する。 (2)システムに搭載されたハードウェア、LSIチッ
プ、DSP(MPU)等の音源デバイスにより楽音波形
サンプルデータを合成する。 (3)MIDIデータを外部の音源に送りこの音源を制
御することにより楽音波形サンプルデータを合成する。 の3つが考えられる。
【0030】楽音発生プログラム処理では、上記した3
つの楽音波形サンプルデータの合成方法を、適宜選択し
たり、組み合わせたりして用いるようにしている。な
お、選択指定に当たっては、ハードウェアが搭載されて
いるか等のシステム環境の自動チェック機能をOSある
いは関連プログラムに持たせて、これを自動認識させる
ことにより、生成した演奏イベントの音源への割当を決
めるようにしてもよい。また、ユーザの設定操作によっ
て使用する音源の種別を決定するようにしてもよいこと
は当然のことである。この場合の3つの楽音波形サンプ
ルデータの合成方法の選択、あるいは組み合わせは、上
記したようにデータミキサ23を制御するミキシング係
数MX COEF を変更することにより行うことができる。
【0031】次に、メインルーチンのステップS11に
て実行されるOS処理のフローチャートを図7に示す。
OS処理は、ステップS110にてシステムタイマー2
がリスタートされる。このリスタートはシステムタイマ
ー2にタイマー時間TIMを設定することにより行われ
る。なお、システムタイマー2は前述したようにOSお
よびアプリケーションの処理状況を管理するためのもの
であり、タイマー時間TIMはMPU1が正常に処理を
進めていれば、この時間内には少なくともOS処理に戻
るとされている時間値である。
【0032】すなわち、図6で説明したようにOSに処
理が戻る度にシステムタイマー2はリスタートされるの
で、MPU1が正常に処理を行っている期間は、システ
ムタイマー2がタイムアップすることはない。しかしな
がら、OSあるいはアプリケーション等の処理の途中に
おいて、何らかの原因によりMPU1が暴走し、処理が
OSに戻らなくなると、システムタイマー2がリスター
トされなくなり、最後のリスタートからタイマー時間T
IM後にシステムタイマー2はタイムアップする。
【0033】システムタイマー2がタイムアップする
と、MPU1に対して強制的かつ優先的なNMIがかけ
られる。すると、MPU1はスイッチ25をアース側へ
切り換えるスイッチ制御信号(SW CONT)を音源11に送
るようになる。ステップS110のシステムタイマーリ
スタート処理が終了すると、ステップS111にてジョ
ブスケージュリング等のシステム管理処理が行われリタ
ーンされる。
【0034】次に、メインルーチンのステップS14に
て実行される楽音発生プログラム処理のフローチャート
を図8に示す。楽音発生プログラム処理はこのフローチ
ャートに示すように、ステップS140にて楽音発生の
終了操作があったか否かが判断され、終了操作がありY
(YES)と判定された場合は、ステップS141に進み
ここで発音されているチャンネルの発音停止処理等の終
了処理が行われる。また、ステップS140にて終了操
作がなく、N(NO)と判定された場合はステップS14
2に分岐してスイッチ制御信号(SW CONT)が「1」にセ
ットされる。これにより、スイッチ25はDAC24よ
りの出力を出力するようになる。
【0035】次いで、ステップS143にてMIDI ACTIV
E SENSING の出力処理を行う。MIDIACTIVE SENSING と
は、MIDI接続を確認するため、MIDI信号の送出
側機器が、最大300ms以内毎に ACTIVE SENSING
(MIDI信号)を送出し、受信側が所定時間以内に A
CTIVE SENSING の受信認識ができなかった場合、楽音発
生の中止などの対応処理をするものである。ステップS
143におけるMIDI ACTIVE SENSING の出力処理では、
タイマー処理を併用して ACTIVE SENSING (MIDI信
号)を送出している。 ACTIVE SENSING 信号は、MID
I規格ではFEH (H のサフィックスは16進数である
ことを示す。)で定義されている。MIDI ACTIVE SENSIN
G の出力処理が終了すると、ステップS144に進み波
形発生演算処理が行われる。ここでは、「楽音発生プロ
グラム」に記述された波形発生用のプログラム(ソフト
ウェア音源)を実行することにより、楽音波形の形成の
ための演算を主に行う。
【0036】ステップS144の実行により求められた
楽音波形サンプルデータは、順次音源11に転送され
る。ただし、システム仕様によっては楽音発生プログラ
ムはRAM3上にある波形データバッファに演算結果と
しての楽音波形サンプルデータを書き込むだけで、その
バッファから音源11への転送は、音源11に対応した
別のデバイスドライバ・ソフトウェアが行うようにして
もよい。そして、ステップS144の波形発生演算処理
が終了するとリターンされる。
【0037】次に、システムタイマー2がタイムアップ
した時に実行されるNMI処理のフローチャートを図9
に示す。NMI処理が開始されると、ステップS20に
て全MIDI CH(1ch〜16ch)について”AL
L NOTEOFF ”信号を送出する。”ALL NOTEOFF ”信号は
MIDI規格ではBX 7BH で定義されている。次い
で、ステップS21においてMIDI ACTIVE SENSING の出
力を停止するようにする。さらに、MIDI REALTIME MESS
AGE の一つである”RESET ”(FFH )を送出するよう
にしてもよいが、”RESET ”はMIDI機器の機種によ
って受信した時の処理が異なる場合があるので、”RESE
T ”は送出/非送出の設定が選択できるようにするのが
よい。なお、異常時の処置は各種の処置を選択できるよ
うにするのが好適である。
【0038】次いで、ステップS22にて搭載されてい
る音源11に対し出力阻止の指示が行われる。この指示
は、「0」のスイッチ制御信号SW CONT をTG11に送
ることにより行われる。そして、ステップS23の異常
アラーム処理において、音源ユニット22等の楽音合成
デバイスに発音中止を指示する。この指示は、ボリウム
を絞ったり、キーオフ信号を送ったり、あるいはRESET
をかけることにより行う。この後、ステップS24にて
再起動されたか否かが判定される。ここで、ユーザが再
起動の操作を行った場合は、YES と判定されてシステム
を再起動するMPU処理スタート処理が実行される。ま
た、再起動が行われない時はステップS24の処理が循
環して行われ、再起動されるまで待つようになる。
【0039】次に、図4および図5を用いて説明したプ
ログラムがハングアップした時に、音源11内のスイッ
チ25をDAC24側からアース側へと切り換えるよう
にする処理を行う楽音発生プログラム処理のフローチャ
ートを図10に示す。この楽音発生プログラム処理のフ
ローチャートは、ステップS240にて楽音発生の終了
操作があったか否かが判断され、終了操作がありY(YE
S )と判定された場合は、ステップS241に進みここ
で発音されているチャンネルの発音停止処理等の終了処
理が行われる。
【0040】また、ステップS240にて終了操作がな
く、N(NO)と判定された場合はステップS242に分
岐してリトリガー(RETRIGGER )信号出力処理が実行さ
れる。ここではリトリガー信号を発生するか、あるいは
その発生の指示を出力する。このリトリガー信号出力処
理は楽音発生プログラムがタスクとして呼ばれる度に実
行されることになるため、その度毎にリトリガー信号が
出力されるようになる。これにより、図5(a)の前半
に示すようなリトリガー信号が出力され、スイッチ制御
信号(SW CONT)が「1」にセットされたままとなる。こ
れにより、スイッチ25はDAC24よりの出力(DA O
UT)を出力するようになる。
【0041】また、プログラムの実行中に何らかの原因
によりMPU1が暴走して、楽音発生プログラムにタス
クが回ってこなくなると、図5(a)の後半に示すよう
にリトリガー信号の発生が停止されるため、同図(b)
に示すようにスイッチ制御信号(SW CONT)が「0」に立
ち下がる。したがって、スイッチ25はDAC24より
の出力(DA OUT)を遮断して、アースレベルを出力する
ようになる。なお、リトリガー信号は、信号として音源
11に書き込むようにしてもよいが、音源11が占めて
いるメモリのアドレス領域のいずれかに、MPU1がWR
ITE(空データ書き込みでもよい)したことの検出を、
リトリガー信号として音源11内において扱うようにし
てもよい。あるいは、自動演奏プログラムの方からリト
リガー信号を送出するようにしてもよい。
【0042】さらに、異常が発生した時には図5(c)
に示すような音源11からの割り込み要求によりMPU
1に知らせるか、あるいは音源11内に設けたフラグを
倒すようにし、このフラグをMPU1が監視することに
より異常を知るようにする。そして、異常を知った時に
は前記した「NMI処理」と同等の処理をMPU1が行
えばよい。ところで、リトリガー信号の出力処理が終了
すると、ステップS243に進み楽音波形形成演算処理
が行われる。ここでは、「楽音発生プログラム」に記述
された波形発生用のプログラム(ソフトウェア音源)を
実行することにより、楽音波形の形成のための演算が主
に行なわれる。
【0043】ステップS243の実行により演算生成さ
れた楽音波形サンプルデータは、順次音源11に転送さ
れる。ただし、システム仕様によっては楽音発生プログ
ラムはRAM3上にある波形データバッファに演算結果
としての楽音波形サンプルデータを書き込むだけで、そ
のバッファから音源11への転送は、音源11に対応し
た別のデバイスドライバ・ソフトウェアが行うようにし
てもよい。そして、ステップS243の楽音波形形成演
算処理が終了するとリターンされる。
【0044】なお、カラオケにおいてユーザが歌った歌
は、図示しないマイクを通じて音源11に備えられた図
示しないアナログ・ディジタル変換器(ADC)に入力
されてディジタル信号に変換される。このディジタル信
号はデータミキサ23に入力されて、楽音波形サンプル
データと混合され、サウンドシステムから楽音と一緒に
発音されるようになる。以上の説明ではカラオケのアプ
リケーションプログラムを実行するものとして説明した
が、本発明はこれに限らず自動演奏プログラムや楽音発
生プログラムのいずれかを実行する場合に適用すること
ができるものである。
【0045】以上説明した実施例では、DAC24の出
力を外部に出力するか遮断するかをスイッチ25により
制御するようにしたが、本発明はこれに限らず、例え
ば、VCA,電子ボリューム等により制御することも可
能である。また、DAC24は、通常、所定値の基準電
圧が供給され、入力されたディジタルデータに応じて基
準電圧を分圧(あるいは逓倍)することにより、入力さ
れたディジタルデータに応じたアナログ値を出力するよ
うにしているが、この場合には、CPUの異常時にDA
C24の基準電圧を「所定値」から「0」に切り換える
ようにすることにより、上述した実施の形態と同様の制
御を行うことが可能となる。
【0046】
【発明の効果】本発明は以上説明したようにプログラム
の実行を監視し、その異常が検出された時に、発音の停
止や、DA変換器の入出力データのリセット等の対応処
理を行うようにしたので、楽音が出力されたままとなっ
たり、直流分がサウンドシステムに漏れたり、クリック
ノイズ等を発生しない楽音合成装置とすることができ
る。したがって、不快音が出力されないと共に、サウン
ドシステムの障害を防止することができる。
【図面の簡単な説明】
【図1】 本発明の楽音合成装置の実施の形態の構成を
示すブロック図である。
【図2】 本発明の楽音合成装置におけるRAMのマッ
プの一例を示す。
【図3】 本発明の楽音合成装置における音源の構成を
示すブロック図である。
【図4】 本発明の楽音合成装置における他の実施の形
態の構成を示すブロック図である。
【図5】 本発明の楽音合成装置における他の実施の形
態の構成の動作を示すタイミング図である。
【図6】 本発明の楽音合成装置におけるMPUのメイ
ンルーチンを示すフローチャートである。
【図7】 メインルーチンにおけるOS処理のフローチ
ャートである。
【図8】 メインルーチンにおける楽音発生プログラム
処理のフローチャートである。
【図9】 本発明の楽音合成装置におけるNMI処理の
フローチャートである。
【図10】 メインルーチンにおける他の楽音発生プロ
グラム処理のフローチャートである。
【符号の説明】
1 MPU、2 システムタイマー、3 RAM、4
ROM、5 ハードディスク装置(HDD)、6 ディ
スプレイとキーボード、7 メインバス、8 拡張イン
ターフェースコントローラ、9 拡張バス、10 MI
DIインターフェース、11 音源(T.G.)、21
バスデータインターフェース、22 音源ユニット、
23 データミキサ、24 DAC、25 スイッチ、
26 出力フィルタ、31 リトリガブルタイマー

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 楽音波形の発生を行う処理手段と、 該処理手段の処理動作において異常を検出する異常検出
    手段とを少なくとも備え、 上記異常検出手段が上記処理手段の異常を検出した時
    に、上記楽音波形が出力されることを阻止するようにし
    たことを特徴とする楽音合成装置。
  2. 【請求項2】 楽曲の演奏に関連した情報を発生する
    処理手段と、 該処理手段から供給される上記情報に基づいて楽音波形
    を発生する楽音発生手段と、 上記処理手段の処理動作において異常を検出する異常検
    出手段とを少なくとも備え、 上記異常検出手段が上記処理手段の異常を検出した時
    に、上記楽音波形が出力されることを阻止するようにし
    たことを特徴とする楽音合成装置。
JP05863497A 1996-03-05 1997-02-27 楽音合成装置 Expired - Fee Related JP3765152B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05863497A JP3765152B2 (ja) 1996-03-05 1997-02-27 楽音合成装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-73042 1996-03-05
JP7304296 1996-03-05
JP05863497A JP3765152B2 (ja) 1996-03-05 1997-02-27 楽音合成装置

Publications (2)

Publication Number Publication Date
JPH09297579A true JPH09297579A (ja) 1997-11-18
JP3765152B2 JP3765152B2 (ja) 2006-04-12

Family

ID=26399661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05863497A Expired - Fee Related JP3765152B2 (ja) 1996-03-05 1997-02-27 楽音合成装置

Country Status (1)

Country Link
JP (1) JP3765152B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7756595B2 (en) 2001-01-11 2010-07-13 Sony Corporation Method and apparatus for producing and distributing live performance
US7847174B2 (en) 2005-10-19 2010-12-07 Yamaha Corporation Tone generation system controlling the music system
JP4734484B2 (ja) * 2000-10-19 2011-07-27 新世代株式会社 情報処理装置およびメモリカートリッジシステム
CN109741720A (zh) * 2018-11-28 2019-05-10 星海音乐学院 一种合成器软件

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4734484B2 (ja) * 2000-10-19 2011-07-27 新世代株式会社 情報処理装置およびメモリカートリッジシステム
US7756595B2 (en) 2001-01-11 2010-07-13 Sony Corporation Method and apparatus for producing and distributing live performance
US7847174B2 (en) 2005-10-19 2010-12-07 Yamaha Corporation Tone generation system controlling the music system
US7977559B2 (en) 2005-10-19 2011-07-12 Yamaha Corporation Tone generation system controlling the music system
CN109741720A (zh) * 2018-11-28 2019-05-10 星海音乐学院 一种合成器软件

Also Published As

Publication number Publication date
JP3765152B2 (ja) 2006-04-12

Similar Documents

Publication Publication Date Title
USRE37367E1 (en) Computerized music system having software and hardware sound sources
US5703310A (en) Automatic performance data processing system with judging CPU operation-capacity
JPH08263079A (ja) 通信カラオケシステム
KR100386403B1 (ko) 하드웨어및소프트웨어음원을이용하는악음발생방법
US5770812A (en) Software sound source with advance synthesis of waveform
JP3765152B2 (ja) 楽音合成装置
US6919502B1 (en) Musical tone generation apparatus installing extension board for expansion of tone colors and effects
US6359206B2 (en) Tone signal processing apparatus with intermittent clock supply
JP3221314B2 (ja) 楽音合成装置及び方法
JPH09258737A (ja) コンピュータソフトウェアを用いた音源システム
US5861567A (en) Music computer saving abnormal tone generation by hangup
JP3152198B2 (ja) 楽音発生方法および楽音発生装置
US6169243B1 (en) Automatic performance apparatus with quick start by accelerated loading of setting data
US6040516A (en) Tone generation system using computer software and storage medium storing the computer software
JP3257400B2 (ja) エフェクト装置
JP3740717B2 (ja) 音源装置及び楽音生成方法
US6414232B2 (en) Tone generation method and apparatus based on software
JP4063286B2 (ja) 音源装置
USRE40364E1 (en) Tone signal processing apparatus with intermittent clock supply
JPH11126069A (ja) 楽音生成方法
JP3632744B2 (ja) 音生成方法
JP2004259093A (ja) データ処理装置およびデータ処理のプログラム
JP2009230610A (ja) 命令処理装置及び命令処理方法。
JP3716710B2 (ja) 楽音発生装置
JP3627590B2 (ja) 音生成方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031215

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20031215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050719

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060117

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090203

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100203

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110203

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120203

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130203

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees