remotion について
Stitch の画面を Remotion でアプリの紹介動画にする動画制作スキルです。素材取得、構成、トランジション、テキスト表示、プレビュー、レンダリングを案内します。
主な機能
- 01Stitch のプロジェクトと画面の取得
- 02スクリーンショットのダウンロードと整理
- 03Remotion での画面構成
- 04トランジションとテキスト表示
- 05紹介動画のプレビューとレンダリング
活用シーン
- 01アプリ画面の紹介動画を作成
- 02デザイン済みユーザーフローを提示
- 03ズームやホットスポットで UI を強調
- 04共有用の紹介動画をレンダリング
MCP 対応
Stitch MCP でプロジェクトを探して画面情報を取得します。Remotion MCP サーバーを使った動画構成のレンダリングにも対応します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ google-labs-code/ stitch-skills --skill remotionインストール後、Claude Code で/remotionを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdexamples/screens.jsonWalkthroughComposition.tsxresources/composition-checklist.mdscreen-slide-template.tsxscripts/download-stitch-asset.sh詳細
Stitch から Remotion へのウォークスルー動画
あなたは、アプリのデザインから魅力的なウォークスルー動画を作成することに焦点を当てた動画制作のスペシャリストです。あなたは Stitch の画面取得機能と Remotion のプログラムによる動画生成を組み合わせて、滑らかでプロフェッショナルなプレゼンテーションを制作します。
概要
このスキルにより、プロフェッショナルなトランジション、ズーム効果、文脈に応じたテキストオーバーレイを備えたアプリ画面を紹介するウォークスルー動画を作成できます。ワークフローは Stitch プロジェクトから画面を取得し、それらを Remotion の動画コンポジションに編成します。
前提条件
必須:
- Stitch MCP サーバーへのアクセス
- Remotion MCP サーバー(または Remotion CLI)へのアクセス
- Node.js と npm がインストールされていること
- デザイン済みの画面を含む Stitch プロジェクト
推奨:
- Remotion の動画機能に関する知識
- React コンポーネントの理解(Remotion は React を使用します)
取得とネットワーキング
ステップ 1: 利用可能な MCP サーバーの検出
list_tools を実行して、利用可能な MCP サーバーとそのプレフィックスを特定します:
- Stitch MCP:
stitch:またはmcp_stitch:プレフィックスを探します - Remotion MCP:
remotion:またはmcp_remotion:プレフィックスを探します
ステップ 2: Stitch プロジェクト情報の取得
-
プロジェクトの検索(プロジェクト ID が提供されていない場合):
filter: "view=owned"を指定して[stitch_prefix]:list_projectsを呼び出します- タイトル(例: 「Calculator App」)で対象プロジェクトを特定します
nameフィールドからプロジェクト ID を抽出します(例:projects/13534454087919359824)
-
画面の取得:
- プロジェクト ID(数値のみ)を指定して
[stitch_prefix]:list_screensを呼び出します - 画面タイトルを確認して、ウォークスルーに含めるすべての画面を特定します
- 各画面の
nameフィールドから画面 ID を抽出します
- プロジェクト ID(数値のみ)を指定して
-
画面メタデータの取得: 各画面について:
projectIdとscreenIdを指定して[stitch_prefix]:get_screenを呼び出します- 以下を取得します:
screenshot.downloadUrl— 動画用のビジュアルアセットhtmlCode.downloadUrl— 任意: テキスト/コンテンツの抽出用width、height— 適切なスケーリングのための画面サイズ- テキストオーバーレイ用の画面タイトルと説明
-
アセットのダウンロード:
web_fetchまたはcurlを指定したBashを使用してスクリーンショットをダウンロードします- ステージングディレクトリに保存します:
assets/screens/{screen-name}.png - 意図するウォークスルーの流れの順序でアセットを整理します
ステップ 3: Remotion プロジェクトのセットアップ
-
既存の Remotion プロジェクトの確認:
remotion.config.tsまたは Remotion の依存関係を含むpackage.jsonを探します- 存在する場合は、既存のプロジェクト構造を使用します
-
新しい Remotion プロジェクトの作成(必要な場合):
npm create video@latest -- --blank- TypeScript テンプレートを選択します
- 専用の
video/ディレクトリにセットアップします
-
依存関係のインストール:
cd video npm install @remotion/transitions @remotion/animated-emoji
動画コンポジションの戦略
アーキテクチャ
以下のコンポーネントを備えたモジュール式の Remotion コンポジションを作成します:
-
ScreenSlide.tsx— 個々の画面表示コンポーネント- Props:
imageSrc、title、description、width、height - 機能: ズームインアニメーション、フェードトランジション
- 期間: 設定可能(デフォルトでは画面ごとに 3〜5 秒)
- Props:
-
WalkthroughComposition.tsx— メインの動画コンポジション- 複数の
ScreenSlideコンポーネントをシーケンスします - 画面間のトランジションを処理します
- テキストオーバーレイと注釈を追加します
- 複数の
-
config.ts— 動画の設定- フレームレート(デフォルト: 30 fps)
- 動画のサイズ(Stitch の画面サイズに合わせるか、適切にスケーリングします)
- 合計時間の計算
トランジション効果
プロフェッショナルな効果には Remotion の @remotion/transitions を使用します:
-
フェード: 画面間の滑らかなクロスフェード
import {fade} from '@remotion/transitions/fade'; -
スライド: 方向性のあるスライドトランジション
import {slide} from '@remotion/transitions/slide'; -
ズーム: 強調のためのズームイン/ズームアウト効果
- 滑らかなズームには
spring()アニメーションを使用します - 重要な UI 要素に適用します
- 滑らかなズームには
テキストオーバーレイ
Remotion のテキスト描画を使用して、文脈に応じた情報を追加します。
- 画面タイトル:各フレームの上部または下部に表示します
- 機能の吹き出し:アニメーション付きのポインターで、特定の UI 要素を強調表示します
- 説明:各画面の説明テキストをフェードインで表示します
- 進行状況インジケーター:ウォークスルー内の現在の画面位置を表示します
実行手順
手順 1:画面アセットを収集する
- 対象の Stitch プロジェクトを特定します
- プロジェクト内のすべての画面を一覧表示します
- 各画面のスクリーンショットをダウンロードします
- ウォークスルーの流れに沿って整理します
- マニフェストファイル(
screens.json)を作成します:
{
"projectName": "Calculator App",
"screens": [
{
"id": "1",
"title": "Home Screen",
"description": "Main calculator interface with number pad",
"imagePath": "assets/screens/home.png",
"width": 1200,
"height": 800,
"duration": 4
},
{
"id": "2",
"title": "History View",
"description": "View of previous calculations",
"imagePath": "assets/screens/history.png",
"width": 1200,
"height": 800,
"duration": 3
}
]
}
手順 2:Remotion コンポーネントを生成する
Remotion のベストプラクティスに従って、動画コンポーネントを作成します。
-
ScreenSlide.tsxを作成します:- アニメーションには
useCurrentFrame()とspring()を使用します - ズーム効果とフェード効果を実装します
- 適切なタイミングでテキストオーバーレイを追加します
- アニメーションには
-
WalkthroughComposition.tsxを作成します:- 画面マニフェストをインポートします
<Sequence>コンポーネントで画面をシーケンス化します- 画面間のトランジションを適用します
- 適切なタイミングとオフセットを計算します
-
remotion.config.tsを更新します:- コンポジション ID を設定します
- 動画の寸法を設定します
- フレームレートと再生時間を設定します
参考リソース:
resources/screen-slide-template.tsxを出発点として使用します- 完全性を確認するには
resources/composition-checklist.mdに従います examples/ディレクトリ内の例を確認します
手順 3:プレビューして調整する
-
Remotion Studio を起動します:
npm run dev- ブラウザー上でプレビューが開きます
- リアルタイムで編集および調整できます
-
タイミングを調整します:
- 各画面に適切な表示時間が設定されていることを確認します
- トランジションが滑らかであることを確認します
- テキストオーバーレイのタイミングを確認します
-
アニメーションを微調整します:
- ズーム効果の spring 設定を調整します
- トランジションのイージング関数を変更します
- 常にテキストが読みやすいことを確認します
手順 4:動画をレンダリングする
-
Remotion CLI を使用してレンダリングします:
npx remotion render WalkthroughComposition output.mp4 -
代替方法:Remotion MCP を使用します(利用可能な場合):
- コンポジションの詳細を指定して
[remotion_prefix]:renderを呼び出します - 出力形式(MP4、WebM など)を指定します
- コンポジションの詳細を指定して
-
最適化オプション:
- 品質レベルを設定します(
--quality) - コーデックを設定します(
--codec h264またはh265) - 並列レンダリングを有効にします(
--concurrency)
- 品質レベルを設定します(
高度な機能
インタラクティブなホットスポット
クリック可能な要素や重要な機能を強調表示します:
import {interpolate, useCurrentFrame} from 'remotion';
const Hotspot = ({x, y, label}) => {
const frame = useCurrentFrame();
const scale = spring({
frame,
fps: 30,
config: {damping: 10, stiffness: 100}
});
return (
<div style={{
position: 'absolute',
left: x,
top: y,
transform: `scale(${scale})`
}}>
<div className="pulse-ring" />
<span>{label}</span>
</div>
);
};
ナレーションの統合
ウォークスルーにナレーションを追加します:
- 画面の説明からナレーションのスクリプトを生成します
- テキスト読み上げを使用するか、音声を録音します
<Audio>コンポーネントで音声を Remotion にインポートします- 画面のタイミングをナレーションのペースに合わせます
動的なテキスト抽出
Stitch の HTML コードからテキストを抽出して、注釈を自動生成します:
- 各画面の
htmlCode.downloadUrlをダウンロードします - HTML を解析し、見出し、ボタン、ラベルなどの重要なテキスト要素を抽出します
- 重要な UI 要素の吹き出しを自動生成します
- 時間指定のテキストオーバーレイとしてコンポジションに追加します
ファイル構成
project/
├── video/ # Remotion project directory
│ ├── src/
│ │ ├── WalkthroughComposition.tsx
│ │ ├── ScreenSlide.tsx
│ │ ├── components/
│ │ │ ├── Hotspot.tsx
│ │ │ └── TextOverlay.tsx
│ │ └── Root.tsx
│ ├── public/
│ │ └── assets/
│ │ └── screens/ # Downloaded Stitch screenshots
│ │ ├── home.png
│ │ └── history.png
│ ├── remotion.config.ts
│ └── package.json
├── screens.json # Screen manifest
└── output.mp4 # Rendered video
Remotion Skills との統合
Remotion では、ベストプラクティスを定めた独自の Agent Skills を提供しています。高度なテクニックについては、以下を確認してください。
- リポジトリ:https://github.com/remotion-dev/remotion/tree/main/packages/skills
- インストール:
npx skills add remotion-dev/skills
活用できる主な Remotion スキル:
- アニメーションのタイミングとイージング
- コンポジションのアーキテクチャパターン
- パフォーマンスの最適化
- 音声の同期
一般的なパターン
パターン 1:シンプルなスライドショー
フェードトランジションを使った基本的なウォークスルー:
- 画面ごとに 3~5 秒
- クロスフェードトランジション
- 画面タイトルを下部にテキストオーバーレイで表示
- 上部に進行状況バーを表示
パターン 2:機能の強調表示
特定の UI 要素に焦点を当てます:
- 特定の領域にズームインします
- 機能を指し示す円や矢印をアニメーションで表示します
- 重要な操作をスローモーションで強調します
- ビフォーアフターを並べて比較します
パターン 3:ユーザーフロー
ユーザーの操作手順をステップごとに示します:
- 方向を示すスライドを使った、画面の連続したフロー
- 番号付きのステップを重ねて表示
- ユーザーの操作(クリック、タップ)を強調
- アニメーション付きの経路で画面をつなぐ
トラブルシューティング
| 問題 | 解決策 |
|---|---|
| スクリーンショットがぼやける | ダウンロードした画像がフル解像度であることを確認し、screenshot.downloadUrl の画質設定を確認します |
| テキストの位置がずれる | 画面の寸法がコンポジションのサイズと一致していることを確認し、実際の画面サイズに合わせてテキストの位置を調整します |
| アニメーションがカクつく | フレームレートを 60fps に上げ、適切な減衰設定でスプリングを構成します |
| Remotion のビルドに失敗する | Node のバージョン互換性を確認し、すべての依存関係がインストールされていることを確認して、Remotion のドキュメントを確認します |
| タイミングに違和感がある | マニフェストで画面ごとの表示時間を調整し、Remotion Studio でプレビューして、実際のユーザーでテストします |
ベストプラクティス
- アスペクト比を維持する:Stitch の実際の画面サイズを使用するか、縦横比を保って拡大縮小します
- タイミングを統一する:特定の画面を強調する場合を除き、画面の表示時間を統一します
- テキストを読みやすくする:十分なコントラストを確保し、適切なフォントサイズを使い、画面上の要素を詰め込みすぎないようにします
- スムーズなトランジションにする:自然な動きにはスプリングアニメーションを使い、不自然なカットを避けます
- 十分にプレビューする:最終的にレンダリングする前に、必ず Remotion Studio でプレビューします
- アセットを最適化する:画像を適切に圧縮し、効率的な形式(UI には PNG、写真には JPG)を使います
使用例
ユーザープロンプト:
Look up the screens in my Stitch project "Calculator App" and build a remotion video
that shows a walkthrough of the screens.
エージェントのワークフロー:
- Stitch プロジェクトを一覧表示 → 「Calculator App」を検索 → プロジェクト ID を取得
- プロジェクト内の画面を一覧表示 → すべての画面(Home、History、Settings)を特定
- 各画面のスクリーンショットをダウンロード →
assets/screens/に保存 - 画面のメタデータを含む
screens.jsonマニフェストを作成 - Remotion コンポーネント(
ScreenSlide.tsx、WalkthroughComposition.tsx)を生成 - Remotion Studio でプレビュー → タイミングとトランジションを調整
- 最終動画をレンダリング →
calculator-walkthrough.mp4 - 動画のプレビューリンクを添えて完了を報告
成功のためのヒント
- シンプルに始める:複雑なアニメーションを追加する前に、基本的なフェードトランジションから始めます
- Remotion のパターンに従う:Remotion の公式スキルとドキュメントを活用します
- マニフェストファイルを使う:更新しやすいよう、画面データを JSON で整理します
- こまめにプレビューする:Remotion Studio を使って問題を早期に見つけます
- アクセシビリティを考慮する:字幕を追加し、テキストを読みやすくして、明確なビジュアルを使います
- プラットフォームに合わせて最適化する:動画の寸法を対象プラットフォーム(YouTube、ソーシャルメディアなど)に合わせます
参考資料
- Stitch のドキュメント:https://stitch.withgoogle.com/docs/
- Remotion のドキュメント:https://www.remotion.dev/docs/
- Remotion のスキル:https://www.remotion.dev/docs/ai/skills
- Remotion MCP:https://www.remotion.dev/docs/ai/mcp
- Remotion のトランジション:https://www.remotion.dev/docs/transitions