カット データ モデルとスキーマ

Shotgun 7.0 は編集情報をトラッキングするための公式データ モデルを確立しており、カット データの履歴スナップショットをキャプチャすることが可能です。

Shotgun がこのような情報を保持することで、カット履歴のトラッキング、コマーシャルにおけるカットのオーバーラップ(30、60、90 秒のカットなど)のサポート、カットのコンテキストにおける非 VFX ショットを含むメディアの視聴など、さまざまな機能の可能性が開かれます。

カット データ モデルは、Shotgun のブラウザと RV のレビュー ツールをサポートするだけでなく、スタジオ内で使用している編集ツールを Shotgun に統合することも可能にします。

カット データ モデルの中核は、[カット](Cut)エンティティと[カット項目](Cut Item)エンティティです。カット レベルでは、リビジョン番号、FPS、EDL ファイル、オプションのベース レイヤ ムービー バージョンなどの、カットに関するグローバルな情報をトラックします。

既定では、カットはシーケンスやシーンに関連付けることができますが、エピソード、コマーシャル、トレーラなどのさまざまな編集ワークフローをサポートする方法として、カスタマイズにより Shotgun のほぼすべてのエンティティに関連付けることが可能です。

カット項目はカットに接続され、EDL の実際の項目を構成します。これは、EDL の Shotgun ベースのビューと考えてください。このレベルでは、カット順、フレーム内の個々のクリップイン/アウト ポイントとタイムコード形式、ショットとバージョンへのオプションのリンクなどをトラッキングしています。

カット フィールドの詳細

カット項目フィールドの詳細

実際の使用例とクライアントからのフィードバックに基づき、Shotgun がカット情報をトラックするために使用する標準フィールドについて、以下に示します。これらの標準フィールドを公開する目的は、サードパーティのアプリケーションと Shotgun のツールや統合が、Shotgun のすべてのクライアントで確実に動作するように役立てていただくことにあります。

注: 静止画またはムービーのファイルのみが正式にサポートされています。

ショット フィールド

フィールド名 (フィールド タイプ) internal_field_name 説明と使用方法
[カット(イン)](Cut In) (数値) sg_cut_in カットに使用される最初のフレームです。この入力は編集から提供され、ムービーやフレームの再生に使用されます。 15
[カット(アウト)](Cut Out) (数値) sg_cut_out カットに使用される最後のフレームです。この入力は編集から提供され、ムービーやフレームの再生に使用されます。 125
[カットの期間](Cut Duration) (数値) sg_cut_duration カット内のこのショットの長さです。 111
[カットの順序](Cut Order) (数値) sg_cut_order ショットがプロジェクト全体のカット全部の中で再生される順序です。カット順で再生する場合や表示中の現在のショット周辺にあるバージョンのショットに取り込む場合に、ショットやショットのバージョンをソートするのに使用されます。 210000007
[ヘッド(イン)](Head In) (数値) sg_head_in このショットの映像が利用可能な最初のフレーム番号です。 11
[テール(アウト)](Tail Out) (数値) sg_tail_out このショットの映像が利用可能な最後のフレーム番号です。 130
[作業期間](Working Duration) (数値) sg_working_duration このショットのヘッドインからテールアウトまでに利用可能なフレームの時間合計です。 120

バージョン フィールド

