日本ソフトウェア科学会第 39 回大会 (2022 年度) 講演論文集

耳コピ成果物に対するフィードバックシステムの提案
木川 裕太郎伊藤 恵

本研究では，DTM における作曲の熟達への主な方法としても知られている「耳コピ」による成果物に対してフィードバックを行うシステムの提案を行う．DTM による作曲には，多様な領域を跨いだ知識と実践的なノウハウの蓄積が必要であるため，その学習ハードルの高さから教育的支援を行う需要があると考える．耳コピとは，何らかの音楽を耳で聞き，演奏や採譜などの手段を通じて，できる限り聞いたままに再現してアウトプットする行為である．また，耳コピは実践的かつ網羅的な DTM に関する学習機会にもなるため，DTM コミュニティおいてしばしば上達方法の一つとして挙げられる．しかし，現状の学習行為としての耳コピは，聞いた楽曲をアウトプットする行為に留まるため，主観的なふりかえりで学びが終わってしまう．そこで，耳コピでアウトプットした成果物に対してフィードバックを与えるシステムを制作することで，学習者に客観的な評価からの学びの機会を与え，作曲技術の熟達を支援することを目標とする．

くつか行われている．吉田 (2009) は，自身が開講し1 はじめにているコンピュータ音楽教育に関する講義の実践にコンピュータを用いて作曲を行う DTM(Desk Top

ついて述べている [6]．実践の中では，作曲するパーMusic) は，電子的な波形を基調としたシンセサイ

トの順序の工夫や，ピアノロールからコードに関すザーや電子ドラム音源から，現存する楽器の音色をサる理解を促す試みなどが紹介されている．また，山根

ンプリングして再生するサンプリング音源まで幅広い

ら (2016) は，作曲の学習過程にゲーミフィケーショ音色表現に加え，リバーブやコンプレッサーをはじめンを用い，より手軽に楽しく作曲を学ぶことができるとする様々なサウンド・エフェクトによる音色の加工システムとして RPG(ロールプレイングゲーム) 型のによって，実に多様な音楽表現の可能性を持つ作曲手作曲システムを提案した [5]．このシステムは，RPG法である．しかし，これらの音色表現を使って上質な要素を取り込んだゲーミフィケーションにより，ピア音楽を制作する為には，音楽理論に始まり，それぞれノロールなどの DTM 特有の作曲方式を用いた作曲の音色または楽器への奏法の理解，サウンド・エフェの流れを学ぶことができる事が特徴である．しかし，クトやイコライザを使ったミックス処理等のサウンド

これらの学習手法は学習者が体型的に作曲理論を学ぶ

エンジニアリングに関するノウハウなど，多様かつ複入門口としての役割が強く，より学習者が DTM に雑な知識・技術が求められる．したがって，DTM のおいて豊かな表現をする為には，さらに踏み込んだ実熟達の為には多様な知識領域を跨いだ学習が要求さ践的ノウハウの育成が必要になると考える．

れており，学習のハードルは高いと考えられる．

DTM または作曲教育に関する研究や取り組みはい

一方で，DTM コミュニティにおいて DTM の学習方法の一つとしてよよく示されるものとして，「耳コピ」が挙げられる．耳コピとは，何らかの音楽を耳でA Proposal for a Feedback System for Results of Music Dictation.
Yutaro Kikawa, Kei Ito, 公立はこだて未来大学, Future
University Hakodate.

聞き，演奏や楽譜などの手段を通じて，なるべく聞いたままに再現してアウトプットする行為である．耳コピが学習方法として提示される要因として，まず，音楽を模倣し再現する為に聞く事で，曲を音色パーいない事も述べている．

ト単位，フレーズ単位，A メロ・B メロ・サビといった進行単位など多角的な視点から分析的に音楽を解釈する力の養成，サウンド・エフェクトによる質感な2. 2 初心者の作曲動機を向上する RPG 要素によるステップ入力型作曲システム

どの聴き分け経験の蓄積といった効果が期待される山根ら (2016) は，作曲の学習過程にゲーミフィケー事が挙げられる．また，それらの要素を自力で DTMションを用い，より手軽に楽しく作曲を学べるシスのパラメータとして表現するため，打ち込み技術，音テムとして RPG(ロールプレイングゲーム) 型の作曲色作り，エフェクトの使用などの経験も蓄積される，システムを提案した [5]．該当のシステムでは，RPG従って，DTM に必要な知識領域を比較的網羅した実ゲームの形式にのっとって，メロディ編・リズム編・践的な学習が行える事が考えられる．しかし，現状のコード編など音楽理論的なカリキュラムでシナリオが耳コピのプロセスを学習プロセスという観点から考分かれている．全体を通してピアノロールへ音楽理論えたときに，模範解答とされる耳コピ対象の原曲に対的にそれらしい音価の配置をする事でゲームが進行して耳コピを行う事によって生まれたアウトプットがするようになっている．

