(57)【特許請求の範囲】
【請求項１】
演奏された楽音波形に対して所定の時間間隔で短時間スペクトル解析を行うことによりフレーム毎に得られる、スペクトルのピーク点データを入力するステップと、
隣接または近接する、前フレームおよび後フレーム間における複数のピーク点について、前記前フレームにおける各ピーク点と前記後フレームにおける各ピーク点とが周波数、位相、振幅のうちの少なくともいずれか一つの値に関し所定の範囲内にあるか否かを順次判定することにより、前記複数のピーク点の連続、不連続を順次判定するステップ、
前記後フレームにおける前記複数のピーク点の中で、前記前フレームにおける前記複数のピーク点から連続しないと判定されたものの割合が、第１の閾値を超えたときに、前記前フレームと前記後フレームとの間にノートオンタイミングがあると判定するステップ、
を有することを特徴とする演奏タイミング抽出方法。
【請求項２】
前記前フレームにおける前記複数のピーク点の中で、前記後フレームにおける前記ピーク点へ連続しないと判定されたものの割合が、第２の閾値を超えたときに、前記前フレームと前記後フレームとの間にノートオフタイミングがあると判定するステップ、
を有することを特徴とする請求項１に記載の演奏タイミング抽出方法。
【請求項３】
演奏の基準となる楽曲データを入力し、前記楽曲データから基準となるノートオンタイミングとノートオン音高、および、基準となるノートオフタイミングとノートオフ音高、を出力するステップと、
前記基準となるノートオンタイミングおよび判定された前記ノートオンタイミングの対応関係と、前記基準となるノートオフタイミングおよび判定された前記ノートオフタイミングの対応関係とを検出するステップと、
前記判定されたノートオンタイミングに、該判定されたノートオンタイミングとの対応関係が検出された前記基準となるノートオンタイミングのノートオン音高を割り当てるとともに、前記判定されたノートオフタイミングに、該判定されたノートオフタイミングとの対応関係が検出された前記基準となるノートオフタイミングのノートオフ音高を割り当てるステップ、
を有することを特徴とする請求項２に記載の演奏タイミング抽出方法。
【請求項４】
ノートオンタイミングが判定されたとき、前記後フレームにおける前記複数のピーク点であって、前記前フレームにおける前記複数のピーク点から連続しないと判定されたものの中で、優位となる１または複数のピーク点の周波数データに基づいて、判定された前記ノートオンタイミングの音高を判定するステップと、
ノートオフタイミングが判定されたとき、前記前フレームにおける前記複数のピーク点であって、前記後フレームにおける前記ピーク点へ連続しないと判定されたものの中で、優位となる１または複数のピーク点の周波数データに基づいて、判定された前記ノートオフタイミングの音高を判定するステップ、
を有することを特徴とする請求項２に記載の演奏タイミング抽出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、演奏された楽音波形に基づいて、演奏された音符の開始（ノートオン）タイミングと終了（ノートオフ）タイミングを抽出する演奏タイミング抽出方法に関するものであり、楽音波形から自動的に採譜する際に使用できるものである。
【０００２】
【従来の技術】
従来、演奏された楽音波形から採譜するには、採譜者が楽音を聞き取って行うため、採譜者に高度の熟練性と鋭敏な音感が要求される。
そこで、楽音波形を分析することによって採譜することが種々試みられている。
この楽音波形の分析としては、例えば、楽音波形に含まれる基音周波数、倍音周波数に対応する線スペクトル成分を抽出するものが知られている。通常、分析窓（ウインドウ）を用いたフーリエ変換（短時間フーリエ変換、STFFT:Short-Time Fast Fourier Transform）による短時間スペクトル解析を行う。この短時間スペクトル解析自体は、特開２０００−１０５６７号公報等で知られている。
【０００３】
楽音波形をサンプリングし、１フレームサイズの複数サンプルポイントに対して窓関数を掛け算し、その出力レベルから周波数成分を分析する。この１回の処理を１フレームの処理として、上述した分析窓を１ホップサイズだけ移動させて、順次、次のフレームに対して同様の処理を行う。通常、ホップサイズは、ウインドウサイズよりも小さくするので、フレーム期間および分析窓は複数サンプルポイントにわたってオーバラップすることになる。
次に、各フレームにおける分析結果から、ピーク点を順次検出する。ここで、各ピーク点は、周波数成分を表す周波数データ、その周波数成分の位相を表す位相データ、および周波数成分の振幅を表す振幅データを有している。
【０００４】
図５は、ピアノソロ演奏の楽音波形に対して短時間スペクトル解析を行った結果を説明する図面である。
図中、図５（ａ）は演奏の基準となる楽譜である。
図５（ｂ）はこの楽譜に基づいてピアノをソロ演奏した結果得られた楽音波形を示す波形図である。横軸が時間、縦軸が楽音波形の振幅を示す。
図５（ｃ）は、図５（ｂ）の楽音波形に対して短時間スペクトル解析を行って得たピーク点の分析図である。横軸が時間、縦軸が周波数を示す。ピーク点は、その振幅レベルに応じた濃淡を擬似階調で示す。振幅レベルが大きい程、濃く表示されている。但し、元の分析図はカラー階調表示であったが、これを濃淡階調に変換し、さらに、これを擬似階調表示にして図面を作成したために、分析結果を忠実に表示するものではない。
【０００５】
一般に複数の線スペクトルが存在することから、各フレームにおいて、ピーク点が複数個検出される。これらのピーク点は、元のサンプリング波形の基音周波数成分、倍音周波数成分、ノイズ成分、窓関数のサイドローブ成分等に対応して検出されるようになる。このため、ピーク点は、フレーム毎に離散した点状であるが、フレーム間で短い連続性を有するもの、フレーム間で長い連続性を有するものなど、種々のピーク点の態様がある。
図５（ｃ）に示す分析データに基づいて、何らかの方法で基音成分のピーク点のつながりを追跡すれば、押鍵された鍵と、その押鍵タイミング（ノートオンタイミング）および離鍵タイミング（ノートオフタイミング）とを抽出することが可能である。
しかし、複数の鍵が同時に押鍵されたり、ある鍵の押鍵と別の鍵の離鍵とが同時に行われた場合などでは、それぞれの押鍵による楽音波形のピーク点同士が混在して、ノートオンタイミングやノートオフタイミングを抽出することが困難になる。しがって、楽音波形から自動的に採譜をすることも困難となる。
【０００６】
【発明が解決しようとする課題】
本発明は、上述した問題点を解決するためになされたもので、演奏された楽音波形からノートオンタイミングあるいはノートオフタイミングを抽出する演奏タイミング抽出方法を提供することを目的とするものである。
【０００７】
【課題を解決するための手段】
本発明は、請求項１に記載の発明においては、演奏タイミング抽出方法において、演奏された楽音波形に対して所定の時間間隔で短時間スペクトル解析を行うことによりフレーム毎に得られる、スペクトルのピーク点データを入力するステップと、隣接または近接する、前フレームおよび後フレーム間における複数のピーク点について、前記前フレームにおける各ピーク点と前記後フレームにおける各ピーク点とが周波数、位相、振幅のうちの少なくともいずれか一つの値に関し所定の範囲内にあるか否かを順次判定することにより、前記複数のピーク点の連続、不連続を順次判定するステップ、前記後フレームにおける前記複数のピーク点の中で、前記前フレームにおける前記複数のピーク点から連続しないと判定されたものの割合が、第１の閾値を超えたときに、前記前フレームと前記後フレームとの間にノートオンタイミングがあると判定するステップを有するものである。
したがって、演奏された楽音波形の短時間スペクトル解析に基づいて、ノートオンタイミングを抽出できる。
【０００８】
請求項２に記載の発明においては、請求項１に記載の演奏タイミング抽出方法において、前記前フレームにおける前記複数のピーク点の中で、前記後フレームにおける前記ピーク点へ連続しないと判定されたものの割合が、第２の閾値を超えたときに、前記前フレームと前記後フレームとの間にノートオフタイミングがあると判定するステップを有するものである。
したがって、演奏された楽音波形の短時間スペクトル解析に基づいて、ノートオフタイミングを抽出できる。
【０００９】
請求項３に記載の発明においては、請求項２に記載の演奏タイミング抽出方法において、演奏の基準となる楽曲データを入力し、前記楽曲データから基準となるノートオンタイミングとノートオン音高、および、基準となるノートオフタイミングとノートオフ音高、を出力するステップと、前記基準となるノートオンタイミングおよび判定された前記ノートオンタイミングの対応関係と、前記基準となるノートオフタイミングおよび判定された前記ノートオフタイミングの対応関係とを検出するステップと、前記判定されたノートオンタイミングに、該判定されたノートオンタイミングとの対応関係が検出された前記基準となるノートオンタイミングのノートオン音高を割り当てるとともに、前記判定されたノートオフタイミングに、該判定されたノートオフタイミングとの対応関係が検出された前記基準となるノートオフタイミングのノートオフ音高を割り当てるステップを有するものである。
したがって、演奏された楽音波形と演奏の基準となる楽曲データとの対応関係に基づいて、ノートオンタイミングの音高、ノートオフタイミングの音高を判定することができる。
【００１０】
請求項４に記載の発明においては、請求項２に記載の演奏タイミング抽出方法において、ノートオンタイミングが判定されたとき、前記後フレームにおける前記複数のピーク点であって、前記前フレームにおける前記複数のピーク点から連続しないと判定されたものの中で、優位となる１または複数のピーク点の周波数データに基づいて、判定された前記ノートオンタイミングの音高を判定するステップと、ノートオフタイミングが判定されたとき、前記前フレームにおける前記複数のピーク点であって、前記後フレームにおける前記ピーク点へ連続しないと判定されたものの中で、優位となる１または複数のピーク点の周波数データに基づいて、判定された前記ノートオフタイミングの音高を判定するステップを有するものである。
したがって、演奏された楽音波形の短時間スペクトル解析に基づいて、ノートオンタイミングの音高、ノートオフタイミングの音高を判定することができる。
【００１１】
【発明の実施の形態】
図１は、本発明の実施の一形態が適用される装置のブロック図である。
図中、１は乗算器、２はSTFFT（短時間フーリエ変換、Short-Time Fast Fourier Transform）部、３はピーク点検出部、４は１フレーム遅延部、５は演奏タイミング抽出部である。
所定の楽曲の演奏により得られた楽音波形はデジタル化されて、乗算器１に入力される。
乗算器１は、デジタル化された楽音波形に窓関数を乗算し、STFFT部２に出力する。STFFT部２は、所定のフレーム（分析フレーム）毎にスペクトル解析を順次行う。１つのフレームと次のフレームとは、ホップサイズ分だけ時間がずれている。
ホップサイズは、サンプルポイント数で表現される。これを時間に換算したものをフレームタイムと定義すると、（フレームタイム）＝（ホップサイズ）／（サンプリング周波数）である。STFFT部２は、フレームタイム毎に、分析結果を出力することになる。
【００１２】
ピーク点検出部３は、各フレームの分析結果毎に、スペクトルのピーク点を求め、このピーク点の周波数データ、位相データ、および、振幅データを出力する。
なお、ピーク点検出部３では、ピーク点の振幅が所定の閾値以下のものを切り捨てるようにしてもよい。また、あらかじめ複数のフレームにわたってピーク点の軌跡を追跡することにより、所定の時間以上継続するピーク点のみを出力するなど、その他のクリーニング処理をしてもよい。
１フレームタイム遅延部４は、ピーク点検出部３の出力を１フレームタイムだけ遅らせて出力する。すなわち、１つ前のフレームにおけるピーク点のデータを出力する。
【００１３】
演奏タイミング抽出部５は、ピーク点検出部３と１フレームタイム遅延部４の出力とを入力し、隣接フレーム間のピーク点のデータを比較して、ピーク点の連続および非連続を順次判定することにより、ノートオンタイミングおよびノートオフタイミングを出力する。同時に、楽譜に基づいており、基準となる楽曲データを用いて、ノートオンタイミング、ノートオフタイミングの音高（キーコード）を出力する。
上述した説明では、隣接するフレームでピーク点の連続および非連続を判定している。フレームタイムは、ノートオンタイミング，ノートオフタイミングの抽出の時間分解能に関わるので、演奏された楽音波形に応じて決定する。
また、隣接するフレーム間でピーク点を比較するのではなく、複数フレームタイムだけ離れた近傍のフレーム間で、ピーク点を比較してもよい。この場合、フレーム遅延部４での遅延量を変更する。
【００１４】
図２は、図１に示した演奏タイミング抽出部５が実行する演奏タイミング抽出処理の説明図である。ここで、ある現フレーム（ｘ）で分析されたピーク点の組と、隣接する１つ前のフレーム（ｘ−１）で分析されたピーク点の組とを比較する場合を説明する。この図では、各フレームで検出されたピーク点の組を縦の１本の直線上に表現している。隣接するフレームで分析されたピーク点のデータは、ホップサイズに相当するフレームタイムの間隔で出力される。
現フレーム（ｘ）でのピーク点の組をPKi（i＝１，２，…npeaks）とする。図示の例では、npeaks＝７である。
一方、１つ手前のフレーム（ｘ−１）でのピーク点の組をQKj（ｊ＝１，２，…mpeaks）とする。図示の例では、mpeaks＝６である。
【００１５】
本発明は、１つ手前のフレーム（ｘ−１）から現フレーム（ｘ）までの間にノートオンもしくはノートオフがあれば、１つ手前のフレーム（ｘ−１）で検出される複数のピーク点と、現フレーム（ｘ）で検出される複数のピーク点とでは、フレーム間の不連続性が大きくなることに着目し、ピーク点の不連続を数値で評価することにより、ノートオンおよびノートオフのタイミングを抽出するというものである。
さらに、楽譜、または、この楽譜に対応した基準となる楽曲データとの相互の対応関係の検出などによって、ノートオンタイミング同士、ノートオフタイミング同士の対応付けを行い、演奏された楽音波形から抽出されたノートオンタイミングおよびノートオフタイミングの音高（キーコード）を判定する。
【００１６】
図３は、図１に示した演奏タイミング抽出部５の内部構成を示すブロック図である。
図中、１１はピーク点の連続＆非連続判定部、１２はノートオンタイミング判定部、１３はノートオフタイミング判定部である。１４はキーコード判定部であって、ノートオンキーコード判定部１５およびノートオフキーコード判定部１６を有する。
ピーク点の連続性＆非連続性判定部１１は、図１に示したピーク点検出部３から現フレーム（ｘ）におけるピーク点の組PKiを、また、１フレームタイム遅延部４から１つ手前のフレーム（ｘ−１）におけるピークの組QKjを入力し、各々のピーク点同士を比較する。比較は、周波数、位相、振幅に関し、次の３ステップで行うのが望ましいが、ステップを一部省略して処理を簡単にしてもよい。
【００１７】
まず、あるピーク点PKiがあるピーク点QKjと、周波数的に近い所定の範囲内にあるか否かを判定し、ピーク点QKjとピーク点PKiの周波数的な連続性を調べる。
図２の例では、QK1→対応ピークなし，対応ピークなし→PK1，QK2→PK2，QK3→PK3，QK4→PK4，対応ピークなし→PK5，QK5→対応ピークなし，対応ピークなし→PK6，QK6→PK7という対応関係がわかる。
【００１８】
次に、ピーク点は位相データを有するので、第２ステップとして、周波数的に連続するピーク点PKiとピーク点QKjとが、位相的にも連続する範囲内に収まっているか判定する。まず、現フレーム（ｘ）での位相データを予測する。具体的には、QKjの位相値QKj.phaseと周波数値QKj.freqとから、現フレーム（ｘ）での位相値を直線近似で予測する。その予測値PKi'.phaseは、次式となる。
PKi'.phase＝QKj.phase＋QKj.freq＊２π＊frametime
この予測値PKi'.phaseと、現フレーム（ｘ）での実際の位相値とを比較して、ある範囲内に収まっていれば、位相的に連続してつながっているものとする。
【００１９】
さらに、ピアノ音など、一般的な楽器音に限定するならば、ノートオンやノートオフがなければ、ピーク点の振幅が急に増減することはない。
したがって、第３ステップとして、周波数的、および位相的に連続してつながっているとしたピーク点QKjとピーク点PKiとの振幅を比較し、振幅差がある範囲内に収まっていれば、最終的に、連続してつながっているものとする。
【００２０】
このようにして、ピーク点PKiの全数npeaksのうち、つながれずに非連続とされたピーク点の数をnnとする。一方、ピーク点QKjの全数mpeaksのうち、連続してつながったものを取り除き、つながれずに非連続とされたピーク点の数をmmとする。
ピーク点の連続＆非連続判定部１１は、上述したnpeaksの値およびnnの値をノートオンタイミング判定部１２に出力する。また、上述したmpeaksの値およびmmの値をノートオフタイミング判定部１３に出力する。
【００２１】
なお、図１のピーク点検出部３において、ピーク点の振幅が所定の閾値以下のものを切り捨てたり、あらかじめ複数のフレームにわたってピーク点の軌跡を追跡することにより、所定の時間以上継続するピーク点を選択したり、その他のクリーニング処理をしてもよいことを説明した。
このような切り捨てや選択などを、ピーク点の連続＆非連続判定部１１において実行し、その上で、上述したピーク点の連続＆非連続の判定を行ってもよい。
【００２２】
次に、ノートオンタイミング判定部１２は、比（nn／npeaks）を計算する。すなわち、（現フレームで、１つ前のフレームにつながらなかったピーク点の数）を（現フレームのピーク点の全数）で割る。図２に示した例で、周波数的につながっているものが、位相的にも振幅的にもつながっていたと仮定した場合は、４／７＝０．５７となる。
この比（nn／npeaks）を指標とし、ある第１の閾値を超えれば、隣接するフレーム間でノートオンがあったと判定して、ノートオンタイミングデータを出力する。
なお、フレームタイムは楽音波形に比べて無視できる時間幅であるので、ノートオンタイミングは、現在のフレームにあるとして処理して構わない。
【００２３】
一方、ノートオフタイミング判定部１３は、比（mm／mpeaks）を計算する。すなわち、（１つ前のフレームで、現フレームにつながらなかったピーク点の数）を（１つ前のフレームのピーク点の全数）で割る。図２に示した例で、周波数的につながっているものが、位相的にも振幅的にもつながっていたと仮定した場合には、４／６＝０．６７となる。
この比（mm／mpeaks）を指標とし、ある第２の閾値を超えれば、隣接するフレーム間でノートオフがあったと判定して、ノートオフタイミングデータを出力する。
なお、フレームタイムは楽音波形に比べて無視できる時間幅であるので、このノートオフタイミングも、現在のフレームであるとして処理して構わない。
【００２４】
ノートオンキーコード判定部１５は、ノートオンタイミング判定部１２から出力される判定されたノートオンタイミングデータと、基準となる楽曲データに含まれる音符の基準となるノートオンタイミングとの対応関係を、両者の時間的な相関検出を行うことにより検出する。
次に、判定されたノートオンタイミングに、これとの対応関係が検出された、基準となるノートオンタイミングの音高（キーコード）を割り当てることにより、ノートオンされた押鍵の最も確からしい音高を判定することができる。
【００２５】
一方、ノートオフキーコード判定部１６は、ノートオフタイミング判定部１３から出力される判定されたノートオフタイミングデータと、基準となる楽曲データに含まれる音符の基準となるノートオフタイミングとの対応関係を、両者の時間的な相関検出を行うことにより検出する。
次に、判定されたノートオフタイミングに、これとの対応関係が検出された、基準となるノートオフタイミングの音高（キーコード）を割り当てることにより、ノートオフされた押鍵の最も確からしい音高を判定することができる。
【００２６】
上述した説明で、キーコード判定部１４は、演奏された楽譜に対応し、基準となる楽曲データを用いて、キーコードを判定している。
しかし、基準となる楽曲データを用いないで、キーコードを判定することもできる。
すなわち、ノートオンキーコード判定部１５は、ノートオンタイミング判定部１２からノートオンタイミングデータが出力されたとき、ピーク点の連続＆非連続判定部１１から出力される、現フレームで、１つ前のフレームにつながらなかった１または複数のピーク点の中から、どの音高（キーコード）が、ノートオンになったのかを検出する。
例えば、１または複数のピーク点の中から、優位なピーク点を１または複数個、選択することによって、ノートオンになった音高（キーコード）を判定することができる。優位性は、例えば、ピーク点の振幅の大きさ、およびまたは、ピーク点の周波数の基音周波数からの偏差の小ささで評価すればよい。
【００２７】
一方、ノートオフキーコード判定部１６は、ノートオフタイミング判定部１３からノートオフタイミングデータが出力されたとき、ピーク点の連続＆非連続判定部１１から出力される、１つ前のフレームで、現フレームにつながらなかった１または複数のピーク点の中から、どの音高（キーコード）が、ノートオフになったのかを検出する。
例えば、１または複数のピーク点の中から、優位なピーク点を１または複数個選択することによって、ノートオフになった音高（キーコード）を判定することができる。優位性は、例えば、ピーク点の振幅の大きさ、およびまたは、ピーク点の周波数の基音周波数からの偏差の小ささで評価すればよい。
【００２８】
あるいは、上述した２つの方法を組み合わせて、すなわち、基準としての楽曲データと、ピーク点の連続＆非連続判定部１１から出力されるピーク点のデータとを併用して判定することにより、ノートオフ、ノートオンのより確からしい音高（キーコード）を得るようにしてもよい。
この他、短時間スペクトル解析を行って得たピーク点の分析結果から、より高度な手法を用いて音高の割り当てを行ってもよい。
【００２９】
図４は、本発明の実施の一形態の動作の説明図である。
図４（ａ）は演奏された楽音信号の波形図であって、図５（ｂ）を再掲したものである。
図４（ｂ）は、図４（ａ）の楽音波形から抽出されたノートオンタイミングを模式的に示すタイミング図、図４（ｃ）は図４（ａ）の楽音波形から抽出されたノートオフタイミングを模式的に示すタイミング図である。
図４（ｄ）は図４（ｂ）に示したノートオンタイミング、図４（ｃ）に示したノートオフタイミングを音高別に模式的に示すピアノロール図である。
図４（ｅ）は楽譜であり、図５（ａ）を再掲したものである。
【００３０】
図３のノートオンタイミング判定部１２は、図４（ｂ）に示したノートオンタイミングデータを出力し、図３のノートオフタイミング判定部１３は、図４（ｃ）に示したノートオフタイミングデータを出力する。
一方、図４（ｅ）に示す楽譜に対応する楽曲データからは、図４（ｄ）に示すピアノロール図において、白抜きのバーの開始位置および終了位置で表示されるような、基準となるノートオンタイミングおよび基準となるノートオフタイミングが得られる。
なお、図示の例では、基準となる楽曲データ中の各音符のゲートタイム（符長中で発音期間の占める割合）を１００％とした。しかし、ゲートタイムを９０％にするなど、通常の楽曲データファイルで使用されている値を用いて、基準となるノートオフタイミングを設定した方が、基準として適切であるといえる。
【００３１】
ノートオンキーコード判定部１５は、基準となるノートオンタイミングと、図４（ｂ）に示す判定されたノートオンタイミングとの対応関係を、時間的な相関を計算することによって検出する。
次に図４（ｂ）に示す、判定されたノートオンタイミングの音高として、この判定されたノートオンタイミングとの対応関係が検出された、基準となるノートオンタイミングのノートオン音高を割り当てる。
同時に、ノートオフキーコード判定部１６は、基準となるノートオフタイミングと、図４（ｃ）に示す判定されたノートオフタイミングとの対応関係を、同じく、時間的な相関を計算することによって検出する。
次に図４（ｃ）に示す、判定されたノートオフタイミングの音高として、この判定されたノートオフタイミングとの対応関係が検出された、基準となるノートオフタイミングのノートオン音高を割り当てる。
図４（ｄ）のピアノロール図において黒いバーで表示されているように、上述した割り当ての結果、演奏された楽音波形からキーオンよりキーオフまでの期間が抽出されることになる。
【００３２】
図４（ｄ）に黒いバーで示される、ノートオンタイミング、ノートオフタイミングをコーディングすれば、演奏された楽音波形のコードデータファイルができる。さらに、これをシーケンサソフトウエアプログラムで実現されているような、楽譜自動作成プログラムに入力すれば、演奏された楽音波形の楽譜の表示あるいは印刷ができる。
また、白抜きのバーと黒いバーとの２種類のバーを比較して明らかなように、演奏者の実演奏と基準となる楽曲データとの間の時間的なずれがわかるので、演奏者の楽譜の解釈、音楽表現の個性を分析できる。
【００３３】
図４（ｄ）のピアノロール図において黒いバーで表示されている音符の期間に対応する基音成分や倍音成分を、図５（ｃ）に示した短時間スペクトル解析を行って得たピーク点の分析図から抽出することにより、音高に対応する基準周波数やその倍音周波数からの差を抽出することもできる。
なお、演奏タイミング抽出の誤り、あるいは、演奏者が楽譜通りの音符を弾かなかった場合などでは、基準となるノートオンタイミングと、判定されたノートオンタイミングとの対応関係がなかったり、基準となるノートオフタイミングと、判定されたノートオフタイミングとの対応関係がなかったりする。
【００３４】
上述した説明において、フレームタイム（ホップサイズ）は、楽曲のテンポや構成などに応じて変えてもよい。テンポの速い曲や、短時間に押鍵，離鍵が繰り返されるような楽曲では、小さくする。フレームタイムを楽曲の演奏部分毎に変えて、最適化を図ってもよい。あるいは、フレームタイムは固定し、ピーク点の比較を行うフレーム間隔を、上述した楽曲のテンポや構成などに応じて変えてもよい。
また、演奏タイミング抽出のための、連続非連続の判定基準や第１，第２の閾値など、演奏タイミング抽出のための判定基準や各種閾値は、例えば経験的，実験的に定め、対象楽器，楽曲，演奏者，演奏環境などによって調整する。
【００３５】
上述した説明において、楽音波形は、マイクロフォンで拾ったものがリアルタイムにサンプリングされＡ／Ｄ変換されたものでもよいし、一旦記録装置にアナログ記録された後に読み出され、サンプリングされＡ／Ｄ変換されたものでもよい。また、楽音波形があらかじめサンプリングされＡ／Ｄ変換されて記録装置に一旦デジタル記録された後に、読み出されたものでもよい。
一方、楽曲データは、通常、演奏者が演奏の基準とした楽譜に基づいて作成する。しかし、演奏者が楽譜に基づかないで演奏した場合に、採譜者が演奏を聞いて、おおよその採譜を行ったものに基づいて作成された楽曲データを基準としてもよい。
楽曲データとしては、例えば、基準となる楽譜に基づいてMIDI（Musical Instrument Digital Interface）メッセージのコーディングを行った楽曲データファイルを用いればよい。シーケンサソフトウエアプログラムで使用されるもの、あるいは、音楽データの頒布に用いられているSMF（Standard MIDI File）などの各種のファイル形式を用いることができる。
【００３６】
図１，図３に示した、各ブロックの機能は、汎用MPU（Microprocessing Unit）にプログラムを実行させることによって実現できる。STFFT部２およびピーク点検出部３に関しては、信号処理プロセッサDSP（Digital Signal Processor）にプログラムを実行させることによって実現してもよい。
また、乗算器１、STFFT部２、ピーク点検出部３までは、楽音分析や、楽音合成のために使用される汎用性のある処理であり、また、１フレームタイム遅延部４は単なるバッファであればよい。
したがって、これらの機能は、既存の装置を用いても実行することができるし、楽音分析などのために、既に処理された結果のデータを用いて、演奏タイミングを抽出することもできる。
また、ピーク点検出部３が出力するフレーム毎のピーク点データを、一旦、記憶装置に記憶しておいてから、演奏タイミング抽出部５が、これを読み出して処理を行ってもよい。
【００３７】
鍵盤楽器あるいは一部の管楽器など、音高が離散的に指定して演奏される楽器の場合、発音開始から発音終了までピッチがほぼ所定の値に保たれるので、楽譜に基づいた楽曲データとの対応関係を検出しやすい。したがって、本発明の演奏タイミング抽出方法は、特に、このような楽器の楽音波形に適している。
上述した説明では、ノートオンタイミングとノートオフタイミングの両者を抽出していたが、いずれか一方のみを抽出してもよい。
また、それぞれのタイミングに、音高を割り当てていたが、演奏タイミングの抽出のみを行い、音高の割り当ては、採譜者が行うようにしてもよい。
【００３８】
【発明の効果】
本発明は、上述した説明から明らかなように、演奏された楽音波形からノートオンタイミングおよびノートオフタイミングを抽出することができるという効果がある。
さらに、抽出されたノートオンタイミングの音高、抽出されたノートオフタイミングの音高を判定することができるという効果がある。
これらの、抽出されたノートオンタイミングおよびノートオフタイミングと、それらの音高のデータに基づいて、演奏された楽音波形から楽曲データファイルを作成することができる。この楽曲データファイルを楽譜自動作成プログラムに入力すれば、演奏された楽音波形に基づいた楽譜を作成することができる。
【図面の簡単な説明】
【図１】  本発明の実施の一形態が適用される装置のブロック図である。
【図２】  図１に示した演奏タイミング抽出部５が実行する演奏タイミング抽出処理の説明図である。
【図３】  図１に示した演奏タイミング抽出部５の内部構成を示すブロック図である。
【図４】  本発明の実施の一形態の動作を説明するための模式的説明図である。
【図５】  ピアノソロ演奏の楽音波形に対して短時間スペクトル解析を行った結果を説明する図面である。
【符号の説明】
１…乗算器、２…STFFT部、３…ピーク点検出部、４…１フレームタイム遅延部、５…演奏タイミング抽出部、１１…ピーク点の連続＆非連続判定部、１２…ノートオンタイミング判定部、１３…ノートオフタイミング判定部、１４…キーコード判定部、１５…ノートオンキーコード判定部、１６…ノートオフキーコード判定部
【図１】
0003870727.tif 000002
【図２】
0003870727.tif 000003
【図３】
0003870727.tif 000004
【図４】
0003870727.tif 000005
【図５】
0003870727.tif 000006