You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This reference documents the key ObjC classes, methods, and patterns inside Final Cut Pro
that are accessible through SpliceKit. You do NOT need the decompiled source to use this --
the bridge discovers everything at runtime via the ObjC runtime.
Use explore_class("ClassName") or search_methods("ClassName", "keyword") to discover
more methods beyond what's documented here.
Class Hierarchy & Navigation
NSApplication.sharedApplication
└─ delegate (PEAppController)
├─ activeEditorContainer (PEEditorContainerModule)
│ ├─ timelineModule (FFAnchoredTimelineModule) ← main editing interface
│ │ └─ sequence (FFAnchoredSequence) ← timeline data model
│ │ └─ primaryObject (FFAnchoredCollection) ← the spine
│ │ └─ containedItems (NSArray of clips/transitions)
│ └─ editorModule (FFEditorModule)
└─ _targetLibrary (FFLibrary)
├─ events (NSArray of FFEventRecord)
├─ _deepLoadedSequences (NSSet of FFAnchoredSequence)
└─ libraryDocument (PEDocument / FFLibraryDocument)
└─ undoManager (FFUndoManager)
FFAnchoredTimelineModule (1,435 methods)
The main editing interface. Most timeline_action() calls route here.
Blade / Split
Method
Args
Description
blade:
sender
Split clip at playhead
bladeAll:
sender
Split all clips at playhead
Markers
Method
Args
Description
addMarker:
sender
Add standard marker at playhead
addAndEditMarker:
sender
Add marker and open editor
addTodoMarker:
sender
Add todo/incomplete marker
addChapterMarker:
sender
Add chapter marker
deleteMarker:
sender
Delete marker at playhead
nextMarker:
sender
Navigate to next marker
previousMarker:
sender
Navigate to previous marker
Transitions
Method
Args
Description
addTransition:
sender
Add default transition at edit point
Selection
Method
Args
Description
selectAll:
sender
Select all items
deselectAll:
sender
Clear selection
selectClipAtPlayhead:
sender
Select clip under playhead
selectToPlayhead:
sender
Extend selection to playhead
selectedItems:includeItemBeforePlayheadIfLast:
BOOL, BOOL
Get selected items array
Navigation
Method
Args
Description
nextEdit:
sender
Move to next edit point
previousEdit:
sender
Move to previous edit point
playheadTime
(none)
Get current playhead position (CMTime)
setPlayheadTime:
CMTime
Set playhead position
committedPlayheadTime
(none)
Get committed playhead time
currentSequenceTime
(none)
Get sequence-relative time
Color Correction
Method
Args
Description
addColorBoardEffect:
sender
Add Color Board to selected clip
addColorWheelsEffect:
sender
Add Color Wheels
addColorCurvesEffect:
sender
Add Color Curves
addColorAdjustmentEffect:
sender
Add Color Adjustments
addHueSaturationEffect:
sender
Add Hue/Saturation Curves
addEnhanceLightAndColorEffect:
sender
Add auto enhance
Effects
Method
Args
Description
addEffectToStacks:effectID:actionName:
items, NSString, NSString
Add effect by ID
addDefaultVideoEffect:
sender
Add default video effect
addDefaultAudioEffect:
sender
Add default audio effect
Volume
Method
Args
Description
adjustVolumeRelative:
sender
Increase volume
adjustVolumeAbsolute:
sender
Decrease volume
Titles
Method
Args
Description
addBasicTitle:
sender
Add basic title
addBasicLowerThird:
sender
Add lower third title
Speed / Retiming
Method
Args
Description
retimeNormal:
sender
Reset to normal speed
retimeFastx2:
sender
2x fast
retimeFastx4:
sender
4x fast
retimeFastx8:
sender
8x fast
retimeFastx20:
sender
20x fast
retimeSlowHalf:
sender
50% slow
retimeSlowQuarter:
sender
25% slow
retimeSlowTenth:
sender
10% slow
retimeReverse:
sender
Reverse clip
retimeHoldFromSelection:
sender
Hold frame from selection
retimeBladeSpeed:
sender
Blade speed segment
freezeFrame:
sender
Create freeze frame
Keyframes
Method
Args
Description
addKeyframe:
sender
Add keyframe at playhead
deleteKeyframes:
sender
Delete selected keyframes
nextKeyframe:
sender
Navigate to next keyframe
previousKeyframe:
sender
Navigate to previous keyframe
Clip Operations
Method
Args
Description
delete:
sender
Delete selected clips
cut:
sender
Cut to clipboard
copy:
sender
Copy to clipboard
paste:
sender
Paste from clipboard
trimToPlayhead:
sender
Trim clip edge to playhead
soloSelectedClips:
sender
Solo selected clips
disableSelectedClips:
sender
Disable selected clips
createCompoundClip:
sender
Create compound from selection
autoReframe:
sender
Auto-reframe selected clip
Export
Method
Args
Description
exportXML:
sender
Export FCPXML
shareSelection:
sender
Open share dialog
Sequence Access
Method
Args
Description
sequence
(none)
Get the FFAnchoredSequence
sequenceFrameDuration
(none)
Get frame duration (CMTime)
FFAnchoredSequence (1,074 methods)
Timeline data model. Contains all clips, transitions, effects.
Content Access
Method
Args
Description
primaryObject
(none)
Get the spine (FFAnchoredCollection)
containedItems
(none)
Get items (call on primaryObject, not sequence)
allContainedItems
(none)
Get all items recursively
hasContainedItems
(none)
Check if has content
displayName
(none)
Get sequence/project name
duration
(none)
Get total duration (CMTime)
Editing Transactions (required for undo/redo)
Method
Args
Description
actionBeginEditing
(none)
Start edit transaction
actionEnd:save:error:
name, BOOL, NSError**
End transaction
performActionWithName:error:usingBlock:
NSString, NSError**, block
Transaction wrapper
hasOpenTimelineTransaction
(none)
Check if transaction open
Properties
Property
Type
Description
renderFormat
id
Render format settings
audioChannelCount
int
Number of audio channels
project
id
Parent project reference
actionBeginHooks
id
Pre-action hooks
actionEndHooks
id
Post-action hooks
FFLibrary (203 methods)
Container for all media, events, and projects.
Access
Method
Args
Description
events
(none)
Get all FFEventRecord objects
_deepLoadedSequences
(none)
Get all loaded sequences (NSSet)
displayName
(none)
Library name
libraryDocument
(none)
Get PEDocument
event
(none)
Get default event
eventForName:
NSString
Find event by name
eventForIdentifier:
id
Find event by ID
Modification
Method
Args
Description
insertNewSequence:name:error:
id, NSString, NSError**
Create new project
insertNewEvent:name:error:
id, NSString, NSError**
Create new event
Roles
Method
Args
Description
mainRoles
(none)
Get all roles
findRoleWithUID:
NSString
Find role by ID
FFLibraryDocument / PEDocument (231 methods)
Library file management and undo/redo.
Class Methods
Method
Args
Description
+copyActiveLibraries
(none)
Get all open libraries (NSArray)
+isAnyLibraryUpdating
(none)
Check if any library updating
+openDocumentWithoutDisplay:error:
NSURL, NSError**
Open library file
Instance Methods
Method
Args
Description
undoManager
(none)
Get FFUndoManager for undo/redo
library
(none)
Get FFLibrary instance
fileURL
(none)
Get library file path
close
(none)
Close library
FFEditActionMgr (42 methods)
Command pattern for insert/append/overwrite edits.