AICU

「Sora2 Frame Splitter」はSora2の生成動画をカット割りに使えるツール、しかも無料でオープンソース!

作成者: AICU Japan|2025/10/30 20:40:52 Z

「Sora2 Frame Splitter」はSora2の生成した動画をカット割りに使うツール、しかも無料でオープンソース!

編集部より:yachimat氏(@yachimat_manga)より許諾をいただきました

この記事は、AIアニメクリエイターのyachimat氏がご自身の制作フローを劇的に効率化するために開発したツールと、そのワークフローをご紹介するものです。発端は、yachimat氏のX(旧Twitter)への投稿でした。

 

この革新的なツールにAICU編集部しらいはかせ(X@o_ob)が注目し、ぜひ紹介したいとお声がけしたところ、快く許諾をいただきました。

 
 

AICUは「つくる人をつくる」AIクリエイターのためのコミュニティマガジンです。

ここからは、yachimat氏ご本人による、Sora2時代の新しい動画制作ワークフロー解説を(許諾のもと)再構成してお届けします。

Sora2の登場は衝撃的でした。圧倒的な構図センス、自然なカメラワーク、そして“映像としての説得力”。しかし、実際に「作品」を作ろうとすると、多くのクリエイターが壁にぶつかります。

  • 12秒という制約

  • 高いコスト(APIは12秒で500円越え)

  • 部分修正の難しさ

「すごいけど使いづらい」。このジレンマを解決するのが、AIの「分業」という考え方です。

この記事では、Sora2を「カット割り・構図生成ツール」として割り切り、他の動画生成AIと連携させて長尺動画を高速で制作するツールを紹介します。しかもこのツールはブラウザで動き、オープンソースです。

Sora2の真価は「カット割り」にある

Sora2が変えたのは「動き」だけではありません。それまでAIが苦手としていた、カメラワークと構図設計を一気に飛び越えました。

Sora2に「おまかせ」のtext2videoの生成にも関わらず、プロンプトを工夫すると、カメラが寄り、引き、回り込む。照明が自然に動き、カットのリズムまで感じられる。これが12秒の中で完結する映像の完成度は、もはや実験段階を超えています。しかし、前述の通り、12秒では物語が作れず、コストや修正の難しさから「作品」として繋ぐのは困難です。この課題を乗り越えるには、AIを分業させる発想が必要でした。

AIを分業させる「最適ワークフロー」の構築

“万能AIで全部やる”という考え方には限界があります。それよりも、「得意分野ごとにAIを組み合わせて使う」ほうが、ずっと安定して高品質な作品を高速に生み出せます。現在、yachimat氏が採用している最適ルートがこちらです。

1. Midjourney / Nanobanana(キャラリファレンス作成)

2. Sora2(構図・カット割り生成)

3. 自作フレーム抽出ツール(素材化)

4. 他の動画生成AI(尺拡張・修正)

各工程の役割

  • 1. Nanobanana(キャラデザ): キャラクターの一貫性を保つための「基準」を作ります。

  • 2. Sora2(監督): 全体の構図とカメラワークを設計。最もセンスが問われる部分をSora2に任せます。

  • 3. 自作ツール(素材化): Sora2の映像をカットごとにフレーム分解し、"素材"にします。

  • 4. 他AI (Vidu / Hailuo / Grokなど)(撮影チーム): 尺を伸ばし、リップシンクさせ、部分修正を行います。

Sora2のセンスを骨格として利用しつつ、他AIで肉付け・調整する。これにより、一つのAIに頼るよりも、はるかに速く、柔軟な制作が可能になります。

実例

まずキャラクターシートを作成します。

https://note.com/yachimat/n/nb81efb00aefc https://note.com/yachimat/n/nb81efb00aefc

[事例多数] Sora2で神作画に近づく!たった一行のプロンプト
https://note.com/yachimat/n/n23ce7ba0db5d

高速なカット割り、作画枚数多め、24fps

編集部注:本当にこのプロンプトだけで良くなります。Sora2のfpsは30fpsです。実際には「高速なカット割り、1秒ごとにシーン変更」などでも効果を得ることができます。逆に、これを指定しないと「全く動かない動画」を生成することもあります。

次に、このリファレンスをSora2のスタート画像にして動画を生成します。

これを自作ツールでフレーム抽出します。

最後に、これらのフレームを使い、GrokやViduなどで尺を伸ばし、必要なカットを生成していきます。

動画生成はモデル選びが8割!AIアニメ制作におけるモデル選定ガイド(2025/8/15追記)
https://note.com/yachimat/n/n6a37e3991d99

最大の壁:面倒な「フレーム抽出」を自動化する

このワークフローにも大きな問題がありました。それが「フレーム抽出」です。Sora2で生成した12秒の映像を、カットの頭ごとにフレーム分解する。この単純作業が、一番面倒で時間のかかる工程でした。既存ツールでは動作が重かったり、カット単位での抽出が難しかったりします。AIがどんなに進化しても、この一点でワークフロー全体が詰まってしまう。そこで、yachimat氏は自分で作りました。

ツール概要:Sora2 Frame Splitter

Sora2 Frame Splitter
https://sora2-frame-splitter.vercel.app/

