JP2015060203A - 演奏データとオーディオデータの同期装置、方法、およびプログラム - Google Patents

演奏データとオーディオデータの同期装置、方法、およびプログラム Download PDF

Info

Publication number
JP2015060203A
JP2015060203A JP2013195957A JP2013195957A JP2015060203A JP 2015060203 A JP2015060203 A JP 2015060203A JP 2013195957 A JP2013195957 A JP 2013195957A JP 2013195957 A JP2013195957 A JP 2013195957A JP 2015060203 A JP2015060203 A JP 2015060203A
Authority
JP
Japan
Prior art keywords
data
melody
audio data
performance data
audio
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013195957A
Other languages
English (en)
Other versions
JP6459162B2 (ja
Inventor
広子 奥田
Hiroko Okuda
広子 奥田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2013195957A priority Critical patent/JP6459162B2/ja
Publication of JP2015060203A publication Critical patent/JP2015060203A/ja
Application granted granted Critical
Publication of JP6459162B2 publication Critical patent/JP6459162B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】オーディオデータに演奏データを同期させる技術に関し、オーディオデータの再生にそれに対応する演奏データの再生を同期させることを可能とする。
【解決手段】楽曲データベース中に、現在選曲されているオーディオ曲に対応するボーカル付きのオーディオデータとそのカラオケバージョンが有れば(ステップS701がYES)、ボーカル付きのオーディオデータの時間信号から、ボーカルなしのカラオケデータのオーディオデータの時間信号を、両方の開始時間を合わせた上で差し引くことによって、メロディデータが抽出される(ステップS702)。このメロディデータのオンタイミングに、SMFデータのメロディデータのオンタイミングがあわせられ(ステップS703)、オーディオデータとSMFデータの同期がとられる。オーディオデータを伴奏音に、SMFデータのメロディパートを使って楽器レッスンを実現できる。
【選択図】図7

Description

本発明は、オーディオデータに演奏データを同期させる技術に関する。
昨今、音楽はデジタル化され、CD(コンパクトディスク)を購入するか、インターネット上の音楽サイトなどからデータをダウンロード購入するのが一般的である。元となるオーディオデータを作るのも、ジャンルによってはパソコン一台で制作することが可能である。このように音楽制作や販売方法が簡略化され効率化されたために、楽曲のライフサイクルは短くなり、大量の曲が作られるようになった。また、このような音楽制作環境の変化により、大手の音楽制作会社を通じなくても簡単に音楽データを作れるようになったために、マイナーレーベルからもどんどん曲が作られるようになった。
これらの楽曲のうち歌のある曲については、カラオケなどで歌えるようにするため、多くの曲がSMF(Standard MIDI File:標準MIDIファイル)データとして作られ供給されている(例えば特許文献1)。中には全て生伴奏だったり、コーラスのみ生のオーディオデータだったりするものもあるが、カラオケする人の歌の上手い下手を採点する機能のあるものについては、基準となる正解音程が必要であるため、MIDIデータを持っているものが多い。オーディオ伴奏が増えてきたとはいえ、テンポ変化や、調変化をする上で便利なので、SMFデータのカラオケのほうがいまだに多い状況である。
一方、電子楽器においては、ヒット曲やクラシック曲を内蔵曲用SMFデータとして備え、このデータをもとに鍵盤を光らせたり、レッスンさせたりする機能がある。200曲以上内蔵曲を入れている機種もあるが、ほとんどがクラシック曲であり、ライフサイクルの短いポップス曲などはごく一部しか含まれていない。このため、ユーザそれぞれが聴いている音楽を弾きたいと思うと、内蔵曲に含まれていないことのほうが多く、わざわざ楽曲サイトに行ってSMFデータ等による演奏データファイルを購入しなければならない。とはいえ、購入できる楽曲も一部であり、全ての曲が購入できるわけではない。
この場合に、例えばカラオケデータ用として提供されているSMFデータ等による演奏データファイルを、例えばインターネットのサイト等から取得できれば、それを電子楽器でのレッスン用の演奏データファイルとして活用できると考えられる。
さらに、カラオケデータ用等として提供されているSMFデータ等と合わせて、それに対応する元のオーディオデータも利用することができれば、例えばメロディレッスン用の演奏データとしてはカラオケデータ用等のSMFデータのうちメロディパートを加工して電子楽器で再生し、伴奏音としてはオーディオデータを再生することにより、演奏レッスンの臨場感を向上させることができる。
特開2012−150393号公報
しかし、カラオケデータ用等として提供されているSMFデータは、例えばカラオケ利用者が歌い出しやすいように、先頭部分にオリジナルにはない和音やカウントリズムが入っていたり、オーディオデータの再生タイミングとは一致しない場合が多い。そのため、単にSMFデータを取得してメロディパートを再生しただけでは、それにオーディオデータの再生タイミングが合わず、オーディオデータによる伴奏に合わせてSMFデータによるメロディパートの楽器レッスンを行うのが困難であるという問題点を有していた。
本発明は、オーディオデータの再生にそれに対応する演奏データの再生を同期させることを可能とすることを目的とする。
態様の一例では、オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データを記憶する演奏データファイルと、前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するメロディデータ抽出部と、前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれる演奏データの開始タイミングとの同期をとるメロディ同期部と、を備える。
本発明によれば、オーディオデータの再生にそれに対応する演奏データの再生を同期させることが可能となる。
本発明の実施形態のシステム構成例を示す図である。 端末装置のハードウェア構成例と、クラウドサーバ102の機能構成例を示す図である。 オーディオ曲とSMFデータのマッチング処理を示すフローチャートである。 SMFデータをレッスンデータに調整する処理を示すフローチャートである。 メロディ音色変更処理を示すフローチャートである。 ジャンル検出処理を示すフローチャートである。 オーディオデータとSMFデータの同期処理を示すフローチャートである。 インデックス(Index)のデータ構成例を示す図である。 メロディ音色変更のための音色グループデータベースのデータ構成例を示す図である。
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。
図1は、本発明の実施形態のシステム構成例を示す図である。
端末装置101は、スマートフォン、タブレット端末、パーソナルコンピュータなどの、通信機能のあるコンピュータである。この端末装置101の例えばUSB(Universal Serial Bus)コネクタと、光鍵盤キーボード103の例えばMIDI(Musical Digital Interface)コネクタは、接続ケーブルによって接続することができる。また、端末装置101は、無線回線やブロードバンドの光回線またはメタル回線からインターネットを介して、サーバコンピュータであるクラウドサーバ102と通信することができる。
端末装置101は、ユーザの操作に基づいて、その本体内に記憶されているオーディオ曲を選択し、そのオーディオ曲に対応するカラオケ用のSMF(Standard MIDI Format)データの検索要求を、クラウドサーバ102に対して発行する。検索要求には、オーディオデータのインデックス(以下「Index」とも表記する)に関するものと、メロディデータの音高データ列に関するものがある。クラウドサーバ102は、自身が記憶するカラオケ用SMFデータベース223に対して検索要求に対応する検索処理を実行し、該当するSMFデータを抽出する。とクラウドサーバ102にあるカラオケ用SMFデータのインデックスを比較する。クラウドサーバ102は、カラオケ用のSMFデータを抽出できたら、それを端末装置101に送信する。
端末装置101は、ダウンロードされたSMFデータから、レッスン機能などの修正を加えて光鍵データを生成し、それを光鍵盤キーボード103へ送信する。ユーザは、その光鍵データに基づいて、光鍵盤キーボード103において、端末装置101で選択した好きなオーディオ曲をレッスンすることができる。
なお、SMFデータから光鍵データへの変換は、端末装置101ではなく、光鍵盤キーボード103において実行されてもよい。
図2は、図1に示した端末装置101のハードウェア構成例と、クラウドサーバ102の機能構成例を示す図である。
端末装置101は、CPU(中央演算処理装置)201、ROM(リードオンリーメモリ)202、RAM(ランダムアクセスメモリ)203、入力部204、表示部205、MIDIインタフェース部(以下「MIDI I/F」と表記する)206、およびネットワークインタフェース部207が、バス208によって相互に接続された構成を備える。MIDI I/F206は、外部(内蔵でもよい)の光鍵盤キーボード103(図1参照)に接続される。
CPU201は、ROM202に記憶された制御プログラムに従って、当該端末装置101の全体の制御を行う。
ROM202は、通常の通信機器やコンピュータとしての制御プログラムや、後述する各フローチャートで示されるレッスンデータ生成のための制御プログラムを記憶する。
RAM203は、制御プログラムの実行に必要な各種制御データや、オーディオ曲データを記憶し、また、クラウドサーバ102などから取得したSMFデータを一時的に記憶する。
入力部204は、ユーザによるタッチパネルディスプレイ(スマートフォンやタブレット端末の場合)、あるいはキーボードやマウス(パーソナルコンピュータの場合)、また各種スイッチ等による入力操作を検出し、その検出結果をCPU201に通知する。
表示部205は、CPU201の制御によって送られてくるデータを液晶ディスプレイなどに出力する。例えば、表示部205は、オーディオ曲選曲用の画面などを表示する。
MIDI I/F206は、SMFデータから生成されたMIDIフォーマットの光鍵データを、光鍵盤キーボード103に供給する。
ネットワークインタフェース部207は、例えば無線通信機能あるいはブロードバンド通信機能である。ネットワークインタフェース部207は、クラウドサーバ102内のネットワークインタフェース部221と通信をしながら、クラウドサーバ102内のカラオケ用SMFデータベース223にアクセスし、その結果を、CPU201に通知する。
図2において、クラウドサーバ102は、カラオケ用SMFデータベース223を備える。また、クラウドサーバ102は、端末装置101内のネットワークインタフェース部207と通信をするネットワークインタフェース部221、およびカラオケ用SMFデータベース223へのアクセスを制御するデータベース管理部222の機能を備える。データベース管理部222の機能は、特には図示しないが、通常のコンピュータを構成するCPU、ROM、RAM、外部記憶装置等によって実現される。CPUは、ROMまたは外部記憶装置からRAMにロードしたデータベース管理プログラムを実行することにより、データベース管理部222の機能を実現する。また、カラオケ用SMFデータベース223は、例えば外部記憶装置に記憶される。
本実施形態による端末装置101の動作は、後述する図3から図7のフローチャート等で実現される図1の各部の機能処理を搭載した制御プログラムを、CPU101がROM102から読み出して順次実行することで実現される。そのプログラムは、特には図示しない可搬型記録媒体を介して提供されてもよく、或いは特には図示しないネットワークインタフェース部207を介してネットワークから取得できるようにしてもよい。
以下、本発明の実施形態の動作について、フローチャートに沿って説明する。なお、各フローチャートの説明において、随時図2の各部を参照するものとする。
図3は、オーディオ曲とSMFデータのマッチング処理を示すフローチャートである。この処理は、CPU201が、ROM202に記憶された端末側のオーディオ曲とSMFデータのマッチング処理プログラムを実行すると共に、端末装置101からの要求に従ってクラウドサーバ102内のデータベース管理部222がカラオケ用SMFデータベース223へのアクセスを行うクラウド側のオーディオ曲とSMFデータのマッチング処理プログラムを実行する処理である。図3において、色の濃い部分のステップは、クラウドサーバ102内のデータベース管理部222が実行する処理であり、それ以外のステップは、端末装置101内のCPU201が実行する処理である。
まず、ユーザが、端末装置101の入力部204から、光鍵盤キーボード103でレッスンをしたいオーディオ曲を、内蔵の楽曲データベース上で、またはインターネット上の楽曲提供サイト上で選択する。この結果、オーディオ曲の選択情報が、入力部204からCPU201に通知される(以上、ステップS301)。
CPU201は、ステップS301で選択されたオーディオ曲のインデックス情報(以下単に「インデックス」あるいは「Index」と表記する)を、内蔵の楽曲データベースまたはネットワークインタフェース部207を介してインターネット上の楽曲提供サイトから取得する。そして、CPU201は、そのインデックスを、RAM203上の変数A_Indexに記憶する。以下の説明で、「A_Index」と表記したときは、変数名を指すと共に、そのインデックスの値そのものの意味でも使うものとする。CPU201は、A_Indexを含む第1の検索要求を発行して、ネットワークインタフェース部207を介してクラウドサーバ102に送信する(以上、ステップS302)。第1の検索要求は、クラウドサーバ102内のネットワークインタフェース部221を介して、データベース管理部222で受信される。
データベース管理部222は、第1の検索要求を受信すると、カラオケ用SMFデータベース223内の曲名インデックス(Index)にアクセスして、端末装置101が通知したA_Indexと完全一致するインデックスを検索する、第1のインデックス検索を実施する(ステップS303)。図8は、カラオケ用SMFデータベース223内の曲名インデックスのデータ構成例を示す図である。このデータ構成例の中の、「曲名:カナ」の項目を使って、A_Indexと一致するインデックスを検索することができる。
データベース管理部222は、曲名インデックス内にA_Indexと完全一致するインデックスが見つかったか否かを判定する(ステップS304)。
データベース管理部222は、第1のインデックス検索に成功しステップS304の判定がYESになると、ステップS316の処理に移行する。ここで、データベース管理部222は、見つかったインデックスに対応する本体のSMFデータをカラオケ用SMFデータベース223から選択する。データベース管理部222は、そのSMFデータを、ネットワークインタフェース部221を介して端末装置101に送信する。この結果、CPU201が、ネットワークインタフェース部207を介してそのSMFデータを受信し、RAM203に記憶して、図3のフローチャートの処理を終了する。
第1のインデックス検索に失敗しステップS304の判定がNOになって、データベース管理部222がその旨を端末装置101に返すと、CPU201は、以下の動作を実行する。CPU201は、端末装置101内のRAM203または特には図示しない外部記憶装置に記憶されている楽曲データベース中に、ステップS301で選曲されたオーディオ曲に対応するボーカル付きのオーディオデータとそのカラオケバージョン(インスゥルメントバージョン)が有るか否かを判定する(ステップS305)。オーディオデータとして提供される楽曲の中には、ボーカルが無いいわゆるカラオケバージョンのデータがセットで入れられている場合が多い。本実施形態では、クラウドサーバ102上でSMFデータが見つからなかったときには、このカラオケバージョンを利用する。
カラオケバージョンのオーディオデータが見つかってステップS305の判定がYESになると、CPU201は、ボーカル付きのオーディオデータの時間信号から、ボーカルなしのカラオケデータのオーディオデータの時間信号を、両方の開始時間を合わせた上で差し引くことにより、オーディオデータのメロディ部分を第1のメロディデータとして抽出する。オーディオデータからのメロディ抽出そのものはセンターカットやボーカルの音域照合などである程度可能であるが、例えばコーラスパートとメロディパートの違いを正確に判断するのは難しいなど、完璧ではない。しかし、カラオケバージョンがある曲の場合、ボーカル付きのオーディオデータとボーカル無しのオーディオデータは共に同じ音源から作成されているため、上述の減算処理により、ボーカルパートのみのメロディ抽出を高い精度で行うことができる。CPU201は、このようにして抽出した第1のメロディデータに対してピッチの分析・抽出の分析を実行することにより、第1のメロディデータ(メロディパート)の音高の列からなる第1の音高データ列を抽出することができる(以上、ステップS306)。
CPU201は、ステップS306の後、そこで抽出した第1の音高データ列を含む第2の検索要求を発行して、ネットワークインタフェース部207を介してクラウドサーバ102に送信する(ステップS307)。なお、CPU201は、クラウドサーバ102での後述するステップS313での処理のために、上述の第2の検索要求中に、ステップS302で取得したA_Indexも含ませておく。第2の検索要求は、ネットワークインタフェース部221を介して、データベース管理部222で受信される。
データベース管理部222は、第2の検索要求を受信した場合、以下の動作を実行する。データベース管理部222は、受信した第1の音高データ列がカラオケ用SMFデータベース223にある各SMFデータのメロディの出だしのノートオンMIDIデータ列の各音高と第1の合致基準で合致する曲を検索する、第1のメロディ検索を実施する(ステップS308)。この場合、例えば、出だしの4小節程度を比較すればよい。具体的には、図8に示すように、楽曲のインデックス内に、「メロディ出だし」のデータとして、メロディの開始時からのメロディ音高データ列を用意しておき、この音高データ列と受信した第1の音高データ列と比較する。
本実施形態においては、「メロディ出だし」のデータは、図8に示すように、(絶対音程)と(相対音程)との両方が用意されている。(絶対音程)は、絶対値で表わされた音高データを用いたものであり、(相対音程)は、現在の音高とその直前の音高データとの差分を用いたものである。演歌などの曲においては、歌う際のKeyを考慮して、オリジナルより+1あるいは−1などのKeyに変更されていることも多く、相対音程はそのような曲のために必要である。
クラウドサーバ102にあるSMFデータは、そのデータを提供する会社によりデータフォーマットが決まっている。例えばほとんどのSMFデータでは、メロディは4chにあり、ベースは2chというごとくである。このため、4chの出だしのノートオンMIDIデータ列の各音高を比較し、候補が集まったら、最後まで検討する。また、クラウドサーバ102にあるカラオケ用SMFデータベース223は、メロディの出だしノートオンMIDIデータ列を、データベースのインデックスに持っている場合が多いので、その場合には、インデックスに対して上述の検索を実行すれば、曲候補は高速に抽出できる。さらに、メロディの譜割は歌い方によって微妙な場合があり、SMFデータ制作者によって、異なる場合がある。このため、音価の長い音のタイミングと音程があっていればより正解率が高く、同音連打のリズムが異なる場合や引っ掛けの音程が多少異なる場合などは、長い音などに比べて低い減点などで計算して、例えば8割がた合っていてほぼ合致ならば第1の合致基準を満たすなどとする採点方法を採用してよい。
クラウドサーバ102内のデータベース管理部222は、上述の第1のメロディ検索の結果、第1の合致基準で合致するSMFデータが検索されたか否かを判定する(ステップS309)。
第1のメロディ検索に成功しステップS309の判定がYESならば、データベース管理部222は、ステップS316に移行し、出だしが合致したカラオケ用SMFデータベース223内の本体のSMFデータを選択して読み出す。そして、データベース管理部222は、そのSMFデータを、ネットワークインタフェース部221を介して端末装置101に通知する。この結果、CPU201が、ネットワークインタフェース部207を介してそのSMFデータを受信し、RAM203に記憶して、図3のフローチャートの処理を終了する。
第1のメロディ検索に失敗しステップS309の判定がNOならば、データベース管理部222は、ステップS312の第2のインデックス検索の処理に移行する。
端末装置101において、前述したステップS305の判定がNOならば、CPU201はまず、ステップS301で選曲されたオーディオ曲に対応するボーカル付きのオーディオデータを、端末装置101内の楽曲データベース、そこにない場合にはインターネット上の楽曲提供サイトから取得する。次に、CPU201は、取得したボーカル付きのオーディオデータから、そのメロディ部分を第2のメロディデータとして抽出する。ここでは、カラオケバージョンのオーディオデータは利用することはできない。そのためCPU201は、音響解析処理により第2のメロディデータを抽出する。具体的には、CPU201は、例えば、オーディオデータからセンターカットの手法でセンターに定位するデータを抽出し、そのセンターにある音で、ドラムでもない、音域的にベースでもなく、同時に押される和音(コードパート)でもなく、かつメロディ音域に入るような音を、第2のメロディデータとして抽出する。CPU201は、このようにして抽出した第2のメロディデータに対してピッチの分析・抽出の分析を実行することにより、第2のメロディデータ(メロディパート)の音高の列からなる第2の音高データ列を抽出する(以上、ステップS310)。
CPU201は、ステップS310の後、そこで抽出した第2の音高データ列とステップS302で取得したA_Indexを含む第3の検索要求を発行し、ネットワークインタフェース部207を介してクラウドサーバ102に送信する(ステップS311)。第3の検索要求は、ネットワークインタフェース部221を介して、データベース管理部222で受信される。
データベース管理部222は、ステップS309の判定がNOであった場合、または端末装置101から第3の検索要求(ステップS311)を受信した場合には、以下の動作を実行する。データベース管理部222は、カラオケ用SMFデータベース223内の曲名インデックス(Index)(図8参照)にアクセスして、端末装置101が通知したA_Indexと部分一致するインデックスを検索する、第2のインデックス検索を実施する(ステップS312)。この場合の部分一致は、一方の文字列が他方の文字列の一部と一致する場合、半角と全角、大文字と小文字、長音や曲名に使われるハートマーク等の特殊文字の有り無し等を区別しない場合に一致する場合と、両者を組み合わせた基準で一致する場合を含む。
データベース管理部222は、曲名インデックス内にA_Indexと部分一致するインデックスが見つかったか否かを判定する(ステップS313)。
データベース管理部222は、第2のインデックス検索に成功しステップS313の判定がYESになると、見つかったインデックス候補群に対応する本体のSMFデータ群をカラオケ用SMFデータベース223から選択する。データベース管理部222は、ステップS307またはS311で端末装置101から受信した第1または第2の音高データ列を、上述の選択したSMFデータ群の各メロディの出だしのノートオンMIDIデータ列の各音高と比較する(ステップS314)。これにより、データベース管理部222は、インデックスが部分一致するSMFデータのうち、出だしのメロディのノートオンMIDIデータ列の各音高が端末装置101から受信したメロディデータの音高データ列と第2の合致基準で合致する曲を検索する、第2のメロディ検索を実施する(ステップS315)。この場合の第2の合致基準は、インデックスの部分一致によりSMFデータがある程度絞り込まれているため、ステップS308での最初の検索での第1の合致基準の合致度に比較して、低くして(判定条件を緩和して)よい。
第2のインデックス検索に続いて第2のメロディ検索にも成功しステップS315の判定がYESになった場合は、データベース管理部222は、インデックスが部分一致しかつ出だしのメロディの音高データ列が第2の合致基準で合致したSMFデータのうち、例えば合致度が最も高いSMFデータを、カラオケ用SMFデータベース223から選択して読み出す。そして、データベース管理部222は、そのSMFデータを、ネットワークインタフェース部221を介して端末装置101に通知する(ステップS316)。この結果、CPU201が、ネットワークインタフェース部207を介してそのSMFデータを受信し、RAM203に記憶して、図3のフローチャートの処理を終了する。
データベース管理部222において、部分一致するインデックスが見つからず第2のインデックス検索に失敗してステップS313の判定がNOになった場合、または第2のインデックス検索には成功したが第2のメロディ検索には失敗してステップS315の判定がNOになった場合は、CPU201は、対応するSMFデータなしのコメントを表示部205に表示して処理を終わる(ステップS317)。カラオケデータは日々多くの曲データが制作され追加されていくが、それでも最新曲であったり、あまり有名でない曲の場合には、クラウドサーバ102のカラオケ用SMFデータベース223に含まれず、SMFデータがないこともある。
以上のように、本実施形態では、まず、ユーザにより選曲された曲のインデックス(A_Index)とインデックスが完全一致するSMFデータをクラウドサーバ102上のカラオケ用SMFデータベース223から検索する、第1のインデックス検索が実施される。
第1のインデックス検索に失敗した場合に、選曲された曲のオーディオデータに対応するメロディ無しオーディオデータを取得できる場合には、オーディオデータからメロディ無しオーディオデータが差し引かれることにより、オーディオデータのメロディ部分が第1のメロディデータとして抽出され、さらに第1のメロディデータの音高の列からなる第1の音高データ列が抽出される。そして、第1の音高データ列とノートオンMIDIデータ列の各音高が出だし(例えば先頭から4小節)部分で第1の合致基準で合致するSMFデータをカラオケ用SMFデータベース223から検索する、第1のメロディ検索が実施される。
メロディ無しオーディオデータを取得できない場合には、センターカット等の音響解析処理により、オーディオデータからメロディ部分が第2のメロディデータとして抽出され、第2のメロディデータの音高の列からなる第2の音高データ列が抽出される。
第1のメロディ検索に失敗した場合、あるいは、メロディ無しオーディオデータを取得できず信頼性の低い第2のメロディデータが得られた場合には、曲のインデックス(A_Index)とインデックスが部分一致するSMFデータをクラウドサーバ102上のカラオケ用SMFデータベース223から検索する、第2のインデックス検索が実施される。この第2のインデックス検索に成功した場合にはさらに、第1または第2の音高データ列とノートオンMIDIデータ列の各音高が出だし部分で第1の合致基準よりも緩い第2の合致基準で合致するSMFデータをカラオケ用SMFデータベース223から検索する、第2のメロディ検索が実施される。
第1のインデックス検索、第1のメロディ検索、または第2のメロディ検索のいずれかに成功した場合に、曲に対応する演奏データファイルが演奏データファイルデータベースから取得される。
このようにして、本実施形態によれば、ユーザが選曲したオーディオ曲に対応するSMFデータ(演奏データファイル)をクラウドサーバ102上等にあるカラオケ用SMFデータベース223(演奏データファイルデータベース)から自動的に取得することが可能となる。
クラウドサーバ102でユーザが選曲したオーディオデータに該当するカラオケ用のSMFデータが取得でき端末装置101に送られたら、そのカラオケ用のSMFデータが光鍵盤キーボード103(図1、図2)用のレッスンデータに調整される。カラオケ用のSMFデータにおいては、メロディ音はガイド音程度にしか鳴らないため、例えば光鍵盤キーボード103でのメロディレッスンには向かない。元々光鍵盤キーボード103等に内蔵されているレッスンデータであれば、メロディ音はユーザがレッスンしやすいようにある程度強調処理されている。しかし、本実施形態のように、例えば最新のあるいはユーザの所望のカラオケ用のSMFデータをクラウドサーバ102から取得できてそれをレッスンデータに活用しようとする場合には、カラオケ用のSMFデータ中のメロディ音がレッスンデータに適したメロディ音となるように調整する処理が必須となる。
図4は、SMFデータをレッスンデータに調整する処理を示すフローチャートである。この処理は、CPU201が、ROM202に記憶されたSMFデータをレッスンデータに調整する処理プログラムを実行する処理である。
MIDIフォーマットによっては異なる場合もあるが、ここではまず、CPU201は、全部で16ch(チャネル)あるうちの第4chにあるメロディデータを選曲された曲のメロディに特定する(ステップS401)。
CPU201は、特定した第4chの音量調整を行う(ステップS402)。カラオケ用のSMFデータは、カラオケ用なので、メロディはガイドメロディとして音量が小さく設定されている。そのため、CPU201は、第4ch中の各MIDIデータのベロシティ(velocity)を例えば1.4倍にする調整を実行する。なお、この倍率の設定値は、音源とデータとの関連によって、例えばユーザが入力部204から適宜変更とできるようにしてよい。
次に、CPU201は、第5chの音量調整を行う(ステップS403)。通常、カラオケ用のSMFデータは、第5chにはコーラスパートが入っていて、例えばグループで歌っている場合などメロディとかぶるようなメロディパートを第5chおくこともある。そのため、このパートについても、CPU201は、第5ch中の各MIDIデータのベロシティ(velocity)を例えば1.2倍にする調整を実行する。この倍率の設定値も、音源とデータとの関連によって、例えばユーザが入力部204から適宜変更とできるようにしてよいが、メロディの倍率設定値よりも少し控えめに設定するとよい。
次に、CPU201は、メロディ音色変更処理を実行する(ステップS404)。ここでは、音量の大きい複数の伴奏音色の組合せにより、音量の大きい複数の伴奏とかぶらないように最適なメロディ音色を選択する調整が行われる。もともとのカラオケデータでは、メロディ音は、ガイドが主目的であったため、薄メロといって、クラリネットのような持続音もしくは、ビブラフォンのような減衰音のような、目立たない音色が選択されていることが多い。これだと音量を上げただけでは、メロディ音が目立たず伴奏音にかき消されてしまったりする。そこで、本実施形態では、レッスンするときにメロディ音色を伴奏音色に対して引き立つ音色にするために、この処理が実行される。光鍵盤キーボード103で鍵盤を光らせてレッスンするときに、メロディ音も一緒に発音されるので、上記処理が必要になる。光鍵盤キーボード103を製造するときには、プリセット音は元々そのように設定されていたが、本実施形態のように、カラオケ用のSMFデータを流用する場合には、特に初心者は音色変更等が大変なので、そのような措置が必要になる。この処理の詳細は、図5および図6のフローチャートを用いて後述する。
次に、CPU201は、以下に説明するステップS405からS409の各種調整処理を実行する。
まず、CPU201は、小節調整を実行する(ステップS405)。カラオケ用のSMFデータの中には、本来小節頭から始まる楽曲でも、データでは3拍目からはじまったり、4拍裏から始まったりするものもある。このようなSMFデータに対しては、レッスンデータとして利用するにあたって、小節調整が必要になる。そこで、CPU201は、ステップS405において、例えば8拍までのメロディ音符のリズムをみて、レッスンデータとすべきSMFデータにおける小節の頭がずれていないか、いわゆるアウフタクト(弱起)の場合に正しい拍となっているかを判定する。そして、CPU201は、その判定結果に基づいて、メロディ音符のリズムを拍子にあった強拍/弱拍のパターンを用いて採点し、小節調整を行う。
次に、CPU201は、メロディのDurationを調整する(ステップS406)。例えば光鍵盤キーボード103の光鍵のように鍵盤を光らせる場合には、同音が続くときに、適切な間隔が入っていないと、鍵盤が継続して光ってしまうため、Duration調整が必要となる。このため、CPU201は、同音が連続する時に、Duration、すなわち連続して発音される楽音の音長の並びを、例えば10/480(1拍)空けるように調整する。
次に、CPU201は、メロディクォンタイズを実行する(ステップS407)。メロディ音が必要以上に細かいとレッスンが困難になる。そこで、CPU201は、メロディ音のノートオンMIDIデータに対して、ある程度の粗さ、例えば32分音符または32分の3連符(Triplet)で、クォンタイズを行う。
次に、CPU201は、メロディ演奏時のズレ調整を実行する(ステップS408)。レッスン時にメロディ発音のタイミングで、細かすぎる伴奏音がある場合には、オブリガードズレが発生し、不協和音に聞こえる。上述のステップS407では、メロディ発音時点で早く出過ぎる音がある場合には、その音はクォンタイズされる。ただし、ツリーチャイムやグリッサンドパートなどは、音色や前後の状態からこの扱いをしない対策が必要となるため、ツリーチャイムなどの音色は音色名ではずし、その他の音について調整するようにする。
次に、CPU201は、SMFマーカによる楽式分類処理を実行する(ステップS409)。曲があまり長いとレッスンに疲れるので、ある程度の長さのフレーズ毎に区切って部分的にレッスンできるようにするとよい。この区切りをフレーズマーカと呼ぶ。本実施形態では、レッスンデータにこのフレーズマーカを記載する際に、CPU201は、SMFデータに元々入っているマーカのあるところにフレーズマーカを記載する。カラオケのSMFデータを作成する際には、Aメロ、Bメロ、サビ、Bサビなど、楽式に従ってマーカを入れている場合が多い。そこで、SMFデータにAメロというマーカが記載されていたら、そこをレッスンの大きなフレーズとしてとらえることが効果的である。
上述のステップS409において、SMFデータから抽出されたマーカの時間間隔が長い場合がある。そこで、CPU201は、フレーズマーカ記載時、マーカ間隔が例えば所定小節に比較して長い場合には、そのマーカ間隔を1/2または1/4に区切り、レッスンしやすいフレーズマーカを作成し、レッスンデータ中に記載する(ステップS410)。
最後に、CPU201は、レッスン用コード作成の処理を実行する(ステップS411)。ここでは、CPU201は、SMFデータ中の伴奏音でコードパートとなっているパートから和音を抽出し、コードを判定して、レッスン用のコードパートを作成する。
図5は、図4のステップS404のメロディ音色変更処理を示すフローチャートである。
CPU201はまず、SMFデータに対するジャンル検出処理を実行する(ステップS501)。伴奏編成はジャンルで決まるので、ジャンルを見れば伴奏音がわかりやすくなると考えられる。伴奏音がわかれば、レッスン時に伴奏音色に対して引き立つメロディ音を決定することができる。この処理の詳細は、図6のフローチャートを用いて後述する。
次に、CPU201は、ステップS501で検出したジャンルを、RAM203上の変数ToneGに格納する(ステップS502)。
続いて、CPU201は、SMFデータでメロディが鳴っている第4chで、一緒に出ているパートのうちベース、ドラム以外で音量が大きいパートを4つ選択する。そして、CPU201は、それぞれのパート名を、RAM203上の変数Part1、Part2、Part3、およびPart4に格納する(ステップS503)。
次に、CPU201は、ROM202またはRAM203上に記憶されているメロディ音色変更のための音色グループデータベース上で、ToneGが示すジャンルに該当する項目を参照する(ステップS504)。図9は、メロディ音色変更のための音色グループデータベースのデータ構成例を示す図である。「Swing」「Latin/European」「Suffle/blues」「Rock/Pops」「Funk/DancePop」「Techno/Euro」といったジャンル毎に、図10上の表の1列ずつが割り当てられ、各ジャンルごとの列において、上4行にはそのジャンルの伴奏パートとして使用頻度の高い伴奏音色名が登録され、下3行にはメロディ候補(メロディパート)として使用頻度の高いメロディ音色名が登録される。メロディ音色名としては、そのジャンルにおける伴奏パートの伴奏音色よりも引き立つメロディ音色の名称が登録される。
続いて、CPU201は、現在のSMFデータにある伴奏パートPart1〜4と、図9に例示されるメロディ音色変更のための音色グループデータベース上のToneGに該当するジャンル項目に登録されている伴奏パートを比較して、2つ以上同じ伴奏パート名があるか否かを判定する(ステップS505)。伴奏パートにおいて、Guitarであればアコースティックギターもエレクトリックギターも含めた音色グループとしてみている。また、判定基準を2つ以上のパートとする理由は、Guitarは、どのジャンルにも含まれているので、1つだとジャンルを識別できないからである。すなわち、ギター以外で合致するものがあるかどうかを見ている。
ステップS505の判定がYESならば、CPU201は、音色グループデータベースの該当ジャンルにあるメロディ候補を参照する(ステップS511)。例えば、ジャンルがSwingでSMFデータの伴奏パートがGuitarとPianoとStringsである場合、図9に例示されるメロディ候補Sax、Trumpet、Organが選択されることになる。
メロディ候補を1つ選択できたら、CPU201は、そのメロディ候補音が伴奏音Part1〜4とかぶらないか否かを判定する(ステップS512)。
メロディ候補音が伴奏音Part1〜4とかぶりステップS512の判定がNOならば、CPU201は、音色グループデータベースの該当ジャンルのメロディ候補項目から次のメロディ候補を選択する(ステップS513)。そして、CPU201は、ステップS512の判定に戻る。
メロディ候補音が伴奏音Part1〜4とかぶらずステップS512の判定がYESならば、そのメロディ候補音をレッスンのためのメロディ音として決定し、メロディ変更を実行する(ステップS514)。具体的には、SMFデータ中の4chのメロディ音色を、決定したメロディ音に書き換える。その後、CPU201は、図5のフローチャートで示される図4のステップS404のメロディ音色変更処理を終了する。
ステップS505の判定がNOならば、CPU201は、変数ToneGの値を、図9に例示される音色グループデータベース上で、ToneGが示すジャンルの右隣のジャンルに修正して設定し直す(ステップS506)。
続いて、CPU201は、ToneGが示すジャンルの判定が一巡したか否かを判定する(ステップS507)。
一巡しておらずステップS507の判定がNOならば、CPU201は、ステップS505の判定に戻る。
一巡してしまいステップS507の判定がYESになると、CPU201は、第4chのメロディ音を、強制的にクラリネット音に変更する(ステップS508)。
CPU201は、Part1〜4にクラリネット音があるか否かを判定する(ステップS509)。
ステップS509の判定がNOならば、CPU201は、図5のフローチャートで示される図4のステップS404のメロディ音色変更処理を終了する。
ステップS509の判定がYESならば、CPU201は、第4chのメロディ音を、強制的にハーモニカ音に変更して(この音はどの伴奏音ともかぶらない)、図5のフローチャートで示される図4のステップS404のメロディ音色変更処理を終了する。
図6は、図5のステップS501のジャンル検出処理を示すフローチャートである。前述したように、メロディ音色をレッスン用に変更するには、伴奏音色とかぶらない音色が望ましいが、伴奏音には、音楽ジャンルによってある程度楽器の種類が決まっているので、ここではまず、おおよそのジャンルが分析される。
ジャンルを識別するそのためには、わかりやすい方法が2つある。ベースを見るかドラムを見るかである。ドラムの場合は、ドラムの音色で、スタンダードセットとかジャズセットとかルームセットとかがあるが、ジャズセットはジャズのものによく使うし、スタンダードセットはいろいろなジャンルに使うが、ルームセットは現代風のラップとかに使ったりする。一番わかりやすいのはベース音色である。ベース音色が何か、リズムは跳ねているかどうか、を知ることが重要である。
図6において、CPU201はまず、ベースがウッドベース(WoodBass)か否かを判定する(ステップS601)。
ステップS601の判定がYESならば、CPU201は、リズムが3連系(Triplet)であるか否かを判定する(ステップS602)。3連系か否かは、例えばドラムの演奏データで、例えば16分音符系だと1拍が例えば480クロックと決まっている場合において、3連系でなければ、0,120,240,360というように、2で割れるクロックカウントでリズムが刻まれる(そこにドラム音がある)。これに対して、3連系の場合には、0,160,320というように、3で割れるクロックカウントでリズムが刻まれる。そこで、リズムのクロックカウントを判別することにより、3連系か否かが判定される。
ドラムパートはイントロでは連打などあり、基本リズムの骨格がみえにくいので、メロディが出てくる部分のリズム、特にAメロのマーカがある部分でTripletか否かを検討するとよい。
CPU201は、ステップS602の判定が、YESならばジャンルをSwing系音色グループ(ステップS603)、NOならばジャンルをLatin/European系音色グループ(ステップS604)に決定して、図6のフローチャートで示される図5のステップS501のジャンル検出処理を終了する。
ステップS601の判定がNOの場合、CPU201は、ベースがエレクトレットベース(ElecBass)またはギターか否かを判定する(ステップS605)。
ステップS605の判定がYESならば、CPU201は、リズムが3連系であるか否かを判定する(ステップS606)。
CPU201は、ステップS606の判定が、YESならばジャンルをShuffle/Bluse系音色グループ(ステップS607)、NOならばジャンルをRock/Pops系音色グループ(ステップS608)に決定して、図6のフローチャートで示される図5のステップS501のジャンル検出処理を終了する。
ステップS605の判定がNOの場合、CPU201は、ベースがシンセサイザーベース(SynthBass)かを判定する(ステップS609)。
ステップS609の判定がYESならば、CPU201は、リズムが3連系であるか否かを判定する(ステップS610)。
CPU201は、ステップS610の判定が、YESならばジャンルをFunk/DancePop系音色グループ(ステップS611)、NOならばジャンルをTechno/Euro系音色グループ(ステップS612)に決定して、図6のフローチャートで示される図5のステップS501のジャンル検出処理を終了する。
ステップS609の判定もNOの場合、CPU201は、ジャンルをその他音色グループに決定して(ステップS613)、図6のフローチャートで示される図5のステップS501のジャンル検出処理を終了する。
以上説明したようにして、本実施形態では、クラウドサーバ102でユーザが選曲したオーディオデータに該当するカラオケ用のSMFデータが取得でき端末装置101に送られたら、そのカラオケ用のSMFデータを光鍵盤キーボード103(図1、図2)用のレッスン用に適したレッスンデータに調整することが可能となる。特に、本実施形態では、SMFデータからジャンルを検出することにより、音色グループデータベースを参照して、そのジャンルに対応する伴奏音のグループを決定し、さらにその伴奏音に対してレッスン時にメロディ音が引き立つ音色になるように、音色グループデータベース中のメロディ候補からメロディ音を決定することが可能となる。
なお、本実施形態に加えて、Aメロ、Bメロ等のパート毎に、最適なメロディ音を設定するようにしてもよい。
さらに、本実施形態では、ジャンル推測とメロディ音色変更のための音色グループデータベースを利用したが、SMFデータ、オーディオデータのインデックスなどにもジャンルが書かれている場合もあるので(例えば図8に例示されるインデックスの「コメント」項目に登録されている「ポピュラー(ピアノ)」)、これらのジャンルとメロディ音が書かれた音色グループデータベースを用意して対応してもよい。
上述した実施形態は、オーディオデータからSMFデータを検索して合致したSMFデータをレッスンデータに調整して、光鍵盤キーボード103等でレッスンを行うことを想定している。これに対して、合致したSMFデータのうち、メロディだけSMFデータを利用して、伴奏などは元のオーディオデータを利用することによって、演奏レッスンの臨場感を向上させることができる。そのためには、オーディオデータとSMFデータを同期させることが必要になる。
図7は、本発明の他の実施形態として、メロディだけSMFデータを利用して、伴奏などは元のオーディオデータを利用する場合における、オーディオデータとSMFデータの同期処理を示すフローチャートである。この実施形態のシステム構成およびハードウェア構成は、図1および図2に示される例と同様である。
まず、図3のステップS305と同様にして、CPU201は、端末装置101内の楽曲データベース中に、現在選曲されているオーディオ曲に対応するボーカル付きのオーディオデータとそのカラオケバージョンが有るか否かを判定する(ステップS701)。
ステップS701の判定がYESならば、図3のステップS306と同様に、ボーカル付きのオーディオデータの時間信号から、ボーカルなしのカラオケデータのオーディオデータの時間信号を、両方の開始時間を合わせた上で差し引くことによって、メロディデータを抽出する(ステップS702)(メロディデータ抽出部の機能)。
CPU201は、ステップS702で抽出したメロディデータのオンタイミングに、SMFデータのメロディデータのオンタイミングをあわせる(ステップS703)(メロディ同期部の機能)。メロディデータは、オーディオデータとカラオケデータの差分で求まっているため、オーディオデータの開始後メロディデータが開始するまでは無音となる。従って、メロディデータの開始時点すなわちオンタイミングは、オーディオデータの開始から何秒後とわかるのでそこでSMFデータにあるメロディデータのオンタイミングを合わせる。
ステップS701の判定がNOの場合には、CPU201は、オーディオデータ中の特徴的なパート、つまり他のパートとは異なる特徴を有するパートを探す(ステップS704)(特徴的パート探索部の機能)。例えば、オーディオデータの最初のほうで音域が高いもしくは低い、あるいはパン(音像定位)が極端になっているなどの特徴的なパートである。
CPU201は、ステップS704の探索の結果、該当するパートがあるか否かを判定する(ステップS705)。
ステップS705の判定がYESの場合、CPU201は、SMFデータのパートがオーディオデータの該当パートに合致するか否かを判定する(ステップS706)。
ステップS706の判定がYESならば、CPU201は、オーディオデータの該当パートのオンタイミングにSMFデータの該当パートをあわせることによって、SMFとオーディオデータの同期をとる(ステップS707)(特徴的パート同期部の機能)。
ステップS705またはS706の判定がNOならば、図3のステップS310と同様の処理が実行される。すなわち、CPU201は、オーディオデータからセンターカットの手法でセンターに定位するデータを抽出し、そのセンターにある音で、ドラムでもない、音域的にベースでもなく、同時に押される和音(コードパート)でもなく、かつメロディ音域に入るような音を、メロディデータとして抽出する。CPU201は、このようにして抽出したメロディデータに対してピッチの分析・抽出の分析を実行することにより、メロディデータ(メロディパート)の音高データ列を抽出する(以上、ステップS708)(音響解析部の機能)。
CPU201は、ステップS708で抽出したメロディデータの音高データ列に、SMFのメロディパートのノートオンMIDIデータ列の各音高と一致する部分が含まれるか否かを判定する(ステップS709)。
ステップS709の判定がYESならば、ステップS708で抽出したオーディオデータのオンタイミングにSMFデータをのせるようにする(ステップS710)(第2のメロディ同期部の機能)。
ステップS703、S707、またはS710の処理の後、CPU201は、図7のフローチャートの処理を終了し、図4から図6に例示されるフローチャートの処理によりSMFデータをレッスンデータに調整し、そのレッスンデータ中のメロディデータをメロディ音、オーディオデータを伴奏音として光鍵盤キーボード103に転送し、ユーザにレッスンを行わせる。
ステップS709の判定がNOならば、同期できないためオーディオ伴奏ではなく、SMFデータで伴奏するコメントを、表示部205に表示し、図7のフローチャートの処理を終了。その後のレッスンデータの調整等の処理は、前述した通りである。
以上説明したように、オーディオデータとSMFデータを同期させる処理は、光鍵盤キーボード103等を用いたレッスンデータの作成に限られるものではなく、生伴奏で演奏を行いたいあるいは歌を歌いたいといった場合に、メロディデータにオーディオデータを同期させるために活用することができる。
上述した各実施形態によれば、端末装置101に入っている自分で購入した曲と、クラウドにあるカラオケデータと比較して、SMFデータを取得、調整することにより、手軽に簡単な操作で好きな曲が光鍵などのレッスンデータとして利用可能となる。
また、オーディオデータとSMFデータを同期させることにより、光鍵で生音を伴奏音としてレッスンすることが可能となる。
上述した各実施形態は、ユーザの持っているオーディオ曲のデータと、クラウドデータにあるSMFのインデックスとを照合してデータを特定し、レッスンデータとして利用するために調整できることを特徴としている。従って、以下のような効果がある。
(1)ユーザが買った曲で弾きたい曲をレッスンできる。
(2)レッスンできるように調整されているので、光鍵でレッスンできる。
(3)SMFデータのマーカなどを利用してフレーズ分割をしているので、フレーズ練習もできる。
(4)SMFデータのジャンル分析をし、これに合うメロディ音に変更しているので、伴奏に合う音で弾ける。
(5)SMFとオーディオデータの同期もできるようにしているので、伴奏はオーディオデータで弾くということもできる。
以上の各実施形態に関して、更に以下の付記を開示する。
(付記1)
オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データとして記憶している演奏データファイルと、
前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するメロディデータ抽出部と、
前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれるメロディ用の演奏データの開始タイミングとの同期をとるメロディ同期部と、
を備えることを特徴とするオーディオデータと演奏データの同期装置。
(付記2)
前記オーディオデータに対応するメロディ無しオーディオデータが予め用意され、
前記メロディデータ抽出部は、前記オーディオデータから前記メロディ無しオーディオデータを差し引いて前記オーディオデータのメロディパートを表わすメロディデータを抽出する、
ことを特徴とする付記1に記載のオーディオデータと演奏データの同期装置。
(付記3)
前記オーディオデータは、前記メロディパートを含む複数のパートで構成され、
さらに前記同期装置は、
前記オーディオデータ中の複数のパートから、他のパートとは異なる特徴を有するパートを探索する特徴的パート探索部と、
前記演奏データファイルに記憶された演奏データから前記探索されたパートに対応するパートに含まれる演奏データを抽出し、前記探索されたパートの開始タイミングと、前記抽出されたパートに含まれる演奏データの開始タイミングとの同期をとる特徴的パート同期部と、
を備えることを特徴とする付記1または2のいずれかに記載のオーディオデータと演奏データの同期装置。
(付記4)
音響解析処理により前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するとともに、当該抽出されたメロディデータが表わす音高の列からなる音高データ列を抽出する音響解析部と、
前記抽出されたメロディデータの音高列内の各音高のオンタイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれるノートオンを示す各イベントのオンタイミングとがそれぞれ一致するように、前記オーディオデータと前記演奏データファイルに記憶された演奏データとの同期をとる第2のメロディ同期部と、
をさらに備えることを特徴とする付記1または2のいずれかに記載のオーディオデータと演奏データの同期装置。
(付記5)
オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データを記憶する演奏データファイルを有する同期装置に用いられるオーディオデータと演奏データの同期方法であって、前記同期装置は、
前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出し、
前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれる演奏データの開始タイミングとの同期をとる、
ことを特徴とするオーディオデータと演奏データの同期方法。
(付記6)
オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データを記憶する演奏データファイルを有する同期装置として用いられるコンピュータに、
前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するステップと、
前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれる演奏データの開始タイミングとの同期をとるステップと、
を実行させるプログラム。
101 端末装置
102 クラウドサーバ
103 光鍵盤キーボード
201 CPU
202 ROM
203 RAM
204 入力部
205 表示部
206 MIDIインタフェース部(MIDI I/F)
207、221 ネットワークインタフェース部
208 バス
222 データベース管理部
223 カラオケ用SMFデータベース

Claims (6)

  1. オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データとして記憶している演奏データファイルと、
    前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するメロディデータ抽出部と、
    前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれるメロディ用の演奏データの開始タイミングとの同期をとるメロディ同期部と、
    を備えることを特徴とするオーディオデータと演奏データの同期装置。
  2. 前記オーディオデータに対応するメロディ無しオーディオデータが予め用意され、
    前記メロディデータ抽出部は、前記オーディオデータから前記メロディ無しオーディオデータを差し引いて前記オーディオデータのメロディパートを表わすオーディオデータをメロディデータとして抽出する、
    ことを特徴とする請求項1に記載のオーディオデータと演奏データの同期装置。
  3. 前記オーディオデータは、前記メロディパートを含む複数のパートで構成され、
    さらに前記同期装置は、
    前記オーディオデータ中の複数のパートから、他のパートとは異なる特徴を有するパートを探索する特徴的パート探索部と、
    前記演奏データファイルに記憶された演奏データから前記探索されたパートに対応するパートに含まれる演奏データを抽出し、前記探索されたパートの開始タイミングと、前記抽出されたパートに含まれる演奏データの開始タイミングとの同期をとる特徴的パート同期部と、
    を備えることを特徴とする請求項1または2のいずれかに記載のオーディオデータと演奏データの同期装置。
  4. 音響解析処理により前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するとともに、当該抽出されたメロディデータが表わす音高の列からなる音高データ列を抽出する音響解析部と、
    前記抽出されたメロディデータの音高列内の各音高のオンタイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれるノートオンを示す各イベントのオンタイミングとがそれぞれ一致するように、前記オーディオデータと前記演奏データファイルに記憶された演奏データとの同期をとる第2のメロディ同期部と、
    をさらに備えることを特徴とする請求項1または2のいずれかに記載のオーディオデータと演奏データの同期装置。
  5. オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データを記憶する演奏データファイルを有する同期装置に用いられるオーディオデータと演奏データの同期方法であって、前記同期装置は、
    前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出し、
    前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれる演奏データの開始タイミングとの同期をとる、
    ことを特徴とするオーディオデータと演奏データの同期方法。
  6. オーディオデータで表わされる楽曲を、当該楽曲の楽音のオン・オフを指示するイベントと当該イベントの実行タイミングとを少なくとも含む演奏データを記憶する演奏データファイルを有する同期装置として用いられるコンピュータに、
    前記オーディオデータから前記楽曲のメロディパートを表わすオーディオデータをメロディデータとして抽出するステップと、
    前記抽出したメロディデータが表わす楽曲のメロディの開始タイミングと、前記演奏データファイルに記憶された演奏データ内のメロディパートに含まれる演奏データの開始タイミングとの同期をとるステップと、
    を実行させるプログラム。
JP2013195957A 2013-09-20 2013-09-20 演奏データとオーディオデータの同期装置、方法、およびプログラム Active JP6459162B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013195957A JP6459162B2 (ja) 2013-09-20 2013-09-20 演奏データとオーディオデータの同期装置、方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013195957A JP6459162B2 (ja) 2013-09-20 2013-09-20 演奏データとオーディオデータの同期装置、方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2015060203A true JP2015060203A (ja) 2015-03-30
JP6459162B2 JP6459162B2 (ja) 2019-01-30

Family

ID=52817737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013195957A Active JP6459162B2 (ja) 2013-09-20 2013-09-20 演奏データとオーディオデータの同期装置、方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP6459162B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016191855A (ja) * 2015-03-31 2016-11-10 カシオ計算機株式会社 ジャンル選択装置、ジャンル選択方法、プログラムおよび電子楽器
CN114466241A (zh) * 2022-01-27 2022-05-10 海信视像科技股份有限公司 显示设备及音频处理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215143A (ja) * 2001-01-18 2002-07-31 Yamaha Corp 楽曲データ出力装置及び楽曲データ出力方法
JP2007219000A (ja) * 2006-02-14 2007-08-30 Yamaha Corp 楽曲再生装置およびデータファイル制作ツール
JP2008145976A (ja) * 2006-12-13 2008-06-26 Yamaha Corp コンテンツ再生装置
JP2008242200A (ja) * 2007-03-28 2008-10-09 Yamaha Corp 処理システム、音声再生装置及びプログラム
JP2011039511A (ja) * 2009-08-14 2011-02-24 Honda Motor Co Ltd 楽譜位置推定装置、楽譜位置推定方法および楽譜位置推定ロボット

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215143A (ja) * 2001-01-18 2002-07-31 Yamaha Corp 楽曲データ出力装置及び楽曲データ出力方法
JP2007219000A (ja) * 2006-02-14 2007-08-30 Yamaha Corp 楽曲再生装置およびデータファイル制作ツール
JP2008145976A (ja) * 2006-12-13 2008-06-26 Yamaha Corp コンテンツ再生装置
JP2008242200A (ja) * 2007-03-28 2008-10-09 Yamaha Corp 処理システム、音声再生装置及びプログラム
JP2011039511A (ja) * 2009-08-14 2011-02-24 Honda Motor Co Ltd 楽譜位置推定装置、楽譜位置推定方法および楽譜位置推定ロボット

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CDを使ってボーカルだけ抽出しよう!(1), JPN7018000954, 22 November 2008 (2008-11-22), ISSN: 0003767853 *
MINGHUI DONG, ET AL.: "Aligning Singing Voice with MIDI Melody Using Synthesized Audio Signal", PROC. ISCSLP 2010, JPN6018010823, 29 November 2010 (2010-11-29), pages 95 - 98, XP031847260, ISSN: 0003767852 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016191855A (ja) * 2015-03-31 2016-11-10 カシオ計算機株式会社 ジャンル選択装置、ジャンル選択方法、プログラムおよび電子楽器
CN114466241A (zh) * 2022-01-27 2022-05-10 海信视像科技股份有限公司 显示设备及音频处理方法

Also Published As

Publication number Publication date
JP6459162B2 (ja) 2019-01-30

Similar Documents

Publication Publication Date Title
TWI497484B (zh) Performance evaluation device, karaoke device, server device, performance evaluation system, performance evaluation method and program
KR100658869B1 (ko) 음악생성장치 및 그 운용방법
CN105070283B (zh) 为歌声语音配乐的方法和装置
US7663044B2 (en) Musical performance self-training apparatus
US7368652B2 (en) Music search system and music search apparatus
US9117432B2 (en) Apparatus and method for detecting chord
US7605322B2 (en) Apparatus for automatically starting add-on progression to run with inputted music, and computer program therefor
CN102760426B (zh) 使用表示乐音生成模式的演奏数据搜索
Dittmar et al. Music information retrieval meets music education
CN106708894B (zh) 电子书配置背景音乐的方法和装置
JP2010521021A (ja) 楽曲ベースの検索エンジン
JPH0944171A (ja) カラオケ装置
WO2020082574A1 (zh) 一种基于生成对抗网络的音乐生成方法及装置
JP6295583B2 (ja) 音楽データ生成装置および音楽データ生成方法を実現するためのプログラム
CN113836344A (zh) 个性化歌曲文件生成方法和装置、音乐演唱设备
JP2015060200A (ja) 演奏データファイル調整装置、方法、およびプログラム
JP6760450B2 (ja) 自動アレンジ方法
JP6459162B2 (ja) 演奏データとオーディオデータの同期装置、方法、およびプログラム
JP5297662B2 (ja) 楽曲データ加工装置、カラオケ装置、及びプログラム
JP6565528B2 (ja) 自動アレンジ装置及びプログラム
JP2007219139A (ja) 旋律生成方式
JP6439239B2 (ja) 演奏データファイル検索方法、システム、プログラム、端末装置、およびサーバ装置
JP3931442B2 (ja) カラオケ装置
JP2006301019A (ja) ピッチ通知装置およびプログラム
JP6075313B2 (ja) プログラム,情報処理装置,及び評価データ生成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180601

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181217

R150 Certificate of patent or registration of utility model

Ref document number: 6459162

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150