Nla Operators


Push action down onto the top of the NLA stack as a new strip

Parameters:channel_index (int in [-1, inf], (optional)) – Channel Index, Index of NLA action channel to perform pushdown operation on

Synchronize the length of the referenced Action with the length used in the strip

Parameters:active (boolean, (optional)) – Active Strip Only, Only sync the active length for the active strip

Unlink this action from the active action slot (and/or exit Tweak Mode)

Parameters:force_delete (boolean, (optional)) – Force Delete, Clear Fake User and remove copy stashed in this datablock’s NLA stack

Add an Action-Clip strip (i.e. an NLA Strip referencing an Action) to the active track

Parameters:action (enum in [], (optional)) – Action

Apply scaling of selected strips to their referenced Actions

bpy.ops.nla.bake(frame_start=1, frame_end=250, step=1, only_selected=True, visual_keying=False, clear_constraints=False, clear_parents=False, use_current_action=False, bake_types={'POSE'})

Bake all selected objects loc/scale/rotation animation to an action

  • frame_start (int in [0, 300000], (optional)) – Start Frame, Start frame for baking
  • frame_end (int in [1, 300000], (optional)) – End Frame, End frame for baking
  • step (int in [1, 120], (optional)) – Frame Step, Frame Step
  • only_selected (boolean, (optional)) – Only Selected Bones, Only key selected bones (Pose baking only)
  • visual_keying (boolean, (optional)) – Visual Keying, Keyframe from the final transformations (with constraints applied)
  • clear_constraints (boolean, (optional)) – Clear Constraints, Remove all constraints from keyed object/bones, and do ‘visual’ keying
  • clear_parents (boolean, (optional)) – Clear Parents, Bake animation onto the object then clear parents (objects only)
  • use_current_action (boolean, (optional)) – Overwrite Current Action, Bake animation into current action, instead of creating a new one (useful for baking only part of bones in an armature)
  • bake_types (enum set in {'POSE', 'OBJECT'}, (optional)) –

    Bake Data, Which data’s transformations to bake

    • POSE Pose, Bake bones transformations.
    • OBJECT Object, Bake object transformations.



Handle clicks to select NLA channels

Parameters:extend (boolean, (optional)) – Extend Select

Reset scaling of selected strips

bpy.ops.nla.click_select(wait_to_deselect_others=False, mouse_x=0, mouse_y=0, extend=False, deselect_all=False)

Handle clicks to select NLA Strips

  • wait_to_deselect_others (boolean, (optional)) – Wait to Deselect Others
  • mouse_x (int in [-inf, inf], (optional)) – Mouse X
  • mouse_y (int in [-inf, inf], (optional)) – Mouse Y
  • extend (boolean, (optional)) – Extend Select
  • deselect_all (boolean, (optional)) – Deselect On Nothing, Deselect all when nothing under the cursor

Delete selected strips

bpy.ops.nla.duplicate(linked=False, mode='TRANSLATION')

Duplicate selected NLA-Strips, adding the new strips in new tracks above the originals

  • linked (boolean, (optional)) – Linked, When duplicating strips, assign new copies of the actions they use
bpy.ops.nla.fmodifier_add(type='NULL', only_active=True)

Add F-Modifier to the active/selected NLA-Strips

  • type (enum in ['NULL', 'GENERATOR', 'FNGENERATOR', 'ENVELOPE', 'CYCLES', 'NOISE', 'LIMITS', 'STEPPED'], (optional)) –


    • NULL Invalid.
    • GENERATOR Generator, Generate a curve using a factorized or expanded polynomial.
    • FNGENERATOR Built-In Function, Generate a curve using standard math functions such as sin and cos.
    • ENVELOPE Envelope, Reshape F-Curve values - e.g. change amplitude of movements.
    • CYCLES Cycles, Cyclic extend/repeat keyframe sequence.
    • NOISE Noise, Add pseudo-random noise on top of F-Curves.
    • LIMITS Limits, Restrict maximum and minimum values of F-Curve.
    • STEPPED Stepped Interpolation, Snap values to nearest grid-step - e.g. for a stop-motion look.
  • only_active (boolean, (optional)) – Only Active, Only add a F-Modifier of the specified type to the active strip

Copy the F-Modifier(s) of the active NLA-Strip

bpy.ops.nla.fmodifier_paste(only_active=True, replace=False)

Add copied F-Modifiers to the selected NLA-Strips

  • only_active (boolean, (optional)) – Only Active, Only paste F-Modifiers on active strip
  • replace (boolean, (optional)) – Replace Existing, Replace existing F-Modifiers, instead of just appending to the end of the existing list

Ensure that each action is only used once in the set of strips selected


Add new meta-strips incorporating the selected strips


Separate out the strips held by the selected meta-strips


Move selected strips down a track if there’s room


Move selected strips up a track if there’s room


Mute or un-mute selected strips


Automatically set Preview Range based on range of keyframes


Select or deselect all NLA-Strips

Parameters:action (enum in ['TOGGLE', 'SELECT', 'DESELECT', 'INVERT'], (optional)) –

Action, Selection action to execute

  • TOGGLE Toggle, Toggle selection for all elements.
  • SELECT Select, Select all elements.
  • DESELECT Deselect, Deselect all elements.
  • INVERT Invert, Invert selection of all elements.
bpy.ops.nla.select_box(axis_range=False, tweak=False, xmin=0, xmax=0, ymin=0, ymax=0, wait_for_input=True, mode='SET')

Use box selection to grab NLA-Strips

  • axis_range (boolean, (optional)) – Axis Range
  • tweak (boolean, (optional)) – Tweak, Operator has been activated using a tweak event
  • xmin (int in [-inf, inf], (optional)) – X Min
  • xmax (int in [-inf, inf], (optional)) – X Max
  • ymin (int in [-inf, inf], (optional)) – Y Min
  • ymax (int in [-inf, inf], (optional)) – Y Max
  • wait_for_input (boolean, (optional)) – Wait for Input
  • mode (enum in ['SET', 'ADD', 'SUB'], (optional)) –


    • SET Set, Set a new selection.
    • ADD Extend, Extend existing selection.
    • SUB Subtract, Subtract existing selection.
bpy.ops.nla.select_leftright(mode='CHECK', extend=False)

Select strips to the left or the right of the current frame

  • mode (enum in ['CHECK', 'LEFT', 'RIGHT'], (optional)) – Mode
  • extend (boolean, (optional)) – Extend Select

Make selected objects appear in NLA Editor by adding Animation Data


Move start of strips to specified time

Parameters:type (enum in ['CFRA', 'NEAREST_FRAME', 'NEAREST_SECOND', 'NEAREST_MARKER'], (optional)) – Type

Add a strip for controlling when speaker plays its sound clip


Split selected strips at their midpoints


Swap order of selected strips within tracks


Add NLA-Tracks above/after the selected tracks

Parameters:above_selected (boolean, (optional)) – Above Selected, Add a new NLA Track above every existing selected one

Delete selected NLA-Tracks and the strips they contain


Add a transition strip between two adjacent selected strips


Enter tweaking mode for the action referenced by the active strip to edit its keyframes

Parameters:isolate_action (boolean, (optional)) – Isolate Action, Enable ‘solo’ on the NLA Track containing the active strip, to edit it without seeing the effects of the NLA stack

Exit tweaking mode for the action referenced by the active strip

Parameters:isolate_action (boolean, (optional)) – Isolate Action, Disable ‘solo’ on any of the NLA Tracks after exiting tweak mode to get things back to normal

Reset viewable area to show full strips range


Reset viewable area to show range around current frame


Reset viewable area to show selected strips range