同じメロディを3つの音色で弾くと、どれが記憶に残るか
遊びをつくる執筆にClaudeを使用しています。

ゲームの合図音を作る場面を考えてみます。6音ほどの短いメロディで、プレイヤーが次の場面でも口ずさめるくらい耳に残ってほしいとします。音の高さと長さは決まりました。残る迷いは、フェルトのようにやわらかい音にするか、ガラスのように硬い音にするか、ブラウザで鳴らす合成音にするかです。好みで決めてもよいのですが、「覚えやすさ」が基準なら、自分の耳の印象より、他人に聴かせて再現してもらった結果のほうが頼りになります。 この記事は、その比較を自分で行うための実験の設計書です。結果は書きません。雨音のピアノにある2音色(フェルトとガラス)と、短いコードで作る合成音を使い、同じ6音のメロディを聴いた人がどれだけ正確に弾き返せるかを記録します。測るのは「音色が覚えやすさに関わるか」であり、「どの音色が好まれるか」ではありません。
何を比べるのか:問いを測れる形にする
「記憶に残る」のままでは測れません。次のように言い換えます。
- 問い:同じ6音のメロディを同じ回数だけ聴いたあと、音色によって、同じ順番で弾き返せる音の数が変わるか。
- 測る量:6つの位置それぞれについて、同じキーを弾けたかどうか(○か×か)。
- 変える条件:聴かせる音色だけです(フェルト、ガラス、合成音の3つ)。
- 揃える条件:メロディの長さと難しさ、テンポ、音量、聴く回数、再現に使う道具、再現までの時間。
難しいのは、音色以外の差を残さないことです。メロディを3種類用意し、音色との組み合わせを参加者ごとに入れ替えます。そうしないと「この曲が覚えやすかった」のか「この音色が覚えやすかった」のか区別できません。
準備するもの
メロディ3種
雨音のピアノのキーボードは A W S E D F T G Y H U J の並びで、Z/X で音域を切り替えられます。ここでは黒鍵側を使わず、A S D F G H J の7キーだけで作ります。このキーを順に1〜7と数えます。
3つのメロディは、すべて6音で、同じキーを二度使わず、隣り合う音の高さの差(キー数)を2、1、3、1、2の順にそろえてあります。
- X、数字:1 3 2 5 4 6、弾くキー:A D S G F H
- Y、数字:4 6 5 2 3 1、弾くキー:F H G S D A
- Z、数字:7 5 6 3 4 2、弾くキー:J G H D F S
ただし、3つは音の動きの形がよく似ています。似たメロディを続けて聴くと、前に聴いたものと混ざって間違えやすくなります。本番では、自分のゲームに使うメロディの音数・音の種類・音の跳び方をそろえた別案に差し替えてかまいません。差し替えたら、各メロディの「隣り合う音の差の合計」が同じになるかを確かめてください。
合成音を鳴らす最小のページ
次のHTMLを synth.html という名前で保存し、ブラウザで開きます。外部のファイルや通信は使いません。
<!doctype html>
<meta charset="utf-8">
<title>合成音メロディ</title>
<select id="m">
<option value="ADSGFH">X</option>
<option value="FHGSDA">Y</option>
<option value="JGHDFS">Z</option>
</select>
<button id="p">再生</button>
<script>
const FREQ = {A:262, S:294, D:330, F:349, G:392, H:440, J:494};
const STEP = 0.6; // 音の間隔(秒)
const DUR = 0.5; // 1音の長さ(秒)
const RATIO = 1; // 音高の補正(雨音のピアノと合わせる)
const VOL = 0.2; // 音量
let ctx;
function note(f, t) {
const o = ctx.createOscillator();
const g = ctx.createGain();
o.type = "triangle";
o.frequency.value = f;
g.gain.setValueAtTime(0.0001, t);
g.gain.exponentialRampToValueAtTime(VOL, t + 0.01);
g.gain.exponentialRampToValueAtTime(0.0001, t + DUR);
o.connect(g).connect(ctx.destination);
o.start(t);
o.stop(t + DUR + 0.05);
}
document.getElementById("p").onclick = () => {
ctx = ctx || new AudioContext();
const t0 = ctx.currentTime + 0.1;
[...document.getElementById("m").value]
.forEach((k, i) => note(FREQ[k] * RATIO, t0 + i * STEP));
};
</script>音の間隔 STEP、長さ DUR、音量 VOL、音高の補正 RATIO は、雨音のピアノ側に合わせて調整する前提の変数です。雨音のピアノの各キーが実際にどの高さで鳴るかは、この記事では前提にしていません。同じキーを雨音のピアノと合成音で順に鳴らして耳で比べ、音域のずれがあれば Z/X か RATIO で合わせてください。
そのほか
- 雨音のピアノを開いた端末(ヘッドホンまたはスピーカーを固定)
- 参加者(3の倍数が組み合わせを回しやすく、9人程度から始められます)
- 記録用紙(後述の表)
- 時間を計るもの
雨音のピアノでは、事前に作品を開いて次の3点を確かめます。いずれも、この記事では断定しません。
- 雨音が鳴る設定を切れるか。切れない場合、聴かせる全条件で同じ状態にします。合成音側は雨音がないため、その差は誤りやすい点として記録に残します。
- 余韻の切り替えとタッチ(3段階)。聴かせる間は、この2つを全条件で固定します。
- 録音した演奏を、音色を変えて再生できるか。変えられるなら同じ演奏を2つの音色で聴かせられ、変えられないなら各音色で同じ手順で弾き直します。
手順:1人あたりの流れ
条件の割り当て
9人を3グループに分け、メロディと音色の組み合わせを回します。
- 1、1回目:X・フェルト、2回目:Y・ガラス、3回目:Z・合成音
- 2、1回目:X・ガラス、2回目:Y・合成音、3回目:Z・フェルト
- 3、1回目:X・合成音、2回目:Y・フェルト、3回目:Z・ガラス
この表では、各メロディが3つの音色をそれぞれ1回ずつ担当します。ただし、順番(1回目、2回目、3回目)と音色の対応は偏っていません。表の見た目より、「どの音色も1回目、2回目、3回目に1回ずつ来る」ことを確かめて使ってください。
聴かせ方
- 参加者には、これから聴く短いメロディを、あとで鍵盤で弾き返してもらうと伝えます。
- メロディを3回続けて聴かせます。間は3秒あけます。
- 聴いている間は、指を動かさない、声に出さない、メモをとらない、と決め、全員に同じ説明をします。口ずさみを許すかどうかは実験者が決めて構いませんが、全員で統一します。
- 聴かせ方は人が弾く方式より、再生に任せる方式のほうが安定します。人が弾くと、テンポや強さが毎回少し変わります。
再現のさせ方
- 再現用の道具は雨音のピアノに固定し、音色もフェルトかガラスのどちらか一つに固定します。聴いた音色と同じにすると、音色の一致で思い出しやすくなる効果が混ざります。
- 再現の前に、A S D F G H J を一度ずつ弾いてよい時間を取ります。キーの位置を探す時間まで記憶テストに含めないためです。この確認の時間と回数は全員同じにします。
- 再現は通しで1回だけとします。弾き直しは認めず、押したキーの順をそのまま記録します。
- 録音機能は30秒・128音までで、画面を開いている間だけ残ります。弾いた内容は録音に頼らず、その場で記録用紙に書き写してください。
記録の取り方と結果の読み方
記録の単位
1回の聴取と再現につき、1行です。参加者9人 × 3条件で27行になります。
参加者 / 順番 / メロディ / 音色 / 位置1 / 位置2 / 位置3 / 位置4 / 位置5 / 位置6 / 正答数
位置の○は、その位置に正しいキーを弾けた場合のみです。音をひとつ飛ばしたあとの音が正しい高さでも、位置がずれていれば×とする、という採点規則を実験の前に決めて、紙に書いておきます。途中で規則を変えると、結果が採点者の気分に左右されます。
さらに余裕があれば、翌日にもう一度、聴き直しなしで同じメロディを弾いてもらう遅延テストを加えます。ただし、同じ日に3条件を続けて行うと、後の条件が前の条件と混ざります。遅延テストを入れるなら、1日1条件で3日に分けるのが確実です。
読み方の順番
- 音色ごとの平均:3つの音色について、正答数の平均を出します。
- 参加者ごとの順位:各参加者の中で、どの音色の正答数が最も多かったかを見ます。平均が違っても、順位が参加者ごとにばらばらなら、音色の効果とは言い切れません。
- メロディと順番の影響:音色ではなく、メロディX・Y・Zの平均や、1回目・2回目・3回目の平均を並べます。こちらの差が音色の差より大きいなら、音色について語れる段階ではありません。
- 位置ごとの正答:先頭や末尾の音が残りやすいことは一般に知られています。どの音色でも同じ形になるか、特定の音色だけ中間の位置の○が増えるかを見ます。
- 事前の基準:実験の前に「音色間の差が平均で1音未満なら、差があるとは判断しない」のように、判断の基準を書いておきます。数字は自分で決めて構いません。結果を見てから基準を決めると、望む結論に寄せてしまいます。
9人程度の記録は、傾向を見る材料にはなっても、一般にあてはまると言える根拠にはなりません。結果が出たら、「この条件のこの人たちでは」と範囲を付けて読んでください。
ゲーム作りへの戻し方
結果がどうなっても、次の判断に使えます。
- 音色の差が小さいなら、音色は印象や雰囲気で決められます。覚えさせたい要素は、音の高さの動きやリズムに寄せて設計できます。
- 差が大きいなら、合図音など覚えてほしい場面にその音色を使い、雰囲気用の音には別の音色を使う、という分け方ができます。
- 位置別の正答に偏りがあれば、覚えてほしい音を先頭か末尾に置く、という設計の根拠になります。
起こりやすい誤り
- 音量が揃っていない:合成音の VOL と雨音のピアノの音量を、同じ端末・同じ出力で聴き比べて調整します。音量が大きいほうが印象に残りやすいため、これが最も混ざりやすい差です。
- 音の長さの違い:雨音のピアノは余韻を切り替えられます。余韻の長さが合成音の DUR と違うと、音色ではなく長さの影響を見てしまいます。
- 音高のずれ:合成音の基準周波数が雨音のピアノと違うと、メロディの輪郭が同じでも高さが変わります。RATIO か Z/X で合わせます。
- 雨音の有無:雨音のピアノの雨音が鳴ったままだと、背景音の条件が合成音とずれます。切れるかどうかは作品で確認し、切れないなら記録に注記します。
- 実験者と参加者が同じ人:自分で何度も聴いたメロディは、もう新鮮ではありません。参加者を自分にしないでください。
- 同じ参加者に同じメロディを再利用する:2回目以降は音色の効果ではなく、すでに知っているかどうかを測ってしまいます。
- 採点規則の後出し:弾き間違えの扱いを実験後に決めると、結果が歪みます。
- ブラウザの自動再生制限:合成音のページは、再生ボタンを押した操作の中で AudioContext を作る形にしてあります。音が出ない場合は、ページを再読み込みして押し直してください。
- 機器の変更:途中でスピーカーとヘッドホンを入れ替えると、条件が変わります。最初から最後まで同じ機器で行います。
次の行動
まず雨音のピアノを開き、雨音の切り替え、余韻、録音後の音色変更ができるかを確かめてください。次に synth.html を保存して音量と音高を雨音のピアノに合わせ、判断の基準と採点規則を紙に書いてから参加者を集めると、結果を読むときに迷いません。



