(57)【特許請求の範囲】
【請求項１】
互いに識別可能な複数のシラブルにより構成される波形データを、発音態様を指示する発音モードと再生を指示する時系列の演奏データとに基づいて再生する音源に用いる波形再生用自動演奏装置であって、
前記発音モードと前記演奏データと各シラブルの通し番号および時間長を含む波形関連データとに基づいて、前記演奏データを先頭から順次音源に送出した場合に前記音源が各シラブルを再生する再生態様を示す時系列のシーケンスデータであって、前記演奏データと前記音源が各シラブルをシラブルの最初から再生するか途中から再生するかを含む再生態様を示す再生シラブルデータとを含むシーケンスデータを作成し、
前記シーケンスデータのいずれの時間位置から再生を開始するかを指定する指定手段と、
前記指定手段によって指定された時間位置以降でシラブルを最初から再生することを示す再生シラブルデータを前記シーケンスデータから検出して、前記検出した再生シラブルデータの示すシラブルから再生を開始するように前記音源に指示し、さらに、前記検出した再生シラブルデータの時間位置から、前記シーケンスデータに含まれる演奏データを時間経過に従って順次音源に送出するとともに、前記検出した再生シラブルデータの時間位置以前の演奏データと前記発音モードとに基づいて、所定のタイミングで、前記検出した再生シラブルデータの時間位置より前の演奏データであって、前記再生の開始後に出力されていない演奏データを前記音源に送出する出力手段と
を有する波形再生用自動演奏装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、波形再生用自動演奏装置に関し、さらに詳細には、所定の区間毎に区切られた波形データを演奏データに応じて再生させる音源に用いる波形再生用自動演奏装置に関する。
【０００２】
【従来の技術】
従来より、電子楽器の分野においては、サンプリングされた波形データの再生を演奏データにより指示するものがあった。
【０００３】
また、最近の音源装置においては、一連のオーディオ波形を所定の区間毎に区切り、鍵盤等により入力される演奏データに応じて、各区間を所定の音高へ変化したり、所定のタイミングで発生させることができる。
【０００４】
【発明が解決しようとする課題】
本発明は、上記のような音源を制御する新規な自動演奏装置であり、音源が保有する一連の波形の特定の区間を指定し、その区間以降の波形を再生させる波形再生用自動演奏装置を提供しようとするものである。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、本発明のうち請求項１に記載の発明は、互いに識別可能な複数のシラブルにより構成される波形データを、発音態様を指示する発音モードと再生を指示する時系列の演奏データとに基づいて再生する音源に用いる波形再生用自動演奏装置であって、上記発音モードと上記演奏データと各シラブルの通し番号および時間長を含む波形関連データとに基づいて、上記演奏データを先頭から順次音源に送出した場合に上記音源が各シラブルを再生する再生態様を示す時系列のシーケンスデータであって、上記演奏データと上記音源が各シラブルをシラブルの最初から再生するか途中から再生するかを含む再生態様を示す再生シラブルデータとを含むシーケンスデータを作成し、上記シーケンスデータのいずれの時間位置から再生を開始するかを指定する指定手段と、上記指定手段によって指定された時間位置以降でシラブルを最初から再生することを示す再生シラブルデータを上記シーケンスデータから検出して、上記検出した再生シラブルデータの示すシラブルから再生を開始するように上記音源に指示し、さらに、上記検出した再生シラブルデータの時間位置から、上記シーケンスデータに含まれる演奏データを時間経過に従って順次音源に送出するとともに、上記検出した再生シラブルデータの時間位置以前の演奏データと上記発音モードとに基づいて、所定のタイミングで、上記検出した再生シラブルデータの時間位置より前の演奏データであって、上記再生の開始後に出力されていない演奏データを上記音源に送出する出力手段とを有するようにしたものである。
【０００６】
従って、本発明のうち請求項１に記載の発明によれば、指定された時間位置から演奏を開始することができる。
【０００７】
【発明の実施の形態】
以下、添付の図面を参照しながら、本発明による波形再生用自動演奏装置の実施の形態の一例を詳細に説明する。
【０００８】
図１には、本発明の実施の形態の一例による波形再生用自動演奏装置を備えた電子楽器のブロック構成図が示されている。なお、本発明による波形再生用自動演奏装置は、ソフトウェアプログラムによりＣＰＵ１０によって実現される。
【０００９】
この電子楽器は、その全体の動作の制御を中央処理装置（ＣＰＵ）１０を用いて制御するように構成されている。
【００１０】
ＣＰＵ１０には、バス（ＢＵＳ）１２を介して、全体の動作の制御のための所定のプログラムなどが格納されたリードオンリメモリ（ＲＯＭ）１４と、ＣＰＵ１０によるプログラムの実行に必要な各種レジスタ群などが設定されたワーキングエリアとしてのランダムアクセスメモリ（ＲＡＭ）１６と、キーボードやマウスなどからなる操作子群１８と、液晶パネルなどにより構成されており、図２に示す各種データ（後述する。）を図３に示すような態様で図形表示する表示器２０と、電子鍵盤楽器などの外部のＭＩＤＩ機器との間でＭＩＤＩデータの入出力を行うＭＩＤＩインターフェース（ＭＩＤＩ  ＩＦ）２２と、音源２４とが接続されている。
【００１１】
音源２４は、連続した音声をＰＣＭにより符号化して記憶するとともに、例えば「ハ」、「レ」、「ル」、「ヤ」のように複数の部分波形に区切り、波形に関する情報である、波形関連データを記憶している。
【００１２】
各区間は、以下シラブルと称するが、音声学上でいうシラブルに限らず、音声のある特性が一定である区間について、区切ったものである。
【００１３】
音源２４は、入力される演奏情報に従って上記シラブルを再生するが、設定される発音モードにより発音の態様が異なる。発音モードは、操作子群により設定されたり、自動演奏データにより設定される。
【００１４】
本発明は、上記音源２４を制御する自動演奏装置であって、鍵盤装置などから入力される演奏データに基づいてシーケンスデータを作成し、記憶する。
【００１５】
演奏者は、そのシーケンスデータに基づいて図表的に表示されるシラブルを見て、編集などを行うことができるが、編集されたシーケンスデータにより実際に再生される楽音を確認する際、途中のシーケンスからでも再生できるようにしたものである。
【００１６】
以下、シーケンスデータについて説明する。
【００１７】
本発明による自動演奏装置は、演奏しようとしている波形そのものは、記憶していないが波形関連データをＲＡＭ１６に記憶している。演奏者が、演奏しようとする波形を選択したとき、その波形関連データを音源２４が自動演奏装置へ送ってもよいし、自動演奏装置が予め保有していてもよい。
【００１８】
これらの波形関連データは、波形が入力、記憶される際、音源２４において分析（エンコード）されたり、演奏者が入力することにより設定される。
【００１９】
波形関連データは、図２（ａ）に示すものであり、以下に説明する。
【００２０】
（１）オリジナルキーＯｒｇＫｅｙ
オーディオ波形全体の基準となるキーで、ノートナンバにより設定する。
【００２１】
（２）シラブル番号ＳｙｌＮｏ．
シラブルの通し番号であり、シラブルを指定する識別子でもある。音源２４は、このシラブル番号を入力すると、そのシラブルから再生を開始するよう準備する。
【００２２】
（３）文字列ＳｙｌＣ
文字列を示すデータは、各シラブルに対応して記憶され、シラブルの内容あるいは発音を示すものを演奏者が入力する。
【００２３】
（４）シラブルレングスＳＬｅｎｇｔｈ
シラブルの時間長であり、単位はティックである。オーディオ波形を入力した際、そのオーディオ波形のテンポ（１分あたりの拍数、ＢＰＭ）を入力する。なお、そのテンポの値を所定値（例えば、４８０）により割った値をティックという。従って、テンポが遅くなれば、シラブルレングスの絶対時間長は長くなり、テンポが速くなれば短くなる。
【００２４】
（５）シラブルオリジナルキーＳＯｒｇＫｅｙ
各シラブルのキーをノートナンバで記憶する。
【００２５】
ここで、オリジナルキーとシラブルオリジナルキーについて説明する。シラブルオリジナルキーは、ノートオン信号のノートナンバがオリジナルキーである場合に再生される音高であり、入力されるノートオンのノートナンバが異なる場合には、その差だけ、シラブルの音高も変化して再生される。例えば、オリジナルキーが６０で、シラブルオリジナルキーが６６であれば、ノートオンのノートナンバが６０であれば、そのシラブルの音高は、６６で再生されるが、ノートオンのノートナンバが１多い、６１であれば、そのシラブルは、６７で再生される。
【００２６】
オリジナルシラブルデータである、上記（２）、（３）、（４）、（５）の具体的な図表的例を図３（ａ）に示す。
【００２７】
外部の機器から演奏データが入力されると、本発明の自動演奏装置は、まず、ノートデータを作成する。つぎに、作成されたノートデータに基づいて、選択されている発音モードで、各シラブルが再生される態様を、再生シラブルデータとして作成し、一連のシーケンスデータとする。
【００２８】
ノートデータは、ノートオンから当該ノートオンに対応するノートオフまでの時間を示すデュレイション（Ｄｕｒａｔｉｏｎ 単位はティック）と、ノートの識別子であるノートアイディー（ＮｏｔｅＩＤ）と、ノートナンバ（ＮｏｔｅＮｏ．）のオリジナルキーとの差を示すノートオフセット（ＮｏｔｅＯｆｆｓｅｔ）とより構成されている。図２（ｂ）に具体的なノートデータの例を示す。図３（ｂ）は、上記ノートデータを図表的に表わしたものである。
【００２９】
各発音モード（レガートモード、リトリガモードおよびステップモード）で、各シラブルがどのように再生され、再生シラブルデータがどのように作成されるかについて説明する。以下の説明では、モノラル発音、すなわち同時に複数の押鍵がある場合には、そのうち一つの鍵に対応する楽音を発音する場合について述べる。
【００３０】
（１）レガートモード
レガートモードは、レガート演奏（ノートオン情報が供給されたとき、それ以前に供給されたノートオン情報に対応するノートオフ情報がまだ供給されていない。）であって、あるシラブルが再生中であれば、その音高を新たなノートオン情報の音高に対応するよう変更してシラブルの再生を続行し、あるシラブルの再生が終了している場合には、次のシラブルを再生する。
【００３１】
レガート演奏でない場合には、新たなノートオン情報に応じて、最初のシラブルから再生する。
【００３２】
また、ノートオフ情報が供給されたとき、それ以前にそのノートオフ情報とは異なるノートナンバのノートオン情報が供給され、そのノートオフ情報が、供給されていない場合は、その時点でノートオン情報がレガート演奏により発生したものとみなす。
【００３３】
図２（ｃ）にその具体例と図３（ｃ）にその図表的態様を示す。クロック０（以下、クロックの単位は、ティックである。）の時点で第１のノートデータ（ノートナンバ６０）が入力され、これに応じて第１のシラブル（ＳｙｌＮｏ．１）、キー６６（Ｋｅｙ６６）、サブ（Ｓｕｂ  このシラブルが、シラブルの最初から発音される場合は「０」、途中からの再生される場合は「１」を設定する。）０、クロック２５０まで再生されるのでレングスは２５０（Ｌ２５０）、文字列（ＳｙｌＣ）が「ｈａｌ」である再生シラブルデータが作成され、ノートデータの次に挿入される。
【００３４】
次に、第２のシラブル「ｌｅ」が、オリジナルシラブルキーが６４であるためキー６４で第２のノートデータを入力するクロック３６０まで、長さ１１０の間再生される。これを表わす再生シラブルデータが、上記再生シラブルデータの次に挿入される。
【００３５】
第２のノートデータ（ノートナンバ６２）がクロック３６０で発生しているので、第２のシラブルはこの時刻から、キーが６６に変更される。
【００３６】
この再生シラブルデータは、途中からのシラブルであるのでサブは１と設定され、クロック４８０まで再生され、レングスは１２０となる。クロック４８０においては、つぎのシラブルである「ｌｕ」が、キー６９で第２のノートデータのノートオフ情報が供給されるクロック６００までのクロック１２０の区間再生される。この再生シラブルデータが第２のノートデータの次に挿入される。
【００３７】
クロック６００では、第１のノートデータがレガートでオンされたこととなり、第３のシラブル「ｌｕ」がキー６７で残りの時間である６０クロック再生されたあと、第４のシラブル「ｙａｊ」が同じ音高６７でクロック９７０まで再生される。これらの再生シラブルデータが、上記再生シラブルデータの次に加えられ、一連のシーケンスデータが作成される。
【００３８】
（２）リトリガモード
リトリガモードは、レガート演奏のいかんに係らず、新たなノートオン情報が供給されると、最初のシラブルから、そのノートオン情報の音高に従った音高で再生される。
【００３９】
ノートオフ情報が供給された場合は、再生しているシラブルの再生を停止する。このとき、他のノートがオンになって、ノートオフ情報が供給されていない場合は、その時点で、そのノートオン情報が供給されたものと見なす。
【００４０】
図２（ｄ）にその具体例と図３（ｄ）にその図表的態様を示す。クロック０の時点で第１のノートデータ（ノートナンバ６０）が入力され、これに応じて第１のシラブル、「ｈａｌ」が、キー６６で、クロック２５０まで再生され、再生シラブルデータが、ノートデータの次に挿入される。
【００４１】
次に、第２のシラブル「ｌｅ」が、オリジナルシラブルキーが６４であるためキー６４で第２のノートデータを入力するクロック３６０まで、長さ１１０の間再生される。これを表わす再生シラブルデータが、上記再生シラブルデータの次に挿入される。
【００４２】
第２のノートデータ（ノートナンバ６２）がレガート演奏で入力されると、第２のシラブルの再生が停止され、第１のシラブルである「ｈａｌ」が、キー６８で第２のノートデータのノートオフ情報が供給されるクロック６００までのクロック２４０の区間再生される。この再生シラブルデータが第２のノートデータの次に挿入される。
【００４３】
クロック６００では、第１のノートデータがレガートでオンされたこととなり、第１のシラブル「ｈａｌ」がキー６６で２５０クロック再生されたあと、第２のシラブルがキー６４でクロック９７０まで再生される。これらの再生シラブルデータが、上記再生シラブルデータの次に加えられ、一連のシーケンスデータが作成される。
【００４４】
（３）ステップモード
ステップモードは、レガート演奏の場合、新たなノートオン情報を受け取る度にシラブルを順次再生する。レガート演奏でない場合、新たなノートオン情報が供給されると、最初のシラブルから再生される。ノートオフの情報が供給された場合、再生しているシラブルの再生を停止する。
【００４５】
再生シラブル音高は、同様に、オリジナルキーとオリジナルシラブルキーとノートナンバによることは、各モードとも同じである。
【００４６】
図２（ｅ）にその具体例と図３（ｅ）にその図表的態様を示す。クロック０の時点で第１のノートデータ（ノートナンバ６０）が入力され、これに応じて第１のシラブル、「ｈａｌ」が、キー６６で、クロック２５０まで再生され、再生シラブルデータが、ノートデータの次に挿入される。
【００４７】
次に、クロック３６０の時点で第２のノートデータ（ノートナンバ６２）が入力され、これに応じて第２のシラブル、「ｌｅ」が、キー６６で、クロック５９０までのクロック２３０の区間再生される。この再生シラブルデータが第２のノートデータの次に挿入され、一連のシーケンスデータが作成される。
【００４８】
次に、ＲＡＭ１６に記憶されているシーケンスデータを再生する手法について説明する。
【００４９】
波形の先頭から再生する場合、即ち、先頭のシラブルから順次再生する場合は、シーケンスデータ中のノートデータだけを読み出し、時間経過に従ってノートオン情報、ノートオフ情報を音源２４へ送信する。
【００５０】
この処理については、従来の自動演奏装置と同一の処理であるので、その説明は省略する。
【００５１】
一方、途中のシラブルから再生する場合には、上記した図３に示す態様を表示する表示器２０上において、再生を開始したい時刻ＴＰにカーソルを設定してからスタートを指示する。
【００５２】
そうすると、ＣＰＵ１０は、メインルーチン内において以下に説明する（１）〜（７）の処理を実行することになる。
【００５３】
（１）設定された時刻以降で再生シラブルデータのサブが０の再生シラブルデータを探し、その再生シラブルデータにポインタＰを設定する。
【００５４】
（２）現在時刻Ｔをそのシラブルの開始時刻とする。
【００５５】
（３）シーケンスデータの最初から、時刻Ｔまでのノートイベントについて、時刻Ｔの時点でノートオフを送出していないノートを検出し、ノートテーブルにノートオフを送出すべき時刻およびそのノートナンバを記憶する。
【００５６】
（４）ポインタＰの示す再生シラブルデータのシラブルナンバーを音源２４へ送出する。
【００５７】
（５）そのシラブルに対応するノートナンバのノートオンを音源２４へ送出する。
【００５８】
（６）ポインタＰを次のノートデータまでインクリメントする。
【００５９】
（７）ティック間隔でタイマインタラプトが発生するよう設定する。
【００６０】
設定されたインタラプトが発生すると、図４に示すフローチャートのインタラプトルーチンが起動される。タイマインタラプトルーチンが起動されると、現在時刻Ｔを「１」インクリメントし（Ｓ４０２）、ポインタＰが示すノートデータのクロックが、現在時刻に到達しているか否かを判断する（Ｓ４０４）。到達している場合は、そのノートオン情報を音源へ出力し（Ｓ４０６）、そのノートナンバとノートオフ情報を出力する時刻をノートデーブルに記憶する。
【００６１】
ポインタＰを「１」進め（Ｓ４０８）、ポインタが示すデータがシーケンスデータの終了を表わしている場合は、終了フラグＥＮＤＦを「１」にセット（Ｓ４１２）する（このフラグは、メインルーチンの処理（７）において、「０」に設定されている）。
【００６２】
データがある場合は、そのデータがノートデータか否かを判断し（Ｓ４１４）、ノートデータでない場合は、さらにポインタＰを進める。
【００６３】
Ｓ４１６において、ノートテーブルに、その時刻に出力すべきノートオフ情報が記憶されているか否かを調べ、あれば発音モードにより次の処理を行う（Ｓ４１８）。
【００６４】
（１）レガートモード
ノートテーブルに、この時刻に出力すべきノートオフ情報以外のノートナンバが記憶されていて、このノートオフ情報を出力することにより、有効になるノートナンバであって、そのノートオン情報を音源２４へ出力していない場合には、そのノートナンバに対応するノートオン情報をまず出力し、つづいてこの時刻に出力すべきノートオフ情報を出力してノートテーブルからそのデータを削除する。
【００６５】
（２）リトリガモード
そのノートオフ情報を出力し、ノートテーブルからそのデータを削除する。
【００６６】
次に、ノートテーブルに記憶されていて、このノートオフ情報により有効になるノートナンバであってノートオン情報を音源２４へ送っていない場合は、そのノートオン情報を送る。
【００６７】
（３）ステップモード
そのノートオフ情報を出力する。
【００６８】
なお、上記（１）（２）において、有効になるノートナンバとは、直近で発生したノートオン情報に対応するノートナンバである。
【００６９】
Ｓ４２０において、全てのノートオフ情報が出力され、かつ終了フラグがセットされている場合、あるいは図示しない操作子により停止が指示されている場合（Ｓ４２０）、タイマインタラプトを禁止し、自動演奏を停止する（Ｓ４２２)。
【００７０】
【発明の効果】
本発明は、以上説明したように、一連の波形が複数のシラブルで構成されている場合に、自動演奏装置により上記波形を再生する際、波形の途中のシラブルから再生させることができるという優れた効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態の一例による波形再生用自動演奏装置を備えた電子楽器のブロック構成図である。
【図２】データ構成の一例を図表的に示す説明図であり、（ａ）は波形関連データを示し、（ｂ）は演奏データ（ノートデータ）を示し、（ｃ）はレガートモードにおけるシーケンスデータを示し、（ｄ）はリトリガモードにおけるシーケンスデータを示し、（ｅ）はステップモードにおけるシーケンスデータを示す。
【図３】図２に示すデータ構成を表示器に図形表示する際の態様を示す説明図であり、（ａ）はオリジナルシラブルデータを示し、（ｂ）は演奏データ（ノートデータ）を示し、（ｃ）はレガートモードにおけるシーケンスデータを示し、（ｄ）はリトリガモードにおけるシーケンスデータを示し、（ｅ）はステップモードにおけるシーケンスデータを示す。
【図４】タイマーインタラプトルーチンを示すフローチャートである。
【符号の説明】
１０        中央処理装置（ＣＰＵ）
１２        バス（ＢＵＳ）
１４        リードオンリメモリ（ＲＯＭ）
１６        ランダムアクセスメモリ（ＲＡＭ）
１８        操作子部
２０        表示器
２２        ＭＩＤＩインターフェース（ＭＩＤＩ  Ｉ／Ｆ）
２４        音源
【図１】
0004685226.tif 000002
【図２】
0004685226.tif 000003
【図３】
0004685226.tif 000004
【図４】
0004685226.tif 000005