Editing Compositions¶
The Composition View¶
The Composition panel contains the Timeline, Track Editor, and Playback Controls. In the Default Layout, this panel appears at the bottom of the HoloEdit UI, below the Viewport and next to the Project View.

The Composition View Allows the user to interactively view and edit the Composition in the Timeline, and create Stages and Intervals for processing.
The Composition View is made up of four major pieces
The Track View, on the left
The Composition Toolbar, the thin strip directly above the Track View
The Timeline
The Timeline And Playback Controls, along the bottom of the Timeline
The Track View¶
Track Controls¶
the Track Controls are located in the top left of the Composition panel, on the same row as the time display.
Add Track: Represented with a “Rows +” icon, the Add Track button creates a new empty Track at the bottom of the Composition
Delete: Represented with a “Trashcan” icon, the Delete button deletes the currently selected Tracks, Stages, or intervals
Stages¶
Processing and editing work in HoloEdit is done through Stages.
Stages are individual processes that add or manipulate the data streams contained in a Track. Each Stage represents a kind of process, and can contain one or more intervals specifying frame ranges and custom settings for processing. Each Stage corresponds to a row on the Timeline where intervals can be created for that Stage.
Stages can be clicked on and selected to display their details and settings in the Inspector panel.
The specific settings available and their effects depend on the Stage. See Stage Types for more details.
For more information on editing settings in the Inspector, see Inspector - Settings.
You can use the Interval Settings to configure the options provided by the Stage independently per interval.
When one or more Tracks are visible, a small dot appears to the left of Stages with samples currently being displayed in the viewport.
Stage Controls¶
The Stage Controls for each Stage can be accessed by clicking on the three dots to the right of a Stage name, or by right clicking on the Stage name.
Execute all Intervals: All intervals ready for processing will be executed for processing. See Processing & Jobs for more details
Propagate Intervals To Next Stage: Create new Intervals on the subsequent Stage matching each Interval present in the Stage. Does nothing if no Stage exists below the specified Stage. Existing Intervals will be overwritten if they overlap with the new Intervals
Copy Settings: Copies all edited settings on the current Stage.
Paste Settings: Pastes the last copied Stage settings to this Stage.
Clear Stage Intervals: Removes every Interval from the Stage. As with Interval removal elsewhere in HoloEdit, underlying data will be preserved
Clear Stage Data: Removes all data fetched from Jobs in the Stage
Delete: Delete the Stage and its contents.
Creating And Arranging Stages¶
To create a Stage for any Interval, press the “Add Stage” button at the bottom of that Track’s Stage list, then choose a Stage type from the drop down menu.
Stages can be re-arranged by clicking and dragging on the Stage name, and releasing the Stage at any point within its parent Track. Rearranging Stages that have been processed can cause Intervals to be labeled as Dirty (see Composition - Intervals for more information.)
Stage Selections¶
Multiple Stages can be selected at once by shift or ctrl clicking on multiple Stages. Each selected Stage will be highlighted in the Track View UI.
When multiple Stages are selected, the most recently selected two Stages will be available for Comparison View, and the most recently selected Stage will be displayed in the Inspector. Additionally, the “Delete” button (Trash Can Icon) at the top of the Track View will delete all selected Stages and intervals currently selected.
Visibility¶
The “Eye” icon to the left of a Track or Stage can be clicked to show or hide that Track/Stage.
During export, only visible Tracks will contribute to the export.
Lock¶
The Padlock Icons to the left of the Eye Icons can be clicked to toggle Locking a Stage or Track. When an item in the Composition is Locked, its Intervals will be greyed out in the Track Editor, and cannot be accidentally resized, moved, or deleted. Additionally, most of the Stage Controls are unavailable via right click or via the three dots icon to the right of the Stage name. Locked Stages and Intervals will be placed in read-only mode.
Locking may be applied at either the Track or Stage level. When a Track is locked, all of the Stages contained within are also locked, signified by greyed-out closed padlock icons. Unlocking the Track will also unlock the corresponding Stages if they inherited their lock status from the Track. Stages that were locked individually will be signified with the lit up closed padlock icon and will remain locked regardless of the Track state.
The Composition Toolbar¶
The Composition Toolbar is the thin strip above the Track Editor, directly to the left of the Time Ruler. The Composition Toolbar contains tools for editing the Composition:
Current Time display¶
The Current Time Display shows a numerical representation of the current time represented by the playhead. Clicking on the “s / f “ text to the right of the time toggles the display between Frame and Timecode formats. Left clicking on the current time allows you type in a specific value to update the playhead.
The Timeline¶
The Timeline is made up of three parts
The Time Ruler, the topmost strip displaying the timing of your Composition for navigation
The Interval Editor, the large area directly below the Time Ruler
The Timeline Controls, a bar stretching along the bottom of the Timeline
The Interval Editor is the primary workspace for assembling and editing Tracks. Each entry in the Interval Editor is aligned to a Stage in the Track View, to the left. The Interval Editor is where you create, arrange, and inspect Intervals.
The Playhead¶
The Playhead is the pink line and arrow block positioned on the Timeline. This represents the current Timeline in HoloEdit.
Navigation¶
You can Zoom in and out on the Time Ruler and Interval Editor with Mousewheel, or by clicking and dragging on the pink “Timeline Zoom” bar at the very top of the Timeline. You can Pan the Timeline by clicking and dragging the Middle Mouse Button anywhere in the Timeline view. Additionally, you can frame the Composition by selecting the Frame Timeline option in the View menu, or pressing the “G” Hotkey. This will zoom and pan the Timeline to frame the entire Composition if no selection is present, or a portion based on the Stage and Interval selection.
Track Time Selections¶
Within the portion of the track corresponding to a stage, You can left click and drag on empty Track space in the Interval Editor to create a “Track time selection, indicated by a block of time highlighted in dark blue. To select multiple intervals, You can click and drag over existing intervals, or shift left click on intervals.
Right Clicking in the Interval Editor will bring up a context sensitive menu.
Right clicking into the Timeline, the options are:
Execute all Intervals: All intervals ready for processing will be executed for processing. See Processing & Jobs for more details
Propagate intervals: Create new Intervals on the subsequent Stage matching each interval present in the Stage. Does nothing if no Stage exists below the specified Stage. Existing intervals will be overwritten if they overlap with the new intervals
Right Clicking on a “Track Time Selection”, the options are:
Add Interval(s): Create interval(s) in selected time & Stage(s)
Clear data: This removes data present in the selection, but not currently contained in an interval (as a product of processing an interval and then resizing or deleting it)
Right clicking on an Intervals selected the options are:
Execute: Execute the selected intervals for processing. See Processing & Jobs for more details
Export: Export only the contents of the selected interval(s). See Export for more details
Delete: Remove the selected Intervals from the Track
Clear Data: Remove generated data and configuration for the selected Intervals
Intervals¶
An interval on the Timeline combines a set of parameters with a frame range that you would like the process to run on.
Certain Processes require specific Intervals to function properly – for example, the SSDR and Texture Reconstruction Stages operate on single segments upstream in the Track, and automatically generate intervals when the Stage is created.
Stages can only be processed where Intervals are present.
Creating an Interval¶
Intervals can be created in several ways:
Via the “add interval(s)” option on the Timeline Right Click menu when a “Track Time Selection” is present
Via the “propagate intervals” option on the Timeline Right Click menu when nothing is selected
Automatically at Stage Creation: Certain Stages, or methods of creating Stages, may automatically produce pre-configured intervals. For example, the Load Asset Stage created by dragging a Clip onto the Track View, or the SSDR intervals created when creating a new SSDR Stage on a Track with Stabilized Data
Automatically when dragging-and-dropping a Clip into the Track Editor
Interval Display¶
Intervals appear as grey boxes on the Timeline. Each interval can display many pieces of information:
Sample Status: The Sample Status is the state of the data present in each frame in an interval. This is conveyed through a few visual indicators
Light and dark highlighting on interval body: Areas which are lighter have data present (loaded or created). Areas which are darker have no data
Yellow Highlight above the Processing Status bar: Indicates that the currently present data is “dirty” and will need to eventually be recreated to reflect the current settings or input data
Interval Range: The frame numbers of the first and last frames of the interval are displayed as a pair of numbers at the center of the interval, such as “0-10”
Processing Status: Once an interval has been Executed, a colored line at the bottom of the interval box appears indicating its status. Each color indicates a specific state:
Orange: Queued for processing
Yellow: Actively processing
Green: Successfully processed
Red: Failed to process
Some intervals will change status all at once, others will be updated one frame at a time. Once a job has finished, you can hide the status lines by Dismissing the job from the Job Viewer in the Tools menu.
Current Frame: A Square Bracket at the top of the interval indicates the position and length of the data currently under the playhead. Appears in light gray if it is currently being rendered in the viewport, dark gray otherwise
Segment Bracket: Light Grey Brackets at the bottom of the interval indicate the length and position of stabilized segments
Keyframe Marker: The Keyframe Marker is a small diamond marker that indicates where on the interval a Keyframe is located, if present. The Keyframe marker can appear one of two ways depending on the interval state
Large, filled diamond: A user-specified keyframe. The diamond can be dragged to adjust the position of the keyframe
Small, hollow diamond: A derived keyframe. This keyframe is determined earlier in the Track, and cannot be edited here
When an interval is selected, it is lightened and shows vertical purple tabs at its edges. The tabs can be dragged to resize the interval (see below).
Adjusting an Interval¶
The position of intervals can be adjusted by selecting them, and then clicking and dragging on the grey body of the interval. The length of intervals can be adjusted by selecting them, and then clicking and dragging on the purple end-tabs. Intervals can be of any size, but must be at least one frame long. Intervals can have gaps between them but are not allowed to overlap with other intervals on the same Stage.
You can also adjust the position and length of intervals numerically using the Stage Inspector.
Special Load Asset Stage Behavior¶
For almost all Stages, moving an interval does not move any data inside it. The exception is Load Asset Stages. When an interval in a Load Asset Stage is moved, the data inside the interval (which is from its associated Clip) is moved with it. Changing the size of a Load Asset interval will include more or less of the Clip, but will not move the data.
Snapping¶
When adjusting an interval, by default the ends will automatically snap to the ends of other intervals on the Timeline, even on other Stages. The items being snapped to are highlighted in white. This can be disabled via the “Snap Interval” button in the Timeline Controls. See Timeline and Playback Controls for more information.
Interval Dirtiness¶
Most Stages operate using the data Streams present above them in the Track as an input. When Stages are re-arranged or intervals are re-run with new settings, their Stage’s output data may change, causing all subsequent intervals to go out of date with respect to the rest of the Track.
Out of date results aren’t deleted, but all intervals with out of date samples will be marked Dirty, with a yellow highlight above the processing status bar. It’s recommended to re-run any dirty intervals immediately.
Loop Selection¶
Playback is constrained by the Loop Selection, the grey bar with purple handles located directly below the Time Ruler and above the Interval Editor. This can be resized by clicking and dragging the pink handles on either side, and moved by clicking and dragging on the body of the selection. Playback will stop and start within these boundaries.
Timeline and Playback Controls¶
The Playback Controls bar contains controls for playback and some Timeline settings.
From Left to Right, the controls are:
Playback Controls¶
Start: Set the playhead to the first frame in the Composition.
Previous Interval: Set the playhead to the closest preceding Interval Start
Previous Frame: Step back one frame
Play Backwards: Play the current Composition in reverse
Play Forwards: Play the current Composition
Next Frame: Step forward one frame
Next Interval: Set the playhead to the next closest Interval Start
End: Set the playhead to the last frame in the Composition.
Snap Settings¶
Snap To Frame: Not optional In 2020.4.1
Snap Interval: Toggles Interval snapping when scaling or moving intervals
Snap To Playhead: Disabled in 2020.4.1
Loop Controls¶
Loop: Toggles looping when Playing within the current Loop Range
Reset Loop Markers: Resets the Loop selection to run from the first frame in the Composition to the end of the Composition
Additionally, you can scrub through the current animation by clicking and dragging the Playhead on the Time Ruler.
Playback is constrained by the Loop Selection, the grey bar with purple handles located directly below the Time Ruler and above the Interval Editor. This can be resized by clicking and dragging the pink handles on either side, and moved by clicking and dragging on the body of the selection. Playback will stop and start within these boundaries.
Track And Composition Results¶
When a Track is rendered in the Viewport or processed for Export, HoloEdit produces the bottom-most data present in any visible Tracks and Stages, called the “Track Result”. This is the product of each Stage that has been processed in a Track. The final product of every visible Track combined is called the “Composition Result”.
Intervals that are in hidden Stages, or have not been executed or successfully completed processing, are excluded from the Track Result.
Most Stages operate on the Result of all stages up to the point the new stage appears in the Track. If the required data for a Stage is not present in the result of the preceding stages Stage is positioned, the new Stage and subsequent Stages will not be able to be executed.
The corresponding frames in the Composition Result will use the bottommost processed frame for each visible Track.
For Example, imagine a Track with three Stages
The first Stage is a Load Asset Stage with a single interval from frames 0 - 200
The next is a Stabilize Stage with intervals from 0-100, 101-150, and 151-200. The first and third intervals are complete, but the second has failed.
The final Stage is a SSDR Stage, with corresponding intervals at 0-100, 101-150, and 151-200. The first and third have been successfully processed, but the second is blocked by the preceding Stage.
The Track Result, in this case, will be frames 0-100 from Stage 3, frames 101-150 from Stage 1, and 151-200 from Stage 3. This Track Result is what is visible in the viewport with the Track selected, and is also what would be output from holoedit when exported.
Note: when an Interval is Blocked by an incomplete interval in a previous Stage, the entire Interval will fail to compute. Ie, in the previous example, if there had been two intervals in the third Stage – 0-100 and 101-200, the entire 101-200 interval would be blocked by the failed 101-150 interval in the second Stage.