animonkey は何をしますか?
Dustkey LLC 制作
製品モーショングラフィックスを、まるでトップスタートアップが作るようなクオリティで制作するスタジオメソッド。音楽にフィットするストーリー、それだけで読み取れるタイトル、カットではなく変形するトランジション、製品が解決することを演じるキャラクター、そして実際のUIが主役の動画です。Remotionテンプレート(template/)、音楽・ナレーション・ミキシング・品質管理・納品のためのスクリプト(scripts/)、そして数値が記載されたリファレンスドキュメント(references/)を提供します。
職人技は繰り返すが、ルックは繰り返さない。 各作品は独自のビジュアルライン——パレット、書体、キャラクターの仕上げ、照明、カメラ、動きの個性、音楽——を持ち、クライアントのブランドから定義されます。このスキルは、このクオリティの動画を作るためのパラメーターを提供するものであり、何かを繰り返すためのものではありません。他の作品のライン、音楽、コピー、ストーリーボードを決してコピーしないでください。
始める前に
references/template.md(テンプレートの構造とAPI)と、Remotionコードを書く前に、インストールされているバージョンのドキュメント(@remotion/media、@remotion/three、ConfigAPIはバージョン間で変更されます)を読んでください。- ツール: node ≥ 20、ffmpeg/ffprobe、スクリプト用に
uv(Python 3.12)。ナレーション用には、mlx-audio、faster-whisper、mlx-whisper、speechbrain、librosa(Apple Silicon)がインストールされた環境が必要です。 - ディスク: レンダリングに5GB以上の空き容量が必要です(
df -h /)。ユーザーのファイルを確認せずに削除して空き容量を作らないでください。 - 新規プロジェクトはコピーから始めます:
cp -R <skill>/template <project>/video && cd <project>/video && npm install。
ワークフロー
各ステップは何かが見える状態で終了します。ゲート(G0~G3)は、フレーム、コンタクトシート、またはビデオで承認されます。説明だけでは承認されません。
0 · ブリーフ
以下の情報を収集し(不足しているものは一度にまとめて質問する):製品が現在何をするか、何をしないか;誰のためのものか;動画の掲載場所(ランディングページ、アプリストア、広告、イベント);尺;フォーマット(16:9、9:16、4:5);言語;ナレーションの有無とモード;音楽(商用ライセンス付き);ブランド(ロゴ、色、書体、トーン);実際のUI(スクリーンショット、コードからのデザイントークン、アイコン)とクライアントが気に入っている参考作品。製品の真実を計画に書き留めておくこと:動画内でアプリが提供しない機能を約束してはいけません。
1 · ビジュアルライン → G0
references/art-direction.mdを使用してラインの10軸を定義し、使用済みラインのレジストリ(used-lines.md、非公開。存在しない場合はused-lines.example.mdから作成する)と照合します。それをkit/palette.ts、style.ts、brand.ts(書体が変わる場合はscripts/font-metrics.pyも)およびproject/cast.tsに書き込みます。scripts/still.shを使用して3つのラインフレーム(キャストによる問題、UI、クローズ)をレンダリングし、承認を得ます。
2 · ストーリーとタイトル
references/storytelling.mdを使用して:スロット(価値が生まれる場所、キャスト、各キャラクターが落とす原材料、喪失、ひねり、旅するブランドピース、ワンタップアクション、3つ組、証拠、反論、タグライン)を埋めます。曲の形状に合わせて幕を配置し、project/titles.tsにreferences/kinetic-typography.mdを使用してタイトルを仕様として書きます。音を消してタイトルを一続きに読んでみます。それだけで動画全体が伝わる必要があります。両言語でnpm run checkがパスするまで実行します。
3 · 音楽とグリッド
references/audio-and-voice.mdを使用して:ラインに合ったトラックを選び、マッピングし(scripts/mapear-musica.py)、必要に応じて小節でカットし(scripts/cortar-por-compases.py)、project/timeline.tsのmakeGridにbpmとv0を設定します。以降、すべてのイベントはbar()/beat()で記述します。
4 · アニマティック → G1
実際のタイトルをアニメーション化し、オブジェクトをシルエットで所定の位置に配置し、平面図を載せたものを、音楽(および仮ナレーション)に合わせて作成します。ここで承認されるのはタイミングです。ここで承認されたものが最終的に出荷されます。
5 · ブロックごとのプロダクション → G2
リスクの高いものから低いものへ(まず手の中の証拠、伏線と回収)。各ブロックはproject/blocks/とregistry.tsxにあります。
- キャラクター、ポーズ、照明、3Dカメラ:
references/characters-3d.mdを参照。 - 3Dに接着された製品UI(DOM)、タップ、読み取り可能なプッシュイン:
references/product-ui.mdを参照。 - カーブ、カメラレシピ、変形トランジション、物理的な地面とハンドオフ:
references/motion-and-grounds.mdを参照。 各ブロックをコンタクトシートと100%クロップでレビューします(references/production-and-qa.md)。
6 · 統合、チェック、マスター → G3
npm run checkを実行し、レンダリング(scripts/render.sh)、MP4に対してscripts/film-qa.pyとscripts/hoja-contacto.pyを実行。ナレーション(scripts/voz/)とミックス(scripts/mezclar.py)を測定します。無音のマスターを、製品を知らない人のように視聴します。
7 · バリエーションと納品
言語、ウィンドウを通した縦型、複数のオープニングを持つ6~15秒カット、ナレーションなしのマスター:references/marketing-and-formats.mdを参照。scripts/entregar.py(上書きしない名前、カバー、コンタクトシート、マニフェスト)で納品します。
8 · 登録
作品のラインをused-lines.mdに追加し、そのシグネチャを次のプロジェクトのUSED_LINESに追加します。クライアントの決定を彼らの言葉で記録します。それらは次の作品のためのテイストとなります(references/taste.md)。
非ネゴシエイタブル
- 音楽がすべてを支配する。 すべてをグリッドフレームに合わせる。イベントはビートの±2フレーム以内にする。ナレーションを動かす。グリッドは決して動かさない。
- 1つのタイトル=2~5語の中央揃え1行。 実書体で計測する(DOM不使用)。アクセントは1つだけ。収まらない場合はテキストを短くし、書体は変えない。
- 不透明度による出現やクロスフェードによる変化は禁止。カメラ、オブジェクト、または変形がすべてを担う。
- 問題はキャラクターが演じる。問題でキャラクターが落としたものは、製品の結果として戻ってくる。
- UIは実製品のもの。DOMで再描画し、読み取られる時は判読可能(3.4 px/pt以上)であること。
- ブランドピースがストーリーを旅し、ロゴに戻る。クローズはドメインと共に静止する。
- 縦型は作り直さない。同じ動画をウィンドウで切り抜く。テキストはそのまま。収まらない部分はウィンドウを広げる。
- 各プロジェクトは独自のラインを持つ。スタジオの2つの作品は似ていない(
art-direction.mdのアンチ類似性)。 - チェックは失敗する可能性がなければならず、グリーンのレンダリングは何も証明しない。コンタクトシートと100%フレームを見よ。
- 実際の顧客データや架空の機能を画面に表示してはならない。
何をいつ読むか
| 必要なもの | 読むもの |
|---|---|
| 始める、テンプレートを理解する、コマンド | references/template.md |
| プロジェクトのルック(パレット、書体、仕上げ、照明、音楽)を定義する | references/art-direction.md |
| 構造、幕、プロセスを演じるキャラクター、コピー、ナレーション | references/storytelling.md |
| タイトルの仕様、入退場、計測、別の書体や言語 | references/kinetic-typography.md |
| カーブ、カメラ、トランジション、地面、リズム、モーションメトリクス | references/motion-and-grounds.md |
| キャスト、ポーズ、IK、3Dステージング、手、影をデザインする | references/characters-3d.md |
| 製品UIの再現とアニメーション、3Dへの接着 | references/product-ui.md |
| 音楽の選択とカット、AIナレーション、ミックス | references/audio-and-voice.md |
| 広告カット、縦型、言語、納品物 | references/marketing-and-formats.md |
| ゲート、測定可能なルール、レンダリング、ツール、運用 | references/production-and-qa.md |
| どちらも機能する2つの選択肢のうち、どちらかを決める | references/taste.md |
スクリプト
| スクリプト | 用途 |
|---|---|
template/scripts/check.sh | レンダリングせずにチェック(タイトル、同期、地面、コントラスト、カット、繰り返しライン)。2言語対応 |
template/scripts/still.sh | レビューおよびゲート用の単一フレーム |
template/scripts/render.sh | マスターとバリエーション:無音をチャンクでレンダリング、ディスクチェック付き。ffmpegでオーディオをマルチプレクス |
template/scripts/proyecto-json.sh | タイムラインをJSON形式でPythonスクリプトに出力 |
template/scripts/font-metrics.py | 別の書体(スタティックまたはバリアブル)の計測テーブル |
scripts/mapear-musica.py | トラックのテンポ、最初のダウンビート、グリッド、セクション |
scripts/cortar-por-compases.py | グリッドセグメントで音楽をカット、クリックノイズなし |
scripts/mezclar.py | 音楽+ナレーション。ダッキング、低域保護、測定レポート付き |
scripts/voz/ | タイトル→デザイン→クローン→選択→配置までのナレーションスクリプト |
scripts/film-qa.py | MP4上のカット、モーション、地面、色をチェック |
scripts/hoja-contacto.py | PDFまたはPNG形式のコンタクトシート |
scripts/comparar-videos.py | 許容範囲付きで2つのレンダリングを比較 |
scripts/entregar.py | カバー、コンタクトシート、マニフェスト付きで納品。上書きしない |
プライベートケース
private-cases/フォルダが存在する場合(公開されることはありません)、実際のスタジオ制作の完全な分析が含まれています。これを読んでメソッドがなぜそのようになっているのかを理解してください。決してそのライン、音楽、コピー、ストーリーをコピーしないでください。