どれだけ正しいのかを客観的に評価する方法はない．
しかだって，現状では耳コピを行った当人が主観的に

2. 3 DECODA正しいかどうかを判断するしかアウトプットを振り返る方法が存在しない．
そこで，本研究では，耳コピでアウトプットした成果物に対してフィードバックを与えるシステムを制作することで，耳コピ学習において客観的な評価からの学びの機会を学習者に与え，DTM における作曲技術の熟達を支援することを目的とする．

2 関連事例・研究
2. 1 情報系学部でのコンピュータ音楽教育の実践

図1

DECODA ソフトウェア画面

吉田 (2009) は，自らが開講するコンピュータ音楽教育の実践について論じている [6]．吉田は，DTM にDECODA [3] とは，ZPLANE 社が発売している楽おける作曲プロセスについて論じ，作曲するパートの曲のキー・コード進行・テンポ・構成等の解析を補助

順番を工夫することで音楽理論に理解がなくても作する事により耳コピの支援を目的とするツールであ曲を比較的容易に作曲できるようにしている．また，音楽理論におけるコードを，譜面や鍵盤でなく DTMる．DECODA には楽曲データを取り込む事が可能で，取り込んだ楽曲データを解析し，ピアノロール †1のピアノロールで表現し教える事で，より単純明快に上に則して楽曲のメロディと思わしき箇所を表示す表示できると述べている．さらに，コード進行の学習る機能や，コード進行や楽曲構成を表示する機能なコストを下げる為に，特定コードの講義をした後に，どを有する．また，ピアノロールには MIDI 形式の別種のコードについてはサンプル素材を用意しそれ音価情報 (MIDI ノート) を書き込む事が可能であり，らを利用させている．吉田は，学生のつまずきの抑制

DECODA の解析機能による支援を受けながら耳コピやコードに対する理解向上などの効果の存在につい結果を MIDI ファイルとしてアウトプットできるよて言及した一方で，該当カリキュラムは一通りの手順に触れるだけで手一杯になり，アレンジや作り込みなどより細かい箇所に関する指導や学習時間を取れて†1 DTM において，演奏情報を可視化する形式．縦軸に音高，横軸に時間軸を取り，ノートと呼ばれる音価情報をその中に示す．

うになっている．DECODA の有する機能は耳コピのしており，本研究における耳コピ対象の楽曲をいかに模範解答となる耳コピ対象の楽曲をデータ的に処理しデータとして落とし込み評価するかの参考にする．

視覚的に表現することができるため，本研究における耳コピ対象と耳コピ行為のアウトプットとの客観的比

3 提案手法較を実現しうるが，DECODA はあくまでも耳コピそ本研究では，耳コピを通した学習において学習者にのものを支援するツールという立ち位置で提供される客観的な評価からの学びの機会を与え，DTM におけツールであり，耳コピ対象と耳コピ行為のアウトプッる作曲技術の熟達を支援することを目的として，耳コトの差分を評価する機能は該当ツールのシステム内でピによりアウトプットした成果物に対して耳コピ対象は実現していない．本研究では，耳コピ行為後に耳コの楽曲を基準とした評価及びフィードバックの手法をピ対象との差分を評価しフィードバックする事で，耳提案する．

コピの学習的効果を向上させるシステムを提案する．

3. 1 耳コピ対象と耳コピ行為のアウトプットの2. 4 採譜支援ソフト WaveTone

比較方法の検討
本研究では，耳コピのアウトプットに対しててフィードバックを与えるために，耳コピ対象とアウトプットを比較し，差異を検出・評価する必要がある．そこで，本研究では，SMF(Standard MIDI File) を利用した楽曲情報の比較を行う．

SMF [4] とは，タイミング情報が付いた MIDI デー
タを扱うための標準化された方式を提供するファイル規格である．SMF 規格を本研究において利用する事には以下の理由がある．まず，SMF 規格は DAW
図2

WaveTone ソフトウェア画面

や MIDI 編集ソフトにおいて編集データの出力フォーマットとして採用されていることが多く，DTM によ採譜支援ソフト WaveTone [1] とは，DECODA とる耳コピ成果物のアウトプットは SMF 形式で出力可

同様に楽曲の解析と MIDI 情報への書き込みを支援能であることが多い．また，技術的な面においてもすることを目的としたフリーソフトウェアである．
DECODA との大きな違いは，スペクトラム解析 †2

SMF や MIDI をサポートするフレームワークや APIの結果から MIDI 情報を自動で打ち込む自動採譜機ある．例えば，Java では標準パッケージの一つであ能を有することである．DECODA は耳コピ時の聴き取りに関する利便性を向上させる側面が強く，耳コる javax.sound パッケージ [2] の中で MIDI をサポートしている．Python では，python-midi†3 ，mido†4 ，ピを行う段階は自分で行うが，WaveTone では自動pretty-midi†5 などの MIDI をサポートする数々のラ採譜機能が存在するため耳コピは学習行為ではなくイブラリが存在する．

