(57)【特許請求の範囲】
【請求項１】
画面に表示された五線上の位置に対象音符または対象休符を入力する音符・休符入力手段と、
前記音符・休符入力手段により対象音符または対象休符が入力されたとき、その発音開始タイミングまたは休符開始タイミングを決定する開始タイミング決定手段と、
前記開始タイミング決定手段により決定された対象音符の発音開始タイミングと該対象音符の音価に基づいて発音終了タイミングを決定し、対象休符の休符開始タイミングと該対象休符の音価に基づいて休符終了タイミングを決定する終了タイミング決定手段とを備え、
前記開始タイミング決定手段は、小節内で、対象音符または対象休符に先行する音符または休符を探索し、該音符または休符が探索されなかった場合、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを０に決定し、
該音符または休符が探索された場合は、演奏方向で対象音符または対象休符の入力位置が、該音符または休符の位置と同じとみなせるか否かの判定の指標となる値を所定値として、該音符または休符の位置が所定値以下に近いか否かを判定し、
前記所定値以下に近いと判定された場合には、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを、該同じ位置とみなされた音符の発音開始タイミングまたは休符の休符開始タイミングに決定し、
前記所定値以下に近いと判定されなかった場合は、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを、前記探索された音符または休符のうち、演奏方向で対象音符に最も近い音符の発音開始タイミングまたは休符の休符開始タイミングより後で、かつ最も早い発音終了タイミングあるいは休符終了タイミングに決定することを特徴とする楽譜編集装置。
【請求項２】
画面に表示された五線上の位置に音符および休符を入力させて楽譜編集を行うため、コンピュータに下記(1)および(2)の機能を実現させるためのプログラム。
(1)対象音符または対象休符が入力されたとき、その発音開始タイミングまたは休符開始タイミングを決定する開始タイミング決定機能であって、小節内で、対象音符または対象休符に先行する音符または休符を探索し、該音符または休符が探索されなかった場合、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを０に決定し、
該音符または休符が探索された場合は、演奏方向で対象音符または対象休符の入力位置が、該音符または休符の位置と同じとみなせるか否かの判定の指標となる値を所定値として、該音符または休符の位置が所定値以下に近いか否かを判定し、
前記所定値以下に近いと判定された場合には、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを、該同じ位置とみなされた音符の発音開始タイミングまたは休符の休符開始タイミングに決定し、
前記所定値以下に近いと判定されなかった場合は、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを、前記探索された音符または休符のうち、演奏方向で対象音符に最も近い音符の発音開始タイミングまたは休符の休符開始タイミングより後で、かつ最も早い発音終了タイミングあるいは休符終了タイミングに決定する開始タイミング決定機能
(2)前記開始タイミング決定機能により決定された対象音符の発音開始タイミングと該対象音符の音価に基づいて発音終了タイミングを決定し、対象休符の休符開始タイミングと該対象休符の音価に基づいて休符終了タイミングを決定する終了タイミング決定機能。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽譜編集装置およびプログラムに関し、特に、楽譜データを作成するための楽譜入力や編集を効率的かつ容易に行うことができる楽譜編集装置およびプログラムに関する。
【背景技術】
【０００２】
コンピュータを利用し、画面上での操作で楽譜を作成したり編集したりする楽譜編集装置あるいは楽譜編集用ソフトウエアが知られている。これによれば、画面上での操作で楽譜の作成および編集ができ、また、作成された楽譜をパソコンの内蔵音源あるいは外部音源で自動演奏させたり、印刷物として楽譜を出力させたりすることができる。
【０００３】
コンピュータを利用し、画面上での操作で楽譜を作成したり編集したりするための楽譜編集用ソフトウエアとしては、スコアメーカ(商品名)が知られている。
【０００４】
特許文献１には、譜面の各ページごとに夫々のパートの五線譜やその他の音楽情報を多段に記載した形式で表示させ、該譜面上で各種音楽記号やフォントなどを選択してその編集や既編集結果の変更・更新ができる音楽情報表示編集装置が記載されている。
【０００５】
特許文献２には、演奏情報のタイミング情報を有する複数パートの演奏データに基づいて複数段の五線譜に楽譜記号を割り付ける楽譜割付け装置が記載されている。
【０００６】
特許文献３には、各パートの特性に合わせた楽譜の表記ルールや複数パートを組み合わせた楽譜を編集する場合のルールなどからなる編集ルールに基づいて楽譜を編集する楽譜編集装置が記載されている。
【特許文献１】特開平９−１１４４５３号公報
【特許文献２】特開平１１−３２７４２７号公報
【特許文献３】特開２００３−９９０３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１−３に記載の装置における楽譜編集は、いずれも表示画面上で見やすい楽譜を作成することを主眼としており、ユーザの音楽記号の入力操作や編集操作に伴って音符の発音開始・終了タイミングや休符の休符開始・終了タイミングのデータを自動的に生成することは考えられていない。
【０００８】
従来、画面上での操作で楽譜を作成したり編集したりする楽譜編集用ソフトウエアは、複数存在するが、そのうちの１つでは、既に入力されている音符とタイミングおよび符尾の向きが同じであるが音価が異なる音符が入力された場合、既に入力されている音符が後から入力された音符の音価に統一されるように編集されてしまう。したがって、これでは、音符の入力時に声部を意識する必要はないが、タイミングおよび符尾の向きが同じであるが音価の異なる音符を入力することができず、複雑な声部の楽譜を表現できないという課題がある。
【０００９】
また、音符入力時に、音符入力の声部を指定したり、音符入力の声部を自動的に割り振ったする楽譜編集用ソフトウエアもあり、これによれば、タイミングおよび符尾の向きが同じであるが音価が異なる音符が入力された場合、音符入力を指定された声部や別の声部に割り振ることができる。しかしながら、これでは、意図したとおりの楽譜を作成するためには、音符入力時に声部を意識する必要があるという課題がある。
【００１０】
また、音符入力時に声部ごとにレイヤを分けて音符を入力させるようにしている楽譜編集用ソフトウエアもあるが、これでは、符尾の向きのみで声部が決定できる単純な楽譜の場合でも、レイヤごとに音符を入力しなければならず、楽譜入力を効率的に行うことができないという課題がある。
【００１１】
本発明の目的は、声部が複雑な楽譜であっても、声部を意識することなく、効率的に楽譜入力や編集を行うことができる楽譜編集装置およびプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明は、画面に表示された五線上の位置に対象音符または対象休符を入力する音符・休符入力手段と、前記音符・休符入力手段により対象音符または対象休符が入力されたとき、その発音開始タイミングまたは休符開始タイミングを決定する開始タイミング決定手段と、前記開始タイミング決定手段により決定された対象音符の発音開始タイミングと該対象音符の音価に基づいて発音終了タイミングを決定し、対象休符の休符開始タイミングと該対象休符の音価に基づいて休符終了タイミングを決定する終了タイミング決定手段とを備え、前記開始タイミング決定手段は、小節内で、対象音符または対象休符に先行する音符または休符を探索し、該音符または休符が探索されなかった場合、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを０に決定し、該音符または休符が探索された場合は、演奏方向で対象音符または対象休符の入力位置が、該音符または休符の位置と同じとみなせるか否かの判定の指標となる値を所定値として、該音符または休符の位置が所定値以下に近いか否かを判定し、前記所定値以下に近いと判定された場合には、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを、該同じ位置とみなされた音符の発音開始タイミングまたは休符の休符開始タイミングに決定し、前記所定値以下に近いと判定されなかった場合は、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングを、前記探索された音符または休符のうち、演奏方向で対象音符に最も近い音符の発音開始タイミングまたは休符の休符開始タイミングより後で、かつ最も早い発音終了タイミングあるいは休符終了タイミングに決定する点に特徴がある。
【００１４】
本発明は、楽譜編集装置として実現できるだけでなく、楽譜編集用プログラムとしても実現できる。このプログラムをコンピュータにインストールすれば該コンピュータは楽譜編集装置として機能する。
【発明の効果】
【００１５】
本発明によれば、小節内で、入力される対象音符または対象休符に先行する音符の発音開始タイミングおよび発音終了タイミング、または対象音符または対象休符に先行する休符の休符開始タイミングおよび休符終了タイミングとから、対象音符の発音開始タイミングまたは対象休符の休符開始タイミングが決定され、これにより決定された対象音符の発音開始タイミングと該対象音符の音価に基づいて発音終了タイミングが決定され、対象休符の休符開始タイミングと該対象休符の音価に基づいて休符終了タイミングが決定されるので、声部を意識することなく、複雑な声部の楽譜を効率的に入力あるいは編集することができる。これにより入力あるいは編集され楽譜のデータを用いれば正しい演奏を行わせることができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して本発明を説明する。図１は、本発明に係る楽譜編集装置の一実施形態を示すブロック図である。なお、本発明は、楽譜編集装置として機能させる楽譜編集用プログラムとしても実現できる。
【００１７】
本実施形態の楽譜編集装置は、パソコン本体11、キーボードやマウスなどの入力部12、LCDなどの表示部13、および楽音を再生するための音源14を備える。なお、音源14はパソコンに付属あるいは内蔵のものでも構わない。パソコン本体11は、CPU15、ROMやRAMやハードディスクなどの記憶部16を有する周知のものを使用できる。さらに、外部MIDI機器との接続が可能なMIDIインタフェース17を備えていてもよい。
【００１８】
パソコン本体11の記憶部16のROMあるいはハードディスクには、本発明に従う処理を実行する楽譜編集用プログラムを予めインストールしておく。楽譜データは、楽譜編集に先立って予め記憶部16に格納されている。楽譜データの記憶部16への格納は、MIDIインタフェース17を介して外部MIDI機器から行うこともできる。
【００１９】
図２は、楽譜データを概念的に示す図である。同図に示すように、楽譜データは、複数のパートデータを配列で持ち、パートデータは、複数の小節データを配列で持ち、小節データは、複数の五線データを配列で持ち、五線データは、複数の記号データを配列で持っている。音符の場合、記号データは、音符の位置、サイズ、符尾の向き、色、音価、付点の有無、連符の有無、発音開始タイミング、発音終了タイミングなどを含んでいる。
【００２０】
記憶部16に格納された楽譜データに従って表示部13に楽譜が表示される。ユーザは、入力部12を操作することにより表示部13に表示された楽譜を編集でき、また、五線上に新たな音符や休符などを入力して楽譜を生成することができる。これにより編集あるいは新たに生成された楽譜のデータは、記憶部16に格納される。編集後の楽譜データは、元の楽譜データと別のファイルとして格納してもよいし、元の楽譜データを上書きするようにして格納してもよい。
【００２１】
次に、本発明における楽譜編集の動作を説明する、この動作は、入力部12での所定操作に基づいて記憶部16のROMあるいはハードディスクに格納されている楽譜編集用プログラムがRAMに読み出されることによって実行される。
【００２２】
最初に、表示部13にメニュー画面が表示される。ユーザは、メニュー画面で新規の楽譜作成あるいは既に記憶部16に格納されている楽譜の編集を選択できる。
【００２３】
メニュー画面において新規の楽譜作成が選択されると、表示部13に五線のみが表示される。ユーザは、表示部13の画面上で音符(対象音符)や休符(対象休符)などの楽譜記号を選択して五線の所定位置に入力することができる。
【００２４】
また、メニュー画面において楽譜の編集が選択されると、記憶部16に格納されている楽譜の選択画面に移り、ここでユーザが入力部12の操作で、編集しようとする楽譜を選択すると、該楽譜の、表示部13の画面内に表示可能な段落内の小節についての楽譜データが記憶部16から読み出される。
【００２５】
CPU15は、読み出された楽譜データを元に楽譜表示情報を生成する。表示部13は、CPU15で生成された楽譜表示情報に従って楽譜を表示する。ユーザは、表示部13の画面上で音符や休符などの楽譜記号を選択し、書き換え、追加あるいは削除したりして楽譜を編集することができる。
【００２６】
図３は、本発明における楽譜編集の動作を示すフローチャートである。なお、音符と休符とは、開始タイミングおよび終了タイミングについては同様に考えることができるので、以下では、音符が入力された場合をあげて説明する。
【００２７】
五線上に音符(対象音符)が入力される(S31)と、まず、小節内で、対象音符に先行する音符または休符があるか否かを探索する(S32)。
【００２８】
この探索(S32)により、対象音符に先行する音符または休符が探索されなかった場合(S33でN)、対象音符の発音開始タイミングを０に決定し(S34)、該対象音符についての処理を終了する。
【００２９】
また、探索(S32)により、対象音符に先行する音符または休符が探索された場合(S33でY)、さらに、演奏方向で所定値以下に近い音符または休符があるか否かを判定する(S35)。ここで、所定値は、演奏方向での対象音符の入力位置が、近くの音符または休符と同じ位置と見なせるか否かの判定の指標となる値である。
【００３０】
この判定(S35)により、所定値以下に近い音符または休符があると判定された場合(S35でY)、この音符または休符の開始タイミングを対象音符の発音開始タイミングに決定し(S36)、該対象音符についての処理を終了する。
【００３１】
また、判定(S35)により、所定値以下に近い音符と休符がないと判定された場合(S35でN)には、演奏方向で対象音符に最も近い音符または休符の開始タイミングをT1とし(S37)、対象音符に先行する音符または休符の終了タイミングのうち、T1以降で、最も早い終了タイミングを対象音符の開始タイミングに決定し(S38)、該対象音符についての処理を終了する。
【００３２】
以下、具体例をあげて説明する。図４に示す音符A,B,C,Dが画面上で順次入力された場合に、この入力に従って楽譜データが作成される過程を説明する。ここでは、4分音符の音価を480とする。また、音符や休符が入力される位置を(X,Y)で表す。Xは、小節内で、音符あるいは休符が入力される最も左の位置を0とし、右方向に行くに従って増大する五線方向(横方向)の位置であり、Yは、第1線の位置を0とし、第1間(下第1間),第2線(下第2線),第2間(下第2間),・・・の位置を1(-1),2(-2),3(-3),・・・とした縦方向の位置である。
【００３３】
表示部13の画面上で、まず、五線上の小節内に、音価120の16分音符Aが入力される。16分音符Aが入力される位置は(0,7)である。この場合、先行する音符または休符があるかを探索(S32)しても、探索されない(S33でN)ので、16分音符Aの発音開始タイミングは0に決定される(S34)。16分音符Aの発音終了タイミングは、その音価120に基づいて120に決定される。
【００３４】
次に、音価480の4分音符Bが入力される。4分音符Bが入力される位置は(0,-2)であり、横方向は先の16分音符Aの位置と同じであるが、縦方向は16分音符Aの位置と異なる。この場合、先行する音符として16分音符Aが探索される(S33でY)。しかも、16分音符Aの位置は演奏方向(横方向)で所定値以下に近い(S35でY)ので、4分音符Bの発音開始タイミングは、16分音符Aの発音開始タイミングと同じ0に決定される(S36)。4分音符Bの発音終了タイミングは、その音価480に基づいて480に決定される。
【００３５】
次に、音価120の16分音符Cが入力される。16分音符Cが入力される位置は(0,-2)であり、先の16分音符Aや4分音符Bの位置と同じである。この場合、先行する音符として16分音符Aや4分音符Bが探索される(S33でY)。しかも、16分音符Cの位置は演奏方向(横方向)で所定値以下に近い(S35でY)ので、16分音符Cの発音開始タイミングは、16分音符Aや4分音符Bの発音開始タイミングと同じ0に決定される(S36)。16分音符Cの発音終了タイミングは、その音価120に基づいて120に決定される。
【００３６】
次に、音価120の16分音符Dが入力される。16分音符Dが入力される位置は(5,9)であり、16分音符Aや4分音符Bや16分音符Cの位置から右方向に離間している。この場合、先行する音符として16分音符Aや4分音符Bや16分音符Cが探索される(S33でY)。しかも、16分音符Dの位置は演奏方向(横方向)で所定値を超えて離間している(S35でN)ので、16分音符Cの発音開始タイミングは、図３のS37,S38で決定される。すなわち、まず、S37で、T1として、演奏方向で最も近い16分音符A、4分音符Bおよび16分音符Cの発音開始タイミングOが入力され、次に、S38で、先行する16分音符Aと4分音符Bと16分音符Cの発音終了タイミングのうち、T1(=0)以降で最も早い終了タイミングである16分音符Aと16分音符Cの終了タイミング120が16分音符Dの発音開始タイミングとして決定される。16分音符Dの発音終了タイミングは、その音価120に基づいて240(=120+120)に決定される。
【００３７】
このように、小節内に音符A,B,C,Dが順次入力されると、先行する音符の発音開始タイミングおよび発音終了タイミングから音符A,B,C,Dの発音開始タイミングが決定され、これにより決定された音符の発音開始タイミングと音符の音価に基づいて発音終了タイミングが決定される。
【００３８】
以上では、小節内に音符A,B,C,Dが順次入力される場合について説明したが、本発明は、既に入力されている楽譜データの編集にも適用できる。上記のように演奏順に音符や休符が入力される場合、入力される音符や休符の開始タイミングと終了タイミングだけを計算すればよいが、楽譜データの編集のように、入力される音符や休符より後の音符や休符が既に存在する場合には、音符や休符の入力に伴って、小節内で、それより後の音符や休符の開始タイミングおよび終了タイミングを演奏順に計算し直す。入力時においても変更が加えられるごとに、編集時と同様に、それより後の音符や休符の開始タイミングおよび終了タイミングを演奏順に計算し直すようにする。
【００３９】
以上、実施形態を説明したが、本発明は、上記実施形態に限定されるものではなく、種々の変形が可能である。例えば、図３のフローチャートに代えて図５のフローチャートに従って動作するように構成することもできる。図５のフローチャートは、図３のフローチャートにおける判定の順序を変えただけで、機能上は同じである。すなわち、まず、対象音符あるいは休符に対し演奏方向で所定値以下に近い先行する音符あるいは休符を探索し(S52)、探索されたかを判定している(S53)。
【００４０】
この探索(S52)により、所定値以下に近い音符または休符が探索されれば(S53でY)、探索された音符または休符の開始タイミングを対象音符または休符の開始タイミングに決定し(S54)、該対象音符または対象休符についての処理を終了する。
【００４１】
また、探索(S52)により、所定値以下に近い音符と休符が探索されなかった場合(S53でN)、さらに、演奏方向で所定値を超えて離間する音符または休符が探索されたか否かを判定する(S55)。
【００４２】
この判定(S55)により、演奏方向で所定値を超えて離間する音符と休符が探索されなかったと判定された場合(S55でN)、対象音符の発音開始タイミングまたは休符の休符開始タイミングを０に決定し(S56)、該対象音符または対象休符についての処理を終了する。
【００４３】
また、判定(S55)により、演奏方向で所定値を超えて離間する音符または休符が探索されたと判定された場合(S55でY)、演奏方向で対象音符または対象休符に最も近い音符または休符の開始タイミングをT1とし(S57)、対象音符または対象休符に先行する音符または休符の終了タイミングのうち、T1以降で、最も早い終了タイミングを対象音符または対象休符の開始タイミングに決定し(S58)、該対象音符または対象休符についての処理を終了する。
【図面の簡単な説明】
【００４４】
【図１】本発明に係る楽譜表示装置の一実施形態を示すブロック図である。
【図２】楽譜データを概念的に示す図である。
【図３】本発明における楽譜編集の動作を示すフローチャートである。
【図４】本発明における楽譜編集の具体的動作を示す説明図である。
【図５】本発明における楽譜編集の動作を示す他のフローチャートである。
【符号の説明】
【００４５】
11・・・パソコン本体、12・・・入力部、13・・・表示部、14・・・音源、15・・・CPU、16・・・記憶部、17・・・MIDIインタフェース
【図１】
0005092148.tif 000002
【図２】
0005092148.tif 000003
【図３】
0005092148.tif 000004
【図４】
0005092148.tif 000005
【図５】
0005092148.tif 000006