フィールド名 (フィールド タイプ) internal_field _name 説明と使用方法
[アップロードされたムービー](Uploaded Movie) (ファイル/リンク) sg_uploaded_movie アップロードされたムービー ファイルを含むファイル フィールドです。Shotgun に保存されている低解像度のムービー メディアの再生に使用します。 ファイルをアップロードする
[ムービーのパス](Path to Movie) (文字) sg_path_to_movie ローカルのファイルシステム上にあるムービー(アップロードされていない)の場所です。ローカルに保存されている低解像度のムービー メディアの再生に使用します。 /path/to/movie.mov
[ムービーのアスペクト比](Movie Aspect Ratio) (浮動小数) sg_movie_aspect_ratio ムービーのアスペクト比です。表示イメージを正しくフォーマット化するのに使用します。 1
[ムービーにスレートがある](Movie Has Slate) (チェックボックス) sg_movie_has_slate ムービー ファイルにスレートがあるかどうかを示します。再生にスレートを追加または省略するのに使用します。 [✔]
[フレームのパ](Path to Frames) (文字) sg_path_to_frames ローカルのファイル システム上にある高解像度のフレームの場所です。高解像度のフレームの再生に使用します。 /rvshotgundemo/BBB_Short/08_a-team/012/ANIM/001/BBB_08_a-team_012_ANIM_001.#.jpg
[最初のフレーム](First Frame) (数値) sg_first_frame バージョンに含まれる最初のフレーム番号です。バージョンで利用可能な最初のフレームを計算するためにムービーまたはフレームの再生で使用します。 11
[最後のフレーム](Last Frame) (数値) sg_last_frame バージョンに含まれる最後のフレーム番号です。バージョンで利用可能な最後のフレームを計算するためにムービーまたはフレームの再生で使用します。 130
[フレームのアスペクト比](Frames Aspect Ratio) (浮動小数) sg_frames_aspect_ratio 高解像度のフレームのアスペクト比です。表示イメージを正しくフォーマット化するのに使用します。 1
[フレームにスレートがある](Frames Have Slate) (チェックボックス) sg_frames_have_slate フレームにスレートがあるかどうかを示します。再生にスレートを追加または省略するのに使用します。 [ ]
[部門](Department) (文字またはリスト) sg_department バージョンを提出した部門です。同一部門の最新バージョンを検出するのに使用します。 ANM

ショット フィールドの場合はどうですか?

ヘッドイン、テールアウトなどのショット レベルのカット フィールドは、カットおよびカット項目の値とは独立しています。

これは主に 2 つの理由によるものです。最初の理由は、編集データのトラッキングに反復的な性質があることです。たとえば、作業中の一時的なカットを Shotgun に追加しようとしている場合、正式なカットにするまではショット レベルの値を更新しない場合があるでしょう。2 つ目の理由は、パイプラインと部門の要求に応じて、処理フレームの数が変わる可能性があることです。この種の情報は通常、カットとともに変動せず、独立してトラックする必要があります。

使いやすくするために、RV の Import Cut アプリで Update Cut Fields on Shots オプションを選択することで、読み込み時にショット レベルのフィールドの更新を自動的に処理させることができます。独自の統合の場合は、ショット レベルのフィールドを考慮してください。

Shotgun でカット データをトラッキングしている場合、新しいレビュー ツールセットでそのデータを使用できますか?

使用できますが、自動的には行われません。

リリース ロールアウト時の問題を避けるためにカット データ モデルを構築しましたが、Cut、Cut Item、CutVersionConnection のエンティティに変更があります。リリース ロールアウト時のリスクを低減するため、データの移行からスキーマの移行を分離しました。データの移行は、サポート チームによるリリース後のプロセスを通じて処理されます。

7.0 カット データ モデルで作業する従来のカット データがある場合は、サポート チームが支援します。リクエストを送ってください。

スキーマとデータの移行の詳細

本質的な詳細に関心がある場合にお読みください。

Cut、Cut Item、または CutVersionConnection エンティティを一度も使用していないサイトでは、サイトを Shotgun v7.0 にアップグレードしたときに行われるスキーマの移行により、これらの未使用フィールドがサイトのスキーマから削除され、新しいフィールドを使用できるようになります。特別なデータの移行は必要ありません。

7.0 のスキーマの移行アップグレード中にデータベース内で上記 3 つのエンティティが使用されていることが検出された場合は、対応するエンティティの現在のスキーマからフィールドまたはデータが削除されません。代わりに、これらのフィールドが「ユーザ」フィールドに変更され、ユーザが自分で追加したフィールドとみなされるようになります。

たとえば、サイトのデータベースで Cut エンティティは使用しているが Cut Item または CutVersionConnection エンティティは使用していないと検出された場合、Cut エンティティの Sequence (sg_sequence)フィールドは削除されず、ユーザ フィールドに分類されてユーザが自由に削除できるようになります。CutItem と CutVersionConnection は検出されなかったため、自動的に削除されます。

この方法により、Shotgun 7.0 へのアップグレード中にデータが失われることがなくなります。

Shotgun 7.0 への移行後に、現在のサイトのデータベースに Cut、CutItem、CutVersionConnection エンティティが存在するかどうかを検証します。(お客様がバージョン 7.0 にアップグレードする前に、Shotgun チーム側でも検証を行います。お客様のサイトでこれらのエンティティの使用が検出された場合は、連絡する可能性があります。)

現在のサイトのスキーマに追加の動的フィールドがある場合は、新しいスキーマで最近追加されたフィールドと重複しないようにしてください。

