(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】楽曲解析装置、楽曲解析方法およびプログラム
(51)【国際特許分類】
G10L 25/51 20130101AFI20240827BHJP
G10G 1/00 20060101ALI20240827BHJP
【FI】
G10L25/51 300
G10G1/00
(21)【出願番号】P 2022553386
(86)(22)【出願日】2020-10-02
(86)【国際出願番号】 JP2020037493
(87)【国際公開番号】W WO2022070396
(87)【国際公開日】2022-04-07
【審査請求日】2023-02-02
(73)【特許権者】
【識別番号】315017409
【氏名又は名称】AlphaTheta株式会社
(74)【代理人】
【識別番号】110000637
【氏名又は名称】弁理士法人樹之下知的財産事務所
(72)【発明者】
【氏名】菅家 浩之
(72)【発明者】
【氏名】鈴木 四郎
【審査官】中村 天真
(56)【参考文献】
【文献】特開2008-065153(JP,A)
【文献】国際公開第2017/195326(WO,A1)
【文献】国際公開第2017/195292(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10G 1/00- 3/04
G10H 1/00- 1/46
G10L 25/00-25/93
(57)【特許請求の範囲】
【請求項1】
楽曲の音声データにおいて
、スネアドラム音に対応する周波数帯域のレベル波形と、低音周波数帯域のレベル波形とを抽出する音声データ処理部と、
前記音声データ処理部により抽出された前記スネアドラム音に対応する周波数帯域のレベル波形のピークが出現する時間間隔を検出するピーク間隔検出部と、
前記楽曲に含まれる複数の区間から、前記時間間隔が段階的に短くなる第1の区間群を検索する区間群検索部と、
前記音声データ処理部により抽出された前記低音周波数帯域のレベル波形から、前記低音周波数帯域のレベルが所定の閾値を超える第2の区間群を検出するレベル検出部と、
前記第1の区間群に続いて出現し、かつ前記
レベル検出部により検出された前記第2の区間群を前記楽曲における
サビ区間として特定する区間特定部と
を備える楽曲解析装置。
【請求項2】
前記区間群検索部は、前記時間間隔が少なくとも2段階以上にわたって段階的に短くなる前記第1の区間群を検索する、請求項
1に記載の楽曲解析装置。
【請求項3】
前記区間の長さは、前記楽曲の小節に対応する、請求項1
または請求項2に記載の楽曲解析装置。
【請求項4】
前記
サビ区間に関する情報を視覚化して表示させる表示制御部をさらに備える、請求項1から
請求項3のいずれか1項に記載の楽曲解析装置。
【請求項5】
前記ピーク間隔検出部は、前記ピークの部分的な欠落を補完して前記時間間隔を検出する、請求項1から
請求項4のいずれか1項に記載の楽曲解析装置。
【請求項6】
楽曲の音声データにおいて
、スネアドラム音に対応する周波数帯域のレベル波形と、低音周波数帯域のレベル波形とを抽出するステップと、
抽出された前記スネアドラム音に対応する周波数帯域のレベル波形のピークが出現する時間間隔を検出するステップと、
前記楽曲に含まれる複数の区間から、前記時間間隔が段階的に短くなる第1の区間群を検索するステップと、
抽出された前記低音周波数帯域のレベル波形から、前記低音周波数帯域のレベルが所定の閾値を超える第2の区間群を検出するステップと、
前記第1の区間群に続いて出現し、かつ前記
検出するステップにおいて検出された前記第2の区間群を前記楽曲における
サビ区間として特定するステップと
を含む楽曲解析方法。
【請求項7】
楽曲の音声データにおいて
、スネアドラム音に対応する周波数帯域のレベル波形と、低音周波数帯域のレベル波形とを抽出する音声データ処理部と、
前記音声データ処理部により抽出された前記スネアドラム音に対応する周波数帯域のレベル波形のピークが出現する時間間隔を検出するピーク間隔検出部と、
前記楽曲に含まれる複数の区間から、前記時間間隔が段階的に短くなる第1の区間群を検索する区間群検索部と、
前記音声データ処理部により抽出された前記低音周波数帯域のレベル波形から、前記低音周波数帯域のレベルが所定の閾値を超える第2の区間群を検出するレベル検出部と、
前記第1の区間群に続いて出現し、かつ前記
レベル検出部により検出された前記第2の区間群を前記楽曲における
サビ区間として特定する区間特定部と
を備える楽曲解析装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、楽曲解析装置、楽曲解析方法およびプログラムに関する。
【背景技術】
【0002】
音声データに基づいて楽曲の構造を解析する技術が知られている。例えば、特許文献1には、繰り返し出現するフレーズに基づいて楽曲のサビと呼ばれる区間を抽出する技術が記載されている。このような技術は、ポピュラーミュージックなどのボーカル成分を含む楽曲で、同じフレーズが繰り返される場合に有効である。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、別のジャンルの楽曲、例えばクラブミュージックにおいては、楽曲にボーカル成分が含まれていなかったり、楽器音でもメロディが強調されていなかったりするため、フレーズの繰り返しに基づく上記の特許文献1のような楽曲解析手法は必ずしも有効に機能しない場合がある。
【0005】
そこで、本発明は、フレーズの繰り返しによらずに楽曲の構造を解析することが可能な楽曲解析装置、楽曲解析方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
[1]楽曲の音声データにおいて第1の周波数帯域のピークが出現する時間間隔を検出するピーク間隔検出部と、楽曲に含まれる複数の区間から、時間間隔が段階的に短くなる第1の区間群を検索する区間群検索部と、音声データにおいて第1の周波数帯域とは異なる第2の周波数帯域のレベルを検出するレベル検出部と、第1の区間群に続いて出現し、かつレベルが閾値を超えている第2の区間群を楽曲における特徴的な区間として特定する区間特定部とを備える楽曲解析装置。
[2]第1の周波数帯域は、スネアドラム音に対応する周波数帯域である、[1]に記載の楽曲解析装置。
[3]区間群検索部は、時間間隔が少なくとも2段階以上にわたって段階的に短くなる第1の区間群を検索する、[1]または[2]に記載の楽曲解析装置。
[4]区間の長さは、楽曲の小節に対応する、[1]から[3]のいずれか1項に記載の楽曲解析装置。
[5]第2の周波数帯域は、低音周波数帯域である、[1]から[4]のいずれか1項に記載の楽曲解析装置。
[6]特徴的な区間に関する情報を視覚化して表示させる表示制御部をさらに備える、[1]から[5]のいずれか1項に記載の楽曲解析装置。
[7]ピーク間隔検出部は、ピークの部分的な欠落を補完して時間間隔を検出する、[1]から[6]のいずれか1項に記載の楽曲解析装置。
[8]楽曲の音声データにおいて第1の周波数帯域のピークが出現する時間間隔を検出するステップと、楽曲に含まれる複数の区間から、時間間隔が段階的に短くなる第1の区間群を検索するステップと、音声データにおいて第1の周波数帯域とは異なる第2の周波数帯域のレベルを検出するステップと、第1の区間群に続いて出現し、かつレベルが閾値を超えている第2の区間群を楽曲における特徴的な区間として特定するステップとを含む楽曲解析方法。
[9]楽曲の音声データにおいて第1の周波数帯域のピークが出現する時間間隔を検出するピーク間隔検出部と、楽曲に含まれる複数の区間から、時間間隔が段階的に短くなる第1の区間群を検索する区間群検索部と、音声データにおいて第1の周波数帯域とは異なる第2の周波数帯域のレベルを検出するレベル検出部と、第1の区間群に続いて出現し、かつレベルが閾値を超えている第2の区間群を楽曲における特徴的な区間として特定する区間特定部とを備える楽曲解析装置としてコンピュータを機能させるためのプログラム。
【0007】
上記の構成によれば、第1の周波数帯域のピークが出現する時間間隔と、第2の周波数帯域のレベルとに基づいて楽曲における特徴的な区間の始点および終点を検出することによって、フレーズの繰り返しによらずに楽曲の構造を解析することができる。
【図面の簡単な説明】
【0008】
【
図1】本発明の一実施形態に係る楽曲解析装置の概略的なブロック図である。
【
図2】ピークの検出について概念的に説明するための図である。
【
図3】時間間隔の検出および区間群の検索について概念的に説明するための図である。
【
図4】コーラス区間の開始位置の特定について概念的に説明するための図である。
【
図5】コーラス区間の終了位置の特定について概念的に説明するための図である。
【
図6】コーラス区間に関する視覚化された情報の例を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0010】
図1は、本発明の一実施形態に係る楽曲解析装置の概略的なブロック図である。図示された例において、楽曲解析装置100は、音声データ入力部110と、バンドパスフィルタ(BPF)121A,121Bを含む音声データ処理部120と、ピーク間隔検出部130と、区間群検索部140と、レベル検出部150と、区間特定部160と、表示制御部170とを含む。楽曲解析装置100は、例えば通信インターフェース、プロセッサ、およびメモリを有するコンピュータによって実装され、音声データ処理部120、ピーク間隔検出部130、区間群検索部140、レベル検出部150、区間特定部160および表示制御部170の機能はプロセッサがメモリに格納された、または通信インターフェースを介して受信されたプログラムに従って動作することによって実現される。
【0011】
図2は、
図1に示された例におけるピークの検出について概念的に説明するための図である。
図1の例において、音声データ入力部110は、楽曲の音声データの入力を受け付ける。音声データ処理部120は、音声データにBPF121Aを適用して、第1の周波数帯域のレベル波形を抽出する。ここで、
図2(a)はBPF121Aを適用する前のレベル波形の例であり、
図2(b)はBPF121Aによって抽出された第1の周波数帯域のレベル波形の例である。本実施形態において、第1の周波数帯域はスネアドラム音に対応する周波数帯域であり、具体的には1kHz以上4kHz以下の周波数帯域が例示される。ピーク間隔検出部130は、
図2(c)の例に示されるように、抽出されたレベル波形において、第1の周波数帯域のピークPを検出する。本実施形態において、それぞれのピークPは、楽曲におけるスネアドラムの発音位置である。
【0012】
図3は、
図1に示された例における時間間隔の検出および区間群の検索について概念的に説明するための図である。図示された例において、ピーク間隔検出部130は、
図3(a)に示されるように第1の周波数帯域のピークPが出現する時間間隔i
1,i
2,・・・を検出する。ここで、意図的な発音のスキップやピークPの検出漏れなどを考慮して、ピーク間隔検出部130は、ピークPの部分的な欠落を補完して時間間隔i
1,i
2,・・・を検出してもよい。
【0013】
一方、区間群検索部140は、楽曲に含まれる所定の長さの複数の区間から、
図3(b)に示されるようにピークPが出現する時間間隔i
1,i
2,・・・が段階的に短くなる区間群SG
1(区間S
1,S
2,・・・を含む)を検索する。本実施形態において、個々の区間S
1,S
2,・・・の長さは楽曲の小節に対応する。従って、区間群検索部140が検索する区間群SG
1は、ピークPの間隔が例えば200ms、100ms、50msのように段階的に短くなる連続した小節群である。ここで、区間群検索部140は、時間間隔i
1,i
2,・・・が2段階以上にわたって段階的に短くなることを条件として、区間群SG
1を検索してもよい。
【0014】
図4は、
図1に示された例におけるコーラス区間の開始位置の特定について概念的に説明するための図である。図示された例において、区間特定部160は、区間群検索部140によって検索された区間群SG
1(区間S
1,S
2,S
3を含む。区間S
1は図示されていない)に続いて出現する区間S
4をコーラス区間の最初の区間として特定する。ここで、コーラス区間は楽曲における特徴的な区間の例であり、他の例では必ずしもコーラスと呼ばれる区間でなくてもよい。また、続いて出現することは、必ずしも直後に出現することのみを意味せず、例えば区間群SG
1の後に楽曲のブレイクなどによる空白の区間が挿入され、その後の区間S
4がコーラス区間の最初の区間として特定されてもよい。
【0015】
例えばクラブミュージックのようなジャンルの楽曲では、コーラス区間の前のビルドアップまたはプレコーラスなどと呼ばれる部分において、スネアドラム音のような打楽器音が例えば4分音符→8分音符→16分音符のように段階的に短くなる間隔で連打されることが多くある。本実施形態では、この点に着目して区間特定部160がコーラス区間の始点を特定する。上述のように、それぞれの区間は楽曲の小節に対応するため、コーラス区間の始点は、例えば
図3に示したピークPが出現する時間間隔i
1,i
2,・・・が段階的に短くなる小節群の次の小節の開始位置になる。
【0016】
図5は、
図1に示された例におけるコーラス区間の終了位置の特定について概念的に説明するための図である。上述したBPF121Aとは別に、音声データ処理部120は、音声データ入力部110に入力された音声データにBPF121Bを適用して、第2の周波数帯域のレベル波形を抽出する。ここで、
図5(a)はBPF121Bを適用する前のレベル波形の例であり、
図5(b)はBPF121Bによって抽出された第2の周波数帯域のレベル波形の例である。本実施形態において、第2の周波数帯域は低音周波数帯域であり、具体的には50Hz以上150Hz以下の周波数帯域が例示される。レベル検出部150は、例えば
図5(c)に示されるような第2の周波数帯域のレベルを検出する。具体的には、レベル検出部150は、BPF121Bによって抽出された第2の周波数帯域のレベル波形におけるサンプリング区間ごとのピークレベルを検出してもよい。あるいは、レベル検出部150は、音声データ処理部120が第2の周波数帯域のレベル波形に対してさらにフィルタリングを実行した平均レベル波形からレベルを検出してもよい。
【0017】
一方、区間特定部160は、上記のように区間群検索部140によって検索された区間群SG
1に続いて出現し、かつ第2の周波数帯域のレベルが閾値THを超えている区間群SG
2をコーラス区間として特定する。つまり、コーラス区間の終点は、レベル検出部150が検出した第2の周波数帯域のレベルに基づいて特定される。
図5(c)の例において、第2の周波数帯域のレベルが閾値を超えている区間群SG
2は、
図4の例でコーラス区間の最初の区間として特定された区間S
4を含む。この場合、区間特定部160は、区間群SG
2の終点をコーラス区間の終点として特定する。
【0018】
例えばクラブミュージックのようなジャンルの楽曲では、コーラス区間において低音が相対的に大きい状態が持続することが多くある。本実施形態では、この点に着目して区間特定部160がコーラス区間の終点を特定する。上述のように、それぞれの区間は楽曲の小節に対応するため、コーラス区間の終点は、第2の周波数帯域のレベルが閾値を下回った後の最初の小節の開始位置になる。
【0019】
図6は、コーラス区間に関する視覚化された情報の例を示す図である。図示された例において、表示制御部170は、例えば楽曲解析装置100を実装するコンピュータのディスプレイに、波形表示501とともに楽曲区間表示502を表示させる。楽曲区間表示502は、例えば利用可能な他の楽曲解析手法を用いて特定された他の区間とともに、
図5に示す例においてコーラス区間として特定された区間群SG
2を示す表示502Aを含む。また、上記で区間群検索部140によって検索された、スネアドラムの発音位置を示すピークPの時間間隔が段階的に短くなる区間群SG
1が、ビルドアップまたはプレコーラスの区間を示す表示502Bによって示されてもよい。
【0020】
本実施形態に係る楽曲解析装置100は、例えばDJパフォーマンスのために楽曲の構造を解析するDJアプリケーションとして実装される。他の例では、楽曲の部分ごとに演出を加えるカラオケシステムや、楽曲の特定の部分を抽出するサンプラーなどとして楽曲解析装置が実装されてもよい。これらの場合において、楽曲解析装置は必ずしも、表示制御部によってコーラス区間に関する情報を視覚化して表示させなくてもよい。例えば、カラオケシステムの場合、コーラス区間の始点および終点を示す情報が演出を制御する機能に入力されてもよい。また、サンプラーの場合、コーラス区間の始点および終点を示す情報が楽曲の抽出する部分を決定する機能に入力されてもよい。
【0021】
以上で説明したような本発明の一実施形態によれば、コーラス区間の始点が第1の周波数帯域(例えば、スネアドラム音に対応する周波数帯域)のピークが出現する時間間隔に基づいて検出され、コーラス区間の終点が第2の周波数帯域(例えば、低音周波数帯域)のレベルに基づいて検出される。従って、本実施形態では、フレーズの繰り返しによらずに楽曲の構造を解析することができる。これによって、例えば楽曲にボーカル成分が含まれていなかったり、楽器音でもメロディが強調されていなかったりするクラブミュージックのようなジャンルの楽曲であっても、コーラス区間のような楽曲における特徴的な区間を精度良く検出することができる。
【0022】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はこれらの例に限定されない。本発明の属する技術の分野の当業者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0023】
100…楽曲解析装置、110…音声データ入力部、120…音声データ処理部、121A,121B…バンドパスフィルタ(BPF)、130…ピーク間隔検出部、140…区間群検索部、150…レベル検出部、160…区間特定部、170…表示制御部、501…波形表示、502…楽曲区間表示、P…ピーク、S1,S2,S3,S4…区間、SG1,SG2…区間群、i1,i2…時間間隔。