Layer Marker Batch Editor



Version: 1.01 Sign up to be notified by email when a new version of this script is posted
This script will allow you to batch edit all the layer marker attributes on all the selected layers. You can also delete and time-shift markers. The script works within the comp work area so you can use the work area to define which markers you want to work with.
The script has some special commands that can be inserted into any text field:
[savecomment] – will insert any text that was already existing in that text field
[layername] – will insert the layer name
[layerindex] – will insert the layer index
[compname] – will insert the comp name
[projectname] – will insert the project name
[markernumber] – will insert the marker number
[date:E MMM dd, yyyy hh:mm a] – will insert the current date and time, this field uses the JavascriptToolbox.com date function which can be further customized. Please refer to their documentation for further reference: Date Formatting
The script also supports an unlimited number of Flash Cue Parameter pairs. To add more than the default 3 parameters you can either use the ‘Keep existing parameters’ feature and run the script several times or double click on the .jsx file and change the ‘prefsObject.numberOfFlashCueParams’ default setting at the top of the script and the UI will change to include the number of parameter pairs indicated.
Version History
- 1.01 Fixed Untitled Project bug – May 2010
- 1.0 – Initial release – April 2010
- Layer Marker Batch Editor UI
The definitive collection of scripts and plugins for Adobe After Effects










Hi great thing your batch editor.
I would like to make a feature request.
Shifting markers to another “Framerate”.
Just today i had this problem and already made a script that does that.
Maybee it is part of a coming version of your editor. Would make me proud
/*** a script for adjusting markers to a "new Framerate"
* say you made markers by thinking it is 25 fps but it is 12 fps
* it calcs the new position of the markers and adds them to a another layer
*
* works like this:
* select first your source layer with all your markers
* then select your target layer
* run the script
* it copys only the comment ot the new layer
*
* written by fabiantheblind
* http://www.the-moron.net
*/
function adjustMarkers(){
var sourceLayer = app.project.activeItem.selectedLayers[0];
var targetLayer = app.project.activeItem.selectedLayers[1];
var sourceFrameRate = 25;
var targetFrameRate = 12;
app.beginUndoGroup("adjustMarkersToNewFramerate");
{
//markerIndex is the index of the marker to get the frame for
//markerTime is the time (in seconds) of the marker
//nullLayerRef is the null layer that the marker lives on
for(var markerIndex = 1; markerIndex <= sourceLayer.property("marker").numKeys; markerIndex++){
//Get the time (in seconds) of the marker.
var markerTime = sourceLayer.marker.keyTime(markerIndex);
//Value to add to the markerTime
var timeFudge = 1/1000;
//Convert the markerTime value to frames from seconds
var markerFrameOld = timeToCurrentFormat(markerTime + timeFudge, sourceLayer.containingComp.frameRate, true);
var markerFrameNew = currentFormatToTime((markerFrameOld/sourceFrameRate)*targetFrameRate , targetFrameRate );
var commentOfMarker = sourceLayer.property("Marker").keyValue(markerIndex).comment;
var commentBuffer = new MarkerValue(commentOfMarker);
targetLayer.property("Marker").setValueAtTime(markerFrameNew, commentBuffer);
}
}
app.endUndoGroup();
}
adjustMarkers();