Skip to content

【openscreen】ユースケース動画の撮影・編集自動化を実験する #3

Description

@nanameru

課題 / 目的

OpenScreenの既存CLI・録画・タイムライン・書き出し機構を再利用し、ユースケース動画を「指示から撮影、編集、MP4納品」まで自動化するための最小実験を行う。

参照動画: /Users/kimurataiyou/Downloads/Recording_2026_8_31_19_45_56.mp4(27.45秒、1920x1080、60fps、音声は全編無音)。原本は変更しない。

対象範囲

  • 既存の record -> .openscreen project -> export CLIを利用したオーケストレーション
  • 画面余白、角丸、影、グラデーション背景の自動設定
  • カーソルテレメトリがある場合の既存auto-zoom再利用
  • 無音・静止・画面変化を用いたカット/速度変更候補の決定的な編集プラン生成
  • 編集プランのJSON出力とプロジェクトへの適用
  • 提供動画を使ったローカルdry runとMP4出力
  • 将来の自然言語/ブラウザ操作アダプターを接続できる境界の定義

対象外

  • SNSや外部サービスへの公開・投稿
  • 認証済みWebサービスをAIが勝手に操作すること
  • 既存GUIの大幅な画面変更
  • 初回実験での完全汎用な意味理解・最適カット保証

完了条件

  • 1コマンドまたは1レシピで、入力動画/録画プロジェクトから編集プランを生成できる
  • プランに背景、ズーム、速度、カットの判断と理由が記録される
  • 既存OpenScreenプロジェクト機構へ安全に適用でき、原本動画を変更しない
  • 提供動画から参照スタイルに近いMP4を1本生成できる
  • 純粋ロジックのunit testと既存関連テストが通る
  • 容量不足時に大きな書き出しを開始せず、明確なエラーを返す
  • 自動撮影の次段階(画面操作アダプター)のインターフェースを文書化する

実装計画

  1. 既存CLI、project schema、zoom/cut/speed/background/exportの再利用点を確定
  2. 編集解析・プランschemaを純粋モジュールとして追加
  3. CLI/オーケストレーターからプラン生成・適用・exportを接続
  4. 提供動画でdry runし、成果物と編集判断ログを保存
  5. テスト、lint、typecheck、既存回帰を実行

テスト / CI計画

  • 解析結果の境界値、重複範囲、短すぎるカット、速度上限をunit test
  • cursor sidecar有無の両方をテスト
  • project JSONの既存schema互換性を確認
  • CLI引数とdry-run出力をテスト
  • 実MP4は短いfixtureまたは提供動画で手動dry run

ナレッジログ

  • 2026-09-02: OpenScreenには既にheadless record、project JSON編集、auto-zoom、MP4/GIF exportがあるため、新規編集エンジンではなくオーケストレーション層を優先する。
  • 2026-09-02: 提供動画は27.45秒、H.264 1920x1080、約60fps、AAC音声トラックは全編無音。見た目はブラウザ画面をグラデーション背景上へ余白・角丸付きで配置した構成。
  • 2026-09-02: ローカル空き容量は約1.7GiBのため、大規模buildや複数レンダーを避け、低容量の1本dry runに限定する。

UI / System Readiness

  • モード: non-ui(初回はCLI・純粋ロジックのみ)
  • 永続化: 既存 .openscreen JSONとローカル編集プランJSON。新規DBなし
  • 認証: 不要
  • 外部送信: なし
  • SYSTEM_READY: yes(ローカルファイルのみ、新規DB・認証なし)
  • DESIGN_READY: non-ui

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions