(57)【特許請求の範囲】
【請求項１】
ＭＩＤＩデータファイルを解析して同時に発音する同一の音色又は類似の音色が割り当てられた複数のノートイベントを複数のトラックから構成された前記ＭＩＤＩデータファイルから検出する同音検出手段と、
前記同音検出手段により検出された複数のノートイベントの内、再生時に最も目立つ音に対応する第１のノートイベントのデュレーションを短縮して残し、他の第２のノートイベントのノートオンイベントを同一トラックにおいて前記第１のノートイベントのノートオフイベントより後に配置することにより同時発音数を削減する同時発音数削減手段とを、
有するＭＩＤＩデータ処理装置。
【請求項２】
前記同時発音数削減手段は、ノートイベントのベロシティが最も強い音を再生時に最も目立つ音として判断することを特徴とする請求項１記載のＭＩＤＩデータ処理装置。
【請求項３】
前記同時発音数削減手段は、ノートイベントの発生時間が最も長い音を再生時に最も目立つ音として判断することを特徴とする請求項１記載のＭＩＤＩデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＭＩＤＩデータを再生する必要がある、例えば通信カラオケなどのシステムにおいて、音源の同時発音数の制限によりＭＩＤＩデータ制作者の制作意図通りに音楽を再生できないようなデータ損失が発生する場合に好適なＭＩＤＩデータ処理装置に関する。
【０００２】
【従来の技術】
一般に、楽音を発生させるための演奏情報の伝達手段としてはＭＩＤＩ（Musical Instrument Digital Interface）が広く知られている。このＭＩＤＩとは、シンセサイザや電子ピアノなどの電子楽器の音源を発音させるための情報を交換するために定められたハードウエアとソフトウエアの規格である。
【０００３】
ＭＩＤＩ情報は大別して以下のような情報から成る。
（１）打鍵などを表す発音開始（ノートオン）、離鍵などを表す発音停止（ノートオフ）のような音符的な情報。この情報は鍵盤番号により示される音の高さの情報、及び発音の強さを表すアクセント情報なども含む。
（２）演奏者がダンパーペダルやレバーなどを用いて演奏した場合の抑揚表現を音源に伝えるための制御情報。
【０００４】
このＭＩＤＩ情報はデータファイルとして媒体に記録したり、媒体を介して伝送することができる。よく使用されるＭＩＤＩフォーマットとしてはＳＭＦ（Standard MIDI File）が知られているが、ＭＩＤＩ情報は実時間の演奏情報であるので、発音開始（ノートオンイベント）、発音停止（ノートオフイベント）などの各情報要素をこのＳＭＦで記録、伝送する場合には発生時間情報が付加される。
【０００５】
【発明が解決しようとする課題】
ところで、ギターやストリングス系に関するＭＩＤＩ情報の場合、複数のＭＩＤＩチャネルにまたがって同音のノートを多重化しているケースが多く見受けられる。しかしながら、このようなＭＩＤＩ情報をＭＩＤＩ音源により再生する場合にＭＩＤＩ音源の同時発音数の制限を超えることがあり、このときにはＭＩＤＩデータ制作者の意図通りの再生にならないという問題点がある。
【０００６】
本発明は上記従来の問題点に鑑み、ＭＩＤＩ音源がＭＩＤＩデータに記述されている同時発音数より少ない数しか再生することができない場合に、ＭＩＤＩデータ制作者の意図通りに再生することができるＭＩＤＩデータ処理装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明は上記目的を達成するために、同時に発音する同一の音色又は類似の音色が割り当てられた複数のノートイベントの内、再生時に最も目立つ音を残して同時発音数を削減するようにしたものである。
すなわち本発明によれば、ＭＩＤＩデータファイルを解析して同時に発音する同一の音色又は類似の音色が割り当てられた複数のノートイベントを複数のトラックから構成された前記ＭＩＤＩデータファイルから検出する同音検出手段と、
前記同音検出手段により検出された複数のノートイベントの内、再生時に最も目立つ音に対応する第１のノートイベントのデュレーションを短縮して残し、他の第２のノートイベントのノートオンイベントを同一トラックにおいて前記第１のノートイベントのノートオフイベントより後に配置することにより同時発音数を削減する同時発音数削減手段とを、
有するＭＩＤＩデータ処理装置が提供される。
【０００９】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。図１は本発明に係るＭＩＤＩデータ処理装置の一実施形態を示すブロック図、図２は図１のＭＩＤＩデータ処理装置の同時発音数削減処理を説明するためのフローチャート、図３は同時発音数削減前のＭＩＤＩデータの一例を示す説明図、図４は同時発音数削減後のＭＩＤＩデータを示す説明図である。
【００１０】
図１において、同音検出部１はＭＩＤＩデータ内のノートオンイベントをその発生時からノートオフイベント発生時まで記憶するＭＩＤＩイベントバッファを有し、また、ＭＩＤＩデータファイルを解析して同時に発音する同一の音色又は類似の音色が割り当てられた複数のノートイベントを検出する。同時発音数削減部２は同音検出部１により検出された複数のノートイベントの内、再生時に最も目立つ音に対応する第１のノートイベントのデュレーションを短縮して残し、他の第２のノートイベントのノートオンイベントを前記第１のノートイベントのノートオフイベントより同一トラックにおいて後にシフトすることにより同時発音数を削減する。同時発音数削減部２はまた、同音検出部１により検出された複数のノートイベントの内、再生時に最も目立つ音に対応するノートイベントを残し、他のノートイベントを削除することにより同時発音数を削減する。このとき、同時発音数削減部２はノートイベントのベロシティが最も強い音や、ノートイベントの発生時間が最も長い音を再生時に最も目立つ音として判断する。
【００１１】
図２を参照して処理を説明する。まず、ＭＩＤＩデータストリームを開き（ステップＳ１）、次いで複数のＭＩＤＩイベントをその時間情報でソートする（ステップＳ２）。次いで次のＭＩＤＩイベントがノートオンイベントか、ノートオフイベントかを判断し（ステップＳ３）、そのＭＩＤＩイベントがノートオンイベントでもノートオフイベントでもない場合にはこの処理を終了し、ノートオンイベントの場合にはステップＳ４以下に進み、ノートオフイベントの場合にはステップＳ１０に分岐する。
【００１２】
ステップＳ４以下では、まず、そのノートオンイベントをＭＩＤＩイベントバッファに書き込み（ステップＳ４）、次いでそのＭＩＤＩイベントの時間情報を現在時刻バッファ（cur-time）に格納する（ステップＳ５）。次いでバッファ内に同音及び類似音のノートオンイベントが有るか否かを判断し（ステップＳ６）、有る場合にはステップＳ７以下に進み、他方、ない場合にはステップＳ９に進む。
【００１３】
ステップＳ７以下では、複数の音が同時に鳴らないように、例えば両方の音のノートオンイベント及びノートオフイベントの発生タイミングを変更することにより音の長さを短くし（ステップＳ７）、次いでそのＭＩＤＩデータストリーム内の対応するＭＩＤＩイベントの時間情報を変更する（ステップＳ８）。次いで現在時刻バッファ（cur-time）に格納されている時間から最大デルタタイム（２つのノートオンイベントの発音開始時刻の差の最大値）を差し引いた時間以上古い時間情報を持つＭＩＤＩイベントをＭＩＤＩイベントバッファから削除し（ステップＳ９）、次いでステップＳ３に戻る。また、ステップＳ３においてノートオフイベントの場合には、そのノートオフイベントをＭＩＤＩイベントバッファから取り除き（ステップＳ１０）、ステップＳ３に戻る。
【００１４】
図３は変換前のＭＩＤＩデータの一例として、同時に発音する２つのギターフレーズのトラック「１」、「２」のノートデータを示している。図３に示すバーの長さは、１つのノートの発音開始（ノートオン）から発音停止（ノートオフ）までのデュレーションを示し、これはＭＩＤＩデータのノートオンイベントとノートオフイベントにより表現される。なお、図の左側には、ギターフレーズの音階を説明するためにピアノ鍵盤が示されている。
【００１５】
このように同時に発音する２つの楽器や音色としては同一の場合も有り、また、一方がスチールギター、他方がナイロンギターのような類似の楽器の場合もある。一例として図３（ａ）、（ｂ）は、スチールギターとナイロンギターがそれぞれノートＮ１−１、Ｎ２−１を同時に発音することを示している。そして、このようなトラック「１」、「２」のＭＩＤＩデータをＭＩＤＩ音源に印加しても、そのＭＩＤＩ音源が同時発音数の制限により１トラック分の演奏を行う発音能力しか残っていない場合にはＭＩＤＩデータ制作者の意図通りに再生することができない。
【００１６】
図４は図３に示すＭＩＤＩデータを変換した例を示している。同時に発音する変換前ノートＮ１−１、Ｎ２−１は１つのトラック上において連続するように２つのノートＮ１、Ｎ２に変換され、この場合、最初のノートＮ１のデュレーションは、変換前ノートＮ１−１、Ｎ２−１の内、ベロシティが最も強いか、又は発音時間が長い一方のノートオフイベントの時間情報を小さくすることにより短くされている。また、ノートＮ１に続くノートＮ２は、上記の変換前ノートＮ１−１、Ｎ２−１の他方であり、そのノートオンイベントは、前のノートＮ１のノートオフイベントの直後に、すなわち重ならないように移動されている。
【００１７】
このようなデータを１トラックで演奏した場合、目立つ方のノートのアタック感により、聴感上２つのトラックでギターが演奏されているように再生することができる。したがって、変換前ノートＮ１−１、Ｎ２−１の一方を全て削除する場合より、ＭＩＤＩデータ制作者の意図通りに再生することができる。また、コントロールイベントを追加して音源のコーラスのレベルを上げることにより、より聴感上、２つのトラックでギターが演奏されているように再生することができる。
【００１８】
【発明の効果】
以上説明したように本発明によれば、同時に発音する同一の音色又は類似の音色が割り当てられた複数のノートイベントの内、再生時に最も目立つ音を残して同時発音数を削減するようにしたので、ＭＩＤＩ音源がＭＩＤＩデータに記述されている同時発音数より少ない数しか再生することができない場合に、ＭＩＤＩデータ制作者の意図通りに再生することができる。
そして、請求項１のように、第２のノートイベントのノートオンイベントを同一トラックにおいて第１のノートイベントのノートオフイベントより後に配置することにより同時発音数を削減する場合には、最初に強くすぐに減衰するアコースティックギターのような音に対して特に効果がある。
また、請求項２のように、ノートイベントのベロシティが最も強い音を再生時に最も目立つ音として判断する場合には、メロディーなど、前面に出てくる音を削減する可能性が少なくなる。
そして、請求項３のように、ノートイベントの発生時間が最も長い音を再生時に最も目立つ音として判断する場合には、ベース楽器など、途中で途切れると影響の大きい音を削減する可能性が少なくなる。
【図面の簡単な説明】
【図１】本発明に係るＭＩＤＩデータ処理装置の一実施形態を示すブロック図である
【図２】図１のＭＩＤＩデータ処理装置の同時発音数削減処理を説明するためのフローチャートである。
【図３】同時発音数削減前のＭＩＤＩデータの一例を示す説明図である。
【図４】同時発音数削減後のＭＩＤＩデータを示す説明図である。
【符号の説明】
１  同音検出部（同音検出手段）
２  同時発音数削減部（同時発音数削減手段）
【図１】
0003539188.tif 000002
【図２】
0003539188.tif 000003
【図３】
0003539188.tif 000004
【図４】
0003539188.tif 000005