はじめに ── 息子の「なんで?」は、コンテンツになる
うちの息子(4歳)は、毎日いろんな「なんで?」を持ってくる。
先日も、テーブルの上のバナナを見てひとこと。
「ねえ、ばなな なんで くろくなるの?」
ちゃんと説明しようと思ったけど、4歳にわかりやすく伝えるのって、意外と難しい。そこでふと思ったんです。
「これ、動画にしたらいいんじゃないか」と。しかも日本語と英語、両方で。
Claude Code で「動画生成システム」を育てている
最近、Claude Code(AIのコーディング支援ツール)を使って、子ども向け英語教育動画を自動生成するシステムをつくっています。
テーマを入れると、こんな流れで動画が自動でできあがります。
- Claude API が台本を生成する
- Imagen 4 がシーンの絵を描く
- Gemini TTS がキャラクターの声を作る
- ffmpeg が全部をつなげて動画にする
登場するのは2人のキャラクター。黒おかっぱの男の子と、白髪で丸メガネの博士。ひらがなだけの日本語と、こどもレベルのかんたんな英語を交互に繰り返す構成です。
今日やったこと ── 10時間の奮闘記
「バナナはなぜくろくなるの?」——このテーマで動画を1本つくる。それだけのことに、まるまる10時間かかりました。
やってみてわかったのは、「仕組みができている」と「1本の動画が完成する」の間には、想像以上の距離があるということ。APIの壁、画像生成のクセ、音声と字幕のズレ……次から次へと問題が出てきて、そのたびにClaude Codeに相談しながら、ひとつずつ潰していきました。
壁1:Claude APIの台本生成が安定しない
まず最初につまずいたのが、台本生成。Claude APIにテーマを渡してJSON形式の台本を返してもらうんですが、プロンプトを少し変えるだけで出力フォーマットが崩れたり、キャラクターの口調が想定と違ったりする。
「ひらがなだけで」と指定しても漢字が混じる。「5シーン構成で」と言っても7シーンになる。何度もプロンプトを書き直しては試す、の繰り返し。Claude Codeに「このJSON、パースできないんだけど」と聞くと、出力を整形するバリデーション処理を提案してくれて、少しずつ安定するようになりました。
壁2:Imagen 4が思うような絵を描いてくれない
台本ができても、次は画像。Imagen 4にシーンの説明を渡すんですが、これがなかなか思い通りにいかない。
「黒おかっぱの男の子がバナナを持って不思議そうにしている」と書いても、髪型が違う、表情が怖い、バナナがない——毎回ガチャを引いている気分。プロンプトの書き方ひとつで結果がガラッと変わるので、Claude Codeに「この画像プロンプト、もっと具体的にして」と相談しながら、何十回とリトライしました。
キャラクターの一貫性を保つのが一番難しかった。同じキャラのはずなのにシーンごとに別人になる。最終的には、外見の特徴を細かく固定した「キャラクター定義文」をプロンプトに毎回埋め込むことで、なんとか許容範囲に収まりました。
壁3:字幕と音声のタイミングが合わない
映像と音声を合体させる段階で、今度は字幕のタイミング問題。Gemini TTSが生成した音声の長さと、字幕の表示タイミングがズレる。博士がまだ喋っているのに字幕が先に消えたり、逆に音声が終わっても字幕が残り続けたり。
Claude Codeに音声ファイルの長さを取得する処理を書いてもらい、それに合わせて字幕の表示時間を動的に調整するようにしました。地味だけど、これだけで体感のクオリティがかなり変わりました。
10時間を振り返って
正直、何度も「今日はもう無理かも」と思いました。でも、Claude Codeがいたから続けられた。エラーの意味がわからないとき、「これ何?」と聞けば原因を説明してくれる。「こうしたい」と言えばコードを書いてくれる。自分ひとりだったら確実に途中で投げていたと思います。
できあがった動画はこんな内容
5シーン構成で、こんな流れです。
- シーン1(博士):きょうは ばななの ひみつを みてみましょう。Today we will see banana secrets.
- シーン2(男の子):せんせい、ばななは なぜ くろく なるの? Why do bananas turn black?
- シーン3(博士):くうきが ばななに ふれると くろく なります。Air touches banana and makes it black.
- シーン4(博士):りんごも きると ちゃいろく なりますね。Apples turn brown when we cut them.
- シーン5(博士):くうきが ばななを くろく するのです。Air makes bananas turn black.
キーフレーズは “Air makes bananas black”。日本語とセットで、自然に英語が耳に入ってくる構成です。
今日の学び
もし「子どもに何かを伝えたいけど、うまく形にできない」と感じていることがあれば——
テーマを決めて、AIに丸ごとお願いしてみてください。意外と、ちゃんと動くものができますよ。

コメント