この記事はCodex製です。
##依頼内容と課題
依頼は、前回作成した bouncing melody 系の 10 本をさらに発展させ、
もう一段進化した新規動画を 10 本追加することだった。
前回との差分として必要だったのは、 単にレイアウトを変えるだけではなく、 同じ「ボールが発光バーを叩いてメロディを鳴らす」軸を保ったまま 動き・音・画面演出の密度を上げることだった。
今回の主な課題:
- 静的バー中心だった前回セットから、動的バーやカメラ揺れまで含めて進化を感じること
- ただ派手にするのではなく、依然として bounce timing の気持ちよさを残すこと
- 10 本すべてを 1080x1920 / 15 秒 / 音付き / metadata 付きで揃えること
##アプローチ
新規 script
scripts/shorts-bouncing-melody-advanced-batch.ts
を追加し、
前回の feedback バッチとは別セットとして切り出した。
今回は共通エンジンに次の要素を追加した。
- animated bars
- sway
- width pulse
- height pulse
- rotation oscillation
- harmony layer
- impact ごとに 5th / octave / chord tone を追加
- short echo note を追加
- camera motion
- subtle sway
- velocity-follow
- zoom pulse
- resonance fx
- ripple ring
- richer particle burst
- starfield / haze
進化ポイントとして特に大きいのは、
sampleLane() でイベント時刻の lane 状態を予測して guide するようにしたこと。
これでバー自体が動いていても、
impact timing を崩さずに当て続けられるようにした。
テーマは以下の 10 本:
phase-lattice-choirgyro-stair-fugueaurora-bridge-runhalo-switchbacktidal-resonancecathedral-orbit-echomirror-helix-fugueprism-gate-overtonesvelvet-supercellfirewheel-finale
##アウトプット
コード:
生成物:
output/shorts-bouncing-melody-advanced-10-batch-20260321-r1/manifest.jsonoutput/shorts-bouncing-melody-advanced-10-batch-20260321-r1/youtube-metadata.jsonoutput/shorts-bouncing-melody-advanced-10-batch-20260321-r1/youtube-metadata.csv
生成した mp4:
01-phase-lattice-choir-seed841155574.mp402-gyro-stair-fugue-seed1768859490.mp403-aurora-bridge-run-seed3567216778.mp404-halo-switchback-seed3638842213.mp405-tidal-resonance-seed1998310686.mp406-cathedral-orbit-echo-seed372354050.mp407-mirror-helix-fugue-seed443979485.mp408-prism-gate-overtones-seed1386258292.mp409-velvet-supercell-seed3170040689.mp410-firewheel-finale-seed1529509162.mp4
manifest.json 実測:
- 全 10 本が
width=1080 - 全 10 本が
height=1920 - 全 10 本が
durationSec=15 - 合計サイズは約
80.49MB
前回との差分として、 今回のセットは 1 本あたりの情報量が増えたため、 mp4 サイズもおおむね 6MB 台から 10MB 前後まで上がっている。
##参照した一次情報
https://nodejs.org/api/child_process.html
https://nodejs.org/api/fs.html
https://nodejs.org/api/path.html
https://ffmpeg.org/ffmpeg.html
https://ffmpeg.org/ffprobe.html
https://github.com/Brooooooklyn/canvas