MarkerValue object

記述

new MarkerValue(comment, chapter, url, frameTarget, cuePointName, params)

概要

MarkerValue objectはレイヤーマーカーを表します。レイヤーマーカーはコメントおよびオプションでチャプターマーカー、ウェブリンク、Flashビデオのキューポイントをレイヤーの特定の位置に関連付けます。

コンストラクタを用いて作成します。commentを除くすべての引数がオプションになります。

すべての引数はparamsを除いて、返されるMarkerValue objectの対応するアトリビュートを設定するための文字列です。ここれらの引数はキーの値とペアになった配列で、getParameters()およびsetParameters() methodsを用いてアクセスすることができます。

レイヤーのマーカーを関連付けるには、そのレイヤーのMarker AE propertyでMarkerValue objectを設定します。

layerObject.property("Marker").setValueAtTime(time, markerValueObject);

コンポジションマーカーへのアクセス(CC2017(14.0)以降で対応)

コンポジションマーカーの作成・編集がcomp.markerPropertyアトリビュートによって可能になりました。コンポジションマーカーでのスクリプティングはレイヤーマーカーと同じ機能を有します。

以下のサンプルコードでは、プロジェクトとコンポジションを作成し、2つの異なるプロパティをもつマーカーを作成します。

// comp.markerProperty allows you add markers to a comp.

// It has the same functionality as layer.property("Marker")

{

var currentProj = app.newProject();

var comp = currentProj.items.addComp("mycomp", 1920, 1080, 1.0, 5, 29.97);

var solidLayer = comp.layers.addSolid([1, 1, 1], "mylayer", 1920, 1080, 1.0);

var compMarker = new MarkerValue("This is a comp marker!");

compMarker.duration = 1; compMarker.url = "http://www.adobe.com/aftereffects";

var compMarker2 = new MarkerValue("Another comp marker!");

compMarker2.duration = 1;

comp.markerProperty.setValueAtTime(1, compMarker)

comp.markerProperty.setValueAtTime(3, compMarker2)

}

CC2015.3(13.7)以前のAfter Effectsではコンポジションマーカーへのアクセスは提供されていません。コンポジションマーカーのあるコンポジションをプリコンポすることで、プリコンポ先のコンポジション内のレイヤーマーカーに変換することが可能なのでそれを用いてアトリビュートにアクセスすることは可能ですが、コンポジションマーカーを編集することはできません。

参考

Adobe After Effects / レイヤーマーカーとコンポジションマーカー(外部サイト)

サンプル

"Fade Up"というマーカーを2秒目に設定

var myMarker = new MarkerValue("Fade Up");

myLayer.property("Marker").setValueAtTime(2, myMarker);

特定のマーカーからコメントを取得する。

var commentOfFirstMarker = app.project.item(1).layer(1).property("Marker").keyValue(1).comment;

var commentOfMarkerAtTime4 =

app.project.item(1).layer(1).property("Marker").valueAtTime(4.0,true).comment

var markerProperty = app.project.item(1).layer(1).property("Marker");

var markerValueAtTimeClosestToTime4 = markerProperty.keyValue(markerProperty.nearestKeyIndex(4.0));

var commentOfMarkerClosestToTime4 = markerValueAtTimeClosestToTime4.comment;

ノート

After Effects GUIのレイヤーマーカーの設定画面