8秒の「番組の顔」を、音の役割から作る
ジングルは、番組の始まりや場面の切り替えに使う短い音楽です。ここでは架空の科学部ラジオのために、120 BPM・4拍子・4小節の8秒を作ります。BPMは1分あたりの拍数。120なら1拍0.5秒なので、4拍×4小節=16拍で8秒です。
AIには音色や曲の案、編集手順の下書きを頼めます。ただし「8秒」「120 BPM」と依頼しても、その通りの長さや拍になるとは限りません。最後は音を聞き、波形と長さを確かめ、用途に合うよう編集します。
以下はAI ATLASが音符を指定し、プログラムで合成した独自の教材音源です。実際にWAVとMIDIを書き出しています。音楽生成サービスの出力、既存曲の編曲、実在する人の声ではありません。
完成例: 同じ16音、つなぎ目だけを変える
音量を低めにして再生してください。Aは比較用に音を急に切り替えています。Bは各音の出だしを10ミリ秒、終わりを50ミリ秒かけてなめらかにした版です。1ミリ秒は1000分の1秒です。
A: 急な切り替え
音の境目が急に変わる設計。小さなクリック音が生じる原因を観察するための教材です。
B: フェード付き
音の始めと終わりを徐々に変えます。最後の音も0へ戻して、急な終了を避けます。
両方とも8秒、48 kHz、16 bit、モノラル。48 kHzは1秒を48,000個の値で表すこと、16 bitは各値の細かさです。拍や音符は同じですが、平均音量は完全には一致させていないため、「Bの方がよい音色」といった好みの実験には使いません。
1小節目: ド ミ ソ ミ / C4 E4 G4 E4 2小節目: レ ファ ラ ファ / D4 F4 A4 F4 3小節目: ミ ソ ド ソ / E4 G4 C5 G4 4小節目: ファ ミ レ ド / F4 E4 D4 C4 すべて四分音符。120 BPM、1音0.5秒。
MIDIは録音そのものではなく、「いつ、どの高さの音を、どれくらい鳴らすか」という演奏情報です。同じMIDIでも、読み込む音源によって聞こえ方が変わります。WAVは書き出した音そのものを持つため、今回は完成見本をWAVで載せています。
初級: 用途を決め、8秒を仕上げる
必要なもの
試聴だけならこのページで完結します。編集するならAudacityなどの音声編集ソフトとイヤホン・スピーカー。音符を変えるならMIDIを読み込める音楽制作ソフトを使います。生成サービスを使う場合の料金、年齢条件、公開・利用条件は別途確認してください。
- 使う場面を決める:「科学部ラジオの始まり。明るいが、次の声を邪魔しない」。歌入りか、楽器だけかも先に決めます。
- 完成例Bを読み込む: まず再生して、始まりと終わりを確認。元ファイルは別名で保管します。
- 波形を拡大する: 0.5秒ごとの音の切り替わりで、大きな段差がないか見ます。Aを同じ位置で開くと比較できます。
- Aを直してみる: 最初の音の0.000〜0.010秒を選んでフェードイン、0.450〜0.500秒を選んでフェードアウトします。時間の選択欄を使うと狙った範囲を指定できます。まずこの1音を聴き比べ、同じ処理を0.5秒ごとの音へ進めます。曲全体をフェードするのと混同しません。
- 必要な長さへ書き出す: 選択範囲だけではなく、意図した全8秒を出力したか確認。別のプレーヤーでも開きます。
架空の科学部ラジオのオープニング用ジングルを考えます。 用途: 直後に日本語のナレーションが始まる。 狙い: 好奇心、親しみ、軽やかさ。楽器のみで歌声なし。 構成案: 120 BPM、4拍子、4小節。8秒を目標。 音色: やわらかい木琴風の主旋律と、控えめな低音。 特定の曲や歌手の模倣ではなく、独自の短いフレーズ。 まず拍ごとの構成を提案し、長さを実際に確認する方法も示してください。 生成音源が指定の長さ・テンポになる保証はしないでください。
文章から音源を作るサービスに送る場合は、前半の制作条件を中心に使います。対話AIに送る場合は、構成や編集の確認方法を相談できます。対話AIが文字で「音を作りました」と答えただけなら、再生できる音声ファイルができたことにはなりません。
中級: 音楽だけの良さと、声を支える良さを分ける
映像や番組に音楽を付けるなら、音楽単体ではなく、声と重ねた状態で決めます。例えば最初の2秒をジングルだけにし、その後6秒を小さくしてナレーションへつなぐ設計があります。これはこの教材の編集案で、実際のナレーション音声は含めていません。
| 選択 | 向く場面 | 確認する弱点 |
|---|---|---|
| 音楽を止めてから声 | 最初の説明を確実に聞いてほしい | 切り替えが急でないか。余韻が不自然でないか |
| 声の間だけ音楽を下げる | 雰囲気を保ちつつ内容を伝えたい | 音量が上下しすぎないか。言葉の頭が隠れないか |
| 主旋律を減らす・消す | 長い説明の背景 | 音量を下げるだけでは残る旋律の競合を減らせるか |
声の間で音楽を下げることを「ダッキング」と呼びます。自動機能があっても、息継ぎごとに音楽が大きくなって気になる場合は、音量カーブを手でなだらかに直します。
よくある失敗は、どの工程で直す?
- 長さが8秒でない: 生成指示を繰り返すだけでなく、編集で必要な区間を選ぶ。フレーズ途中の切断は避け、終わり方を調整します。
- 境目でプツッと鳴る: 音量の段差を確認し、短いフェードやクロスフェードを試す。すべての音へ長いフェードを付けるとリズム感が変わるので、必要な長さを選びます。
- 音が割れる: 音源や混ぜた後のピークを確認。すでに波形が切り取られた音は、後から音量だけを下げても完全には戻りません。
- 声が聞こえない: 音量だけでなく、楽器の音域や密度も見直す。主旋律が不要なら別の伴奏へ替えます。
- ノイズ除去で声が水中のよう: 強さを戻して原音と比較。雑音をゼロにするより、言葉と自然さを残すことを優先します。
同じ条件で比較する
候補を比べるときは、同じスピーカー・同じ再生音量・同じナレーション区間にそろえます。単に大きい方がよく聞こえる影響を避けるため、可能なら平均的な大きさも近づけます。この記事のA/Bは境界処理の観察であり、音質の優劣を測定した試聴実験ではありません。
上級: 波形・音量・利用条件を別々に検証する
デジタル音声の振幅は、ここでは−1から1の範囲で扱います。音を重ねて範囲を超えると、出力時に上限へ切り取られる「クリッピング」が起きることがあります。音楽的によいかとは別の、信号の問題です。
| 計算した項目 | A | B | 意味 |
|---|---|---|---|
| 長さ | 8.000秒 | 8.000秒 | 384,000サンプル÷48,000 |
| サンプルピーク | 約−10.46 dBFS | 約−10.46 dBFS | 最大振幅から計算。知覚上の音量やトゥルーピークとは別 |
| 16 bitの上下限に達した値 | 0 | 0 | 保存済みWAVの整数値が−32768または32767の数 |
| 音の境界の最大段差 | 約0.47435 | 0 | 隣接サンプルの差。フェードの効き方を数字で見る |
上の数字は教材データから実際に計算した値です。試聴者の好みや、聞き取りやすさを測ったものではありません。小さなピーク値だから必ずよい音とも言えず、配信先の推奨ラウドネスがあれば、その基準に合わせて別途確認します。
実習1: 「最大の山」と「全体の強さ」を測り直す
ピークは波形のいちばん高い山、RMSは全体の平均的な強さを見る指標です。正負をそのまま平均すると打ち消してしまうため、RMSは各値を二乗して平均し、最後に平方根を取ります。ここでは全8秒を使い、無音も含めます。人の聞こえ方に合わせた重み付けはしておらず、LUFSやトゥルーピークを測るコードではありません。
音源・測定コード・テストをまとめたZIP · 測定・正規化コード単体 · 実行済みの全測定値JSON
- ZIPを専用フォルダーへ展開します。Python 3.9以降で動き、追加パッケージ・ネット接続は不要です。未導入なら無理に実行せず、次の表と配布結果から読み進められます。
- そのフォルダーで下の測定コマンドを実行します。読み取りだけで、WAVを変更しません。
- seconds が8、samples が384000、Aの maxBoundaryJump が約0.474349、Bが0になったか確認します。境界は既知の0.5秒間隔を検査しており、音符を自動検出した結果ではありません。
- samplePeakDbfs と rmsDbfs を別々に比べます。AとBは同じピークでも、RMSは約0.36dB違います。この小さな差が必ず聞き分けられるとは主張しません。
python audio_lab.py measure jingle-abrupt.wav jingle-faded.wav
| 保存したWAV | サンプルピーク | 全8秒のRMS | 読み取れること |
|---|---|---|---|
| 元のA: 急な切替 | −10.458 dBFS | −15.144 dBFS | 最大値だけでは平均の強さは決まらない |
| 元のB: フェード | −10.458 dBFS | −15.505 dBFS | 始めと終わりを弱めた分、RMSが下がる |
| AをRMS −18へ | −13.313 dBFS | −18.000 dBFS | RMSをそろえても、ピークは同じにならない |
| BをRMS −18へ | −12.952 dBFS | −18.000 dBFS | 同じRMSで境目の違いを観察できる |
AをRMS −18にした版
RMSをそろえたA。段差は約0.341441へ小さくなりますが、0にはなりません。
BをRMS −18にした版
RMSをそろえたB。境目は0のままです。音量調整とフェード処理は別の仕事です。
これは保存した音源へ計算を実行した比較です。RMSをそろえただけで、人による聞こえ方や好みまで同じ条件になるわけではありません。−18という数値も、この教材の比較用であり、すべての配信先に推奨する音量ではありません。
実習2: 同じBを「ピーク基準」と「RMS基準」で処理する
正規化は、ここではファイル全体を一定倍率で大きく・小さくする処理です。下の2行は別々の新しいWAVを作ります。1行目の結果へ2行目を重ねるのではなく、両方とも元の jingle-faded.wav から始めます。
python audio_lab.py normalize jingle-faded.wav my-peak.wav --mode peak --target-dbfs -3 python audio_lab.py normalize jingle-faded.wav my-rms.wav --mode rms --target-dbfs -18
ピーク基準の出力はピーク−3.000・RMS約−8.047 dBFS。RMS基準の出力はRMS−18.000・ピーク約−12.952 dBFSになりました。実行済みピーク基準WAVは元より約7.46dB大きいので、再生音量を下げてから試してください。ピーク処理の記録とRMS処理の記録で、元と結果を照合できます。
| 目的・失敗 | この実習での判断 |
|---|---|
| 最大値の余裕を確保したい | ピーク基準を使う。ただし平均音量やサンプル間のピークまではそろわない |
| A/Bの平均的な強さを近づけたい | 同じ区間のRMSをそろえ、ピークも測り直す。好みの判定を自動化したと考えない |
| RMS目標を上げると上限を超える | このツールは書き出さず停止する。目標を下げる。勝手に波形を切り取って数値だけ達成しない |
| すでに割れた音を小さくした | 上下限の値が0件でも、切り取られた波形は戻らない。元の録音・ミックスへ戻って修正する |
失敗も含めて、コードの検査を再実行する
audio_lab_test.pyを同じフォルダーへ置き、python audio_lab_test.py を実行します。配布WAVの再現、目標値、無音、壊れたWAV、非対応のステレオ、上限超過、既存ファイルを上書きしないことなど16件を実行済みです。たとえばRMSを−1へ上げる指示は、この素材では範囲を超えるため拒否されます。
対応は16 bit・モノラルの非圧縮PCM、最大500万サンプルまでです。測定用の振幅は整数値を32767で割ります。LUFS、トゥルーピーク、ノイズ除去、音符検出、DC成分の除去は行いません。一般の音楽を扱う万能ツールではなく、計算と判断を追える小さな教材です。
音を編集しやすい形で残す
全パートが混ざった音声だけだと、旋律だけを変更するのが難しくなります。MIDIなら音符を、ステムなら楽器群ごとの音声を分けて扱えます。ただし、AIで分離したステムには音漏れや人工的な響きが残る場合があります。書き出し形式だけでなく、実際に欲しい部分を編集できるか確かめます。
利用条件の確認は、音の完成とは別
サービスの「商用利用可」という表現だけで、あらゆる利用が保証されるわけではありません。利用したプラン、生成した日、機能、入力素材、リミックスや共同制作などの条件を確認します。例えばSunoの利用規約も出力とプラン・機能に関する条件を区別しています。後から有料プランへ変えれば過去の出力も同じ条件になる、と自己判断しないでください。
誰かの声を使う場合は、録音や声の複製をする許可と、どこで何のために公開するかを確認します。本人に言っていないことを言わせて実際の発言のように扱わないこと。学校や商業の公開物で判断に迷う場合は、管理者や必要な専門家へ相談してください。
耳とファイルの両方で確かめる
- 8秒という目標に合い、最後が不自然に切れない。
- 小さめの音量でも主役の音が分かり、急な大音量に驚かされない。
- 声を重ねる用途では、実際のナレーションと一緒に聞いた。
- ピークとRMS、上下限の値を別々に確認し、書き出したファイルを別のプレーヤーで開いた。数値だけで無歪みや好みを保証しなかった。
- 入力素材、生成時の条件、公開先、必要な許可を記録した。
次の一歩は、同じMIDIの楽器だけを変えること。「曲を変えた」のか「音色を変えた」のか「音量を変えた」のかを分けると、採用理由を説明できるようになります。
出典と、さらに読む資料
サービスの機能や技術は一次情報を参照。練習課題と比較例は、AI ATLASの編集制作です。
- Fading Audacity · 確認 2026-10-22 · 短いフェードで波形の急な段差を抑える方法。選択範囲がフェードの長さになる。
- Basic audio editing Audacity · 確認 2026-10-22 · 読み込み、クリップの分割・移動、音量カーブなどの基本操作。
- Terms of Service Suno · 確認 2026-10-22 · 生成物の利用条件がプラン、機能、生成時点等に関わることの確認先。改定日2026-08-10、効力発生日2026-09-03を掲載した版を確認。法的な権利の保証とは区別する。
- Normalize Audacity · 確認 2026-10-22 · ピークを基準に音量を調整する処理。教材コードはDC除去をせず固定倍率のみを使う。
- Loudness Normalisation Audacity · 確認 2026-10-22 · 知覚ラウドネスのLUFSとRMSのモードを区別する公式説明。教材の計算はRMSだけで、LUFSを実装したとは主張しない。
- wave — Read and write WAV files Python Software Foundation · 確認 2026-10-22 · WAVのサンプル数・サンプリング周波数・PCM読み書き。教材はPython3.9以降で16bitモノラルPCMだけを扱う。