このツールは、動画ファイルをドラッグ&ドロップするだけで、数秒で全カットの主要フレームを自動抽出し、フォルダに出力します。

主な機能:

  • カット変化点の自動検出

  • 各カットの代表フレームを抽出

  • ワンクリック保存

一度試せば、「あの地味な手作業がもう不要」と感じるはずです。

使い方(超シンプル)

  1. 動画をアップロード

  2. 「抽出」ボタンをクリック

  3. 数秒後に全フレームがフォルダ出力

これで、Sora2の優れたカット割りをフレーム単位の「素材」として扱えるようになります。

👉 GitHubリポジトリはこちら
https://github.com/yazoo1220/sora2-frame-splitter

"自由にパクってください。改造も歓迎です"
とのことなので、ソースコードを分析してみました。

Sora2-frame-splitterソース解説

Sora2 Frame Splitter は、動画をドラッグ&ドロップして「抽出」を押すだけで、各カットの主要フレームを自動抽出し、ZIPで一括保存できます。すべてブラウザ内処理で安全です。

使い方:
①動画をアップロード → 感度スライダーで調整(推奨0.20) → 抽出 → 各フレームをクリック保存 or ZIP一括ダウンロード。
②画像だけでなく、オプションで各カット範囲の「動画クリップ」書き出しも可能(FFmpeg.wasm)。

実装の検証(ソースコードと照合)

  • ブラウザ内処理・言語切替

    • 多言語文言は `lib/translations.ts:1` に定義。ブラウザ内完結の注意書きも明記(`hint`)。

    • 言語切替は `app/page.tsx:7` の `language` state とボタンで実装、文言は `translations` 経由で反映(`app/page.tsx:25`)。

  • カット変化点の検出と主要フレーム抽出

    • 画素差分アルゴリズムは `lib/frame-difference.ts:7` の `calculateFrameDifference`。RGB差分の正規化平均をサンプリング(`sampleRate=4`)で高速化。

    • 抽出処理は `components/scene-detector.tsx:159` 以降。`fps=10`(`components/scene-detector.tsx:160`)で `frameInterval` ごとに `diff > threshold` を判定し、変化点でキャンバスを複製して代表フレーム化(`components/scene-detector.tsx:227-246`)。

    • 感度スライダーの初期値は `threshold=0.2`(`components/scene-detector.tsx:34`)。UIは Radix Slider を `components/ui/slider.tsx` で提供。

  • 出力(画像/動画)

    • 単体保存は `toBlob` → `<a download>` で即時保存(`components/scene-detector.tsx:272-287`)。

    • 一括保存は JSZip で ZIP を生成(`components/scene-detector.tsx:349-377`)。出力名は `extracted_frames.zip`。

    • 動画クリップは FFmpeg.wasm を遅延ロードして `-ss -t` 切り出し(`components/scene-detector.tsx:297-346`)。初回は `outputFormat === "video"` 選択時にロード(`components/scene-detector.tsx:57-74`)。

  • UI/操作性

    • ドラッグ&ドロップ、ファイル入力、エラーハンドリングは `components/scene-detector.tsx:76-107`。

    • ヒントやボタン、一覧プレビューなどのUIは同ファイル下部に実装。

  • テストとCI

    • 単体/コンポーネントテスト: Jest + Testing Library(`jest.config.js`)。UIプリミティブの検証例は `components/tests/slider.test.tsx`。

    • E2E: Playwright(`e2e/app.spec.ts`)でタイトル表示、言語切替、スライダー表示、抽出ボタン状態等を確認。

    • CI: `.github/workflows/test.yml` でユニット/コンポーネント/E2E/ビルドを GitHub Actions 上で実行。Node 20・npm を使用。Vercel も npm を指定(`vercel.json`)。

以上より、記事中の主張(ブラウザ内完結、カット検出による主要フレーム抽出、ZIP一括出力、動画クリップ切り出し、シンプルな操作、言語切替、CI整備)は実装と整合しています。

開発メモ(オープンソースとして)

  • 技術スタック: Next.js 16 / React 19 / TypeScript / Tailwind / Radix UI。

  • 必要条件: Node 18+(`package.json` の `engines`)。ローカルは `npm run dev`。

  • ライセンス: MIT(`README.md` に明記)。改造歓迎。

まとめとリンク

Sora2の“シーン構成力”を骨格に、他AIで肉付けする分業ワークフローは実践的。ボトルネックだった「フレーム抽出」を本ツールが数秒で解消し、制作を加速します。特にSora2アプリ版は無料で生成できますし、AICUがすでに公開している「Sora2Gen」のようにスプレッドシート+GASでAPIを利用するツールと連携することもできますね。

https://www.aicu.jp/post/sora2gen

さらに今後問題になるであろうSora2の著作権に関するサービス停止や改変についても、比較的影響を受けづらい点も未来に向かっていると考えます。

AICUは「つくる人をつくる」AIクリエイターのためのコミュニティマガジンです。これからも「つくる人」を応援します!
ご寄稿のお礼として、yachimatさんにチップをお送りさせていただきます。

 

Originally published at note.com/aicu on Oct 28, 2025.