0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Sora2 Video Studio — OpenAI Soraで“テキストから動画”を生成できるデスクトップアプリ

Posted at

Sora2 Video Studio — OpenAI Soraで“テキストから動画”を生成できるデスクトップアプリ

最近話題の OpenAI Sora API を使って、テキストから動画を自動生成できる
Tkinter製のデスクトップアプリ 「Sora2 Video Studio」 を公開しました。

このアプリを使えば、

💡 プロンプト入力 → 動画生成 → 履歴保存 → プレビュー再生
が、すべて1つのウィンドウ内で完結 します。

Macユーザー向けに、クリエイティブな動画生成ワークフローをシンプルにすることを目的に開発しました。


🎥 特徴とできること

機能 内容
🧠 テキストから動画生成 OpenAI Sora (model="sora-2") にプロンプトを送信して自動生成。約1分で動画を取得。
リアルタイム進捗表示 生成中のステータスと経過時間をUI上で確認可能。
🗂 履歴管理機能 すべての生成履歴をJSONに保存。いつでも再生・再生成が可能。
🎞 内蔵動画プレイヤー imageio + Pillow によるフレーム再生で、アプリ内プレビューを即表示。
💾 永続化ストレージ 動画は ./videos、履歴は ./data/history.json に自動保存。
demo

⚙️ 動作環境

  • macOS(Apple Silicon / Intel 両対応)
  • Python 3.10 以上
  • uv 0.4 以上
  • ffmpeg(Homebrew 推奨)
  • OpenAI APIキー(Sora利用権限が必要)

🚀 セットアップ手順

# リポジトリを取得
git clone https://github.com/softjapan/sora2-video-studio.git
cd sora2-video-studio

# 依存関係を同期
uv sync

# 環境変数を設定
cp .env.example .env
# .env を開いて OPENAI_API_KEY を設定

# ffmpeg をインストール
brew install ffmpeg

▶️ 実行方法

uv run sora2

起動後の操作フロー:

  1. 左ペインにプロンプトを入力して「生成」をクリック
  2. ステータスバーで進捗と経過時間を確認
  3. 生成完了後、右ペインから履歴をクリックして動画を再生
  4. 過去の履歴を再利用して再生成も可能

💾 データ保存仕様

種別 保存場所 内容
動画ファイル ./videos 生成された .mp4 ファイル
履歴メタデータ ./data/history.json プロンプト、生成日時、ステータス等

初回起動時に自動生成されます。


🧩 プロジェクト構成

sora2-video-studio/
├── pyproject.toml        # uv 依存定義
├── specs.md              # プロダクト仕様書
├── src/sora2/
│   ├── api.py            # OpenAI Sora API ラッパー
│   ├── app.py            # Tkinter アプリUI
│   ├── player.py         # 動画再生コンポーネント
│   ├── storage.py        # JSON履歴管理
│   └── main.py           # エントリーポイント
├── data/                 # 履歴保存
└── videos/               # 動画保存

🧰 開発メモ

  • uv run sora2 で実行テスト可能
  • 依存追加は uv pip install
  • コードスタイルは black 準拠
  • 重大変更時は READMEspecs.md を更新

🩺 トラブルシューティング

問題 対処
プレビューが出ない ffmpeg が正しくインストールされているか確認
API呼び出し失敗 .envOPENAI_API_KEY とSora権限を確認
履歴が壊れた ./data/history.json を削除すると再生成されます

🪶 まとめ

  • OpenAI Sora をPython + Tkinterで活用した実用的なGUIアプリ
  • Mac環境で動画生成〜再生まで一気通貫で操作可能
  • JSONベースの履歴保存により、生成プロセスの再利用が容易
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?