方法:アセットの整理
方法:アセットの整理
はじめに
このガイドでは、統合からアセットをアップロードする方法およびその制御内容について説明します。 **
必要なもの
C2C の実装:セットアップガイドをまだ読んでいない場合は、目を通してから先へ進んでください。
C2C ハードウェアまたは C2C アプリケーションの認証および承認ガイドで受け取った access_token が必要です。
アセットのフォルダー構造
デフォルトで、アセットは次のフォルダー構造で作成されます。
Cloud Devices/{YYYY}_{MM}_{DD}/{ASSET_TYPE}/{YOUR_DEVICE}/{ASSET_NAME}
ここで、{ASSET_TYPE} は VIDEO、AUDIO、DATA のいずれか(デバイスモデルのチャネルごとに設定済み)、{YOUR_DEVICE} はユーザーのプロジェクトに接続されているプロジェクトデバイスの名前、{ASSET_NAME} はアップロードしたアセットの名前で、Frame.io で実際に再生可能なアセットです。
拡張子ルーティング
{ASSET_NAME} のファイル拡張子に基づき、様々なアセットをカスタム {ASSET_TYPE} フォルダーにルーティングするようデバイスを設定できます。例えば、統合に生成される様々なファイルタイプがあり、それぞれが特定の場所に属しているとします。これらのアセットを次のようにマッピングするように指定できます。
次のアセットを作成すると、
API endpoint specificaton
Docs for /v2/assets can be found here
…次のような場所にルーティングされます。Cloud Devices/2022_04_01/STILLS/MY_DEVICE/IMAGE_0001.jpeg。
ファイル名が A001_C001.mov である場合、次の場所にルーティングされます。Cloud Devices/2022_04_01/VIDEO/MY_DEVICE/A001_C001.mov。
トークン化されたアップロードパス
一部の統合では、デバイスが作成するフォルダー構造をより細かく制御したい場合があります。その場合、Frame.io では、C2C デバイスから Frame.io にファイルをアップロードする方法にある程度の一貫性があることを確認する必要があり、特に、C2C デバイスがプロジェクトのどの部分とやり取りできるかについて、Frame.io のお客様に保証する必要があります。そのため、インテグレーターは {YOUR_DEVICE} フォルダー内のアセットのアップロード場所をカスタマイズできますが、そのフォルダー外にアセットをアップロードすることはできません。
カスタムフォルダー構造にアップロードするには、パートナーマネージャーと協力する必要があります。カスタムフォルダー構造は、アセットの作成時に指定する必要があるトークン化されたメタデータのセットです。簡単な例を見てみましょう。
"A001"、"A002"、"A003" などの reel_name 値と、"C001"、"C002" などの clip_number 値を持つ 3D カメラリグがあるとします。クリップごとにフォルダーを作成し、左右の目のファイルを入力します。これにより、プロジェクトではファイルが次のように表示されます。

これを行うには、次の 2 つの設定を行う必要があります。
- 必須メタデータフィールド
- トークン化されたファイルパス
必須メタデータフィールドは、統合のアセット作成時に設定する必要があるキーのシンプルなリストです。
次に、これらのキーのいずれかを使用して / で区切られたパスを作成し、{field_name} を使用してフィールドの値を挿入する場所を示すことができます。
これら両方の設定は、統合の詳細の一部として追加するために、Frame.io のチームに提供される必要があります。チームによるこれらの設定後、アセットの作成を正常に行うために、これらの値をペイロードのルートに指定する必要があります。
これにより、次のような完全なパスを含むファイルが作成されます。Cloud Devices/2022_04_01/VIDEO/MY_DEVICE/REEL_A001/A001_C001/A001_C001_LEFT.mp4
Metadata errors
If your device has not been explicitly set up to allow these fields, you will receive an error if you try to make the same call. Likewise, if you set up required metadata fields, you MUST supply them in the asset create payload or an error will be returned.
ペイロードは、すべての有効な JSON 値を受け入れます。文字列以外の値は、次のようにレンダリングされます。
- 整数:10 進法でレンダリング:
10->"10" - 浮動小数点数:プログラミング言語の設計と実装に関する SIGPLAN ‘96 会議の議事録の「Printing Floating-Point Numbers Quickly and Accurately(浮動小数点数を高速かつ正確に出力する方法)」で説明されているアルゴリズムに従って、最短表現を使用します。
- ブール値:
trueおよびfalseは、"true"と"false"としてレンダリングされます - null:空の文字列としてレンダリングされます。
reel_nameをnullに設定した場合、最初のカスタムフォルダーはREEL_としてレンダリングされます。
通常、値を文字列に制限し、他の値の書式を適切に設定することをお勧めします(例えば、整数は常に先頭のゼロなしで出力されるため、変更が必要となる場合があります)。
一般的には、すべてのクリップに対して有効な値を持つフィールドのみを使用します。フィールドが常に有効な値を持つとは限らない場合は、未設定値または null 値を表す方法を検討しておく必要があります。
バージョンスタッキング
Frame.io はバージョンスタックをサポートしています。これは、UI で同じコンテンツの複数のイテレーションをバンドルする方法です。C2C API を使用すると、デバイスはアセットの新しいイテレーションをアップロードして、以前のバージョンと一緒にバージョンスタックに入れることができます。
バージョンスタックを作成するには、autoversion_id を指定して、アセットが属するバージョンスタックを識別する必要があります。この値には、UUID、ファイル名などの任意の値を指定できます。アセットフォルダ内で意図せず繰り返されない値のみを使用するように注意してください。例えば、統合で同じファイル名が複数回作成される可能性がある場合、autoversion_id **としてファイル名を使用するのはお勧めできません。
次のように autoversion_id を指定します。
新しいアセットをアップロードするたびに、同じ autoversion_id を使用すると、元のアセットを含むスタックに最新バージョンとしてアセットが追加されます。
アセットは、同じフォルダーにアップロードされた場合にのみスタックされるため、バージョンスタッキングを実装する場合は、次の 2 **つの点に注意する必要があります。
- トークン化されたメタデータは、バージョンスタックを作成するために同じ親フォルダーに解決される必要があります。
- 作成日はファイルパスの一部であるため、UTC の午前 0 時以降に作成された新しいバージョンは、元のアップロードの作成日時のオフセットを指定しない限り、正しくスタックされない場合があります。
この 2 つ目のポイントは重要です。最初のアップロードから 48 時間後に、アセットの新しいバージョンが作成されたとします。元のアセットとスタックするには、過去 48 時間のオフセットを指定する必要があります。つまり 172,800 秒です。
最新のアセットが **2022_04_03 にアップロードされている場合は、2022_04_01 にアップロードされ、正しいアセットとスタックされます。
次のステップ
これは、最適な C2C 統合を作成するための最後のガイドです。自分の背中をたたいて褒めてあげましょう。ご褒美をあげるのもいいですね。あとは、インテグレーターのチェックリストを確認するだけです。このチェックリストには、堅牢な統合を作成するために必要なすべての要約が記載されています。
まだの場合は、当社チームにお問い合わせください。そのうえで、次のガイドに進んでください。ご連絡をお待ちしております。