AIで動画を作る:
映像はどう動き、いくらかかるのか
動画を動かすには、画面をどこから得るか、どの時間軸に合わせるか、どうファイルに出力するかの3つを決めるだけです。この3つは組み合わせて使えますし、費用と時間もこの選択で決まります。
6種類の動画、3つの生成モデル
2026年9月末、Xで見た数件の投稿を参考に、AIで6種類の動画を作りました。それぞれの制作ノートも書いています(リンクは記事末尾)。動画は、それぞれを取り上げる段落に埋め込んであります。
- スライド解説動画:Webスライドにコンピューターのナレーションを付けたもの、10分23秒
- 手描きホワイトボード動画:プログラムが線を一筆ずつ描き、ナレーションには私の声を使ったもの、67秒
- 自己紹介:プログラムで作った動くカード、38秒
- キャラクターアニメーション:カートゥーンのキャラクターが15秒の物語を演じ、3種類の音楽を付けたもの
- ビートに合わせたショート動画:音楽の拍に合わせて画面が切り替わるもの、58秒
- MV:Sunoが作曲し、生成モデルがダンスを生成したもの、2分間
さらに、動画を直接生成する3つのモデル、LTX-2.5、MiniMax H3、Seedance 2.5も試しました。
AIは今、何ができるか
コードを書くAI:動画を最初から最後まで作る
Claude CodeやCodexのようなコードを書くAIは、参考記事を読み、台本を書き、描画プログラムを書き、画像生成モデルにイラストを描かせ、作曲し、ナレーションを読み上げ、動画を出力するところまで、1本まるごと作れるようになっています。
ホワイトボード動画はこの方法で作りました。AIが他人の記事を読んでナレーションと各場面に描くものを決め、音声モデル(IndexTTS 2)に私の声を学習させてナレーションを読ませ、プログラムで1フレームずつ描きました。
仕事を分けられれば、AIは並行して進められます。スライド解説動画の18章は6つのAIが分担して作り、最後に1本につなぎました。
生成モデル:1枚の画像か1文から5秒を生成する
生成モデルはコードを書かず、画面を直接生成します。最初のフレームとなる画像を1枚渡し、どう動くかを中国語で1文伝えると、5秒のクリップができます。
下の3本はどれも自宅のRTX 3090で動かし、音声も同時に生成しました。最初の2本には同じ画像と同じ「唇をかみ、左右を見て、手で髪をかき上げる」という文を使い、それぞれLTX-2.5とH3で生成しました。3本目はH3で画像を替え、「ゆっくり顔を上げて窓の外を見つめ、日差しが顔に降り注ぎ、髪がそよぐ」という文に替えています。
動画で一番難しいのは連続性です。同じ顔を保ち、動きを自然につなぎ、照明が急に変わらないようにすることです。最初の2本では、H3はカメラが動かず顔も変わりませんでした。LTX-2.5は勝手にカメラを寄せ、数フレームで顔の形と髪の色がずれました。
最初のフレームを渡さなくても生成できます。Seedance 2.5に渡したのは、次の英語の1文だけです。日差しの入る書斎で黒猫の執事が紅茶を注ぎ、カメラがゆっくり寄り、磁器が軽く触れ合う音が聞こえるようにする、という内容です。
Grokは動画を生成するとき、標準ではBGMも一緒に生成します。1本は10~15秒です。
LTX-2.5とH3には公式テンプレートを使い、テンプレートの設定は変えていません。私が書いたのは中国語のあの1文だけです。
生成モデルが一度に出せるのは5~15秒だけで、複数のクリップのBGMはうまくつながりません。生成されるのは素材であり、動画全体はプログラムでつなぐ必要があります。
できないこと
次の5つには、それぞれ問題がはっきり見える例があります。
- 音を聞けません。 ホワイトボード動画では各セリフの最初と最後に「カチッ」という音が入っていましたが、AIの自動チェックはすべて通りました。音は人が耳で確認するか、音を測る専用のチェックを別途作る必要があります
- 素材を求めてきません。 自己紹介動画のある版には画像が1枚もなく、すべてプログラムで描かれていました。参考にした元の動画には3D画像が11枚ありました。AIは「素材が足りないと見栄えが悪くなる」とは言わず、そのまま納品しました。素材は先に用意して渡す必要があります
- 自分の報告を鵜呑みにはできません。 あるAIはアニメーションを1つ作ったと報告しましたが、別のAIに測らせると0でした。別のAIかツールで測り直す必要があります
- 生成モデルは、その時点で渡されたものしか使いません。 ダンスを生成するときに曲を渡さなければ、後からタイミングをどう調整しても直せません。ダンスの動きを拍に合わせる2つのプログラムは、それぞれ自分のテストには通りましたが、ダンスは拍に合いませんでした。参考動画を渡しても、モデルが学ぶのは見た目であって、いつ動くかではありません。ビートに合わせたショート動画に元動画を参考として渡すと、拍への合い具合は12倍から6倍に落ちました(それぞれ1本ずつ制作)
- 標準では簡体字と中国本土の言い回しになります。 タイピング画面は標準でピンイン入力、画面上の文字は標準で簡体字になります。明示して初めて変わります
映像はどう動くのか
動画は1枚ずつの画像でできていて、すばやく切り替えると動いて見えます。どの動画でも、画面をどこから得るか、どの時間軸に合わせるか、どうファイルに出力するかの3つを決めます。この3つは自由に組み合わせられます。
画面をどこから得るか
画面の出どころは3種類あり、1本の動画ですべて使うこともできます。
| 出どころ | 使いどころ | 特徴 |
|---|---|---|
| プログラムで描く | スライド(CSS)、ホワイトボード(SVG)、自己紹介(Remotion)、キャラクターアニメーション(WebGL)、ビートに合わせた動画(Canvas)、MVのエフェクト(Python) | すべての動きがコードに書かれていて、数値を1つ変えるだけで作り直せます |
| 画像生成モデル | スライドのイラスト、ホワイトボードの貼り付け画像、自己紹介のキャラクター、MVのキャラクター | プログラムでは描きにくいものを描き、動かす工程はプログラムに任せます |
| 動画生成モデル | MVのダンス(H3、Grok) | 写実的ですが、1本が短く、指示に従うとは限りません(H3は指定した緑色の背景にしませんでした) |
MVでは3種類を混ぜて使っています。Grokでキャラクターを描き、H3とGrokでダンスを生成し、Pythonで人物を切り抜き、体の位置に合わせて線や火花を描き、拍に合わせてカットを切り替えます。
自己紹介はプログラムで描く例です。黒猫のキャラクターは画像生成モデルで描き、カードの位置、大きさ、透明度はRemotionが1フレームずつ計算します。
どの時間軸に合わせるか
画面と音を合わせるには、同じタイムラインを共有する必要があります。タイムラインの出どころは4種類です。
ナレーション。 先にナレーションを録り、各区間が何秒かを測ってから、その時間に画面を配置します。ホワイトボード動画で筆跡が収まらない場合は、次の区間の冒頭の時間を借り、それでも足りなければ区間全体を最大3倍まで速めます。画面は音に合わせて配置したのであり、後から編集して合わせたのではありません。
自分で組んだ拍の表。 ビートに合わせたショート動画では毎分120拍を選びました。毎秒30フレームなら1拍がちょうど15フレームで、すべての拍が整数のフレームに収まります。同じ拍の表で、効果音を置く位置と画面が動く時点の両方を決めます。
キャラクターアニメーションの各動作も120拍に合わせているため、アニメーションを完成させてから、どの音楽を付けても合います。同じ15秒のアニメーションに3種類を付けました。
既存の1曲。 MVの曲は毎分134.5拍から137.5拍へと徐々に揺れるため、等間隔のフレームではずれが広がっていきます。そこでプログラムで271個の拍を1つずつ検出しました。
生成するダンスをこの曲の拍に合わせるには、生成時に曲をモデルへ渡す必要があります。
| ダンスの生成方法 | 生成時に聞かせたもの | 拍に合ったか |
|---|---|---|
| Grok、後から私たちの曲に差し替え | モデルが自分で付けた音楽 | いいえ |
| H3、生成時に私たちの曲を渡す | 私たちの曲 | はい、7本のうち4本ではっきり合いました |
| Grok、モデルが自分で付けた音楽をそのまま使う | モデルが自分で付けた音楽 | 10本のうち1本。数を生成して当たりを引く必要があります |
モデルが付ける音楽。 GrokのダンスにはGrok自身が付けた音楽が流れます。拍に合うかは運次第なので、何本も生成して合うものを選ぶ、いわば当たりを引く作業が必要です。15秒以内のショート動画なら、人物を切り抜いて背景を替えるだけでも作れます。Gorden Sunもこの方法で1本作りました。もっと長くする場合、各クリップの音楽はつながらないので、そのうちの1本をSunoに渡して1曲に延長し、それをタイムラインにできます。
どうファイルに出力するか
出力方法は2つだけで、アニメーションがどの時計に従うかで決まります。
- ブラウザーの時計に従う:リアルタイムで録画するしかありません。 CSSアニメーションはブラウザー自身の時間に従って進み、こちらを待ってくれません。スライド解説動画を1フレームずつ撮ってみると遅すぎました。撮るフレームを減らすと動きの途中を撮ってしまうため、結局通常の速度で録画しました
- 「今は何フレーム目か」と尋ねる:フレームごとに計算できます。 Remotion、Canvas、SVG、WebGL、Pythonの画面は、プログラムが「今は何フレーム目か」を調べ、そのフレームを描きます。各フレームは互いに独立しているので、ゆっくり描いても、複数のブラウザーで分担して同時に描いてもかまいません
生成モデルのクリップは、フレームごとに計算する段階で素材として使います。MVでは各フレームでまず人物を切り抜き、体の33か所の点を見つけ、エフェクトを描きます。
いくらかかり、どれだけ時間がかかるか
費用:生成は秒単位、コードで描く動画はAIの利用量で決まる
動画生成の価格を1秒あたりに換算しました(2026年9月)。
| モデル | 条件 | 価格 | 1秒あたり |
|---|---|---|---|
| Seedance 2.5 | 720p、5秒、音声付き | 1.19米ドル | 約0.24米ドル |
| Grok(有料API) | 720p、10秒 | 実際の請求額は1.41米ドル | 約0.14米ドル |
| H3(有料API) | 1344×768、10秒、曲を渡す | 0.80米ドル | 約0.08米ドル |
| LTX-2.5、H3(自分のグラフィックカード) | 5秒 | 電気代のみ | — |
Grokは料金ページでは0.80米ドルの計算ですが、実際には1.41米ドルが請求されました。差額の理由は分かりませんでした。
2分間のMVをすべて有料のH3で生成すると約9.6米ドル、Seedanceだけなら約29米ドルです。今回のMVは自分のグラフィックカードとGrokのサブスクリプションで生成したため、追加の支払いはありませんでした。
コードで描く動画は秒単位の課金ではなく、AIにコードを書かせる利用量がかかります。MVの合成プログラムを作る前に、同じ仕様で10秒のテスト動画を1本作りました。API料金に換算すると、Codexは約1.14米ドル、Claude Codeは約6.68米ドルでした。普段はサブスクリプションを使うので、月額料金に含まれます。
実験全体で追加で払った額は約3.44米ドルです。GrokとH3の有料生成の比較に2.25米ドル(キャラクター画像1枚の0.04米ドルを含む)、Seedanceに1.19米ドルかかりました。サブスクリプションの月額料金、グラフィックカード、電気代は含めていません。
時間:出力方法で決まる
- リアルタイム録画:動画の長さだけ録画します。10分23秒のスライド解説動画なら、録画も10分23秒です
- フレームごとの計算:フレーム数×1フレームを描く時間÷同時に開くブラウザーの数です。ビートに合わせたショート動画は1755フレームを6つのブラウザーで処理して約5分間、67秒のホワイトボード動画は4つのブラウザーで21秒で描き終えました。1フレームにかかる時間は描き方次第です。キャラクターアニメーションの手描きブラシはM4 Macで1フレーム0.27秒、コンピューターが忙しいと1.9秒まで延びます
- 生成:RTX 3090で5秒のクリップを生成する場合、LTX-2.5は約80秒、H3は約110秒です。クラウドのSeedanceは191秒、有料のH3 APIは10秒のクリップに約3分半かかりました
これらは同じマシンでそれぞれ一度だけ測った数値です。コンピューターで別の処理も動いていると、ずっと遅くなります。
どんな動画を作りたいか
| 作りたい動画 | 画面 | 時間を合わせる対象 | 費用 | 時間を左右するもの |
|---|---|---|---|---|
| チュートリアル、解説 | Webスライドまたはプログラムで描く線 | ナレーション | AIの利用量 | 動画の長さ(録画)またはフレーム数(フレームごとの計算) |
| ビートに合わせたショート動画 | プログラムで描く | 自分で組んだ拍の表 | AIの利用量 | フレーム数÷同時に開くブラウザーの数 |
| キャラクターアニメーション | プログラムでフレームごとに描く。先にキャラクターシートと絵コンテを作る | 一定のテンポに合わせ、後から音楽を付ける | AIの利用量 | 1フレームを描く時間(ブラシはかなり遅い) |
| 指定した曲に合わせるダンスMV | 生成したダンス+プログラムのエフェクト | 既存の曲を生成時にモデルへ渡す | 1秒あたり約0.08米ドル(有料のH3)、または自分のグラフィックカード | 生成するクリップの数 |
| 15秒以内の音楽ショート動画 | ダンスを生成+背景を変更 | モデルが付ける音楽 | サブスクリプションに含まれる | 拍に合うまで何回生成するか |
| 写実的な画面1本 | 生成モデル | — | 1秒あたり0.08~0.24米ドル、または自分のグラフィックカード | 5秒あたり約1~3分 |
まず、画面は誰の時計に従うのかを考える
画面をどこから得るか、どの時間軸に合わせるか、どう出力するか。この3つで、どこまで正確に作れるか、いくらかかるかが決まります。
次の文章をあなたのAIに貼り付けて、手元の動画プロジェクトと照らし合わせてもらってください。
関連記事
7本の制作ノート
| 資料 | 重要な理由 |
|---|---|
| スライド解説動画 | CSSアニメーションをリアルタイムでしか録画できない理由 |
| 手描きホワイトボード動画 | 先にナレーションを録り、その時間に筆跡を配置する |
| Remotionによる自己紹介 | コードでアニメーションは作れても、素材は先に用意する必要がある |
| AIキャラクターアニメーション | 作り始める前にキャラクターシートと絵コンテを描く |
| アニメーションに音楽を付ける3つの方法 | 先に動きを拍に合わせれば、後からどの音楽を付けても合う |
| ビートに合わせた動画 | 参考動画から学べるのは見た目であって、動くタイミングではない |
| AIで作るMV | ダンスを生成するとき、モデルに曲を聞かせる必要がある |
方法の出典
| 資料 | 重要な理由 |
|---|---|
| ConardLi:web-video-presentation(garden-skills) | スライド解説動画 |
| Simon聊AI:Codex + Excalidrawでホワイトボード動画を作る(whiteboard-video) | ホワイトボード動画は「先に読み上げてから描く」 |
| Kent C. Dodds:AIに自分のshowreelを作らせる | 自己紹介 |
| Jason Zhu:AIのアニメーションをPPTのように見せない方法(ClaudeAnimationBase) | キャラクターアニメーションの作り方とアニメーションガイド |
| Gorden Sun:Opusで剪映のビートに合わせた動画を作る | ビートに合わせたショート動画の元のプロンプト |
| さんかくてん(続編、aicreataro) | MVの作り方 |