Warning: copy(.htaccess): failed to open stream: Permission denied in /home/jp321/public_html/header.php on line 8
シーケンスデータ生成装置およびシーケンスデータ生成プログラム - ヤマハ株式会社
米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 楽器;音響 -> ヤマハ株式会社

発明の名称 シーケンスデータ生成装置およびシーケンスデータ生成プログラム
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2007−57751(P2007−57751A)
公開日 平成19年3月8日(2007.3.8)
出願番号 特願2005−242208(P2005−242208)
出願日 平成17年8月24日(2005.8.24)
代理人 【識別番号】100111763
【弁理士】
【氏名又は名称】松本 隆
発明者 村上 隼也
要約 課題
音高の変化が明確でない楽音波形のオーディオストリームデータからノートオンタイミングおよびノートオフタイミングを検出し、素子駆動用のシーケンスデータを生成する。

解決手段
周波数解析により求めたパワースペクトルを、横軸を周波数、縦軸を振幅として表示し、この表示画面上において所望の周波数帯域および振幅域をマウスなどのポインティングデバイスにより指定させる。そして、指定された周波数帯域および振幅域内にオーディオストリームデータのパワースペクトルのピークが収まる期間を検出し、この検出結果に基づいてシーケンスデータを生成する。
特許請求の範囲
【請求項1】
楽曲またはその一部の波形を示すオーディオストリームデータの開始点から終了点までの各部の周波数特性を順次求める周波数解析手段と、
周波数帯域および振幅域を指定する範囲指定手段と、
前記範囲指定手段により指定された周波数帯域および振幅域に前記周波数解析手段によって順次求められる周波数特性におけるパワースペクトルのピークが含まれる期間を検出し、この検出結果に基づき、楽音の発生タイミングを示すシーケンスデータを生成するシーケンスデータ生成手段と
を具備することを特徴とするシーケンスデータ生成装置。
【請求項2】
前記周波数解析手段により求められる周波数特性におけるパワースペクトルを表示する表示手段を具備し、
前記範囲指定手段は、前記表示手段における前記パワースペクトルの表示画面上において前記周波数帯域および前記振幅域を画定する矩形を指定するポインティングデバイスを具備することを特徴とする請求項1に記載のシーケンスデータ生成装置。
【請求項3】
コンピュータを、
楽曲またはその一部の波形を示すオーディオストリームデータの開始点から終了点までの各部の周波数特性を順次求める周波数解析手段と、
周波数帯域および振幅域を指定する範囲指定手段と、
前記範囲指定手段により指定された周波数帯域および振幅域に前記周波数解析手段によって順次求められる周波数特性におけるパワースペクトルのピークが含まれる期間を検出し、この検出結果に基づき、楽音の発生タイミングを示すシーケンスデータを生成するシーケンスデータ生成手段として機能させることを特徴とするシーケンスデータ生成プログラム。
発明の詳細な説明
【技術分野】
【0001】
この発明は、楽音に連動して素子を駆動するのに用いるシーケンスデータを生成する装置およびプログラムに関する。
【背景技術】
【0002】
携帯電話など、楽曲再生機能を持った電子機器では、楽曲再生の際、アミューズメント性を高めるために、楽曲のノート(音符)のタイミングに合わせてLEDを点滅させ、あるいはバイブレータを振動させる場合がある。ここで、電子機器がMIDIデータなどの演奏データによって音源を駆動して楽曲再生を行うものである場合には、演奏データに含まれるノートオンやノートオフの指示の情報をLEDの点滅等の制御に用いることができた。しかし、最近の携帯電話などでは、このように音源の駆動により楽曲再生を行うのではなく、演奏を録音することにより得られたオーディオストリームデータを再生することにより楽曲再生を行う機種も提供されている。この場合、オーディオストリームデータは、楽音波形を表すデータであって、ノートオンやノートオフのタイミングを直接表すデータではないので、これをLEDの点滅制御等に用いることはできない。従って、このようなオーディオストリームデータを用いて楽曲再生を行う装置において、LEDの点滅制御等を行うためには、楽曲のノートのタイミングを示すデータを別途用意する必要がある。従来、オーディオストリームデータからノートのタイミングの抽出を行う技術として、特許文献1に開示された技術があった。この技術は、オーディオストリームデータを一定時間長のフレームに分割し、フレーム毎に周波数解析を行ってスペクトルを求め、フレーム間におけるスペクトルのピークの不連続性を検出することによりノートのタイミングを検出するものである。
【特許文献1】特開2003−5744号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
ところで、上述した特許文献1に開示された技術は、スペクトルのピークの不連続性に基づいてノートのタイミングを検出するので、時間経過に伴って音高が明確に変化する楽音波形のオーディオストリームデータでないと、オーディオストリームデータ自体からノートのタイミングを検出するのは困難であるという問題があった。
【0004】
この発明は、以上説明した事情に鑑みてなされたものであり、処理対象が打楽器音などのような音高の変化が明確でない楽音波形のオーディオストリームデータである場合であっても、ノートのタイミングを検出し、LEDやバイブレータなどの素子を駆動するシーケンスデータを生成することができるシーケンスデータ生成装置およびシーケンスデータ生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
この発明は、楽曲またはその一部の波形を示すオーディオストリームデータの開始点から終了点までの各部の周波数特性を順次求める周波数解析手段と、周波数帯域および振幅域を指定する範囲指定手段と、前記範囲指定手段により指定された周波数帯域および振幅域に前記周波数解析手段によって順次求められる周波数特性におけるパワースペクトルのピークが含まれる期間を検出し、この検出結果に基づき、楽音の発生タイミングを示すシーケンスデータを生成するシーケンスデータ生成手段とを具備することを特徴とするシーケンスデータ生成装置およびコンピュータを前記各手段として機能させるシーケンスデータ生成プログラムを提供する。
かかる発明によれば、範囲指定手段により適切な周波数帯域および振幅域を指定することにより、周波数解析手段により順次求められるオーディオストリームデータの周波数特性から楽音の発生タイミングを検出し、シーケンスデータを生成することができる。
【発明を実施するための最良の形態】
【0006】
以下、図面を参照し、この発明の実施の形態を説明する。
図1はこの発明の一実施形態であるシーケンスデータ生成装置の構成を示すブロック図である。このシーケンスデータ生成装置は、パーソナルコンピュータなどのコンピュータに対し、オーディオストリームデータからシーケンスデータを生成するシーケンスデータ生成プログラムをインストールしたものである。
【0007】
図1において、CPU1は、このシーケンスデータ生成装置の各部を制御する制御中枢である。ROM2は、ローダなど、このシーケンスデータ生成装置の基本的な動作を制御するための制御プログラムを記憶した読み出し専用メモリである。表示部3は、装置の動作状態やユーザに対するメッセージなどを表示するための装置である。操作部4は、ユーザからコマンドや各種の情報を受け取るための手段であり、キーボードやマウスなどの各種の操作子により構成されている。I/F(インタフェース)群5は、ネットワークを介して他の装置との間でデータ通信を行うためのネットワークインタフェースや、磁気ディスク、CD−ROMなどの外部記憶媒体との間でデータの授受を行うためのドライバなどにより構成されている。HDD(ハードディスク装置)6は、各種のプログラムやデータベースなどの情報を記憶するための不揮発性記憶装置である。RAM7は、CPU1によってワークエリアとして使用される揮発性メモリである。CPU1は、操作部4を介して与えられる指令に従い、HDD6内のプログラムをRAM7にロードして実行する。サウンドシステム8は、CPU1による制御の下、音声を出力する装置である。
【0008】
HDD6に記憶される情報として、シーケンスデータ生成プログラムとその処理対象であるオーディオストリームデータがある。ここで、オーディオストリームデータは、楽曲演奏の際の楽音波形をサンプリングして符号化することにより得られるデータである。また、シーケンスデータ生成プログラムは、このオーディオストリームデータから楽音の発音期間を示すノート情報を抽出し、一連のノート情報により構成されるシーケンスデータを生成するプログラムである。好ましい態様において、シーケンスデータ生成プログラムおよびオーディオストリームデータは、例えばインターネット内のサイトからI/F群5の中の適当なものを介してダウンロードされ、HDD6にインストールされる。また、他の態様において、シーケンスデータ生成プログラムおよびオーディオストリームデータは、CD−ROM、MDなどのコンピュータ読み取り可能な記憶媒体に記憶された状態で取引される。この態様では、I/F群5の中の適当なものを介して記憶媒体からシーケンスデータ生成プログラムまたはオーディオストリームデータが読み出され、HDD6にインストールされる。
【0009】
図2はシーケンスデータ生成プログラムの処理内容を示すブロック図である。この図に示すように、シーケンスデータ生成プログラムは、窓掛け11、FFT(高速フーリエ変換)12、パワースペクトル表示13、矩形指定によるパラメータ設定14、矩形内ピーク検出15および発音時間累算16の各処理を含む。窓掛け11では、処理対象であるオーディオストリームデータを一定時間長のフレームに分割し、フレーム毎に窓関数を乗算する。FFT12では、フレーム毎に、窓関数の乗じられたオーディオストリームデータにFFTを施し、オーディオストリームデータの周波数特性を求める。そして、パワースペクトル表示13では、横軸を周波数軸、縦軸を振幅軸として、FFT12において求めた各フレームの周波数特性の絶対値であるパワースペクトルを表示部3に表示する。
【0010】
図3はこのパワースペクトル表示13の処理により表示部3に表示されるパワースペクトルの例を示している。打楽器音などの波形は、図示の例のように、広い周波数範囲に分布したパワースペクトルを含んでいるが、それらのパワースペクトルの中には発音開始から発音終了までの間に振幅が大きく推移する特徴的なパワースペクトルがある。ユーザは、表示部3におけるパワースペクトル表示を確認し、そのような特徴的なパワースペクトルが存在する周波数帯域と振幅域を見つける。矩形指定によるパラメータ設定14では、パワースペクトルの表示された表示部3の表示画面上において、上記の特徴的なパワースペクトルの存在する矩形領域の始点P1および終点P2を操作部4におけるマウスなどのポインティングデバイスの操作によりユーザに指定させる。そして、矩形指定によるパラメータ設定14では、図3に示すように、操作部4の操作によって指定された矩形領域をパワースペクトルと重ね表示するとともに、その矩形領域の横辺によって示される周波数帯域と縦辺によって示される振幅域をパラメータとして受け取る。
【0011】
矩形内ピーク検出15および発音時間累算16の各処理は、オーディオストリームデータのパワースペクトルからノート情報を抽出し、シーケンスデータを生成する処理を構成している。これらの処理は、矩形指定によるパラメータ設定14が実行され、周波数帯域および振幅域が設定されることにより実行可能となる。矩形内ピーク検出15では、FFT12により得られたパワースペクトルのピークの中に、パラメータ設定14により得られた周波数帯域および振幅域の範囲内に属するものがあるか否かをフレーム毎に判定する。この判定がフレーム毎に繰り返されることにより、楽音の発音期間の開始と終了が求められる。そして、発音時間累算16では、この周波数帯域幅および振幅域の範囲内にパワースペクトルのピークが含まれる時間を累算する。この累算により、楽音の発音期間の長さが求められる。そして、楽音の発音期間の開始時刻および長さを示すノート情報が得られ、シーケンスデータが構成される。
【0012】
次に本実施形態の動作を説明する。図4は、シーケンスデータ生成プログラムにおいて図2における矩形指定によるパラメータ設定14に相当するルーチンの処理内容を示すフローチャートである。また、図5は、シーケンスデータ生成プログラムにおいて図2における矩形内ピーク検出15および発音時間累算16に相当するルーチンの処理内容を示すフローチャートである。ユーザが操作部4の操作によりシーケンスデータ生成プログラムの起動を指示すると、CPU1は、同プログラムをHDD6からRAM7にロードして実行する。このシーケンスデータ生成プログラムの実行過程において、CPU1は、まず、図4に示すルーチンの実行を開始する。まず、CPU1は、パワースペクトル表示ウィンドウがアクティブか否かを判断し(ステップS101)。この判断の結果が「NO」である場合、CPU1は、同判断を繰り返す。ここで、操作部4の操作により、HDD6内の所望のオーディオストリームデータの選択が指示されると、CPU1は、シーケンスデータ生成プログラムに従い、そのオーディオストリームデータをHDD6からRAM7内のワークエリアにロードし、このワークエリア内のオーディストリームデータについて図2における窓掛け11、FFT12、パワースペクトル表示13を実行する。これによりパワースペクトルが表示部3に表示される。この際、RAM7のワークエリアにロードされたオーディオストリームデータをサウンドシステム8により再生し、処理対象をユーザに聴かせるようにしてもよい。
【0013】
パワースペクトルの表示の態様には各種のものが考えられる。第1の態様では、横軸を周波数、縦軸を振幅とするパワースペクトルのグラフをフレーム毎に順次表示する。この態様では、ユーザは、パワースペクトルのグラフが時間経過に伴って変化してゆくのを観察することができる。なお、矩形指定によるパラメータ設定14におけるユーザの操作を容易にするため、矩形指定によるパラメータ設定14が完了するまでの間、オーディオストリームデータの最後のフレームのパワースペクトルの表示が終わった後、再び最初のフレームに戻り、窓掛け11、FFT12、パワースペクトル表示13を繰り返し実行するようにしてもよい。第2の態様では、フレーム毎に得られるパワースペクトルのグラフの画像をRAM7内のビデオメモリエリアに重ね書きし、ビデオメモリエリア内の画像を表示部3に表示する。この態様では、ユーザは、全フレームについて重ね合わせたパワースペクトルのグラフを表示部3の表示画面上において観察することができる。
【0014】
表示部3にパワースペクトルが表示されると、ユーザは、パワースペクトルを観察する。そして、時間経過に伴って振幅が大きく変化するような特徴的なパワースペクトルがある場合、ユーザは、操作部4のマウスのドラッグ操作により、その特徴的なパワースペクトルのピークを囲む矩形を指定する。以下の処理は、このマウス操作による矩形入力を受け付けるための処理である。
【0015】
まず、パワースペクトル表示が行われ、ステップS101の判断結果が「YES」となってステップS102に進むと、CPU1は、操作部4におけるマウスボタンが押されたか否かを判断し、肯定的な判断結果が得られるまで同判断を繰り返す。マウスボタンが押され、ステップS102の判断結果が「YES」になると、CPU1は、既に矩形が表示部3に表示されているか否かを判断する(ステップS103)。この判断結果が「NO」である場合、CPU1は、マウスボタンが押されたときの表示画面上のカーソルの位置座標を始点P1の位置座標として記憶する(ステップS106)。次にCPU1は、マウスボタンが離されたか否かを判断し(ステップS107)、肯定的な判断結果が得られるまで同判断を繰り返す。
【0016】
そして、マウスボタンが離されて、ステップS107の判断結果が「YES」になると、CPU1は、マウスボタンが離されたときの表示画面上のカーソルの位置座標を終点P2の位置座標として記憶する(ステップS108)。次にCPU1は始点P1と終点P2を結ぶ直線が対角線となる矩形を、パワースペクトルと重ね合わせて表示部3に表示する(ステップS109)。そして、CPU1は、表示された矩形の縦辺に相当する振幅域と横辺に相当する周波数帯域幅を求め、ノート情報の抽出対象となる領域を特定するパラメータとして設定し(ステップS110)、処理をステップS101に戻す。
【0017】
本実施形態においてユーザは、以上のようにして表示部3に矩形が表示された状態において、マウス操作により矩形を変更することができる。以下、その場合の動作を説明する。まず、矩形が表示された状態においてマウスボタンが押されると、ステップS102を介してステップS103に進んだとき、このステップS103の判断結果が「YES」となり、処理はステップS104に進む。ステップS104において、CPU1は、マウスが押されたときのカーソル位置が表示されている矩形の辺上にあるか否かを判断する。この判断結果が「NO」である場合、CPU1は、表示部3における矩形の表示を消去し(ステップS105)、マウスが押されたときのカーソル位置の座標を始点P1の座標として記憶する(ステップS106)。その後、マウスが離されたときに、上述と同様、ステップS107〜S110を順次実行して矩形を確定させ、矩形の縦辺に相当する振幅域と矩形の横辺に相当する周波数帯域をパラメータとして設定する。このように、始点P1として、表示されている矩形の辺上でない位置を指すマウス操作が行われた場合には、既に表示されている矩形が消去され、新たな矩形入力として取り扱われる。
【0018】
一方、表示されている矩形の辺上にカーソルを位置させてマウスボタンが押されたときには、ステップS102およびステップS103を介してステップS104に進んだとき、ステップS104の判断結果が「YES」となり、ステップS111に進む。このステップS111において、CPU1は、マウスボタンが離されたか否かを判断し、肯定的な判断結果が得られるまで同判断を繰り返す。そして、マウスが離されてステップS111の判断結果が「YES」になると、CPU1は、ステップS104においてマウスによって指示されていることを確認した矩形の辺を、マウスのドラッグ量に応じて移動させ、この辺の移動後の矩形を表示部3に表示する(ステップS112)。そして、処理はステップS110に進み、CPU1は、表示された矩形の縦辺に相当する振幅域と横辺に相当する周波数帯域幅を求め、ノート情報の抽出対象となる領域を特定するパラメータとして設定し(ステップS110)、処理をステップS101に戻す。
【0019】
以上のようにして、矩形の縦辺に相当する振幅域と、矩形の横辺に相当する周波数帯域が設定されると、図5に示すルーチンの実行が可能な状態となる。そして、ユーザが操作部4の操作により、シーケンスデータの生成の指示を入力すると、CPU1は、図5に示すルーチンを実行する。このルーチンでは、オーディオストリームデータをフレーム単位で処理してノートイベントを含むシーケンスデータを生成する。まず、CPU1は、初期化処理を実行し、ノートオンフラグNONを“0”に、フレームカウンタFCNTを「0」に、ノートオン期間カウンタNLを「0」に設定する(ステップS201)。ここで、ノートオンフラグNONは、現在処理しているフレームがノートオン期間(楽音の発音期間)のものかノートオフ期間のものかを示すフラグであり、ノートオン期間は“1”、ノートオフ期間は“0”とされる。また、フレームカウンタFCNTは、オーディオストリームデータのフレーム単位での処理を進める際に処理したフレーム数を計数するカウンタである。このカウンタのカウント値は、オーディオストリームデータの開始点を基準とした時刻情報として用いられる。ノートオン期間カウンタNLは、ノートオン期間が始まってから終了するまでのフレーム数を計数するカウンタである。
【0020】
ステップS201の初期化処理が終了すると、CPU1は、RAM7のワークエリアから1フレーム分のオーディオストリームデータを読み出し、そのフレームについて図2における窓掛け11、FFT12およびパワースペクトル表示13の各処理を実行する(ステップS202)。次にCPU1は、FFT12により得られたパワースペクトルのピークの中に、現在設定されている矩形領域の周波数帯域および振幅域に収まるものがあるか否かを判断する(ステップS203)。この判断結果が「NO」である場合、CPU1は、ノートオンフラグNONが“0”であるか否かを判断する(ステップS204)。そして、ステップS204の判断結果が「YES」である場合、CPU1は、フレームカウンタFCNTを「1」だけ増加させる(ステップS210)。次にCPU1は、現在のフレームが処理対象であるオーディオストリームデータの最後のフレームか否かを判断し(ステップS211)、この判断結果が「NO」である場合には処理をステップS202に戻す。以後、ステップS202、S203、S204、S210、S211の各処理が繰り返される。
【0021】
この間、ステップS202の処理対象となるフレームが楽曲のノートオフ期間に属するものからノートオン期間に属するものに移行してゆくと、ステップS202において得られるパワースペクトルの振幅が大きくなってゆく。そして、ステップS202において得られるパワースペクトルのピークが現在設定されている矩形領域内に入ると、ステップS203の判断結果が「YES」になり、CPU1の処理はステップS207に進む。このステップS207においてCPU1は、ノートオンフラグNONが“1”か否かを判断する。この判断結果が「NO」である場合、すなわち、ノートオフ期間からノートオン期間への切り換わりがあった場合には、CPU1は、ノートオンフラグNONを“1”とし、その時点におけるフレームカウンタFCNTのカウント値をノートオン開始時刻データFSとして保存し、ノートオン期間カウンタNLを「0」に初期化する(ステップS208)。次にCPU1は、ノートオン期間カウンタNLを「1」だけ増加させ(ステップS209)、上述したステップS210およびS211を順次実行し、ステップS211の判断結果が「NO」である場合には処理をステップS202に戻す。
【0022】
この結果、処理はステップS202およびS203を介してステップS207に進む。このとき、ノートオンフラグNONは“1”となっているため、ステップS207の判断結果は「YES」となる。従って、CPU1は、ステップS209、S210およびS211を順次実行し、ステップS211の判断結果が「NO」である場合には処理をステップS202に戻す。以後、ステップS202、S203、S207、S209、S210、S211の各処理が繰り返される。
【0023】
この間、ステップS202の処理対象となるフレームが楽曲のノートオン期間に属するものからノートオフ期間に属するものに移行してゆくと、ステップS202において得られるパワースペクトルの振幅が小さくなってゆく。そして、ステップS202において得られるパワースペクトルのピークが現在設定されている矩形領域外に出ると、ステップS203の判断結果が「NO」になり、CPU1の処理はステップS204に進む。このステップS204においてCPU1は、ノートオンフラグNONが“0”か否かを判断する。このときノートオンフラグNONは“1”となっているため、ステップS204の判断結果は「NO」となり、CPU1の処理はステップS205に進む。このステップS205においてCPU1は、ノートオンフラグNONを“0”とする。次にステップS206に進み、CPU1は、その時点におけるノートオン開始時刻データFSおよびノートオン期間カウンタNLをノート情報としてRAM7内に設定されたシーケンスデータの格納エリアに格納する(ステップS206)。次にCPU1は、ステップS210およびS211を順次実行し、ステップS211の判断結果が「NO」である場合には処理をステップS202に戻す。
以後、同様の動作が繰り返され、ステップS211の判断結果が「YES」となったときこのルーチンは終了する。
【0024】
以上の処理により、ノート情報を時系列的に並べたシーケンスデータがRAM7内に得られる。このシーケンスデータは元のオーディオストリームデータと共に携帯電話などの楽曲再生機能を持った電子機器のユーザに供給され、オーディオストリームデータは楽曲の再生に、シーケンスデータはLEDやバイブレータの駆動制御に用いられる。オーディオデータおよびシーケンスデータは、I/F群5の中の適切な装置により記憶媒体に格納してユーザに供給してもよいし、I/F群5の中の適切な装置を介してネットワーク内のサーバに送信し、そこからユーザに配信するようにしてもよい。
【0025】
以上のように、本実施形態によれば、周波数解析によりオーディオストリームデータのパワースペクトルを求め、指定された周波数帯域および振幅域内にパワースペクトルのピークが収まる期間を検出し、この検出結果に基づいてシーケンスデータを生成するようにしたので、打楽器演奏音など音高の変化が明確でない楽音の発音タイミングを示すシーケンスデータをオーディオストリームデータから生成することができる。また、本実施形態によれば、周波数解析により求めたパワースペクトルを、横軸を周波数、縦軸を振幅として表示し、この表示画面上において所望の周波数帯域および振幅域をマウスなどのポインティングデバイスにより指定させるようにしたので、ユーザは、所望の楽音の種類に特有な特徴的なパワースペクトルの発生する周波数帯域および振幅域を見つけ、その領域を簡単な操作により指定することができる。
【0026】
以上、この発明の一実施形態について説明したが、この発明にはこれ以外にも他の実施形態が考えられる。例えば次の通りである。
(1)上記実施形態では、マウスの操作により矩形領域をユーザに指定させたため、振幅域の上限および下限の両方が得られ、パワースペクトルのピークが指定された周波数帯域内にあり、かつ、振幅域の上限および下限の間に収まっている期間を検出した。しかし、振幅域の上限は無視し、パワースペクトルのピークが指定された周波数帯域内にあり、かつ、振幅域の下限以上である期間を検出し、これを楽音の発音期間として扱ってもよい。
【0027】
(2)上記実施形態では、楽音の発音開始時刻を示す情報と発音の持続時間を示す情報を含むシーケンスデータを生成したが、楽音の発音開始時刻を示す情報を含み、発音の持続時間を示す情報を含まないシーケンスデータを生成してもよい。あるいは、シーケンスデータに従ってLEDやバイブレータの駆動を行う携帯電話などの電子機器において、シーケンスデータ中の楽音の発音開始時刻を示す情報のみを利用してLED等の駆動開始タイミングを制御し、駆動の持続時間は例えばユーザが操作子の操作により自由に設定するようにしてもよい。
【0028】
(3)上記実施形態において、窓掛け11、FFT12、パワースペクトル表示13の高速実行が可能な場合には、処理対象のオーディオストリームデータをサウンドシステム8に送って楽曲を再生させ、これに同期させて、オーディオストリームデータの各フレームについての窓掛け11、FFT12、パワースペクトル表示13を順次実行させるようにしてもよい。この態様によれば、ユーザは、サウンドシステム8により再生される楽曲を聴き、例えばドラム音などの所望の楽音が発音されるのに合わせて大きく動く特徴的なパワースペクトルを発見し、矩形領域の指定を行うことができる。
【0029】
(4)矩形領域の指定を行わせるために利用するオーディオストリームデータとシーケンスデータを生成するために利用するオーディオストリームデータは別のデータであってもよい。すなわち、矩形指定によるパラメータ設定14を容易に行わせるために、処理対象のオーディオストリームデータとは別に、ドラム音、シンバル音といった各種の楽音の単発音のオーディオストリームデータを用意する。そして、これらのうちユーザによって指定されたものについて窓掛け11、FFT12、パワースペクトル表示13および矩形指定によるパラメータ設定14を実行する。そして、矩形領域が定まった場合には、所望の楽曲のオーディオストリームデータを処理対象とし、窓掛け11、FFT12、パワースペクトル表示13、矩形内ピーク検出15および発音時間累算16の各処理を実行するのである。
【0030】
(5)上記実施形態では、1個の矩形領域を指定するようにしたが、矩形領域を複数指定することを認め、矩形領域毎に、パワースペクトルのピークが収まる期間の検出および検出結果に基づくシーケンスデータの生成を行うようにしてもよい。この態様によれば、複数種類の楽音を含む楽曲のオーディオストリームデータが処理対象となっており、かつ、楽音の種類により、特徴的なパワースペクトルの現れる周波数帯域が異なるような場合に、それらの楽音の種類毎に矩形領域を設定し、各楽音に対応したシーケンスデータを生成することができる。この場合において、シーケンスデータを利用する携帯電話等において、例えば第1の楽音のシーケンスデータにより赤色LEDの点滅制御を行い、第2の楽音のシーケンスデータにより青色LEDの点滅制御を行うようにしてもよい。
(6)窓掛け11およびFFT12は、CPU1がDSP(デジタル信号プロセッサ)などの他の装置に実行させるようにしてもよい。
【図面の簡単な説明】
【0031】
【図1】この発明の一実施形態であるシーケンスデータ生成装置の構成を示すブロック図である。
【図2】同実施形態におけるシーケンスデータ生成プログラムの処理内容を示す図である。
【図3】同実施形態におけるパワースペクトルの表示例を示す図である。
【図4】同実施形態における矩形指定によるパラメータ設定のためのルーチンの処理内容を示すフローチャートである。
【図5】同実施形態における矩形内ピーク検出および発音時間累算のためのルーチンの処理内容を示すフローチャートである。
【符号の説明】
【0032】
1……CPU、2……ROM、3……表示部、4……操作部、5……I/F群、6……HDD、7……RAM、8……サウンドシステム、11……窓掛け、12……FFT、13……パワースペクトル表示、14……矩形指定によるパラメータ設定、15……矩形内ピーク検出、16……発音時間累算。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013