「AIだけでYouTubeショートをどこまで作れるか」を試している個人開発の記録です。今回は原作ファンによる非公式の紹介動画(オマージュ)として、鳥山明『ドラゴンボール』の人造人間編から、人造人間17号・18号が目覚めるくだりを約1分の棒人間アニメにしました。人がやったのは題材の一覧を設定ファイルに書いたことだけで、台本・音声・映像・公開前チェック・YouTubeへの投稿までをパイプラインが自動で行っています。
作った動画の概要
完成した動画の基本情報は次のとおりです。
- タイトル:【60秒でわかる】ドラゴンボール 人造人間編② 17号・18号の目覚め
- 長さ:1分04秒(3861フレーム)
- 形式:縦型 1080×1920・30fps(YouTube ショート)
- 場面数:11
- 登場人物:ドクター・ゲロ(20号)、人造人間17号、18号、16号、ベジータ、トランクス、クリリンの7人
- 効果音:26個(すべてプログラムで合成)
あらすじの紹介そのものよりも、ここでは「どういう仕組みで、どれくらいの時間と費用で、どんな品質チェックを経て公開されたか」を中心に書きます。
仕組み:工程ごとの役割と使った技術
全体はPythonで書いており、Google CloudのCloud Run JobsとCloud Schedulerで定期実行しています。ローカルでも同じコマンドで動くようにしてあるので、開発中は手元で回し、本番はクラウドで回すという使い分けです。
台本:Claude API(構造化出力)
台本はClaude API(claude-opus-5-5)の構造化出力で生成します。場面ごとのナレーション・字幕・読み・登場人物の見た目・動き・カメラ・効果をJSONで受け取るので、後工程はそのJSONを読むだけで映像と音を組み立てられます。自由文ではなくJSONで受けることで、レンダラー側が「どのキャラにどの動きをさせるか」を迷わず解釈できるのがポイントです。
ナレーション・セリフ:VOICEVOX
VOICEVOXをCloud Run上で動かし、1行ずつ音声合成しています。行単位で合成するので、字幕の表示タイミングと音声をそのまま同期できます。ナレーターはずんだもん、キャラクターのセリフはキャラごとにAIが選んだ声を使い、次の回からも同じ声を使い回すようにしています。シリーズものなので、回をまたいで声がぶれないことは意外と大事です。
映像:自作の棒人間レンダラー
映像はPythonとcairoで作った自作の棒人間レンダラーです。関節角度でポーズを作り、パンチ・気功波・飛行など28種類の動きと背景・エフェクトを1コマずつ描画し、FFmpegで動画にまとめます。画像生成AIを使わず棒人間にしているのは、原作の絵柄を再現しない非公式紹介として扱いやすいことと、出力が毎回安定することが理由です。
効果音・字幕
効果音はNumPyで波形から合成しており、外部素材は使っていません。字幕や見出しはPillowとNoto Sans CJKで描いています。
公開前チェック:Claudeによる審査と自動修正
公開前に、Claudeがサムネイル画像と台本を見て、原作との事実関係・権利・YouTubeのポリシーを審査します。問題があれば台本を自動で直して作り直す仕組みです。今回の具体的な指摘内容は後半で紹介します。
工程別の制作時間とClaudeの使用量
| 工程 | 時間 | Claude呼び出し | 入力トークン | 出力トークン |
|---|---|---|---|---|
| 台本づくり(Claude) | 1分30秒 | 1回 | 5,262 | 9,695 |
| art_digest | 1分08秒 | 6回 | 7,685 | 6,138 |
| ナレーション音声(VOICEVOX) | 1分22秒 | 0回 | – | – |
| 棒人間アニメの描画・動画化 | 13分30秒 | 0回 | – | – |
| 公開前チェックと修正(Claude) | 16分06秒 | 3回 | 19,800 | 9,790 |
| YouTubeへの投稿 | 0秒 | 0回 | – | – |
| 合計 | 33分35秒 | 10回 | 32,747 | 25,623 |
目を引くのは、公開前チェックと修正が16分06秒で、全体のほぼ半分を占めていることです。チェックで指摘が出ると台本を直して作り直すため、そのぶん時間が延びます。次に長いのが棒人間アニメの描画・動画化(13分30秒)で、3861フレームを1コマずつ描いているのが効いています。一方、台本そのものは1分30秒で出てきます。
費用
| 工程 | Claude費用 |
|---|---|
| 台本づくり | $0.21(約32円) |
| art_digest | $0.31(約46円) |
| 公開前チェックと修正 | $0.28(約41円) |
| 合計 | $0.80(約120円、1ドル=150円で換算) |
音声・映像・効果音は自前の処理なので、Claudeの費用としてかかったのは上記の3工程だけです。1本あたり約120円という水準なら、定期実行で本数を増やしても試しやすい金額だと感じています。
AIのチェックで見つかった問題と直し方
今回、公開前チェックは2回実施され、どちらも判定はOK(公開可)でしたが、警告(warn)がそれぞれ3件・4件出ました。中身を見ると、「人が見落としやすい細かい事実関係」をきちんと拾っています。
1回目:主語のあいまいさと時系列のズレ
- 16号を起動したのは誰か:最初の台本は「さらに博士が封印していた大男、16号まで起動!」という言い回しで、博士が16号を起動したようにも読めました。チェックでは、原作では博士は16号の起動に反対しており、博士を倒した後に17号・18号が起動させている点が指摘され、主語をはっきりさせるよう提案されました。完成版のナレーションは「さらに17号たちは 博士が封印した16号まで起動!」になっています。
- ベジータの変身のタイミング:「そこへ超サイヤ人ベジータ!修行でさらにパワーアップ!」という表現が、この場面で初めて変身したように受け取れると指摘されました。ベジータは19号戦の時点で既に超サイヤ人になっているためです。完成版は「そこへ19号を倒した 超サイヤ人ベジータが参戦!」と、流れが伝わる表現に変わっています。
- 18号の髪型:登場人物設定ではlong_hairなのに、サムネイルでは金髪のボブとして描かれており、描写の統一を確認するよう促されました。
2回目:さらに細かい順序と見分けやすさ
- 台本で16号起動の後にベジータが「そこへ参戦」する流れに読める点について、原作ではベジータたちは研究所でゲロが倒される場面に居合わせており、本格的な戦闘は研究所を出た後に始まる、という指摘が出ました。
- サムネイルのベジータが黒髪のトゲトゲ頭なのに、台本では「超サイヤ人ベジータ」としている不一致。
- サムネイルの吹き出し「もう終わり?」のしっぽが2人の頭の間を指していて、発言者が分かりにくい点。
- 17号・18号・トランクスの見た目設定がいずれもlong_hairだけで、棒人間では見分けにくい恐れがある点。
1回目の主語・時系列の指摘は台本に反映されて直りましたが、2回目の警告は判定OKのまま公開されており、すべてが解消されたわけではありません。特にサムネイルの髪色やキャラの見分けやすさといった「絵側」の指摘は、台本の書き換えだけでは直しきれない種類の問題だと分かりました。
やってみてわかったこと・今後
- 事実確認はAIチェックがかなり効く:「誰が起動したか」「いつ変身していたか」のような、ナレーションを短く詰めたときに崩れやすい主語や時系列を、原作の流れと照らして拾ってくれました。
- チェック工程が一番時間を使う:33分35秒のうち16分06秒が公開前チェックと修正です。品質を担保するコストとしては妥当ですが、作り直しの範囲を絞れば短縮の余地がありそうです。
- 棒人間ならではの課題:長髪のキャラが複数いると区別しにくい、という指摘はもっともです。今後は服の色や髪色など、見分けるための特徴を登場人物設定に持たせる方向で改善したいと考えています。
- サムネイルと台本の整合:チェックで指摘された髪色や吹き出しの向きは、台本ではなく描画側のパラメータで直す必要があるため、修正ループを描画設定にも広げるのが次の課題です。
まとめ
題材の一覧を設定ファイルに書いただけで、台本・音声・棒人間アニメ・公開前チェック・投稿までを33分35秒、Claude費用約120円で完了できました。AIによる公開前チェックは、原作との事実関係のズレを具体的に指摘し、台本の主語や時系列を自動で直してくれた一方、見た目の統一といった描画側の問題はまだ残っています。「AIだけでどこまでできるか」の検証として、次はこのチェック結果を描画にも反映させる仕組みに取り組む予定です。
※動画は原作のファンによる非公式の紹介動画です。登場人物は棒人間で表現しており、原作の絵・音声は使用していません。音声: VOICEVOX:ずんだもん、VOICEVOX:白上虎太郎、VOICEVOX:ちび式じい、VOICEVOX:剣崎雌雄、VOICEVOX:青山龍星、VOICEVOX:四国めたん




