Soraで「いらすと」を動かしてみる


# はじめに

本記事は**リンクアンドモチベーション Advent Calendar 2024**の17日目になります。  
動画生成に興味があるので、最近話題の[Sora](https://openai.com/sora/)を試してみました。

# Soraの概要

Soraは、OpenAIが開発した**テキストから動画を生成するモデル**です。  
先週あたりからChatGPT Plusユーザー向けに提供が開始され、当初はアクセスが集中して利用しづらかったものの、ようやく触れるようになったので試してみました。

## 基本情報

- **利用プラン**：ChatGPT Plus（月額20ドル）（ChatGPT Proでも利用可能）
- **機能制限**：一部あり、1000クレジット分利用可能
- **動画生成の最大秒数**：5秒（実際には10秒まで生成可能）
- **最大解像度**：720p
- **最大同時生成数**：2つ
- **クレジット消費量**：時間と解像度に応じて変動  
    - 5秒・480p：20~25クレジット  
    - 10秒・720p：180クレジット  

# 基本機能

Soraには以下のような基本機能があります。

- **テキストから動画を生成**
- **Story Board**：シーンに応じた動画生成
- **Blend**：複数の動画を組み合わせる
- **Remix**：生成済みの動画を編集する

今回は出力の比較がしやすいことから、「**いらすとや**」の画像をベースに機能を試してみました。
※他にもありますが、今回は割愛しました。
## テキストから動画を生成

テキストに応じて動画を生成できます。画像や動画を入力データとして併用することも可能です。

### 例

- **入力画像**：「いらすとや」の男の子の画像  
- **入力テキスト**：「この少年が公園の中を走り回っている様子を描いて」  

![kid_seikaku_kachiki_boy_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/7672c132-aff6-bc56-279f-c42db6f71e4b.png)

**出力動画**  
![output_2.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/056b240f-b71c-5b6a-6547-102736d5f431.gif)

### 注意点

画像や動画に**人物**が含まれている場合、エラーが発生します。  
「いらすとや」のようなイラストは利用可能でしたが、DALL-E 3などで生成したリアルな画像は使えませんでした。

> Your account does not currently support creating videos with uploaded media containing people. If you upload a photo or video that contains people the video will fail to generate and you will not be charged any credits.

---

## Story Board

シーンに合わせた動画の生成ができます。  
入力はテキスト・画像・動画に対応しており、シーンごとにprompt（指示文）を設定可能です。

![スクリーンショット 2024-12-18 2.12.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/ca1d2773-7c53-3968-e8d4-acaf0af4d426.png)

また、一度作成した動画は自動的にStory Board化されるため、部分的な編集がしやすくなります。

### 例

1. シーン1：「いらすとや」の男の子の画像を入力  
2. シーン2：シーン1の画像を説明したテキストを入力（画像アップロード時に自動生成してくれるもの）
3. シーン3：「この少年が公園の中を走り回っている様子を描いて」  
4. シーン4：「この少年が公園の中でサッカーボールを見つけて蹴る様子を描いて」  

**出力動画**  

![output.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/0bc696a2-4ce8-7026-604c-467c57c5f5a1.gif)  
**注意点**  
シーン2（画像と同じテキスト）は一見不要に思えますが、省略すると人物が途中で別キャラクターとして扱われてしまうことがあります。

**省略した場合の動画**  
![output_3.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/157371ae-ff0e-effc-5342-bf5e1504377d.gif)

---

## Blend

複数の動画を組み合わせることができます。
主なBlendの種類は以下の通りです。

- **Transition Blend**：2つの動画をシームレスに繋げる  
- **Mix Blend**：2つの動画を均等に混ぜる  
- **Sample Blend**：1つの動画に別動画の要素を一部追加  
- **Custom Blend**：2つの動画を任意の割合で混ぜる  

### Transition Blendの例
**出力動画**  

![output_4.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/9425b12f-a581-be5f-81e9-2bf313ba3ad9.gif)

### Mix Blendの例
**出力動画**  

![output_5.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/fdabb1bf-e11d-55b4-12a6-f29c47f6df83.gif)

### Sample Blendの例
**出力動画**  

![output_6.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/c50faf34-e51f-7cb5-98a7-cc7cabcfd086.gif)

 - Transition Blendは「いらすとや」要素からリアルな男の子に変わっている
 - Mix Blendは比較的リアルな男の子の要素が最初から混じっている
 - Sample Blendはメイン要素の「いらすとや」要素がより強くなっている
 ように見えます。
 
---

## Remix

動画を編集する際、テキストを入力して修正が可能です。
Remixの強度は8段階で設定できます。

### 例

- **入力動画**：リアルな男の子の動画  
- **テキスト**：「少年をリアルな猿に変えて」  
- **Remix強度**：Strong（7/8）  

**出力動画**  

![output_7.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/921997/a511fe23-dd9a-06d8-2b1c-d142c0134d04.gif)

動きがやや不自然な箇所もありますが、猿への置き換えはしっかり反映されています。

---

# 感想
**良いと思った点**
- 簡単に高品質な動画が生成できて楽しい！
- DALL-E 3での画像生成と比較して、画像や動画をインプットにできるので、イラストや画像自体のトンマナの統一は楽にできそう

**課題に思った点**
- 実際に動画を利用できるビジネスシーンが限られそう
- クオリティ面での課題  
  - 物理的に不自然な動きが発生する  
  - 思い通りの動きを実現するには試行錯誤が必要  

特に、Story Boardは使い方によっては、より表現したい動画を作るために試行錯誤の余地がありそうなので、今後も引き続き試してみたいと思います。
ちょうど最近Googleの**Veo2**も注目されているので、こちらとも比較して試してみます。