SKIN FREQUENCY 制作の備忘録(1)制作編 — 前作 SLOW ORBIT から何が変わったか

前作の SLOW ORBIT は、就寝前用のインスト8曲でした。音量は曲順に下っていき、星空がゆっくり回り、最後は無音に着地する、「何も起きないこと」が品質のアルバムです。
4作目の SKIN FREQUENCY は、また真逆に振りました。2000年前後の日本のアーティストによるダンスリミックス集の路線で、男性ハイトーンの歌もの10曲を、128 BPM 固定のノンストップミックスで一晩ぶん流します。この路線にした理由は、正直に書くと「単純に好きだから」です。
作り方の面でも、今作は区切りになりました。claude.ai(チャット)のブリーフを Claude Code にヘッドレスで渡す仕組み(cc-bridge)で、工程をジョブに分けて回した最初のアルバムです。画像・マスタリング・動画・同期歌詞を別々のジョブにして、繋ぎを聴いて判断している間に並行で進めました。この記事は、前作との違いを工程ごとに並べた記録です。途中の失敗と対策は、姉妹記事の失敗と対策編にまとめました。
自分用の備忘録。前作の制作記(SLOW ORBIT 制作の備忘録(1)制作編)と対比しながら、「前作ではこうだった → 今作はどうなったか」を並べる。歌ものの工程は前々作 NEON DRIVE とも比べる。次のアルバムで同じ所まで再現できることが目標で、読者向けの説明は最小限にしている。 失敗と対策は別記事(失敗と対策編)に分けた。工程表・日ごとの記録・決めたことの一覧は後ろの付録にまとめた。 album-pipeline の中ではアルバムを番号で呼んでいる(005 = NEON DRIVE、006 = SLOW ORBIT、007 = 今作)。記事でも雛形や設定の話では番号が出てくる。
🔊 作品はこちら
▶ YouTube(ノンストップミックス・ビジュアライザー付き・4K)
🎧 ストリーミング配信: 2026年11月6日リリース
アーティスト名 Tadanobu で配信します。事前保存(Pre-Save)はこちらから:
https://distrokid.com/hyperfollow/tadanobu/skin-frequency
🌙 前作「SLOW ORBIT」の制作記
この記事は前作との比較で書いています。前作の工程を知らない方は、先にこちらをどうぞ。
SLOW ORBIT 制作の備忘録(1)制作編
完成したもの
- アルバム: SKIN FREQUENCY(全10曲・全曲歌もの)。YouTube の副題は -128 Nonstop Remixes-
- YouTube: 10曲を繋いだノンストップミックス(39分03秒。1080p と 4K を書き出し、4K を公開)。10/24 に公開
- 配信: DistroKid 経由で主要ストリーミングサービスへ。中身は YouTube の通しとは別の、曲ごとのフル版(10曲・52分24秒)。11/6 配信開始
- 期間: 10/17〜10/24 の8日(入稿・公開まで)。見積もりは9〜10日でした。反省会の対策は 10/25 まで
| # | 曲名(ストア版) | 型 | 尺(ストア版) |
|---|---|---|---|
| 1 | Overture 128 (Gate Mix) | T | 5:17 |
| 2 | Heat Signal (Floor Mix) | H | 5:18 |
| 3 | Raw Voltage (Big Beat Mix) | X | 5:12 |
| 4 | High Altitude (Euro Mix) | T | 5:33 |
| 5 | Undercurrent (Deep Mix) | H | 4:27 |
| 6 | Acid Summer (303 Mix) | K | 5:27 |
| 7 | Red Zone (Hard Mix) | K | 5:22 |
| 8 | Gravity Zero (Anthem Mix) | T | 5:28 |
| 9 | After Hours (Breaks Mix) | X | 5:22 |
| 10 | Dawn Runner (Progressive Mix) | H | 4:55 |
| 合計 | 52:24 |
型は T = trance、H = house、X = big beat、K = acid techno です(次の節)。動画の曲名は全大文字(HEAT SIGNAL など)、ストアは Title Case で登録しています。

先に結論を書いておくと、今作で一番変わったのは、自分が張り付く場所でした。前作までは、1つのセッションで工程を順に進めていました。今作は工程ごとにジョブを分けたので、自分の手番は「繋ぎを聴いて言葉で返す」「比較シートの番号を返す」にほぼ絞られ、その間に裏で画像や動画が進みます。そのぶん、ジョブとジョブの間で値が黙って引き継がれる事故も起きました(失敗と対策編の60秒フェードの件)。
発案と制約 — 128 BPM 固定の架空のリミックス集
前作: 睡眠アルバムの設計 — 根拠を先に整理し、効能は謳わない
前作は、睡眠と音楽について分かっていることを先に整理し、その根拠から制約を作りました。今作の制約は、根拠ではなく形式から来ています。DJ ミックスの形にするための制約です。
- 通しは全曲 128 BPM 固定。息継ぎは BPM を変えるのではなく、ブレイクダウンで作る
- 架空のリミックス集。曲名に (〜Mix) の副題を付ける(例 Overture 128 (Gate Mix))。並びは一夜の物語で、入場(1〜2)→ 熱(3〜7)→ 頂点(8)→ 夜明け(9〜10)
- 曲の型は4種類。T(trance)#1・#4・#8 / H(house)#2・#5・#10 / X(big beat)#3・#9 / K(acid techno)#6・#7
- 繋ぎも3種類を予定。L(長く重ねる)6か所・D(短く落として切り替える)2か所・B(ブレイクで渡す)2か所。ただし、最終的には9か所とも L になりました(後の「繋ぎ」の節)
- 英語のフックは全大文字。サビの英語フック = 曲名で、HEAT SIGNAL のように書く。小文字にすると2000年前後らしさが崩れるからです(この決まりは入稿で DistroKid に弾かれました。後の「公開」の節)
ストア版は通しの切り分けではなく、曲ごとのフル版にしました。前作は通しを曲の境界で切り分けてストア版にしましたが、今作で D・B の繋ぎを使うと次の曲の頭が飛ぶので、切り分けると曲の頭が欠けます。YouTube とストアで中身が違うのは意図どおりです。
アルバム名は、恋愛・身体寄りの候補から SKIN FREQUENCY を選びました。肌・熱・鼓動・周波数の手触りが、一夜のダンスリミックス集に合うと思ったからです。TOUCH VOLTAGE と BODY SIGNAL も捨てがたく、いずれその題名で作りたいかもしれません。画像では人の肌や体は描かず、陽炎・水面の波紋・光の脈で匂わせる、と決めています。
進め方 — cc-bridge の直接モードで回した最初のアルバム
前作: cc-bridge で回そうとして撤回し、Claude Code のセッションで工程を順に進めた(PM 役はチャットの Claude)
今作は、cc-bridge の直接モードで回した最初のアルバムです。claude.ai で書いたブリーフ(作業指示)を cc-bridge が Claude Code にヘッドレスで渡し、ジョブは album-pipeline の本体の作業ツリーの main に直接コミットします。戻すときは git revert です。
直接モードは、前作の反省から作ったものです。前作 SLOW ORBIT でも、一度 cc-bridge で回そうとしました。ところが、ジョブごとに別の作業フォルダ(worktree)を切る方式では、git で管理していない音声や画像、コミットする前の骨子がジョブから見えません。工程ごとに成果を取り込む(merge する)往復も、聴きながら・見ながら進める制作には合わなかったので、前作では撤回しています。そこで、本体の作業フォルダで直接動く「直接モード」を作り、今作で初めて使いました。
- 工程ごとにジョブを分けて並行しました。繋ぎ(ジョブ 008)を自分が聴いて判断している間に、画像(009)・マスタリング(010)・動画(011)・同期歌詞(012)を別ジョブで進めています。ブリーフで担当の欄(骨子の art 欄・繋ぎの欄など)を分け、コミットはパスを指定して add する決まりを付けました。前々作で2つのセッションが同じファイルを書き換えた事故3の対策を、ジョブの単位で守る形です
- 60分を超える処理はジョブで流さない。本番のレンダリングなどは試験までで止め、起動コマンドと出力先を報告に書いてもらい、自分が手で起動しました。後半は cc-bridge の launch(登録済みのコマンドを起動する口)で起動しています
- vault-mirror: リポジトリの md と、選んだ比較シートを、Obsidian の vault へ5分おきに一方向で写します。MacBook Air とスマホの Obsidian で見るためです
- 報告の付録: 自分が入力に使う文字(歌詞・同期歌詞の txt、YouTube・DistroKid の登録下書き)は、報告の末尾に全文を貼る。入稿の途中で Air が応答しなくなり、vault の写しを開けずに止まったので、途中から変えました
- 聴き比べは最初からブラインド。前作の反省会で決めた形を、最初から使っています。区間の頭にトーンの回数を入れ、どの版かの対応は聴き終えてから開きます
ジョブの数は、album-pipeline で15本、music-visualizer で2本でした。コミットは album-pipeline だけで154件、決裁メモは 36本+12本です。
Suno — Voice で声を固定し、長い型で尺を稼ぐ
前作: Suno — 曲とクリップを分けた(インストのクリップを2〜3本つないで1曲)
前作は歌詞欄が空のインストで、3分前後のクリップをつないで1曲にしました。今作は全曲が歌ものなので、つなぐことはできません。1本で5分前後の歌ものを出すことと、10曲を同じ声で歌わせることが課題でした。
声は Voice で固定した
声質は、Suno の Voice「Hi-Tenor 01」で固定しました。#2 HEAT SIGNAL の試聴の1本から作った Voice で、全曲に付けています。予備は Vocoder 01 です。
その前に、Style(曲調の指定)も書き直しています。最初は「共通の文+型ごとの文+曲ごとの追記」を組み合わせていましたが、#2 を聴いて、T・H・X の型を「オケ → 声の順の1本の文」に書き直しました。
- Suno は、Style の先頭に書いたものほど強く効く
- 声についての文は、歌い方しか変えず、声質はほとんど変わらなかった。声質は Voice で決める
- Exclude に rock, metal, guitar solo を足した
歌詞では、ビルドアップで同じ語を3回繰り返す型(「あけろ あけろ あけろ」)をやめました。試聴して「ダサい」と思ったからです。1回目は上がっていく1行、最後は歌詞なしのタグ(曲名の声ネタ)にしています。
長い型 EXT3AB
Suno は、渡した歌詞を歌い切ったところで曲を終えます。長さの指定を強める口もありません。#2 で長さの指定を試した結果はこうでした。
| 指定 | 結果 |
|---|---|
| 6分 | 5:03〜5:59 とばらつき、アウトロを無理に伸ばす |
| 5:15 | 長さはちょうどでも、最後に違和感 |
| Auto(EXT3) | 4:26〜4:51 |
| Auto(EXT3AB) | 5:04〜5:19 |
そこで、長さは歌詞の構成で稼ぐことにしました。EXT3 は、イントロ2段・Verse 2・Bridge・歌の無い区間4つ・転調した最後のサビ・Post-Chorus・[End] の構成です。そこに (A) Verse 3 と (B) 最後のサビの繰り返しを足したのが EXT3AB で、長さは Auto にします。歌少なめの #5 だけは EXT3B です。本番の長さは 4:27〜5:33 でした。
ダウンロードは10本、一晩で
前作は、ダウンロードの月の枠を計画的に使い、17本を先に測ってから残りを決めました。今作は、1曲1本ずつ耳で選んで、10本を一晩で落としています。これでその月の枠を使い切りました。ここが今作の一番の失敗につながります(次の節と、失敗と対策編の失敗3)。
計測 — 素材は 128 で来なかった
ダウンロードの直後に10本を計測しました。結果は、128 BPM ±4% に収まったのが #10 の1本だけです。
- BPM の中央値は 128.17(#10)〜138.51(#8)。どの曲も、頭から終わりへ向かって速くなっていた(#8 は 135.2 → 140.5)。NEON DRIVE の素材の倍くらいの速まり方です
- 頭に16小節のドラムだけのイントロを指示していたのに、守っていたのも #10 だけでした。残り9本は、頭から上物と声が鳴っています
枠を使い切っていたので、取り直せません。全部を手元の加工で逃げることにしました。
- 128 への伸縮は4小節ごとに別の倍率で掛ける(Rubber Band の high_quality)。一律の倍率だと後半が 100ms 単位でずれ、拍ごとにすると継ぎ目が4倍に増えるからです。一番大きく遅くしたのは #8 の −8.8% でしたが、試聴で「思ったほど違和感はない」と判断してそのまま使いました
- 通しでは頭の上物を飛ばし、ドラムが入る所から曲を入れる(album-mix の
--skip-head) - 短い曲は、小節の塊を伸縮せず複製して伸ばす(track-extend)。#1 と #8 に使いました
- ストア版は元の速さ。128 にすると最大9% 遅くなるので、単曲には伸縮の音質の心配を持ち込まない
その結果、「128 BPM 固定」は通しの中だけの約束に縮めています。
拍の検出も作りました。librosa のオンセット強度からテンポの曲線を引き、小節の頭は log-mel と demucs のステムの変わり目で見ます(bin/beatgrid.py)。追加のインストールが要らない方法を選んでいます。
繋ぎ — 7版を聴いて、9か所とも L に
前作: 曲どうしを20秒(曲4→5 は40秒)重ねる。重ね方は1種類
前作の曲間は、等パワーのクロスフェードで重ねるだけでした。今作は DJ ミックスなので、拍を合わせ、キックを途切れさせずに次の曲へ渡す必要があります。ここが今作で一番時間を使った所です。

版ごとに、自分が聴いて返した言葉を並べます(繋ぎ n は #n → #n+1)。
- 下書き(40:55.98): 「9か所すべて途切れて、乱暴に繋げただけ」。原因は、繋ぎの曲線で真ん中が薄くなること、拍の格子が曲の途中で半拍ずれていたこと、試作に使った前々作の素材と今作の素材の違いでした(失敗と対策編の失敗4)
- v2(40:22.23): キックを切らさない L に作り直した版。繋ぎ2・7「突然で不自然」、8「次の曲が #8 の声に掛かっている」、9「良い。取れるならもう少し長く」。1・3・4・5・6 は変えない
- v2b(38:22.23): 繋ぎ2「まだ少し違和感」。7 は16小節重ねる L に、8 は #8 の声のブレイクダウンを最後まで聴かせる案C を選んだ
- v2d(39:16.61): 繋ぎ2 の4案を聴き比べて案A。フレーズの頭(8小節)にそろえ、重ねる間は #3 をドラムだけにする。キーの離れた2曲の濁りを避けるためです
- v2e(38:01.61): 繋ぎ4 の B・8 は #5 のキックとベースの入りが唐突。5候補を聴いて L・16 にした。「不協和音気味だが好み」と返したのですが、後で計測を見ると、キー距離 3 がその正体でした
- v2f(38:59.73): 9か所とも L。これで本番
当初予定していた D 2か所・B 2か所は、1つも残りませんでした。D・B の作りが悪かったのではなく、素材で成り立たなかったのです。B ではブレイクに声が重なり、D には前触れに使える素材がありませんでした。
数値の確かめも足しています。v2 以降は「消えたキック」も「繋ぎの中の −30 dBFS 以下の拍」も全版で0でした。ただし、数値で言えるのは「途切れていない」までで、「自然に聞こえるか」は言えません。だから v2b〜v2f の5版を聴いています。反省会では、聴く回数を減らす方法を決めました(失敗と対策編の失敗5)。
マスタリング — 繋いでから掛ける
前作は、曲ごとに目標の LUFS を下らせてマスタリングし、それを重ねて通しにしました。今作は、目標は NEON DRIVE と同じ −13.5 ± 0.25 LUFS に戻り、順番は前作と逆になりました。
- 通しは、繋いだ後にマスタリングする(案Y)。曲ごとにマスタリングしてから繋ぐ案X では、伸縮でトゥルーピークが −2.27 → −0.1 dBTP まで戻り、ラウドネスも 0.36 LU 下がりました。案Y は、曲の単独区間ごとに入力ゲインを掛け(繋ぎの窓は dB で直線補間)、1本の流れでプリセットに通します
- プリセット skin-frequency は、自分が MacBook Air の Logic + Ozone 12 で作りました。Custom Assistant でターゲットは EDM、Maximizer は IRC 5・−1.00・True Peak オン。xml から state を作り、前作と同じ手順で、画面を開かずに読み込めることを確かめています
- 結果は、通しの全体が −13.39 LUFS / TP −1.01 dBTP、単独区間は10曲とも −13.41〜−13.55。終わりは2秒のフェード+2秒の無音(NEON DRIVE と同じ)
- ストア版は元の速さの10本を曲ごとに。−13.43〜−13.45 LUFS。#9 だけ鳴ったまま切れていたので、2秒のフェードを足しました
繋ぎの後の曲が小さく聞こえる段差(繋ぎ1 で −4.12 dB など)は、直す案を試したものの 0.2〜0.3 dB しか効かず、逆に広がる繋ぎもありました。前の曲のサビから次の曲の静かめの入りへ、という曲の作りの落差として受け入れています。
画像 — 人物は4巡、題字は8段
正方形の親絵(ジャケット)を先に確定し、サムネと動画の背景を派生させる型は前作のままです。進め方は「毛色の違う案を幅広く並べる → 決めた方向だけ深掘り」で、番号つきのコンタクトシートを見て、返事は番号だけで済ませました。
- 生成は Animagine XL 4.0。前作と同じレシピで、LoRA は使っていません
- 配色は、deep blue night → orange-red dawn に白いレーザー。最初の下書きのマゼンタ×シアンは、NEON DRIVE のネオンと並べると区別がつかないのでやめました
人物の扱いの変遷
人物の決定に4巡かかりました。親絵の候補は計98枚です。
- 1巡目(30枚): 街・屋上・高速・港・派手系の5案を6枚ずつ。屋上の 7 を軸に選んだ
- 2巡目(40枚): 7 を深掘りした逆光のシルエットと、濡れた街の反射。反射の方向を選んだ
- 3巡目(16枚): 人物を「大人の男性」に描き直した
- 4巡目(12枚): 「大人すぎる」ので、アニメ調の青年に。縁の光を足す後処理を作った。この 7 で確定(縁の光 1.3)


親絵には、拡大で強まった生成由来の薄い格子(横縞)がありました。拡大の方法を変えたうえで、周波数領域で横縞だけを取り除いています。
サムネの題字は8段の比較で決めた
サムネは、親絵の左をアウトペイントして 16:9 に広げ、題字を焼き込みます。比較シートは8段になりました。書体6案から Audiowide → 副題の大きさ → 副題の見え方 → 題字と副題を限界まで大きくした段 → 極端な段 A〜E → 街並みの見え方 → 題字の大きさ、の順です。
![]()
![]()
最後は C-3 の配置(1行、副題は下、人物は題字の手前)で、題字 165・副題 90 にしました。この記事のアイキャッチがその確定版です。幅 360px の実寸を毎段シートに入れたのは、YouTube の一覧で実際に見える大きさで判断するためです。
ビジュアライザー — 自前描画に戻って、ビートに合わせて光らせる
前作は睡眠用なので、音に反応する演出をやめて星空にしました。今作はその逆で、音に合わせて光らせるのが目的です。バーと波形は NEON DRIVE の型に戻り、その上にビート連動の演出を足しました。
一度止めた自前描画に、翌日戻った
ffmpeg の描画(visualizer.sh)のバーと波形を、numpy で自前に描く bars_wave.py を試作しました。見た目は平均差 0.01〜0.04 階調まで合いましたが、速さの得は約2割(35分あたり 80分 → 64分)しかありません。そこで 10/17 にいったん止めました。
ところが翌日、ビートに合わせた演出は、自前描画の上でしか作れないと分かりました。ffmpeg のフィルタでは、拍やドロップの時刻を見て絵を変えられないからです。止めたときにも「ffmpeg にできない演出の出番は案外早い」と思っていたのですが、本当に翌日でした。本番の描画を bars_wave.py に切り替えています。NEON DRIVE の後に「L1 の自前描画は見送り」と決めていたのを、速さではなく表現の理由で越えた形です。
ビート連動6種
| 名前 | 中身 |
|---|---|
| pulse | 拍で光る |
| flash | ドロップで画面全体に白 |
| break | ブレイクで静まる |
| build | ビルドアップで強める |
| join | 繋ぎで曲の色を移す |
| caps | バーの最高点に帽子を残す。2000年前後の PC の音楽プレーヤーのスペアナの定番で、時代感に合う |
6種すべてを入れ、強さは初期値のままです。軽い版を見て「基本そのままで良い」と判断しました。


フラッシュの時刻は、曲ごとに測ったキックの位置に合わせ、さらに 8ms 早めています。60fps でキックの前後 ±9ms に収まり、遅れ側に寄りません。3つ並べた動画と一覧表で見比べて決めました。30fps の軽い版では最大 33ms ばらつくので、時刻のずれは 60fps で見ます。
曲ごとの10色
曲ごとに色を決めました。前半は青系、#8 で白金の頂点、#10 は夜明けのオレンジです。動画の色の4案から、波形も曲の色にする案D を選びました。曲の色がバーと波形の両方に出る唯一の案で、明るい空の上でも線を追いやすいからです。#8 の白金の波形は朝日に溶けるので、#8 だけに暗い縁を 1px 付けています。

曲名の入れ替わりは、繋ぎの重なりの中央に置きました。YouTube のチャプターも同じ時刻です。

本番のレンダリング
確認は 960x540/30fps の軽い版で回しました(1920x1080 で描いてから縮める。半分の寸法で描くと本番と見た目が変わるため)。本番はレイヤーが約78分、1080p と 4K を同時に書く合成が約3時間でした。
前作の 4K は、終端の縞の対策として入れたものでした。今作は、4K をやめれば合成が約90分で済むところを、4K と 1080p の両方を書くと決めています。動画は2本とも約 10.9 GiB です。
レイヤーの指紋(同じ設定なら焼き直さないための目印)には、背景のパスと終端の秒数を入れていません。そのおかげで、終わり方を直したときも、合成のやり直し(約3時間)だけで済みました。何を直したのかは、失敗と対策編の失敗1に書いています。
同期歌詞 — 10曲 343行
前作: 無し(全曲インスト)。NEON DRIVE は6曲 202行
作り方は NEON DRIVE の反省会で決めた形のままです。声の区間ごとに強制アラインメントし、残りは根拠を添えて手で直します。今作は10曲 343行で、手で直したのは33行(全行に根拠つき)でした。
変わったのは確認動画です。最初は、直した行と怪しい区間だけを切り出した確認動画(28区間)を作りましたが、前後の流れが無いと判断できませんでした。そこで、通しで流れる確認動画(前・今・次の3行、直した行と根拠の弱い行に色の印、右上に経過時間)に作り替え、3回見て確定しています(失敗と対策編の失敗10)。
Suno が歌っているのに渡した歌詞に無い所(#6 のイントロ、#8 のサビの繰り返し)は、DistroKid に登録する版の歌詞にだけ足しました。
公開 — DistroKid と YouTube
前作: DistroKid 入稿(8曲)、YouTube に 4K 版を公開
YouTube
- タイトルは3案から「【ノンストップMix】SKIN FREQUENCY -128 Nonstop Remixes- | 2000年風クラブリミックス AI Dance Full Album」。サムネの副題とそろう案です
- 概要欄は日本語の紹介文が先で、英語は1行
- AI の申告は「はい」(改変または合成されたコンテンツ)。歌声が人の声に聞こえる合成だからです。NEON DRIVE は「いいえ」で申告していました。過去作もそろえるかは、配信開始の日に決めます
- 4K 版を YouTube Studio から手で上げました。API で上げる道具が今作の設定と下書きを読めなかったためです。反省会で作り直し、次作からはそれで上げます(失敗と対策編の失敗9)
DistroKid
- ジャンルは Dance / Electronic(サブジャンル Trance)。NEON DRIVE は Electronic / J-Pop、SLOW ORBIT は New Age / Ambient でした
- 曲名は Title Case で登録(Overture 128 (Gate Mix))。リポジトリの曲名は全大文字のままにして、ストア用と動画用の表記を別に持てるようにしました
- 歌詞の英語フックは DistroKid の形に直した。全大文字の HEAT SIGNAL も、2語とも先頭が大文字の Heat Signal も弾かれ、Heat signal でようやく通りました。リポジトリの歌詞と動画は全大文字のままです
- AI ペルソナの質問が今作から増えていました。「Tadanobu は人間のアーティストですか、AI ペルソナですか」を、歌詞・作曲・音声のそれぞれについて聞かれます。3つとも「人間のアーティスト」を選びました。作曲と歌声は AI(Suno)で生成し、作詞は Tadanobu、という区分です
- 公開前に、Content ID がオフであること(SNS パックの中の項目で、パックごとオフ)と、Pre-Save のページが生きていることを確かめました。SLOW ORBIT で自分の動画に Content ID の申し立てが付いたからです
入稿では、送信と歌詞の保存で合わせて3回エラーが出ました。経緯と対策は、失敗と対策編の失敗2に書いています。
前作から引き継いだもの・やめたもの
| 工程 | 前作(SLOW ORBIT) | 今作(SKIN FREQUENCY) |
|---|---|---|
| 進め方 | 1セッションで工程を順に | cc-bridge の直接モード。工程ごとにジョブを分けて並行 |
| 曲の単位 | クリップ2本を連結して1曲 | Suno の1本 = 1曲。長さは歌詞の構成(EXT3AB)で稼ぐ |
| 声 | 無し(全曲インスト) | Voice「Hi-Tenor 01」で10曲を固定 |
| ダウンロード | 17本を測ってから残り10本 | 10本を一晩で。枠を使い切った |
| 曲間 | 20秒の等パワーの重なり | DJ ミックスの繋ぎ(9か所とも L)。通しは 128 BPM に伸縮 |
| マスタリング | 曲ごと → 重ねる。−20 → −25.5 LUFS で下らせる | 繋ぐ → 通しに掛ける。−13.5 LUFS に揃える |
| ストア版 | 通しを境界で切り分け | 曲ごとのフル版・元の速さ |
| 映像 | 背景+星のレイヤー | バー+波形+ビート連動6種(自前描画) |
| 書き出し | 1080p で合成し、4K に拡大 | 1080p と 4K を同時に書く |
| 歌詞 | 無し | 10曲・同期歌詞 343行 |
| 期間 | 8日 | 8日(見積もり9〜10日) |
| 決裁メモ | 24本 | 36本(+ music-visualizer 12本) |
次回に向けて
前作までの記事では、ここに次作の見積もりを書いていました。今回は書きません。次作(008)はまだ構想の段階で、骨子が無いからです。決まっていることだけを並べておきます。
- Suno のダウンロードは枠を2〜3本残し、落とした直後に計測してから次を落とす。最初の数本で「ドラムだけのイントロを守らない」と分かっていれば、残りの指示を変えられました
- 制作の最初に release-lint と album-diff を流す。配信先の決まりと、前作・雛形から黙って引き継いだ値を、入稿や本番の前に表に出すためです(失敗と対策編)
- 繋ぎの聴取は、作りが同じで OK だった繋ぎを聴き直さない
- YouTube は launch の youtube-upload で上げる
- 次作の種は、今作の10曲を「リミックス前の原曲」という設定で、70〜80年代のシティポップ風に作り替える案です(まだ候補)
4作目は、「工程をジョブに分けて、自分は聴くことと選ぶことに集中する」アルバムになりました。裏で画像や動画が進んでいく間、自分は繋ぎを聴いて「突然で不自然」「不協和音気味だが好み」と言葉で返すだけです。そのぶん、ジョブの間で黙って引き継がれた値に気づけなかったのは、新しい種類の失敗でした。その振り返りは、失敗と対策編にまとめました。
ここまで読んでいただきありがとうございました。夜のドライブや作業のお供にどうぞ。
▶ YouTube: https://youtu.be/pHlPE82QZC8
🎧 Pre-Save / 配信ページ(2026年11月6日リリース): https://distrokid.com/hyperfollow/tadanobu/skin-frequency
🌙 前作の制作記: SLOW ORBIT 制作の備忘録(1)制作編
🔊
付録A: 工程の流れ(この順で回す)
再現するときの順番です。手順書は album-pipeline の docs/README.md が正なので、再現するときは記事ではなく手順書を見ます。この記事は「なぜそうしたか」の索引です。括弧の数字はジョブの番号です。
| 順 | 工程 | 主なツール | 実績の日 |
|---|---|---|---|
| 1 | 骨子・歌詞2版・Suno 貼り付け用シート(002) | 骨子の YAML | 10/17 |
| 2 | 計測と繋ぎの道具の拡張、聴取キット(003) | clip-measure、album-mix、listen-kit | 10/17 |
| 3 | 声と Style の決定(004)、長い型(006) | Suno の Voice、track-extend | 10/17〜10/18 |
| 4 | ダウンロード10本 → 計測 | clip-measure | 10/18 |
| 5 | 通しの下書き → 繋ぎを作り直して v2〜v2f(008) | album-mix | 10/19〜10/22 |
| 6 | 画像(009。5と並行) | album-art(Forge)、Pillow/numpy | 10/19〜10/23 |
| 7 | マスタリング(010。通しの後に掛ける) | Ozone(skin-frequency) | 10/20〜10/22 |
| 8 | ビジュアライザー → 本番のレイヤーと合成(011) | bars_wave.py、album-video | 10/21〜10/24 |
| 9 | 同期歌詞(012) | 強制アラインメント、lyrics_preview | 10/21〜10/23 |
| 10 | YouTube・DistroKid の登録下書き(013)→ 入稿・公開 | DistroKid、YouTube Studio | 10/24 |
| 11 | 反省会の対策(014〜016) | youtube-upload、release-lint、album-diff | 10/24〜10/25 |
付録B: 日ごとの記録
- 10/17 骨子 v0.1・歌詞2版。英語フックは全大文字、配色を決める。vault-mirror、計測の拡張、繋ぎの試作、ブラインドの聴取キット。ストア版は曲ごとのフル版に。夜、声を Voice「Hi-Tenor 01」で固定し、Style をオケ先頭に書き直す。自前描画をいったん止める
- 10/18 構成を長い型 EXT3AB・長さ Auto に。track-extend を作る。本番の描画を bars_wave.py に。夜に Suno の WAV を10本ダウンロードして枠を使い切る → 計測で BPM 合格・ドラムだけのイントロとも #10 だけ → ストア版は元の速さ、128 固定は通しの中だけ
- 10/19 通しの下書き(40:55.98)「乱暴に繋げただけ」→ キックを切らさない繋ぎに作り直して v2 → v2b・v2c。アルバム名 SKIN FREQUENCY。親絵の1巡目
- 10/20 親絵の2〜4巡目。繋ぎ7・8・2 の作り直し(v2d・v2e)。Ozone のプリセットを作る
- 10/21 マスタリングは通しの後(案Y)。親絵を確定。本番の描画を album-video に配線。同期歌詞の下書き。フラッシュの時刻合わせ、曲ごとの色
- 10/22 繋ぎ4→5 を作り直して v2f(38:59.73)とマスター(39:00.80)
- 10/23 同期歌詞を確定。サムネと背景を確定。本番のレイヤー(約78分)と合成(約3時間)。終わりの60秒フェードに気づき、3秒に変更
- 10/24 合成のやり直し(約3時間)。YouTube・DistroKid の登録下書き、入稿・公開。夜に反省会の対策(youtube_upload の改修・登録シートの検査・release-lint・album-diff・繋ぎの計測)
- 10/25 雛形から 006 由来の値を外す。反省会のまとめ
- 11/6 配信開始(予定)
付録C: 決めたこと(工程別)
決裁メモは album-pipeline に36本、music-visualizer に12本あります。ここには「次回もこのまま使う前提」のものを工程別に並べます。
進め方
- 60分を超える処理はジョブで流さない。試験までで止め、起動は自分(launch)
- 自分が入力に使う文字の成果物は、報告の末尾に全文を貼る
- 聴き比べは最初からブラインド。報告にはキットの中の開始時刻の表を付ける
- 寄り道のコマンドが拒否されたら別の手段で進め、必須の操作なら止まる
歌詞・Suno
- Style はオケ → 声の順の1本。Suno は先頭ほど強く効く。声質は Voice で決める
- 長さは歌詞の構成(EXT3AB)で稼ぎ、長さは Auto
- ダウンロードは枠を2〜3本残し、落とした直後に計測してから次を落とす(反省会で変更)
- 曲名は title(全大文字)を元に残し、ストア用・動画用の表記を別に持てる
- 英語フックの全大文字を続けるかは保留。歌詞を書く時点で DistroKid の形に収まるかを考える
計測・繋ぎ
- 128 への伸縮は4小節ごと。最大9% 遅くするまでは許した
- ドラムだけのイントロが無い曲は、通しで頭を飛ばす
- 繋ぎはキックを切らさない。低域は小節の頭で一方だけ、拍の格子の位相はドラムの 150Hz 未満で合わせる
- 1拍のキックの隙間は許す(ブレイクビーツの曲自身の打ち方なので、足すと元に無い音が入る)
- 作りが同じで OK だった繋ぎは聴き直さない(反省会で決定)。キー距離は表の列に出すだけで、判定にはまだ使わない
マスタリング
- 繋ぎを組み直すアルバムは、通しの後にマスタリングする(案Y)
- ストア版は元の速さで曲ごとに
- 繋ぎの後の段差は直さない。次作でも同じ段差が出たら、繋ぎの窓の選び方の側で考える
画像
- 親絵 → サムネ・背景の派生、番号つきのシートで返事は番号だけ
- Animagine XL 4.0、LoRA なし、プロンプトに作品名・作家名を入れない
- 拡大で横縞が出たら、周波数領域で横縞だけを除く
- サムネの設定はアルバム別の設定ファイルに置く(引数なしの道具が今作を向いて、別ジョブと取り違えないように)
映像
- ビート連動は bars_wave.py の上で。6種とも入れ、強さは初期値
- フラッシュはキックの位置から 8ms 早める。時刻のずれは 60fps で見る
- 軽い版は 1920x1080 で描いてから縮める
- 背景と終端の秒数はレイヤーの指紋に入れない(変えても合成のやり直しで済む)
- 終端の値は雛形から引き継がず、アルバムごとに決める(反省会で雛形を null に)
公開
- YouTube の AI 申告は「はい」(歌声の合成)
- DistroKid は Title Case、歌詞の英語は先頭だけ大文字
- 入稿のたびに、管理画面で SNS パック(Content ID)のオフを確かめる
- 次作の YouTube は launch の youtube-upload で上げる
付録D: 数字
- 制作期間: 10/17〜10/24 の8日(入稿・公開)。見積もりは9〜10日。配信開始は 11/6
- 通し: 39:00.80(マスター。v2f は 38:59.73)、動画は 39:03.80(黒3秒を足す)
- 通しの長さの推移: 40:55.98 → 40:22.23 → 38:22.23 → 40:37.23 → 39:16.61 → 38:01.61 → 38:59.73
- ストア版: 10曲 52:24。最短 #5 4:27、最長 #4 5:33
- ラウドネス: 通し −13.39 LUFS / TP −1.01 dBTP / LRA 3.43。ストア版 −13.43〜−13.45 LUFS
- 本番のレンダリング: レイヤー約78分+合成約3時間、やり直しの合成約3時間。動画は 1080p・4K とも約 10.9 GiB
- ジョブ: album-pipeline 15本・music-visualizer 2本。コミット 154件(album-pipeline)、決裁メモ 36本+12本
- Suno のダウンロード 10本、親絵の候補 98枚、サムネの比較シート8段
- 同期歌詞: 10曲 343行(手で直したのは33行)