これら 3 つのフィールドのいずれかまたはすべてが現在使用されている場合は、次のいずれかのデータ移行オプションを選択します。

オプション 1: 既存のデータをそのまま残す

このオプションは、内部的な理由でどうしても他のオプションを選択できない場合の、短期的なオプションとして適しています。

利点:

古いフィールドを使用するスクリプトまたは Shotgun ページがある場合、変更を行うことなく引き続き動作させることができます。

欠点:

サイトのスキーマに、Shotgun で使用されなくなったデータを含む古いエンティティ フィールドが残されます。たとえば、カットを作成するときに Sequence フィールドと Link フィールドを入力するオプションが表示されると、ユーザには Sequence フィールドが使用されなくなったことがわかりません。また、新しいカットの読み込みツールはカットの Link フィールドに自動的に値を入力しますが、カットの Sequence フィールドには入力しません。その結果、Sequence フィールドに現在依存しているスクリプトがある場合、カットの読み込みツールを使用したときにデータが見つかりません。

実行の手順:

このオプションの場合、古いフィールドの既存のデータが、新しいフィールドの新しいデータと共存できるため、必要な手順はありません。可能な場合には、このオプションを短期的な解決策として使用して、以下のオプション 2 または 3 を徐々に実装することをクライアントに推奨します。

オプション 2: 既存のデータを削除する

削除されたエンティティのいずれかが、テスト目的で使用されていたことや、不要になった古いプロジェクトに関連付けられていたことが判明した場合は、サイトから既存のデータを完全に削除できます。

利点:

手順が簡単です。

欠点:

データが失われます。

実行の手順:

サイトから安全に削除できるエンティティ フィールドのリストについては、サポートチームにお問い合わせください。その後、Shotgun チームがサイトのスキーマから従来のエンティティ フィールドを削除する時間をスケジュールします。この手順が完了すると、これらの特定のフィールドに関連付けられたデータはサイトから削除されますが、他のエンティティ フィールドの値はデータベースに残ります。

オプション 3: 既存のデータを新しいエンティティとフィールドに移行する

このオプションは、サイトのスキーマに新しいエンティティ フィールドと古いエンティティ フィールドが共存するという一時的な状態を打開するための、最良の方法です。

利点:

クライアントの混乱や今後のバグの原因となる可能性がある、サイトのスキーマに新しいエンティティ フィールドと古いエンティティ フィールドが共存するという一時的な状態を打開するのに最適な方法です。

欠点:

既存のフィールドの使用状況によっては、移行によりスクリプトや内部ツールの変更が必要となる場合があります。

実行の手順:

既存のデータを新しいフィールドに移行することをサポート チームに伝えてください。Shotgun チームが、データを移行してサイトのスキーマから古いフィールドを削除する自動タスクをスケジュールします。移行が完了したら、お知らせします。

または、ご自身で移行を行うこともできます。ご質問があれば、いつでもサポート チームにご相談ください。古いフィールドのサポートを削除するために、内部のスクリプトとツールを更新することを忘れないでください。

データの移行を自分で行う場合は、次の移行の詳細が役立ちます。

Cut エンティティ:

移行前の Cut

移行後の Cut

Sequence [sg_sequence]

Entity [link]

新しいフィールドは、既存のフィールドの拡張です(シーケンス以外のエンティティ タイプにリンクすることができます)。

Cut Item エンティティ:

移行前の Cut Item

移行後の Cut Item

Type [sg_cutitem_type]

N/A

新しいデータ モデルには対応するフィールドがないため、このフィールドは「ユーザ」フィールドとして残り、必要に応じて削除することができます。

Cut [sg_cut]

Cut [cut]

このフィールドの名前は UI では変更されず、内部的に変更されます。スクリプトの場合は変更されます。

CutVersionConnection エンティティ:

CutVersionConnection エンティティごとに Cut Item が作成されます。

移行前の CutVersionConnection

移行後の Cut Item

Cached Display Name [cached_display_name]

- Cached Display Name
 [cached_display_name]

- Cut Item Name [code]

Cut Comments [sg_cut_comments]

Description [description]

Cut Duration [sg_cut_duration]

Cut Item Duration [cut_item_duration]

Cut In [sg_cut_in]

Cut Item In [cut_item_in]

Cut Out [sg_cut_out]

Cut Item Out [cut_item_out]

Cut Order [sg_cut_order]

Cut Order[cut_order]

フォローする

0 コメント

ログインしてコメントを残してください。