は多く，システム開発が比較的容易と見込めるためで半自動化されたタスクとしての意味合いが強く，教育

これらの理由から，本研究では耳コピ対象となる楽ツールとしては DECODA よりも活用しずらいと考

曲と耳コピのアウトプットの双方を SMF フォーマッ

える．しかし，本ツールの自動採譜機能は波形情報でトに落とし込むことで，MIDI パラメータ上におけるある楽曲データをスペクトラム解析から MIDI デー

音価のタイミングや音高の差分分析を切り口に評価をタのフォーマットに落とし込むことができる事を示唆†2 音声波形の周波数成分を解析する手法．

†3 https://github.com/avsaj/python-midi†4 https://mido.readthedocs.io/en/latest/#†5 https://craffel.github.io/pretty-midi/

行う．また，本研究では差分の評価及びフィードバッを図 4 に示す．初めに，比較対象となるトラック †7

クシステムの提案に注力するため，耳コピ対象となるを手本用 SMF 及び耳コピ SMF から選択する．次に，楽曲は SMF フォーマットのバージョンが存在するも手本用 SMF の MIDI メッセージを先頭から探索してのに限定する．

いく．この時，トラック内の MIDI メッセージは時間軸の昇順に格納されている．次に，MIDI メッセー

3. 2 システム概要

ジがノートの発生箇所を示す “NOTE ON”であるか

本研究で提案するシステムは，システムに入力さどうかを確認する．そして，もし MIDI メッセージ

れた，手本となる楽曲の SMF と，耳コピで制作したが NOTE ON であった場合，そのノートの発音箇所，SMF ファイルの一致度の数値化と可視化をすること

ノートナンバー，ノートの長さの情報を保持しつつ，でフィードバックを行う．手本の SMF を基準に耳コ

耳コピ SMF 側の探索を開始する．耳コピ側では手本

ピの SMF の差分を音高 (Note Number), 音価のタイ側で保持したノートの発生箇所から探索を開始し，同ミング (tick), 音価の過不足などで分析し，フィードノートナンバーで最も近いノートを探していく．もしバックを表示する．図 3 に提案するシステムを示す．

該当するノートがあれば発生位置やノート長を比較

このシステムでは初めに，学習者が耳コピ対象となし，該当するノートがなければ，探索する対象ノートる楽曲を決定し，その楽曲を耳コピする．本研究ではナンバーを増減させて再び探索する．

選ばれる楽曲に対する制約として，原曲に対応する信頼性の高い SMF ファイルが存在することが条件と

3. 4 検討アルゴリズム及び開発の課題なる．例としては，ヤマハミュージックデータショッ
プ †6 などのカラオケ伴奏用の SMF データを取り扱の検討を行ったが，検討中のアルゴリズムや MIDI のうサービスで SMF データが販売されている著名な仕様には懸念点が存在する．初めに MIDI のタイム楽曲などである．学習者は，耳コピの完了次第 MIDIスタンプ仕様である “デルタタイム”の概念についてデータを SMF フォーマットで出力する．続いて，耳である．ログ 1 は Python の Mido ライブラリによコピ対象となった楽曲の SMF(手本用 SMF とする)る MIDI メッセージの展開ログの一部である．MIDIと，学習者が耳コピした SMF を本システムに入力すメッセージのタイミング情報を表す time 値に注目する．すると，システムが手本用 SMF を基準に耳コピると，time 値は MIDI メッセージを表示する度に短した SMF がどれだけ近く打ち込まれているか差異を調増加しておらず，一見 MIDI メッセージリストの分析する．分析が終了すると，手本用 SMF と耳コピ展開結果が順不同になっている様に見受けられる．しした SMF を比較して表示し，差異のある場所にガイかし，このリストは順不同ではなく，この不規則なタドを表示し，どういう点で差異があるのか示す．まイムスタンプは MIDI メッセージの仕様である “デルた，差異の程度や箇所をスコア化し，総合的な一致度タタイム”によるものである．MIDI メッセージにはを表示する．

デルタタイムというメッセージが付属することがあ

前章では，SMF ファイル同士の比較アルゴリズム

り，デルタタイムには直前の MIDI メッセージから3. 3 比較アルゴリズムの検討の時間を表す値が格納されている．このデルタタイ

本研究では，フィードバックを行うために二つのムが MIDI メッセージに付随することにより，MIDISMF ファイルの差異を検出・比較する必要がある．

は相対的は待機時間の連続によってタイムスタンプ

