マッシュアップ曲を聞いてビックリしたので、音楽のコードを分析してみた / Examined the Similarity of Two Tunes by Analyzing their Chords
by
Linus_MK
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
マッシュアップ曲を聞いてビックリしたので、 音楽のコードを分析してみた @Linus_MK 2019年2月23日
Slide 2
Slide 2 text
自己紹介 ● ライナス(@Linus_MK) ● SIerにて、音声通信系のソフトウェア開発(C/C++) ● 趣味でPython/機械学習を勉強中 ● ブログ:子供の落書き帳 Renaissance https://linus-mk.hatenablog.com/
Slide 3
Slide 3 text
今日は何について話すのか? 音楽の和音(コード)の類似性を分析する話
Slide 4
Slide 4 text
きっかけ (音楽分野での)マッシュアップ: 複数の楽曲を編集して複合し、1つの曲にする手法(ニコニコ大百科より) ある日ニコニコ動画を見ていて、あるマッシュアップ動画を見つけた 【マッシュアップ】ぼくらはみんな意味不明×妄想感傷代償連盟
Slide 5
Slide 5 text
きっかけ 「元になった2曲を何度も聴いたことあるけど、 この2曲がきれいに合うわけ無いやろ」 曲がちゃんと合ってる!?一体何でだ!? ……というわけで、 2つの曲が何で合ってるのかを分析してみたくなった
Slide 6
Slide 6 text
2つの曲をマッシュアップしたときに合って聞こえる 「2つの曲が合っている」とは 主観的で曖昧……
Slide 7
Slide 7 text
2つの曲をマッシュアップしたときに合って聞こえる 「2つの曲が合っている」とは 主観的で曖昧…… 曲Aのメロディ 曲Bのメロディ 曲Aのメロディ 曲Aの伴奏 曲Bの伴奏 曲Bの伴奏 + → マッシュアップの構造 つまり「曲Aと曲Bの伴奏を入れ替え可能」なら良い →和音が似ていれば入れ替えても適合するだろうという仮説
Slide 8
Slide 8 text
2つの曲をマッシュアップしたときに合って聞こえる 2つの曲の和音(コード)が似ている 「2つの曲が合っている」とは 主観的で曖昧…… 曲から和音を抽出・比較すればよい →どうやれば抽出できる?
Slide 9
Slide 9 text
楽曲から和音を抽出する方法 ● iOSのアプリ で和音を分析して抽出してくれるものがある iOSがないので断念 ● プログラムの音楽系ライブラリ Pythonだとlibrosaが有名だが、実施例が見つからず断念 ● Web API SongleというAPIが使えそう(次ページで詳述)
Slide 10
Slide 10 text
Songleによる自動分析例
Slide 11
Slide 11 text
Songleによる自動分析例 サビ/繰り返し区間 拍(ビート) 和音(コード) 音程 youtube/ニコ動の音楽が対象
Slide 12
Slide 12 text
楽曲から和音を抽出する方法 Web上から確認する他に APIを叩いて自動分析結果を取得できる (JSON / XML)
Slide 13
Slide 13 text
楽曲から和音を抽出する方法 ぼくらはみんな意味不明×妄想感傷代償連盟 の元になった2曲の和音を取得し、 ● サビの区間を抽出 ● 欠損値補完(自動分析に失敗した箇所を入力) ● 転調を反映 ● 時間軸×音程(ピッチ) でグラフ化(クロマグラム)
Slide 14
Slide 14 text
2曲のサビ部分を比較
Slide 15
Slide 15 text
2つの曲の和音(コード)が似ている とは? 和音のうち2音が共通していれば似ているという仮説 C = ドミソ Em = ミソシ (和声理論の代理和音を参考にした)
Slide 16
Slide 16 text
2つの曲をマッシュアップしたときに合って聞こえる 2つの曲の和音(コード)が似ている 2つの曲の和音(コード)の構成音が2個以上共通している 「2つの曲が合っている」とは
Slide 17
Slide 17 text
2曲のサビ部分を比較 和音(コード)の構成音が2個以上共通している区間を塗りつぶし コードが似ていると言えそう
Slide 18
Slide 18 text
まとめ 2つの楽曲について和音(コード)を抽出し、 音程を比較して類似性を調べた結果、 和音が似ていることが分かった ソースコード:GitHub Linus-MK/audio_chord_analysis ブログ記事:後日公開予定