(57)【要約】【課題】楽曲の音楽信号を再生しながら、精度良く音楽のリズムのビートを抽出すると共に、抽出したビートに揺らぎがあっても、再生音楽信号に追従することができる装置を提供する。【解決手段】入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、その変化する部分に時間同期するビート成分検出出力信号を出力するビート抽出手段を備える。ビート成分検出出力信号の自己相関を検出して、入力音楽信号のテンポ値を推定する。推定されたテンポ値により可変周波数発振器の発振中心周波数を決定する。可変周波数発振器の発振出力信号と、ビート成分検出出力信号とを位相比較し、その比較誤差信号により可変周波数発振器の発振出力の位相を制御する。可変周波数発振器の発振出力から入力音楽信号のビートに同期するビート同期信号を生成し、出力する【選択図】図４
2007033851.tif 000002
【特許請求の範囲】
【請求項１】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出手段を備える
ことを特徴とするビート抽出装置。
【請求項２】
請求項１に記載のビート抽出装置において、
前記ビート抽出手段は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出手段と、
前記パワースペクトル算出手段で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出手段と、
を備えることを特徴とするビート抽出装置。
【請求項３】
請求項２に記載のビート抽出装置において、
前記パワースペクトル算出手段および前記変化量算出手段は、前記入力音楽信号の所定時間幅区間毎に、前記パワースペクトルおよびその変化量を算出する
ことを特徴とするビート抽出装置。
【請求項４】
請求項１に記載のビート抽出装置において、
前記ビート抽出手段からの前記検出出力信号のレベルを、しきい値と比較し、前記検出出力信号のレベルが前記しきい値より大きいときに、所定の出力信号を出力する出力手段を備える
ことを特徴とするビート抽出装置。
【請求項５】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出手段と、
前記ビート抽出手段からの前記検出出力信号のレベルを、しきい値と比較し、前記検出出力信号のレベルが前記しきい値より大きいときに、所定の出力信号を出力する出力手段と、
前記出力手段からの出力信号に基づいて、前記入力音楽信号に同期する画像を表示する同期画像表示手段と、
を備えることを特徴とする音楽同期画像表示装置。
【請求項６】
請求項５に記載の音楽同期画像表示装置において、
前記ビート抽出手段は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出手段と、
前記パワースペクトル算出手段で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出手段と、
を備えることを特徴とする音楽同期画像表示装置。
【請求項７】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出手段と、
前記ビート抽出手段からの前記検出出力信号の自己相関を検出して、前記入力音楽信号のテンポ値を推定するテンポ値推定手段と、
前記テンポ値推定手段で推定されたテンポ値を出力する出力手段と、
を備える楽曲のテンポ値検出装置。
【請求項８】
請求項７に記載のテンポ値検出装置において、
前記ビート抽出手段は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出手段と、
前記パワースペクトル算出手段で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出手段と、
を備えることを特徴とするテンポ値検出装置。
【請求項９】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出手段と、
前記ビート抽出手段からの前記検出出力信号の自己相関を検出して、前記入力音楽信号のテンポ値を推定するテンポ値推定手段と、
前記テンポ値推定手段からのテンポ値に基づいて発振中心周波数が決定され、位相制御信号により出力発振信号の位相が制御される可変周波数発振器と、
前記可変周波数発振器からの出力発振信号と、前記ビート抽出手段の検出出力信号とを位相比較し、その比較誤差信号を前記位相制御信号として前記可変周波数発振器に供給する位相比較手段と、
前記可変周波数発振器の前記出力発振信号から前記入力音楽信号のビートに同期するビート同期信号を生成し、出力する出力手段と
を備えることを特徴とするリズムトラッキング装置。
【請求項１０】
請求項９に記載のリズムトラッキング装置において、
前記ビート抽出手段は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出手段と、
前記パワースペクトル算出手段で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出手段と、
を備えることを特徴とするリズムトラッキング装置。
【請求項１１】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出手段と、
前記ビート抽出手段からの前記検出出力信号の自己相関を検出して、前記入力音楽信号のテンポ値を推定するテンポ値推定手段と、
前記テンポ値推定手段からのテンポ値に基づいて発振中心周波数が決定され、位相制御信号により出力発振信号の位相が制御される可変周波数発振器と、
前記可変周波数発振器からの出力発振信号と、前記ビート抽出手段の検出出力信号とを位相比較し、その比較誤差信号を前記位相制御信号として前記可変周波数発振器に供給する位相比較手段と、
前記可変周波数発振器の前記出力発振信号から前記入力音楽信号のビートに同期するビート同期信号を生成出力するビート同期信号生成出力手段と、
音楽コンテンツの識別情報と対応付けられて、少なくとも前記音楽コンテンツの楽曲素材単位の楽曲構成情報の時系列情報を含む属性情報が記憶されている属性情報記憶部と、
前記属性情報記憶部から前記入力音楽信号の属性情報を取得する属性情報取得手段と、
前記ビート同期信号生成出力手段からの前記ビート同期信号に同期して、前記属性情報取得手段で取得した前記入力音楽信号の前記属性情報の時系列情報を参照し、前記楽曲構成情報に基づいて前記入力音楽信号の再生に同期して表示画面に表示する表示情報を生成して、表示手段に出力するようにする表示情報生成手段と、
を備えることを特徴とする音楽同期表示装置。
【請求項１２】
請求項１１に記載の音楽同期表示装置において、
前記ビート抽出手段は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出手段と、
前記パワースペクトル算出手段で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出手段と、
を備えることを特徴とする音楽同期表示装置。
【請求項１３】
請求項１１に記載の音楽同期表示装置において、
前記表示情報生成手段で生成される表示情報は、前記入力音楽信号とされた音楽コンテンツの歌詞である
ことを特徴とする音楽同期表示装置。
【請求項１４】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出工程を備える
ことを特徴とするビート抽出方法。
【請求項１５】
請求項１４に記載のビート抽出方法において、
前記ビート抽出工程は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出工程と、
前記パワースペクトル算出手段で工程された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出工程と、
を備えることを特徴とするビート抽出方法。
【請求項１６】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出工程と、
前記ビート抽出工程で出力された前記検出出力信号のレベルを、しきい値と比較し、前記検出出力信号のレベルが前記しきい値より大きいときに、所定の出力信号を出力する出力工程と、
前記出力工程で得られる前記出力信号に基づいて、前記入力音楽信号に同期する画像を表示する同期画像表示工程と、
を備えることを特徴とする音楽同期画像表示方法。
【請求項１７】
請求項１６に記載の音楽同期画像表示方法において、
前記ビート抽出工程は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出工程と、
前記パワースペクトル算出工程で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出工程と、
を備えることを特徴とする音楽同期画像表示方法。
【請求項１８】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出工程と、
前記ビート抽出工程で出力された前記検出出力信号の自己相関を検出して、前記入力音楽信号のテンポ値を推定するテンポ値推定工程と、
前記テンポ値推定工程で推定されたテンポ値を出力する出力工程と、
を備える楽曲のテンポ値検出方法。
【請求項１９】
請求項１８に記載のテンポ値検出方法において、
前記ビート抽出工程は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出工程と、
前記パワースペクトル算出工程で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出工程と、
を備えることを特徴とするテンポ値検出方法。
【請求項２０】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出工程と、
前記ビート抽出工程で出力された前記検出出力信号の自己相関を検出して、前記入力音楽信号のテンポ値を推定するテンポ値推定工程と、
前記テンポ値推定工程で推定されたテンポ値に基づいて可変周波数発振器の発振中心周波数を制御し、前記可変周波数発振器からの出力発振信号と、前記ビート抽出工程で出力された前記検出出力信号とを位相比較し、その比較誤差信号を前記可変周波数発振器に供給して位相制御するビート追従工程と、
前記可変周波数発振器の前記出力発振信号から前記入力音楽信号のビートに同期するビート同期信号を生成し、出力する出力工程と
を備えることを特徴とするリズムトラッキング方法。
【請求項２１】
請求項２０に記載のリズムトラッキング方法において、
前記ビート抽出工程は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出工程と、
前記パワースペクトル算出工程で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出工程と、
を備えることを特徴とするリズムトラッキング方法。
【請求項２２】
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を、前記入力音楽信号にリアルタイムに同期して出力するビート抽出工程と、
前記ビート抽出工程で出力された前記検出出力信号の自己相関を検出して、前記入力音楽信号のテンポ値を推定するテンポ値推定工程と、
前記テンポ値推定工程で推定されたテンポ値に基づいて可変周波数発振器の発振中心周波数を制御し、前記可変周波数発振器からの出力発振信号と、前記ビート抽出工程で出力された前記検出出力信号とを位相比較し、その比較誤差信号を前記可変周波数発振器に供給して位相制御するビート追従工程と、
前記可変周波数発振器の前記出力発振信号から前記入力音楽信号のビートに同期するビート同期信号を生成出力するビート同期信号生成出力工程と、
音楽コンテンツの識別情報と対応付けられて、少なくとも前記音楽コンテンツの楽曲素材単位の楽曲構成情報の時系列情報を含む属性情報が記憶されている属性情報記憶部から前記入力音楽信号の属性情報を取得する属性情報取得工程と、
前記ビート同期信号生成出力工程で出力された前記ビート同期信号に同期して、前記属性情報取得手段で取得した前記入力音楽信号の前記属性情報の時系列情報を参照し、前記楽曲構成情報に基づいて前記入力音楽信号に同期して表示画面に表示する表示情報を生成して、表示手段に出力するようにする表示情報生成工程と、
を備えることを特徴とする音楽同期表示方法。
【請求項２３】
請求項２２に記載の音楽同期表示方法において、
前記ビート抽出工程は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出工程と、
前記パワースペクトル算出工程で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を出力する変化量算出工程と、
を備えることを特徴とする音楽同期表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力音楽信号の再生中に、再生されている当該音楽のリズムのビートを抽出する装置および方法に関する。また、抽出したビートに同期する信号を用いて音楽に同期する画像表示を行なうようにする装置および方法に関する。また、抽出したビートに同期する信号を用いて音楽のテンポ値を検出する装置および方法に関する。また、抽出したビートに同期する信号を用いて、再生中の楽曲の途中で、テンポの変更やリズムの揺れがあったとしても、そのテンポの変更やリズムの揺れに追従することができるリズムトラッキング装置および方法に関する。さらには、再生中の楽曲に同期して、例えば歌詞を表示したりすることができるようにする音楽同期表示装置および方法に関する。
【背景技術】
【０００２】
演奏家による演奏や歌手の歌声により提供される楽曲は、小節や拍といった時間尺度が基本となって構成されている。音楽演奏家達は、小節や拍を基本的な時間尺度としている。楽器や歌を演奏するタイミングを採るに当たり、何小節の何拍目からこの音を鳴らすという考え方に則り演奏しているのであり、決して、演奏開始から何分何秒後にこの音を鳴らすというタイムスタンプという考え方で演奏しているのではない。小節や拍で規定されているが故に、テンポやリズムのゆれがあっても柔軟に対応でき、逆に同じ楽譜の演奏でも、演奏家ごとの個性が表現できる。
【０００３】
これらの演奏家達の演奏は、最終的に音楽コンテンツという形でユーザの元に届けられる。具体的には、各演奏家達の演奏が、例えばステレオの２チャンネルという形でミックスダウンされ、いわゆる一つの完パケとなる。この完パケは、フォーマット的にＰＣＭ等の単なる音声波形の形でＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）等のようにパッケージ化され、ユーザの手に届く。これは、いわゆるサンプリング音源と呼ばれるものである。
【０００４】
このＣＤなどのパッケージの段階では、演奏家達が意識していた小節や拍といったタイミング情報は欠落している。
【０００５】
しかしながら、人間は、このＰＣＭの音声波形をＤＡ変換したアナログ音を聞くだけで、自然に小節や拍といったタイミング情報を再認識する能力を持っている。音楽のリズムという感覚を自然と取り戻すことができるのである。残念ながら機械にはそれができない。機械に分かるのは、音楽そのものとは直接関連の無いタイムスタンプという時刻情報のみである。
【０００６】
上述した演奏家による演奏や歌手の歌声により提供される楽曲の比較対象として、従来のカラオケのようなシステムがある。このシステムは、音楽のリズムに合わせて歌詞を表示したりすることができる。しかし、このようなカラオケシステムは、音楽のリズムを認識しているのではなく、ＭＩＤＩ（Ｍｕｓｉｃ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）と呼ばれる専用データを、単に再生しているに過ぎない。
【０００７】
ＭＩＤＩフォーマットには、シンクロ制御に必要な演奏情報や歌詞情報、そして、それらの発音タイミング（イベント時刻）を記述したタイムコード情報（タイムスタンプ）が記述されている。このＭＩＤＩデータは、コンテンツ制作者が、予め作り込んでおいたものであり、カラオケ再生装置は、ＭＩＤＩデータの指示通りにしかるべきタイミングで発音を行なっているに過ぎない。言わば、音楽を、装置がその場で生成（演奏）しているのである。これは、ＭＩＤＩデータと、その専用再生装置という限定的な環境でのみ楽しみを享受できるものである。
【０００８】
なお、ＭＩＤＩの他にもＳＭＩＬ（Ｓｙｎｃｈｒｏｎｉｚｅｄ  ＭｕｌｔｉｍｅｄｉａＩｎｔｅｇｒａｔｉｏｎ  Ｌａｎｇｕａｇｅ）など、多種多様なフォーマットが存在するが基本的な考え方は同じである。
【０００９】
ところで、世の中に流通している音楽コンテンツは、上述のようなＭＩＤＩやＳＭＩＬよりも、ＣＤに代表されるＰＣＭデータや、その圧縮音声であるＭＰ３（ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）Ａｕｄｉｏ  ｌａｙｅｒ  ３）などの、前述したサンプリング音源と呼ばれる生の音声波形を主体としたフォーマットが主流である。
【００１０】
音楽再生装置は、これらのサンプリングされたＰＣＭ等の音声波形をＤ／Ａ（Ｄｉｇｉｔａｌ−ｔｏ−Ａｎａｌｏｇ）変換して出力することにより、ユーザに、音楽コンテンツを提供するものである。また、ＦＭラジオ放送等に見られるように、音声波形そのもののアナログ信号を放送するという例もある。更には、コンサートやライブ演奏等、その場で人が演奏して、ユーザに提供するという例もある。
【００１１】
もし、機械が聞こえてくる音楽の生の音声波形から、音楽の小節と拍（ビート）といったタイミングを、自動的に認識できたとすれば、ＭＩＤＩやＳＭＩＬのイベント時刻情報等のような予め用意された情報がなくとも、カラオケのように音楽と他のメディアがリズム同期するようなシンクロ機能を実現できる。
【００１２】
既存のＣＤ音楽コンテンツ、現在流れているＦＭラジオの曲、今演奏されているライブの曲に対して、例えば画像や歌詞など、他のメディアを聞こえてくる音楽に同期させて再生することが可能となり、新たなエンターテイメントの可能性が広がる。
【００１３】
従来から、テンポを抽出したり、音楽に同期させて何等かの処理をするという試みは提案されている。
【００１４】
例えば特許文献１（特開２００２−１１６７５４公報）には、時系列信号としての音楽波形信号の自己相関を算出し、それに基づき音楽のビート構造を解析し、その解析結果に基づいて音楽のテンポを抽出する方法が開示されている。これは、音楽を再生しながらのリアルタイムでテンポを抽出する処理ではなく、予め、オフライン処理としてテンポを抽出するものである。
【００１５】
また、特許文献２（特許第３０６６５２８号公報）には、楽曲データから複数の周波数帯別の音圧データを作成し、その複数の周波数帯の中から、リズムを最も顕著に刻む周波数帯を特定し、特定した周波数タイミングの音圧データにおける変化周期を元にリズム成分を推定することが記載されている。この特許文献２もオフライン処理を行なうものであり、音楽からリズム成分を抽出するために複数回の周波数分析をする。
【００１６】
上記の先行技術文献は、次の通りである。
【特許文献１】特開２００２−１１６７５４公報
【特許文献２】特許第３０６６５２８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
ところで、リズムやビート、テンポを算出する従来技術を大きく分類すると、前述の特許文献１のように音楽信号を時間領域で分析するものと、前述の特許文献２のように周波数領域で分析するものの２つに分けられる。
【００１８】
前者の時間領域で分析するものはリズムと時間波形が必ずしも一致する訳ではないので本質的に抽出精度に難点がある。後者の周波数分析を用いるものに関しては、予めオフライン処理にて全区間のデータを分析する必要がありリアルタイムに音楽にトラッキングするのには向いていない。また何度かの周波数分析を行なう必要のあるものもあり、計算量が膨大になるという欠点もある。
【００１９】
この発明は以上の点にかんがみ、楽曲の音楽信号を再生しながら、精度良く音楽のリズムのビート（ｂｅａｔ；拍。強いアクセントのあるリズム）を抽出することができる装置および方法を提供することを目的とする。
【課題を解決するための手段】
【００２０】
この発明では、次に説明するような音楽信号の特徴に基づいて、音楽のリズムのビートを抽出するようにする。
【００２１】
図１（Ａ）は、音楽信号の時間波形の例を示すものである。この図１（Ａ）に示すように、音楽信号の時間波形を見ると、ところどころで瞬間的に大きなピーク値となっている部分があることがわかる。この大きなピーク値を呈する部分は、例えばドラムのビートに相当する信号部分である。そこで、この発明では、このようなドラムや楽器のアタック音が強くなる部分をリズムのビートの候補とみなすようにしている。
【００２２】
ところで、この図１（Ａ）の音楽を実際に聴いて見ると、図１（Ａ）の時間波形では、隠れていてわからないが、実際には、もっと多くのビート成分がほぼ等時間間隔で含まれていることに気付く。したがって、図１（Ａ）の時間波形の大きなピーク値部分だけからでは、実際の音楽のリズムのビートを抽出することができない。
【００２３】
図１（Ｂ）は、図１（Ａ）の音楽信号のスペクトログラムを示すものである。この図１（Ｂ）に示すように、音楽信号のスペクトログラムの波形からは、当該スペクトログラムにおけるパワースペクトルが瞬間的に大きく変化する部分として、前述の隠れているビート成分が見えることが分かる。そして、実際に音を聴くと、このスペクトログラムにおけるパワースペクトルが瞬間的に大きく変化する部分が、ビート成分に相当することが確認できた。
【００２４】
以上のことを踏まえて、上記の課題を解決するために、請求項１の発明は、
入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を出力するビート抽出手段を備える
ことを特徴とするビート抽出装置を提供する。
【００２５】
この請求項１の発明の構成によれば、ビート抽出手段は、入力音楽信号のスペクトログラムにおけるパワースペクトルが大きく変化する部分を検出し、前記変化する部分に時間同期する検出出力信号を出力するので、この検出出力信号として、図１（Ｂ）に示されるパワースペクトルが大きく変化する部分に相当するビート成分が抽出されて出力されるものである。
【００２６】
また、請求項２の発明は、請求項１に記載のビート抽出装置において、
前記ビート抽出手段は、
前記入力音楽信号のパワースペクトルを算出するパワースペクトル算出手段と、
前記パワースペクトル算出手段で算出された前記パワースペクトルの変化量を算出し、前記算出した変化量を前記検出出力信号として出力する変化量算出手段と、
を備えることを特徴とする。
【００２７】
この請求項２の構成によれば、パワースペクトル算出手段で再生中の音楽信号のパワースペクトルが求められ、変化量算出手段で、求められたパワースペクトルの変化が求められる。この処理が時々刻々と変換する音楽信号に対してなされることにより、時間的に音楽のリズムのビート位置に同期した位置でピークが立つ波形出力が検出出力信号として得られる。この検出出力信号は、音楽信号から抽出されたビート抽出信号とみなすことができる。
【発明の効果】
【００２８】
この発明によれば、いわゆるサンプリング音源に対しても、比較的簡単に、リアルタイムで音楽信号からビート抽出信号を得ることができる。したがって、この抽出された信号を用いて、他のメディアとの音楽的なシンクロ動作が可能となる。
【発明を実施するための最良の形態】
【００２９】
以下、この発明の実施形態を、図を参照しながら説明する。図２は、この発明によるビート抽出装置およびリズムトラッキング装置の実施形態を含む音楽コンテンツの再生装置１０のブロック図である。この実施形態の音楽コンテンツの再生装置１０は、例えばパーソナルコンピュータで構成される場合である。
【００３０】
図２に示すように、この例の音楽コンテンツの再生装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１に対してシステムバス１００を介してプログラムＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２およびワークエリア用ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３が接続されている。ＣＰＵ１０１は、ＲＯＭ１０２に格納されている各種プログラムに従った処理をＲＡＭ１０３をワークエリアとして用いて実行することにより、後述する各種の機能処理を実行する。
【００３１】
そして、この例の音楽コンテンツの再生装置１０においては、システムバス１００には、また、メディアドライブ１０４と、音楽データデコード部１０５と、ディスプレイインターフェース（インターフェースは図ではＩ／Ｆと記載する。以下同じ）１０６と、外部入力インターフェース１０７と、同期動き画像生成部１０８と、通信ネットワークインターフェース１０９と、大容量記憶部として種々のデータが記憶されるハードディスクドライブ１１０と、Ｉ／Ｏポート１１１〜１１６が接続されている。さらに、システムバス１００には、操作入力部インターフェース１３１を通じて、キーボードやマウスなどの操作入力部１３２が接続されている。
【００３２】
Ｉ／Ｏポート１１１〜１１５は、この発明のリズムトラッキング装置の実施形態としてのリズムトラッキング部２０と、システムバス１００との間でのデータのやり取りのために用いられる。
【００３３】
リズムトラッキング部２０は、この実施形態では、この発明によるビート抽出装置の実施形態であるビート抽出部２１と、トラッキング部２２とからなる。Ｉ／Ｏポート１１１は、システムバス１００を通じて転送されてくるデジタルオーディオ信号（時間波形信号に相当）を、入力音楽信号（入力音楽信号は、音楽の信号のみではなく、例えば人声信号やその他のオーディオ帯域の信号を含むものとする）として、リズムトラッキング部２０のビート抽出部２１に入力する。
【００３４】
ビート抽出部２１は、後で詳細に説明するようにして、入力音楽信号からビート成分を抽出し、抽出したビート成分を表わす検出出力信号ＢＴをトラッキング部２２に供給すると共に、Ｉ／Ｏポート１１２を通じてシステムバス１００に供給するようにする。
【００３５】
トラッキング部２２は、後述するように、これに入力されるビート成分検出出力信号ＢＴから、入力された音楽コンテンツのテンポ値として、ＢＰＭ（Ｂｅａｔ  Ｐｅｒ  Ｍｉｎｕｔｅｓ；１分間に４分音符が何個あるかを意味し、音楽のテンポを表わす）値を、先ず、算出し、そのＢＰＭ値に応じた周波数で、かつ、ビート成分検出出力信号ＢＴに同期した位相の周波数信号を、ＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）回路を用いて生成する。
【００３６】
そして、トラッキング部２２は、ＰＬＬ回路からの周波数信号をクロック信号としてカウンタに供給して、このカウンタから、音楽の１小節単位毎の、ビート（拍）位置を表わすカウント値出力ＣＮＴを出力し、当該カウント値出力ＣＮＴを、Ｉ／Ｏポート１１４を通じてシステムバス１００に供給するようにする。
【００３７】
また、この実施形態では、トラッキング部２２は、中間値としてのＢＰＭ値を、Ｉ／Ｏポート１１３を通じてシステムバス１００に供給するようにする。
【００３８】
なお、Ｉ／Ｏポート１１５は、リズムトラッキング部２０に対する制御データをシステムバス１００側から供給するためのものである。
【００３９】
Ｉ／Ｏポート１１１は、また、オーディオ再生部１２０にも接続されている。すなわち、オーディオ再生部１２０は、Ｄ／Ａ変換器１２１と、出力アンプ１２２と、スピーカ１２３とからなり、Ｉ／Ｏポート１１１は、システムバス１００を通じて転送されてくるデジタルオーディオ信号を、Ｄ／Ａ変換器１２１に供給する。Ｄ／Ａ変換器１２１は、その入力デジタルオーディオ信号をアナログオーディオ信号に変換し、出力アンプ１２２を通じてスピーカ１２３に供給する。スピーカ１２３は、入力されたアナログオーディオ信号を音響再生する。
【００４０】
メディアドライブ１０４は、例えばＣＤや音楽コンテンツが格納されているＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）などのディスク１１に記憶されている音楽コンテンツの音楽データをシステムバス１００に取り込む。
【００４１】
音楽データデコード部１０５は、メディアドライブ１０４から取り込まれた音楽データをデコードし、デジタルオーディオ信号を復元する。復元されたデジタルオーディオ信号は、Ｉ／Ｏポート１１１に転送される。Ｉ／Ｏポート１１１は、システムバス１００を通じて転送されてくるデジタルオーディオ信号（時間波形信号に相当）を、前述したように、リズムトラッキング部２０およびオーディオ再生部１２０に供給する。
【００４２】
ディスプレイインターフェース１０６には、この例では、例えばＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などからなるディスプレイ１１７が接続されている。このディスプレイ１１７の画面には、後述するように、音楽コンテンツの音楽データから抽出されたビート成分や、テンポ値が表示されると共に、音楽に同期してアニメーション画像を表示したり、カラオケのように歌詞を表示したりする。
【００４３】
外部入力インターフェース１０７には、この例では、Ａ／Ｄ（Ａｎａｌｏｇ−ｔｏ−Ｄｉｇｉｔａｌ）変換器１１８が接続されている。そして、外部マイクロホン１２で収音された音声信号や音楽信号が、このＡ／Ｄ変換器１１８でデジタルオーディオ信号に変換され、外部入力インターフェース１０７に供給される。外部入力インターフェース１０７は、この外部入力のデジタルオーディオ信号を、システムバス１００に取り込む。
【００４４】
この例では、マイクロホン１２は、音楽コンテンツの再生装置１０に設けられているマイクロホン用のジャックからなるマイクロホン端子に、マイクロホン１２に接続されているプラグが挿入されることにより、音楽コンテンツの再生装置１０に接続される。この例では、マイクロホン１２で収音したライブ音楽からリアルタイムでリズムのビートを抽出し、当該抽出したビートに同期した表示をしたり、抽出したビートに同期させて人形やロボットを踊らせたりすることを想定している。
【００４５】
この例では、外部入力インターフェース１０７を通じて取り込まれたオーディオ信号は、Ｉ／Ｏポート１１１に転送され、リズムトラッキング部２０に供給される。この外部入力インターフェース１０７を通じて取り込まれたオーディオ信号の場合には、この実施形態では、オーディオ再生部１２０には供給されない。
【００４６】
同期動き画像生成部１０８は、この実施形態では、リズムトラッキング部２０のビート抽出部２１からのビート成分検出出力信号ＢＴに基づき、再生中の音楽に同期して画像内容が変化するアニメーションなどの画像を生成する。
【００４７】
なお、同期動き画像生成部１０８は、リズムトラッキング部２０からのカウント値出力ＣＮＴに基づき、再生中の音楽に同期して画像内容が変化するアニメーションなどの画像を生成するようにしてもよい。このカウント値出力ＣＮＴを用いる場合には、１小節内のビート位置が分かるので、楽曲の楽譜通りの正確な内容に応じた動きの画像を生成することができる。
【００４８】
しかし、一方で、ビート抽出部２１からのビート成分検出出力信号ＢＴには、演奏家などのいわゆる味付けにより、周期的でない本来のビート位置でない位置において発生しているビート成分が含まれる場合ある。そこで、この実施形態のように、ビート抽出部２１からのビート成分検出出力信号ＢＴに基づき動き画像を生成する場合には、実際の音楽に応じた動きの画像が得られるという効果がある。
【００４９】
通信ネットワークインターフェース１０９は、この例では、インターネット１４に接続されている。この例の音楽コンテンツの再生装置１０では、音楽コンテンツの属性情報を記憶するサーバに、インターネット１４を通じてアクセスし、音楽コンテンツの識別情報を検索キーワードとしてその属性情報の取得要求を送り、この取得要求に応じてサーバから送られてくる属性情報を、例えばハードディスクドライブ１１０のハードディスクに格納しておくようにする。
【００５０】
この実施形態では、音楽コンテンツの属性情報としては、楽曲構成情報を含む。この楽曲構成情報は、楽曲素材単位の区切り情報を含むと共に、楽曲の楽曲素材単位のテンポ／キー／コード／音量／拍子の情報、楽譜の情報、コード進行の情報、歌詞の情報などの、いわゆる曲調が決まる基準となる情報からなるものである。
【００５１】
ここで、楽曲素材単位とは、楽曲の拍、小節など、コードを付することができる単位である。楽曲素材単位の区切り情報は、例えば、楽曲の先頭位置からの相対位置情報やタイムスタンプからなる。
【００５２】
この実施形態では、ビート抽出部２１で抽出されるビート成分検出出力信号ＢＴに基づいてトラッキング部２２から得られるカウント値出力ＣＮＴは、楽曲素材単位の区切りに同期してカウント値が変化するものとなっている。したがって、トラッキング部２２から得られるカウント値出力ＣＮＴに同期させて、再生中の楽曲の属性情報である楽曲構成情報中の、例えばコード進行や歌詞を辿ることができるようになる。
【００５３】
そして、Ｉ／Ｏポート１１６は、この実施形態では、リズムトラッキング部２０から得られるビート成分検出出力信号ＢＴ、ＢＰＭ値、カウント値出力ＣＮＴを、外部出力端子１１９を通じて出力するためのものである。この場合、Ｉ／Ｏポート１１６から、ビート成分検出出力信号ＢＴ、ＢＰＭ値、カウント値出力ＣＮＴの全てを出力してもよいし、必要なもののみを出力するようにしてもよい。
【００５４】
［リズムトラッキング部２０の構成例］
この実施形態におけるビート抽出およびリズムトラッキング処理の原理を先ず説明する。この実施形態では、特に、ドラムや楽器のアタック音が強くなる部分をリズムのビート（拍）の候補と見なすことにしている。
【００５５】
図３（Ａ）に示すように、音楽信号の時間波形を見ると、ところどころでピーク値が瞬間的に大きくなっている部分がある。これはドラムのビートに相当する信号部分である。ところが、この音楽を実際に聴いてみると、時間波形では隠れていてわからないが、もっと多くのビート成分がほぼ等時間間隔で含まれていることに気付く。
【００５６】
次に、図３（Ｂ）に示すように、図３（Ａ）に示した音楽信号のスペクトログラムの波形を見ると、その隠れているビート成分を見ることができる。図３（Ｂ）において、スペクトル成分が瞬間的に大きく変化している部分が、その隠れているビート成分であり、その部分が、くし状に何度も繰り返されているのがわかる。
【００５７】
実際に音を聴くと、このくし状に何度も繰り返されている成分が、ビート成分に相当することを確認することができる。そこで、この実施形態では、このスペクトログラムにおけるパワースペクトルが瞬間的に大きく変化する部分をリズムのビート候補と見なすことにする。
【００５８】
ここで、リズムとはビートの繰り返しである。したがって、図３（Ｂ）のビート候補の周期を計測することで、その音楽のリズムの周期やＢＰＭ値を知ることができる。この実施形態では、周期の計測には自己相関計算等の一般的な手法を利用する。
【００５９】
次に、この発明のリズムトラッキング装置の実施形態であるリズムトラッキング部２０の詳細構成およびその処理動作について説明する。図４は、実施形態のリズムトラッキング部２０の詳細構成例のブロック図である。
【００６０】
［ビート抽出部２１の構成例および処理動作例］
先ず、この発明によるビート抽出装置の実施形態に相当するビート抽出部２１について説明する。図４に示すように、この実施形態のビート抽出部２１は、パワースペクトル算出部２１１と、変化量算出部２１２とからなる。
【００６１】
パワースペクトル算出部２１１には、この実施形態では、再生中の音楽コンテンツの図３（Ａ）に示される時間波形のオーディオデータが時々刻々と入力される。すなわち、ユーザの操作入力部１３２を通じた再生指示に応じて、前述したように、メディアドライブ１０４で、ディスク１１から指示された音楽コンテンツのデータが読み出され、音楽データデコード部１０５でオーディオデータがデコードされる。そして、この音楽データデコード部１０５からのオーディオデータが、Ｉ／Ｏポート１１１を通じてオーディオ再生部１２０に供給されて、再生されると共に、当該再生中のオーディオデータが、リズムトラッキング部２０のビート抽出部２１に供給される。
【００６２】
また、マイクロホン１２で収音された音声信号が、Ａ／Ｄ変換器に供給されて、デジタル信号とされたオーディオデータが、Ｉ／Ｏポート１１１を通じて、リズムトラッキング部２０のビート抽出部２１に供給される場合もある。前述したように、このときには、
パワースペクトル算出部２１１では、例えばＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）などの演算を行なって、図３（Ｂ）に示されるようなスペクトログラムを算出して求める。
【００６３】
この例の場合、パワースペクトル算出部２１１では、ＦＦＴ演算の分解能は、このビート抽出部２１への入力オーディオデータのサンプリング周波数が４８ｋＨｚの場合は、５１２サンプルや１０２４サンプル程度にして、実時間で５〜３０ｍｓｅｃ程度に設定している。また、この実施形態では、例えばハニングやハミングなどの窓関数（ウインドウ関数）をかけながら、かつ、窓（ウインドウ）をオーバーラップさせながらＦＦＴ計算を行なうようにすることで、パワースペクトルを算出し、スペクトログラムを求めるようにする。
【００６４】
パワースペクトル算出部２１１の出力は、変化率算出部２１２に供給され、パワースペクトルの変化率が算出される。すなわち、変化率算出部２１２では、パワースペクトル算出部２１１からのパワースペクトルに対して微分演算を施して変化率を算出する。変化率算出部２１２では、時々刻々と変化するパワースペクトルに対して、前記の微分演算を繰り返し施すことにより、図３（Ｃ）に示すようなビート抽出波形出力を、ビート成分検出出力信号ＢＴとして出力する。
【００６５】
このビート成分検出出力信号ＢＴにより、入力オーディオデータの元の時間波形とは異なり、時間的に等間隔にスパイク状のピークが立つ波形が得られたことになる。そして、図３（Ｃ）に示す、このビート成分検出出力信号ＢＴにおいて、正方向に立ち上がるピークをビート成分と見なすことができる。
【００６６】
以上のビート抽出部２１の動作を、図５の説明図および図６のフローチャートを参照して、さらに詳細に説明する。図５（Ａ）、（Ｂ）、（Ｃ）に示すように、この実施形態では、ウインドウ幅をＷとしたとき、このウインドウ幅Ｗの区間分のパワースペクトルをさんしゅつすると、その次には、その整数分の１、この例では、１／８に分割した区間分だけウインドウをずらして、２Ｗ／８分をオーバーラップさせながら、順次に入力オーディオデータについてパワースペクトルを算出するようにする。
【００６７】
すなわち、図５に示すように、この実施形態では、先ず、再生中の音楽コンテンツのデータである入力オーディオデータの例えば１０２４サンプル分の時間幅を、ウインドウ幅Ｗとして、当該ウインドウ幅分の入力オーディオデータを取り込む（図６のステップＳ１）。
【００６８】
次に、入力オーディオデータに対して、ウインドウ幅Ｗで、ハニングやハミングなどのウインドウ関数をかける（ステップＳ２）。次に、ウインドウ幅Ｗを整数分の１、この例では、１／８に分割した各分割区間ＤＶ１〜ＤＶ８分のそれぞれについて、入力オーディオデータについてＦＦＴ演算を施してパワースペクトルを算出する（ステップＳ３）。
【００６９】
次に、分割区間ＤＶ１〜ＤＶ８分のすべてについてパワースペクトルを算出するまでステップＳ３の処理を繰り返し、分割区間ＤＶ１〜ＤＶ８分のすべてについてパワースペクトルを算出したと判別したときには（ステップＳ４）、分割区間ＤＶ１〜ＤＶ８で算出されたパワースペクトルの総和を計算し、それをウインドウＷ区間分の入力オーディオデータについてのパワースペクトルとして算出する（ステップＳ５）。ここまでが、パワースペクトル算出部２１１の処理である。
【００７０】
次に、ステップＳ５で算出されたウインドウ幅分の入力オーディオデータについてのパワースペクトルの総和と、前回の、今回とはＷ／８分だけ時間的に前のウインドウ幅Ｗで算出されたパワースペクトルの総和との差分を算出する（ステップＳ６）。そして、算出した差分を、ビート成分検出出力信号ＢＴとして出力する（ステップＳ７）。このステップＳ６とステップＳ７との処理は、変化率算出部２１２の処理である。
【００７１】
次に、ＣＰＵ１０１は、再生中の音楽コンテンツの再生が最後まで終了したか否か判別し（ステップＳ８）、最後まで終了したと判別したときには、ビート抽出部２１への入力オーディオデータの供給を停止し、処理を終了する。
【００７２】
また、再生中の音楽コンテンツの再生が最後まで終了したと判別したときには、ＣＰＵ１０１は、ビート抽出部２１への入力オーディオデータの供給を継続するように制御すると共に、パワースペクトル算出部２１１では、ウインドウを、図５（Ｂ）に示すように、１分割区間（Ｗ／８）分だけずらして（ステップＳ９）、ステップＳ１に戻り、ウインドウ幅分のオーディオデータの取り込みを行ない、前述したステップＳ１〜ステップＳ７までの処理を繰り返す。
【００７３】
そして、音楽コンテンツの再生が終了でなければ、ステップＳ９で、図５（Ｃ）に示すように、さらにウインドウを１分割区間（Ｗ／８）分だけずらして、ステップＳ１〜ステップＳ７までを繰り返す。
【００７４】
以上のようにして、ビート抽出処理が行なわれ、ビート成分検出出力信号ＢＴとして、図３（Ｃ）に示すようなビート抽出波形の出力が、入力オーディオデータにリアルタイムに同期して得られる。
【００７５】
こうして得られたビート成分検出出力信号ＢＴは、Ｉ／Ｏポート１１２を介してシステムバス１００に供給されると共に、トラッキング部２２に供給される。
【００７６】
［トラッキング部２２の構成例および処理動作例］
トラッキング部２２は、基本構成は、ＰＬＬ回路の構成であるが、この実施形態では、先ず、ビート成分検出出力信号ＢＴは、ＢＰＭ値算出部２２１に供給される。このＢＰＭ値算出部２２１は、自己相関演算処理部で構成される。すなわち、ＢＰＭ値算出部２２１では、ビート成分検出出力信号ＢＴに対して自己相関計算を行ない、現在得られているビート抽出信号の周期及びＢＰＭ値を時々刻々求める。
【００７７】
得られたＢＰＭ値は、ＢＰＭ値算出部２２１からＩ／Ｏポート１１３を通じてシステムバス１００に供給されると共に、逓倍部２２２に供給される。逓倍部２２２は、ＢＰＭ値算出部２２１からのＢＰＭ値をＮ倍して、次段の可変周波数発振器２２３の周波数設定入力端へ入力する。
【００７８】
可変周波数発振器２２３は、この周波数設定入力端に供給された周波数値をフリーランの中心周波数とした発振周波数で発振する。したがって、可変周波数発振器２２３は、ＢＰＭ値算出部２２１で算出されたＢＰＭ値のＮ倍の周波数で発振する。
【００７９】
可変周波数発振器２２３の発振周波数を意味するＢＰＭ値は、１分間の４分音符の数を表しているので、Ｎ倍された発振周波数は４分音符のＮ倍の周波数で発振していることになる。
【００８０】
仮に、今、Ｎ＝４と仮定すると、４分音符の４倍の周波数であるので、可変周波数発振器２２３は、１６分音符の周波数で発振していることになる。これは、一般に１６ビートと呼ばれるリズムを表していることになる。
【００８１】
以上の周波数制御により、可変周波数発振器２２３からは、ＢＰＭ値算出部２２１で算出されたＢＰＭ値のＮ倍の周波数で発振する発振出力が得られる。すなわち、可変周波数発振器２２３の発振出力周波数は、入力オーディオデータのＢＰＭ値に対応した周波数となるように制御される。しかし、このままでは、可変周波数発振器２２３の発振出力は、入力オーディオデータのリズムのビートには位相同期していない。この位相同期制御について次に説明する。
【００８２】
すなわち、ビート抽出部２１からの、入力オーディオデータのリズムのビートに同期したビート成分検出出力信号ＢＴが位相比較部２２４に供給される。一方、可変周波数発振器２２３の発振出力信号は、１／Ｎ分周部２２５に供給されて、周波数が１／Ｎに分周され、元のＢＰＭ値の周波数に戻される。そして、この１／Ｎ分周部２２５からの１／Ｎに分周された出力信号が、位相比較部２２４に供給される。
【００８３】
この位相比較部２２４では、ビート抽出部２１からのビート成分検出出力信号ＢＴと、１／Ｎ分周部２２５からの信号とが、例えばその立ち上がりエッジ時点において、位相比較され、その比較誤差出力が、ローパスフィルタ２２６を通じて可変周波数発振器２２３に供給される。そして、可変周波数発振器２２４の発振出力信号の位相が、この位相比較誤差出力により、ビート成分検出出力信号ＢＴの位相に同期するように制御される。
【００８４】
例えば、ビート成分検出出力信号ＢＴに対して、可変周波数発振器２２３の発振出力信号が遅れ位相であれば、遅れを取り戻す方向として、可変周波数発振器２２３の現在の発振周波数をわずかに上げる。逆に進み位相であれば、進み過ぎを取り戻す方向として、可変周波数発振器の現在の発振周波数をわずかに下げる。
【００８５】
以上のようにして、いわゆる負帰還を利用したフィードバック制御回路であるＰＬＬ回路により、ビート成分検出出力信号ＢＴと、可変周波数発振器２３の発振出力信号の位相の一致を図ることができる。
【００８６】
こうして、トラッキング部２２では、ビート抽出部２１で抽出された入力オーディオデータのビートの周波数および位相に同期した発振クロック信号を、可変周波数発振器２２３から得ることができる。
【００８７】
ここで、可変周波数発振器２２３の出力発振信号をクロック信号として、リズムトラッキング部２０の出力した場合には、ＢＰＭ値のＮ倍である、４Ｎビートの発振クロック信号がこのリズムトラッキング部２０の出力として出力されることになる。
【００８８】
この可変周波数発振器２２３の発振出力信号を、このままクロック信号としてトラッキング部２２から出力して利用しても良い。しかし、この実施形態では、このクロック信号をカウンタでカウントすれば、１小節当たりについて、ビート（拍）に同期した１〜４Ｎまでのカウント値が得られ、そのカウント値により、ビート位置を知ることができるので、可変周波数発振器２２３の発振出力としてのクロック信号は、４Ｎ進数カウンタ２２７のカウント値入力として供給される。
【００８９】
この４Ｎ進数カウンタ２２６からは、この例では、入力オーディオデータの音楽の１小節当たりについて、１〜４Ｎまでのカウント値出力ＣＮＴが、前記入力オーディオデータのビートに同期して得られる。例えば、Ｎ＝４の時には、カウント値出力ＣＮＴの値は１から１６までカウントアップを繰り返す。
【００９０】
このとき、入力オーディオデータの音楽がライブ録音の再生信号であったり、マイクロホン１２から収音したライブ音楽であったりしたときには、そのビート周波数や位相が揺らぐことがあるが、リズムトラッキング部２０から得られるカウント値出力ＣＮＴは、その揺らぎにも追従するものである。
【００９１】
ところで、ビート成分検出出力信号ＢＴは、入力オーディオデータの音楽の拍に同期しているが、４Ｎ進カウンタ２２７からの１〜４Ｎのカウント値が、小節に完全に同期していることは確保されていないと考えられる。
【００９２】
この点を改善するため、この実施形態では、ビート成分検出出力信号ＢＴのピーク検出出力、および／または、時間波形の大振幅を用いて、４Ｎ進カウンタ２２７をリセットして、４Ｎ進カウンタ２２７からのカウント値出力ＣＮＴが、常に小節の区切りに同期したものとなるように補正するようにしている。
【００９３】
すなわち、図４に示すように、この実施形態では、ビート抽出部２１からのビート成分検出出力信号ＢＴは、ピーク検出部２３に供給されて、図３（Ｃ）に示したスパイク上のピーク位置の検出信号Ｄｐが、このピーク検出部２３から得られ、その検出信号Ｄｐがリセット信号生成部２５に供給される。
【００９４】
また、入力オーディオデータが大振幅検出部２４に供給されて、図３（Ａ）に示した時間波形の大振幅部分の検出信号Ｌａが、この大振幅検出部２４から得られ、その検出信号Ｌａがリセット信号生成部２５に供給される。
【００９５】
リセット信号生成部２５には、この実施形態では、４Ｎ進カウンタ２２７からのカウント値出力ＣＮＴも供給される。リセット信号生成部２５では、この実施形態では、４Ｎ進カウンタ２２７からのカウント値出力ＣＮＴの値が、例えば４Ｎに近い値のとき、例えばＮ＝４の時には、カウント値出力ＣＮＴの値が１４〜１５になった直後から、４Ｎ＝１６までの僅かの時間幅内では、たとえカウント値出力ＣＮＴが４Ｎに到達する前であっても、ピーク検出部２３からの検出信号Ｄｐあるいは大振幅検出部２４からの検出信号Ｌａがあったときには、その検出信号Ｄｐあるいは検出信号Ｌａのいずれかを、４Ｎ進カウンタ２２７のリセット端子に供給するようにして、そのカウント値出力ＣＮＴを強制的に「１」にリセットするようにする。
【００９６】
これにより、小節単位の揺らぎがあっても、４Ｎ進カウンタ２２７のカウント値出力ＣＮＴは、入力オーディオデータの音楽に同期するものである。
【００９７】
なお、トラッキング部２２における４Ｎ進カウンタ２２７のカウント値出力ＣＮＴは、予め、リズムトラッキング部でビート抽出し、リズムトラッキングすべき音楽コンテンツが、何拍子の楽曲であるかにより定められる。例えば４拍子であれば、４Ｎ進カウンタとされ、３拍子であれば、３Ｎ進カウンタとされる。このＮに乗ずる値を決める基となる楽曲が何拍子の楽曲であるかは、例えばユーザにより、音楽コンテンツの再生をする前に、事前に、音楽コンテンツの再生装置１０に入力される。
【００９８】
なお、音楽コンテンツの再生装置１０が自動的にＮに乗ずる値を決定するようにして、ユーザの楽曲が何拍子であるかの入力を省略することもできる。すなわち、ビート抽出部２１からのビート成分検出出力信号ＢＴを解析すると、小節単位で、スパイク上のピーク値が大きくなることが分かるので、楽曲が何拍子かを推定することができ、前記Ｎに乗ずる値を決めることができる。
【００９９】
ただし、この場合には、楽曲の最初の部分では、Ｎに乗ずる値が適切なものでない場合があるが、それが楽曲の導入部分であれば、実際の利用上は問題はないと考えられる。
【０１００】
また、再生に先立ち、当該再生しようとする音楽コンテンツの楽曲の一部を再生して、ビート抽出部２１からのビート成分検出出力信号ＢＴを得て、その信号ＢＴに基づいて楽曲が何拍子の音楽である検知しておき、Ｎに乗ずる値を決定し、その後、音楽コンテンツの楽曲を最初から再生すると共に、リズムトラッキング部２０で、当該再生中の音楽コンテンツの楽曲に同期するビートを抽出するようにしてもよい。
【０１０１】
なお、可変周波数発振器２２３の発信信号の波形は、ノコギリ波でも、また、矩形波でも良いし、インパルス状の波形でも良い。上述の実施形態では、ノコギリ波の立ち上がりエッジ部分をリズムのビートとして位相制御するようにしている。
【０１０２】
上述したリズムトラッキング部２０は、図４に示した各ブロックをハードウェアで実現しても良いし、ＤＳＰやＣＰＵなどを用いてリアルタイム信号処理を行ない、ソフトウェアで実現しても良い。
【０１０３】
［リズムトラッキング装置の第２の実施形態］
図４のリズムトラッキング部２０を実際に動作させた場合、ＰＬＬ回路の基本的性質として、同期引き込み範囲となるプルインレンジを広くすると、定常時の位相ジッタが増えてしまい、逆に、位相ジッタを少なくしようとすると、ＰＬＬ回路のプルインレンジが狭くなってしまうという相反する性質がある。
【０１０４】
この性質を、このリズムトラッキング部２０に当て嵌めた場合、リズムトラッキング可能なＢＰＭ値の範囲を広くとると、定常時の発振出力クロックのジッタが、例えば±数ＢＰＭのオーダーで増えてしまい、トラッキング誤差の揺れが大きくなってしまうという問題がある。逆に、トラッキング誤差の位相ジッタを少なくするよう設定すると、ＰＬＬ回路のプルインレンジが狭くなり、トラッキングできるＢＰＭ値の範囲が狭くなってしまうという問題がある。
【０１０５】
また、別の問題として、未知の曲が入力された直後からトラッキングが安定するまで暫く時間が掛かることがある。これは、図４のＢＰＭ値算出部２２１を構成する自己相関演算部の計算に、ある程度の時間が必要であるためである。このため、ＢＰＭ値算出部２２１のＢＰＭ値算出結果が安定するには、自己相関演算部へ入力される信号に、ある程度の計算区間が要求される。これは、自己相関の一般的な性質によるものである。この問題により、音楽の最初の部分では、暫くの間、トラッキングが外れてしまい、音楽に同期した発振出力クロックが得られないという問題がある。
【０１０６】
リズムトラッキング部２０の第２の実施形態では、次のようにすることにより、これらの問題を回避するものである。
【０１０７】
もし、入力される音楽が、予め既知であるならば、すなわち、例えば再生する音楽コンテンツのデータのファイル等が手元にあるのならば、それについてオフライン処理をしておいて、その音楽コンテンツの大まかなＢＰＭ値を求めておく。これは、この第２の実施形態では、図４において、ビート抽出部２１の処理と、ＢＰＭ値算出部２２１とを、オフラインで実行することにより行なうようにする。もしくは、ＢＰＭ値のメタ情報等が予め付加された音楽コンテンツを利用するのでも構わない。例えば、１２０±１０ＢＰＭくらいの非常に大まかな精度のＢＰＭ情報があるだけでずいぶんと状況は改善する。
【０１０８】
そして、実際に、当該音楽コンテンツの再生時にリアルタイムで、リズムトラッキング処理を実行するときには、前述のようにしてオフラインで算出したＢＰＭ値に対応する周波数を可変周波数発振器２２３の発振周波数の初期値として発振を開始再生るようにする。これにより、音楽コンテンツの再生開始時のトラッキングずれや、定常時の位相ジッタを大幅に低減することができる。
【０１０９】
前述したオフライン処理での、ビート抽出部２１およびＢＰＭ値算出部２２１における処理は、図４のリズムトラッキング部２０の一部を利用したものであり、その処理動作は、前述したのと全く同じであるので、ここでは説明を割愛する。
【０１１０】
［リズムトラッキング部２０の第３の実施形態］
このリズムトラッキング装置の第３の実施形態は、入力（再生）される音楽が未知であり、オフライン処理が不可能な場合である。この第３の実施形態においては、図４のリズムトラッキング部２０において、最初は、ＰＬＬ回路のプルインレンジを広く設定しておく。そして、リズムトラッキングが安定し始めてから、ＰＬＬ回路のプルインレンジを狭く設定し直すようにする。
【０１１１】
このように、第３の実施形態においては、リズムトラッキング部２０のトラッキング部２２のＰＬＬ回路のプルインレンジのパラメータを動的に変更する手法を用いることにより、前述した位相ジッタの問題を効果的に解決することができる。
【０１１２】
［リズムトラッキング部２０の出力を用いたアプリケーションの例］
この実施形態では、リズムトラッキング部２０からの出力信号、すなわち、ビート成分検出出力信号ＢＴ、ＢＰＭ値、カウント値出力ＣＮＴを用いて種々のアプリケーションを実現するようにしている。
【０１１３】
この実施形態では、前述したように、ディスプレイ１１７の表示画面において、リズムトラッキング部２０からの出力信号を用いた表示を行なうようにしている。図７は、この実施形態におけるディスプレイ１１７の表示画面１１７Ｄの表示例を示す図である。これは、音楽同期表示装置の実施形態における表示出力態様に対応するものである。
【０１１４】
図７に示すように、ディスプレイ１１７の表示画面１１７Ｄには、この実施形態では、ＢＰＭ値表示欄３０１、ＢＰＭ値検出中心値設定欄３０２、ＢＰＭ値検出範囲設定欄３０３、ビート表示枠３０４、音楽同期画像表示欄３０６、歌詞表示欄３０７、その他が表示される。
【０１１５】
ＢＰＭ値表示欄３０１には、再生中の音楽コンテンツのオーディオデータから、リズムトラッキング部２０のＢＰＭ値算出部２２１で算出されたＢＰＭ値が表示される。
【０１１６】
この実施形態では、ユーザは、ＢＰＭ値検出中心値設定欄３０２およびＢＰＭ値検出範囲設定欄３０３を通じて、リズムトラッキング部２０でのＢＰＭ検出範囲のパラメータ値として、ＢＰＭ値検出中心値と、その中心値からのＢＰＭ検出範囲の許容誤差範囲値を設定することができる。このパラメータ値は、再生動作中でも変更することができるようにされている。
【０１１７】
ビート表示枠３０４は、この例では、前述したように、再生対象の音楽コンテンツが４拍子の場合には、トラッキングしたビートが１６進数で与えられるので、１６ビートの表示枠が表示され、このビート表示枠３０４において再生中の音楽コンテンツのビートが同期表示されるようにされる。この例では、ビート表示枠３０４は、１６ビート表示枠が上下２段に構成されている。１６ビート表示枠のそれぞれは、１６個の白丸印からなり、現在ビート位置表示３０５として、例えば小四角印が、１６個の白丸印のうちの、音楽コンテンツのオーディオデータから抽出された現在ビート位置に対応する位置の白丸印内に表示されるようにされている。
【０１１８】
すなわち、現在ビート位置表示３０５は、リズムトラッキング部２０からのカウント値出力ＣＮＴの変化に応じて変化する。これにより、再生中の音楽コンテンツのオーディオデータに同期して、当該再生中の音楽コンテンツのビートがリアルタイムで同期変化表示される。
【０１１９】
音楽同期画像表示欄３０６には、後で詳述するように、この実施形態では、リズムトラッキング部２０のビート抽出部２１からのビート成分検出出力信号ＢＴに同期して、踊るアニメーションが表示される。
【０１２０】
歌詞表示欄３０７には、後で詳述するように、この実施形態では、再生中の音楽コンテンツの歌詞が、当該音楽コンテンツの再生に同期して、文字表示される。
【０１２１】
以上のような表示画面構成となっているので、この実施形態の音楽コンテンツの再生装置において、ユーザが音楽コンテンツの再生開始指示をすると、その音楽コンテンツのオーディオデータが、オーディオ再生部１２０で再生されて、音響再生されると共に、当該再生中のオーディオデータがリズムトラッキング部２０に供給される。
【０１２２】
そして、再生中の音楽コンテンツについて、リズムトラッキング部２０でビートが抽出されると共に、ＢＰＭ値が算出されて、現在検出中のＢＰＭ値が表示画面１１７のＢＰＭ値表示欄３０１に表示される。
【０１２３】
そして、算出されたＢＰＭ値およびビート抽出部２１で抽出されて得られたビート成分検出出力信号ＢＴとに基づいて、ビートトラッキングがＰＬＬ回路部で実行され、４Ｎ進カウンタ２２７からは、再生中の音楽コンテンツに同期したビートを１６進数で与えるカウント値出力ＣＮＴが得られ、このカウント値出力ＣＮＴに基づいて、ビート表示枠３０４において現在ビート位置表示３０５により、シンクロ表示される。前述したように、ビート表示枠３０４は、１６ビート表示枠が上下２段になっており、現在ビート位置表示３０５が上段と下段に渡って交互に入れ替わるように移動表示される。
【０１２４】
［音楽同期画像表示装置の実施形態（踊るアニメーション）］
次に、音楽同期画像表示欄３０６に表示されるアニメーションについて説明する。前述したように、図２の同期動き画像生成部１０８で、このアニメーション画像が生成されるものである。したがって、図２のリズムトラッキング部２０と、同期動き画像生成部１０８と、ディスプレイインターフェース１０６およびディスプレイ１１７とからなる部分は、音楽同期画像表示装置の実施形態を構成する。
【０１２５】
なお、音楽同期画像表示装置は、ハードウエアにより構成してもよいし、また、リズムトラッキング部２０と、同期動き画像生成部１０８との部分は、ＣＰＵにより実行されるソフトウエア処理により構成されるようにしてもよい。
【０１２６】
図８は、この音楽同期画像表示装置の実施形態が実行する音楽同期画像表示動作を説明するためのフローチャートである。この図８のフローチャートの各ステップの処理は、図４の実施形態では、ＣＰＵ１０１の制御の下に、同期動き画像生成部１０８で実行されるものである。
【０１２７】
この実施形態では、同期動き画像生成部１０８は、踊るアニメーションの複数シーンの画像データを予め記憶部（図示を省略）に記憶しており、当該記憶部から、音楽コンテンツのビートに同期して、踊るアニメーションの各シーンを順次に読み出して、音楽同期画像表示欄３０６に表示することにより、踊るアニメーション表示を実現するようにする。
【０１２８】
すなわち、同期動き画像生成部１０８では、ＣＰＵ１０１の制御により、リズムトラッキング部２０のビート抽出部２１からのビート成分検出出力信号ＢＴを取り込む（ステップＳ１１）。
【０１２９】
次に、同期動き画像生成部１０８では、ビート成分検出出力信号ＢＴのピーク値Ｐｋと、予め定められたスレッショールド値ｔｈとを比較する（ステップＳ１２）。そして、ビート成分検出出力信号ＢＴのピーク値Ｐｋ≧ｔｈであるか否か判別する（ステップＳ１３）。
【０１３０】
ステップＳ１３で、Ｐｋ≧ｔｈであると判別したときには、同期動き画像生成部１０８では、記憶部に記憶されている、踊るアニメーションの画像の、次のシーンの画像データを読み出して、それをディスプレイインターフェース１０６に供給し、ディスプレイの音楽同期画像表示欄３０６のアニメーション画像を次のシーンに変更する（ステップＳ１４）。
【０１３１】
このステップＳ１４の次には、また、ステップＳ１３で、Ｐｋ≧ｔｈではないと判別したときには、同期動き画像生成部１０８では、楽曲の再生が終了したか否か判別し（ステップＳ１５）、楽曲の再生が終了していなければステップＳ１１に戻り、このステップＳ１１以降の処理を繰り返す。ステップＳ１５で、楽曲の再生が終了したと判別したときには、この図８の処理ルーチンを終了し、音楽同期画像表示欄３０６の踊るアニメーション画像の表示を停止する。
【０１３２】
なお、ステップＳ１２で比較するスレッショールド値ｔｈは、一定ではなく、変化させることにより、ステップＳ１３での比較結果として、Ｐｋ≧ｔｈとなるピーク値を変化させることができ、より楽曲を聴取したときの感じに応じた、踊るアニメーション画像の表示をすることができるようになる。
【０１３３】
なお、前述もしたように、図８の実施形態では、ビート抽出部２１からのビート成分検出出力信号ＢＴを用いて、音楽同期画像を表示するようにしたが、ビート成分検出出力信号ＢＴの代わりに、トラッキング部２２からのカウント値出力ＣＮＴを取り込んで、このカウント値出力ＣＮＴの変化に同期して、踊るアニメーションの次のシーンを次々に読み出して、表示するようにしてもよい。
【０１３４】
また、上述の実施形態では、踊るアニメーションの画像データを予め記憶しておき、ビート成分検出出力信号ＢＴのピーク値Ｐｋに同期して、また、リズムトラッキング部２０からのカウント値出力ＣＮＴの変化に同期して、踊るアニメーションの次のシーンを次々に読み出すようにしたが、ビート成分検出出力信号ＢＴのピーク値Ｐｋに同期して、また、リズムトラッキング部２０からのカウント値出力ＣＮＴの変化に同期して、踊るアニメーションの画像をリアルタイムに生成するプログラムを実行するようにしてもよい。
【０１３５】
なお、音楽に同期して表示する画像は、アニメーションに限られず、予め、音楽に同期して再生するように準備された動画や静止画であってもよい。例えば、動画の場合には、音楽に同期して、複数の動画像を切り替えてゆく表示方法を採用することができる。また、静止画の場合には、アニメーションと同様の態様で表示することができる。
【０１３６】
［音楽同期表示装置の実施形態（歌詞の表示）］
前述したように、図４の実施形態の音楽コンテンツの再生装置１０では、ネットワークを通じて、音楽コンテンツの属性情報をインターネットを通じて取得し、ハードディスクドライブ１１０のハードディスクに記憶するようにしている。これには、楽曲の歌詞のデータも含まれている。
【０１３７】
この実施形態の音楽コンテンツの再生装置１０では、この音楽コンテンツの属性情報の歌詞情報を用いて、再生中の楽曲に同期して、歌詞を表示するようにする。いわゆるカラオケシステムでは、タイムスタンプ情報に応じて順次に歌詞を表示するものであるのに対して、この実施形態では、再生中の楽曲のオーディオデータに同期して歌詞が表示される。したがって、再生中の音楽のビートに揺らぎがあっても、表示される歌詞は、それに追従して表示されるものである。
【０１３８】
この歌詞表示を行なう音楽同期表示装置の実施形態は、図４の例では、ＲＯＭ１０２に記憶されているプログラムに従ったＣＰＵ１０１によるソフトウエア処理により実現される。
【０１３９】
この実施形態においては、音楽コンテンツの再生開始が指示されると、当該音楽コンテンツのオーディオデータが、例えばメディアドライブ１０４を通じて取り込まれて、再生が開始されるとともに、当該メディアドライブ１０４に記憶されている再生対象の音楽コンテンツの識別情報が用いられて、ハードディスクドライブ１１０のハードディスクから、当該再生開始指示された音楽コンテンツの属性情報が読み出される。
【０１４０】
図９に、このとき読み出される音楽コンテンツの属性情報の一例を示す。すなわち、図９に示すように、この属性情報は、再生対象の音楽コンテンツの小節番号と拍番号と、それぞれの小節番号、拍番号の位置における歌詞やコードからなる。ＣＰＵ１０１は、リズムトラッキング部２０からのカウント値出力ＣＮＴから、現在再生位置の小節番号および拍番号を知り、属性情報から、その小節番号および拍番号のコードや歌詞を判断し、その判断結果に基づいて、歌詞表示欄３０７に、再生中楽曲に同期して歌詞を順次に表示するようにする。
【０１４１】
図１０に、この実施形態における歌詞表示処理のフローチャートを示す。先ず、ＣＰＵ１０１は、リズムトラッキング部２０からのカウント値出力ＣＮＴのカウント値が変化したか否か判別する（ステップＳ２１）。
【０１４２】
ステップＳ２１で、カウント値出力ＣＮＴのカウント値が変化したと判別したときには、ＣＰＵ１０１は、そのカウント値出力ＣＮＴのカウント値から、再生中の楽曲の何小節目の何拍目かを計算する（ステップＳ２２）。
【０１４３】
なお、カウント値出力ＣＮＴは、前述したように、１小節単位に４Ｎ進で変化するものであるが、楽曲の先頭から順次に、小節を別途カウントすることにより、楽曲の何小節めであるかを知ることができることは言うまでもない。
【０１４４】
ステップＳ２２の次には、ＣＰＵ１０１は、再生中の楽曲の属性情報を参照し（ステップＳ２３）、ステップＳ２２で求めた再生中の楽曲の小節および拍位置が、当該小節および拍位置に歌詞が付与されている歌詞表示タイミングであるか否かを判別する（ステップＳ２４）。
【０１４５】
そして、ステップＳ２４で、歌詞表示タイミングであると判別したときには、ＣＰＵ１０１は、当該タイミングで表示する文字情報を、前記楽曲の属性情報に基づいて生成し、それをディスプレイインターフェース１０６を通じてディスプレイ１１７に供給し、表示画面１１７Ｄの歌詞表示欄３０７に表示するようにする（ステップＳ２５）。
【０１４６】
また、ステップＳ２４で、歌詞表示タイミングではないと判別したとき、また、ステップＳ２５の次には、ＣＰＵ１０１は、楽曲の再生が終了したか否か判別し（ステップＳ２６）、楽曲の再生が終了していなければステップＳ２１に戻り、このステップＳ２１以降の処理を繰り返す。ステップＳ２６で、楽曲の再生が終了したと判別したときには、この図１０の処理ルーチンを終了し、歌詞表示欄３０７の歌詞表示を停止する。
【０１４７】
なお、上述の音楽同期画像表示装置では、歌詞のみではなく、あるいは歌詞に代えて、楽曲のコードを表示するようにしてもよい。例えば、楽曲のコードに応じたギターの指の押さえパターンを表示するようにしてもよい。
【０１４８】
また、上述の実施形態では、パーソナルコンピュータの表示画面において、歌詞表示をするようにしたが、携帯型の音楽再生機に、この発明の実施形態を適用した場合には、図１１に示すように、携帯型の音楽再生機４００に接続されたリモートコマンダ４０１に設けられた表示部４０１Ｄに、前述した、踊るアニメーションや歌詞を表示させるようにすることができる。
【０１４９】
この場合、携帯型の音楽再生機は、再生開始から上述したリズムトラッキング処理を行ない、現在再生している音楽の小節や拍の位置・タイミングを把握し、リアルタイムに属性情報と照らし合わせながら、手元のリモートコマンダ４０１の表示部４０１Ｄに、音楽に同期させる形で、図示のように、例えば歌詞を順に表示することができる。
【０１５０】
［リズムトラッキング部２０の出力を用いたアプリケーションのその他の例］
上述のアプリケーションの例では、音楽に同期してアニメーション画像や楽曲の歌詞を表示するようにしたが、上述したように、この実施形態では、再生中の楽曲の小節や拍に同期させて、何等かの処理をすることが容易であるので、再生中の楽曲に対して所定のアレンジを施したり、特殊効果（エフェクト）処理をしたり、他の楽曲データを混合（リミックス）したりすることが容易にできる。
【０１５１】
エフェクト処理としては、再生音響データに、例えば、ディストーション（Ｄｉｓｔｏｒｔｉｏｎ）をかけたり、リバーブ（Ｒｅｖｅｒｂ）をかけたりする処理が可能である。
【０１５２】
リミックスは、一般的なディスクジョッキーで行なわれている手法であり、ある小節や拍単位で音楽性を損なわないように、再生中の楽曲に複数の音楽素材をミックスしていく方法である。これは、予め用意された小節の切れ目（楽曲素材単位の区切り）やテンポ情報、コード情報等の楽曲構成情報を利用して、音楽理論にしたがい、再生中の楽曲に複数の音楽素材を、違和感無くミックスしていくものである。
【０１５３】
このため、このリミックスを実現するためには、例えばネットワークを通じてサーバから取得する属性情報に、楽器情報を含めるようにする。この楽器情報は、ドラム、ギター等の楽器の情報である。例えば、１小節分のドラムやパーカッションの演奏パターンを、属性情報として記録しておき、それをループ状に繰り返し用いるようにすることもできる。また、リミックス用にそれらの楽器の演奏パターン情報を用いることもできる。さらに、他の楽曲からリミックする音楽データを抽出するようにしてもよい。
【０１５４】
リミックスの場合には、ＣＰＵ１０１の指示に従い、再生中の楽曲以外のリミックスする音響データを、図９に示したような属性情報のコードを参照しながら、再生中の音響データに、リミックスする音響データを、リズムトラッキング部２０からのカウント値出力ＣＮＴに同期して混合する処理を実行するようにする。
【０１５５】
［実施形態の効果］
以上説明した実施形態によれば、次に挙げる問題や課題を解決することができる。
【０１５６】
（１）従来はＭＩＤＩやＳＭＩＬに代表されるように、コンテンツ制作者が予め作り込んでおいたタイムスタンプの時刻でのみ、メディアタイミング制御が可能であった。それ故、タイムスタンプ情報を持たないＰＣＭ等の生の音声波形（サンプリング音源）に対しては、他のメディアの音楽的なシンクロは不可能であった。
【０１５７】
（２）従来、ＭＩＤＩやＳＭＩＬのデータを作成するに当たり、楽譜を元に、別途、タイムスタンプ情報を算出・付加する必要があった。この作業は大変面倒なものであった。更に、楽曲の全てのタイムスタンプ情報を持つ必要があるため、データサイズも大きくなり、扱いが面倒であった。
【０１５８】
（３）ＭＩＤＩやＳＭＩＬデータは、予め、発音タイミング等をタイムスタンプ情報として持っているため、テンポの変更やリズムにゆれがあった場合に、タイムスタンプ情報を算出し直す必要があり、柔軟な対応が困難であった。
【０１５９】
（４）例えば、現在流れている音楽やラジオから聞こえる音楽、今演奏されているライブ音楽など、リアルタイムに聞こえてくる音楽に対して、既存の技術では同期を取ることは不可能であった。
【０１６０】
上記の問題（１）に関して、上述の実施形態によれば、装置が自動的に音楽の小節や拍のタイミングを認識することができるので、現在主流であるサンプリング音源に対しても、他のメディアとの音楽的なシンクロ動作が可能となる。さらに、一般的に入手が容易な楽譜などの楽曲情報と組み合わせることで、装置が自動的に楽譜を追いかけながら楽曲を再生することができる。
【０１６１】
例えば、この発明の実施形態を従来のステレオシステムに応用すると、既存のＣＤのようなＰＣＭデータ形式のコンテンツにおいても、ＣＤを再生するだけで再生中の音楽のリズムを自動認識し、従来のカラオケのように、音楽に合わせてリアルタイムに歌詞表示したりすることができる。さらに、画像処理と組み合わせることにより、キャラクタがダンスを踊るなどの画像アニメーションとのシンクロ表示も可能となる。
【０１６２】
また、この実施形態で抽出したビート出力信号の他に、楽譜のコード情報などの楽曲情報も利用すれば、楽曲そのものの再アレンジがリアルタイムで可能となるなど、他のアプリケーションへの幅広い応用が期待できる
上記の問題（２）に関して、上述の実施形態によれば、カラオケ装置に音楽の小節や拍のタイミングを自動認識する能力を付与することができるので、現在のカラオケのデータ作成が、より一層簡単になる。そして、楽譜のような一般的かつ汎用的な入手し易いデータを、自動認識した音楽の小節や拍のタイミングに合わせて（同期させて）利用することができる。
【０１６３】
例えば、現在聞こえている音楽がどの小節の何拍目かという状況を装置が自動的に認識できため、特定のイベント時刻に相当するタイムスタンプ情報がなくとも、楽譜に書いてある通りに歌詞を表示することができる。さらには、タイムスタンプ情報の割り当てのためのデータおよびメモリ容量を削減できる。
【０１６４】
また、上述の問題（３）に関して、カラオケのようなシステムだと、曲の途中でのテンポの変更やリズムの揺らぎを表現するに当たり、複雑なタイムスタンプの計算をする必要がある。さらに、インタラクティブに曲の途中でテンポやリズムの揺らぎを変更したい場合には、再度、タイムスタンプを計算し直す必要がある。
【０１６５】
これに対して、上述した実施形態の装置のように、装置がテンポやリズムの揺らぎに対しても追従することが可能であるので、何のデータの変更も必要無く、ずれることなく演奏が継続できる。
【０１６６】
さらに、問題（４）に関しては、この実施形態によれば、カラオケ装置に音楽の小節や拍のタイミングを自動認識する能力を付与することができるので、ライブかつリアルタイムなカラオケのような機能が実現できる。例えば、現在誰かが演奏している生の音に対してリズム同期をし、楽譜を追いかけることができる。それにより、例えばライブ演奏に合わせて歌詞や画像などをシンクロ表示させることや、他の音源機器を制御して音を重ねたり、その他の機器を音楽とシンクロさせたりすることができる。例えば、音楽のサビのフレーズやキメのフレーズでライティングを制御したり、花火の打ち上げ制御したりすることも可能である。ＦＭラジオから聞こえる音楽に関しても同様である。
【０１６７】
［その他の実施形態］
上述の実施形態のビート抽出部２１では、入力オーディオデータの全ての周波数帯域成分についてパワースペクトルを算出し、その変化率を算出することにより、ビート成分を抽出するようにしたが、ビート成分の抽出に比較的関与しないと思われる成分を予め除去してから、ビート抽出処理をするようにしても良い。
【０１６８】
例えば、図１２に示すように、パワースペクトル算出部２１１の前段に、ビート成分の抽出に比較的関与しないと思われる成分、例えば高域成分や超低域成分、を不要成分として除去する不要成分除去フィルタ２１３を設ける。そして、この不要成分除去フィルタ２１３により不要成分が除去された後のオーディオデータについて、パワースペクトル算出部２１１でパワースペクトルを算出し、また、変化率算出部２１２で、そのパワースペクトルの変化率を算出して、ビート成分検出出力信号ＢＴを得るようにする。
【０１６９】
この図１２の例によれば、不要周波数成分が除去されることにより、パワースペクトル算出部２１１での演算量を少なくすることができる。
【０１７０】
なお、この発明は、上述したパーソナルコンピュータや携帯型の音楽再生機にのみ適用されるものではなく、音楽コンテンツの音楽データにリアルタイムにビート抽出する場合や、リズムトラッキングする場合、また、そのアプリケーションを適用することができる場合であれば、どのような態様の装置や電子機器にも適用可能であることは言うまでもない。
【図面の簡単な説明】
【０１７１】
【図１】この発明によるビート抽出装置および方法の原理を説明するために用いる波形図である。
【図２】この発明の実施形態が適用された音楽コンテンツの再生装置の構成例を示すブロック図である。
【図３】図２の実施形態におけるビート抽出処理動作を説明するために用いる波形図である。
【図４】この発明によるリズムトラッキング装置の実施形態のブロック図である。
【図５】この発明によるビート抽出装置の実施形態における変化率算出部の動作を説明するための図である。
【図６】この発明によるビート抽出装置の実施形態における処理動作を説明するためのフローチャートである。
【図７】この発明による音楽同期表示装置の実施形態における表示画面の一例を示す図である。
【図８】この発明による音楽同期画像表示装置の実施形態を説明するためのフローチャートである。
【図９】この発明による音楽同期表示装置の実施形態の説明に用いる図である。
【図１０】この発明による音楽同期表示装置の実施形態を説明するためのフローチャートである。
【図１１】この発明による音楽同期表示装置の実施形態の適用装置例を示す図である。
【図１２】この発明によるビート抽出装置の他の実施形態を説明するためのブロック図である。
【符号の説明】
【０１７２】
１０…音楽コンテンツの再生装置、１２…マイクロホン、２０…リズムトラッキング部、２１…ビート抽出部、２２…トラッキング部、１０８…同期動き画像生成部、２１１…パワースペクトル算出部、２１２…変化率算出部、２１３…不要成分除去フィルタ、２２１…ＢＰＭ値算出部、２２３…可変周波数発振器、２２４…位相比較部、２２７…Ｎ進カウンタ
【図１】
2007033851.tif 000003
【図２】
2007033851.tif 000004
【図３】
2007033851.tif 000005
【図４】
2007033851.tif 000006
【図５】
2007033851.tif 000007
【図６】
2007033851.tif 000008
【図７】
2007033851.tif 000009
【図８】
2007033851.tif 000010
【図９】
2007033851.tif 000011
【図１０】
2007033851.tif 000012
【図１１】
2007033851.tif 000013
【図１２】
2007033851.tif 000014