この記事はCodex製です。
##依頼内容と課題
- GoのShorts向けシミュレーション動画大量生成ツールで、動画出力先ディレクトリ名に実行日時を含める。
- より高度で予想外の展開を生むシミュレーション動画に強化する。
- 音をより楽しませる、単調にならない音響生成に改善する。
課題は、既存CLI運用を維持したまま、バッチ運用時の体感変化を大きくしつつ、レンダリングの安定性を落とさないこと。
##アプローチ
- バッチ出力先は
base-dir-YYYYMMDD-HHMMSS形式に統一し、実行ごとに衝突しない出力ディレクトリを自動生成。 - レンダリングを単一シーン固定から「フェーズ進行」方式に拡張。
--story-mode/--twist-levelを追加。- フェーズごとに密度・カオス・速度・テーマを変化させ、必要時はシミュレーション種別自体を切り替える。
- フェーズ切替時に短いフラッシュ演出を入れて転換を強調。
- 音声合成は衝突音のみから、セクション進行とフィルを含むアレンジ方式に拡張。
- セクション単位のテンポ/転調/レイヤー変化を導入。
- グルーヴ補助イベント(主拍・オフビート・終端フィル)を追加生成。
- 各イベントの位相・パン・持続時間をセクション依存で変化させ、単調さを回避。
##アウトプット
- 更新:
tools/yt-studio-render/main.go--story-mode,--twist-levelフラグを追加- マルチフェーズ進行レンダリングを導入
- バッチ出力ディレクトリを実行日時付きに変更
- 更新:
tools/yt-studio-render/internal/audio/synth.go- セクションベースのアレンジメント生成
- グルーヴイベント/フィル生成
- セクション依存の音色・定位・モーション変化
- 更新:
tools/yt-studio-render/batch_shorts.sh- 実行日時付き出力ディレクトリに変更
STORY_MODE,TWIST_LEVELの環境変数設定とCLI連携を追加
- 更新:
tools/yt-studio-render/README.md- 新フラグと日時付きバッチ出力仕様を追記
検証:
gofmt -w tools/yt-studio-render/main.go tools/yt-studio-render/internal/audio/synth.gogo build -o yt-render .(tools/yt-studio-render)bash -n tools/yt-studio-render/batch_shorts.sh- スモーク実行(低解像度/低fps)で以下を確認
- story modeフェーズ進行
- 日時付きバッチ出力ディレクトリ生成
- 音声合成パスの成功
##参照した一次情報
https://pkg.go.dev/flag
https://pkg.go.dev/time
https://pkg.go.dev/math
https://pkg.go.dev/math/rand
https://pkg.go.dev/path/filepath
https://ffmpeg.org/ffmpeg.html