PPROLint

Fields

Every value a rule can read, by scope.

Fields are the only data a rule can see. A condition, a message placeholder or a data entry names a field by its path, and the path is checked when the rule loads: a field that its scope does not expose is an error.

Times are integer ticks (254,016,000,000 per second) unless the name says frames, seconds or timecode. A type ending in ? means the value can be unknown: the timeline did not have it (no source media, the scale of an audio clip, an in point that is not set). See Unknown values.

Besides these, every rule reads its own options as options.<name> (see Options).

sequence

Available in every scope.

FieldTypeDescription
sequence.idstringSequence GUID.
sequence.namestringSequence name.
sequence.fpsnumberFrame rate (frames per second).
sequence.frameDurationnumberTicks per frame.
sequence.frameWidthnumberFrame width in pixels.
sequence.frameHeightnumberFrame height in pixels.
sequence.endnumberEnd of the last clip (ticks).
sequence.endTimecodestringEnd of the last clip as timecode.
sequence.durationSecondsnumberEnd of the last clip in seconds.
sequence.inPointnumber?Sequence in point (ticks), unknown when not set.
sequence.outPointnumber?Sequence out point (ticks), unknown when not set.
sequence.inPointTimecodestring?Sequence in point as timecode, unknown when not set.
sequence.outPointTimecodestring?Sequence out point as timecode, unknown when not set.
sequence.inPointFrameOffsetnumber?Ticks between the in point and the frame boundary before it (0 = on a frame); unknown when not set.
sequence.outPointFrameOffsetnumber?Ticks between the out point and the frame boundary before it (0 = on a frame); unknown when not set.
sequence.videoTrackCountnumberNumber of video tracks.
sequence.audioTrackCountnumberNumber of audio tracks.
sequence.clipCountnumberNumber of clips on all tracks.
sequence.markerCountnumberNumber of sequence markers.

track

Available in the track, clip, effect scopes.

FieldTypeDescription
track.refstringTrack as shown in Premiere: "V1", "A2".
track.typestring"video" or "audio".
track.indexnumberZero-based index among tracks of its type.
track.namestringTrack name.
track.mutedbooleanTrack is muted.
track.clipCountnumberNumber of clips on the track.
track.audibleClipCountnumberClips that would play: enabled, and for audio not silenced (-∞ dB).
track.firstClipStartnumber?Start of the first clip (ticks); unknown on an empty track.
track.beyondLastUsedbooleanNo track of the same type with a higher index carries clips.

clip

Available in the clip, effect scopes.

FieldTypeDescription
clip.idstringClip id: "V1:<start>".
clip.namestringClip name.
clip.trackstringClip track as shown in Premiere: "V1", "A2".
clip.trackTypestring"video" or "audio".
clip.trackIndexnumberZero-based index of the clip's track.
clip.startnumberStart in sequence time (ticks).
clip.endnumberEnd in sequence time (ticks).
clip.startFrameOffsetnumberTicks between the start and the frame boundary before it (0 = on a frame).
clip.endFrameOffsetnumberTicks between the end and the frame boundary before it (0 = on a frame).
clip.startTimecodestringStart as timecode.
clip.endTimecodestringEnd as timecode.
clip.durationnumberDuration in ticks (end - start).
clip.durationFramesnumberDuration in whole frames of the sequence.
clip.durationSecondsnumberDuration in seconds.
clip.inPointnumberSource in point (ticks).
clip.outPointnumberSource out point (ticks).
clip.speednumberPlayback speed, 1 = 100 %.
clip.reversedbooleanPlays in reverse.
clip.disabledbooleanClip is disabled.
clip.effectCountnumberNumber of user-applied effects.
clip.source.projectItemIdstring?Project item id; unknown without a source.
clip.source.namestring?Project item name; unknown without a source.
clip.source.kindstring?"media", "sequence", "multicam" or "merged"; unknown without a source.
clip.source.mediaPathstring?Media file path; unknown when empty or without a source.
clip.source.offlineboolean?Source media is offline; unknown without a source.
clip.source.extensionstring?Lower-case extension of the media path without the dot ("mov"); unknown without a path or an extension.
clip.adjustmentLayerbooleanClip is an adjustment layer (false for audio clips).
clip.scalenumber?Motion scale in percent at clip start (video, uniform scale only).
clip.scaleAnimatedboolean?Scale is keyframed (video).
clip.rotationnumber?Rotation in degrees at clip start (video).
clip.rotationAnimatedboolean?Rotation is keyframed (video).
clip.opacitynumber?Opacity in percent at clip start (video).
clip.opacityAnimatedboolean?Opacity is keyframed (video).
clip.volumenumber?Volume setting in dB at clip start (audio).
clip.volumeAnimatedboolean?Volume is keyframed (audio).

effect

Available in the effect scope.

FieldTypeDescription
effect.indexnumberPosition in the clip's effect chain, from 0.
effect.matchNamestringPremiere match name, stable across languages: "AE.ADBE Lumetri".
effect.displayNamestringName shown in Premiere, in its UI language.
effect.countnumberEffects with this match name on the clip.
effect.firstOfKindbooleanNo earlier effect of the clip has this match name.

marker

Available in the marker scope.

FieldTypeDescription
marker.idstringMarker id.
marker.namestringMarker name.
marker.namedbooleanThe name is not blank.
marker.typestring"Comment", "Chapter", "WebLink", …
marker.commentsstringMarker comment.
marker.colorIndexnumberColor index.
marker.startnumberStart in sequence time (ticks).
marker.startTimecodestringStart as timecode.
marker.durationnumberDuration in ticks (0 for a point marker).

On this page