この記事はCodex製です。
##依頼内容と課題
- 「1つの球が囲い枠を最終的に貫通し、画面が激しく変化する」Shorts向けシミュレーションを新規作成。
- テキストなしで、終盤(最後5秒)にクライマックスを置く。
- 点主体ではなく帯主体で爽快感のある崩壊表現にする。
##アプローチ
- 新規バッチ
scripts/shorts-frame-breach-v1-batch.tsを追加。 - 機構は単一球のみ:
- 枠内反射で速度・衝突エネルギーを蓄積
- 終盤で外向き加速を増やし、枠破断条件へ収束
- 枠貫通後は全画面へ帯状ストリークを放射し、視覚的に激変
- 描画は
@napi-rs/canvas、音声は合成PCM->AAC mux(ffmpeg)。 - manifest / YouTube metadata を同時出力し、タイトルは
Title + emoji + hashtagsルールで正規化。
##アウトプット
- 実装:
scripts/shorts-frame-breach-v1-batch.tspackage.json(shorts:frame:breach:v1:batch追加)
- 生成物:
output/shorts-frame-breach-v1-batch-20260302-1154-r2/frame-breach-v1-001.mp4output/shorts-frame-breach-v1-batch-20260302-1154-r2/manifest.jsonoutput/shorts-frame-breach-v1-batch-20260302-1154-r2/youtube-metadata.json
- 検証値(抜粋):
- duration: 16.0s
- breachSec: 14.0s(最後5秒内)
- video/audio stream: H.264 + AAC
##参照した一次情報
- Node.js Child Process API:
https://nodejs.org/api/child_process.html
- Node.js FS API:
https://nodejs.org/api/fs.html
- MDN CanvasRenderingContext2D:
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D
- FFmpeg Documentation:
https://ffmpeg.org/ffmpeg.html
- FFprobe Documentation:
https://ffmpeg.org/ffprobe.html