# Mask(ID)

base classes — `bpy_struct`, `ID`

class `bpy.types.``Mask`(ID)

  Mask data-block defining mask for compositing

  `active_layer_index`

    Index of active layer in list of all mask’s layers

    Type: | int in [-inf, inf], default 0

  `animation_data`

    Animation data for this data-block

    Type: | `AnimData`, (readonly)

  `frame_end`

    Final frame of the mask (used for sequencer)

    Type: | int in [0, 300000], default 0

  `frame_start`

    First frame of the mask (used for sequencer)

    Type: | int in [0, 300000], default 0

  `layers`

    Collection of layers which defines this mask

    Type: | `MaskLayers` `bpy_prop_collection` of `MaskLayer`, (readonly)

Inherited Properties

`bpy_struct.id_data` `ID.name` `ID.users` `ID.use_fake_user` `ID.tag` | `ID.is_updated` `ID.is_updated_data` `ID.is_library_indirect` `ID.library` `ID.preview`

Inherited Functions

`bpy_struct.as_pointer` `bpy_struct.driver_add` `bpy_struct.driver_remove` `bpy_struct.get` `bpy_struct.is_property_hidden` `bpy_struct.is_property_readonly` `bpy_struct.is_property_set` `bpy_struct.items` `bpy_struct.keyframe_delete` `bpy_struct.keyframe_insert` `bpy_struct.keys` | `bpy_struct.path_from_id` `bpy_struct.path_resolve` `bpy_struct.property_unset` `bpy_struct.type_recast` `bpy_struct.values` `ID.copy` `ID.user_clear` `ID.animation_data_create` `ID.animation_data_clear` `ID.update_tag`

References

`bpy.context.edit_mask` `BlendData.masks` `BlendDataMasks.new` `BlendDataMasks.remove` `CompositorNodeMask.mask` | `MaskSequence.mask` `SequenceModifier.input_mask_id` `Sequences.new_mask` `SpaceClipEditor.mask` `SpaceImageEditor.mask`