そこで，本章では SMF ファイルの内部データを比較を構成している．言い換えれば，MIDI は絶対時間軸するためのアルゴリズムを検討する．アルゴリズム案

での情報を構造的に持っていない．ゆえに，前章で提案した時間軸による探索の実装には十分配慮しな†6 https://yamahamusicdata.jp/case/index02.html†7 SMF ファイルにおける楽器パートでまとまった演奏情報の構成単位．

耳コピ対象の楽曲(SMFファイル)耳コピ対象の楽曲(原曲)

システム内のふるまい

対応

入力

ノートの音高のずノートの位置のずノートの過不足を検知
+80 
tick

差分評価

耳コピ結果

(SMFファイル)耳コピ

DTMソフト等で 打ち込み

入力

学習者

missingnote+1

note_num

Accuracy76%

一致度の提差分箇所の提示

客観的フィードバック図3

耳コピフィードバックシステムの構成図

ら音価情報に関わるデータのみを抽出し比較する事が求められるが，音価情報に関わる NOTE ON また

耳コピ対象(評価基準)

は NOTE OFF 以外のメッセージにもデルタタイム

ノート (音価単位)

1 探索が付随する場合，それらのメッセージのデルタタイムについても計算しなければ MIDI メッセージのタイミング情報が崩れてしまう事が挙げられる．

2 NOTE_ONの検知 → tick (ノート位置) 、

耳コピ

ノートナンバー、 ノートの長さ (NOTE_OFFとの差分)、 
を記憶

ログ 1

Mido ライブラリによる MIDI メッセージ展開ログ
3 NOTE_ONと 同タイムスタンプから 左右・上下に探索

4 ヒット！ 

→ tickの差は?

ノートＮｏ．は? 
ノートの長さは?

1

program_change channel =0 program =89 time =02

control_change channel =0 control =7 value =76 time =03

control_change channel =0 control =10 value =64 time =04control_change channel =0 control =121 value =0 time =05control_change channel =0 control =91 value =40 time =06control_change channel =0 control =93 value =20 time =07control_change channel =0 control =1 value =0 time =1344

8pitchwheel channel =0 pitch =0 time =09note_on channel =0 note =74 velocity =127 time =010note_on channel =0 note =70 velocity =127 time =011

note_on channel =0 note =65 velocity =127 time =012pitchwheel channel =0 pitch =2730 time =40813pitchwheel channel =0 pitch =6842 time =8ては，今回提供するシステムは MIDI メッセージか14pitchwheel channel =0 pitch =8191 time =9

図4

SMF ファイル比較アルゴリズム案の図解ければならない．具体的に現在考えられる事例とし

15pitchwheel channel =0 pitch =7999 time =52

16pitchwheel channel =0 pitch =5300 time =617pitchwheel channel =0 pitch =1477 time =1018pitchwheel channel =0 pitch =96 time =1019pitchwheel channel =0 pitch =0 time =620pitchwheel channel =0 pitch =3855 time =77

4 まとめ
本研究では，耳コピを通した学習において客観的な評価から学びの機会を学習者に与え，DTM における作曲技術の熟達を支援することを目的として，耳コピによりアウトプットした成果物に対して耳コピ対象を基準とした評価及びフィードバックの手法を提案した．今後の方針としては，より良いアルゴリズムの検討を含めつつ SMF ファイルの比較・評価の実装を行う．また，フィードバックシステムのプロトタイプの実現と DTM 上達に対しての有効性を確かめるための評価実験を行う．

参 考 文 献[1] Ackie Sound: Ackie Sound ダ ウ ン ロ ー ド：
WaveTone v2.67, https://ackiesound.ifdef.jp/download.html#wt, 2022. (Accessed on 08/03/2022).
[2] Oracle: JDK6 ドキュメント 第 1 章: Java Sound
API の紹介, https://docs.oracle.com/javase/jp/8/docs/technotes/guides/sound/programmer_guide/chapter1.html, 1993. (Accessed on 08/08/2022).
[3] SONICWIRE: ソ フ ト ウェア ／ ツ ー ル 「DECODA」 — SONICWIRE, https://sonicwire.
com/product/A9044, 2019. (Accessed on 08/03/2022).
[4] 音 楽 電 子 事 業 委 員 会: MIDI1.0 規 格 書：MIDI
Standard&Recommended Practice, https://amei.
or.jp/midistandardcommittee/MIDI1.0.pdf, 1985.
(Accessed on 08/09/2022).
[5] 諒山根, 春菜田中, 朋子米澤: 初心者の作曲動機を向上する RPG 要素によるステップ入力型作曲システム,
2016 年度 情報処理学会関西支部 支部大会 講演論文集, Vol. 2016, sep 2016.
[6] 吉田友敬: 情報メディア学科におけるサウンド教育の構想, 名古屋文理大学紀要, Vol. 15(2015), pp. 13–16.