Polotno Docs

VideoElement

Documentation for the VideoElement schema definition in the Polotno Design JSON Schema.

VideoElement

Type Information

Base Type: object

Properties

PropertyTypeDescription
alwaysOnTopbooleanWhether element stays on top of others.
animationsArray<Animation>Animation configurations.
blurEnabledbooleanWhether blur effect is enabled.
blurRadiusnumberBlur radius in pixels.
borderColorstringBorder color.
borderSizenumberBorder width in pixels.
brightnessnumberBrightness level (-1 to 1).
brightnessEnabledbooleanWhether brightness effect is enabled.
clipSrcstringURL or data URI for clipping mask.
contentEditablebooleanWhether element content can be edited.
cornerRadiusnumberCorner radius in pixels.
cropHeightnumberCrop height as percentage (0-1).
cropWidthnumberCrop width as percentage (0-1).
cropXnumberCrop X offset as percentage (0-1).
cropYnumberCrop Y offset as percentage (0-1).
customunknownCustom data attached to the element.
draggablebooleanWhether element can be dragged.
durationnumberVideo duration in milliseconds.
endTimenumberEnd time offset in seconds (0-1).
filtersobjectApplied image filters.
flipXbooleanWhether image is flipped horizontally.
flipYbooleanWhether image is flipped vertically.
grayscaleEnabledbooleanWhether grayscale effect is enabled.
heightnumberHeight in pixels.
idstringUnique identifier for the element.
keepRatiobooleanWhether to maintain aspect ratio when resizing.
namestringDisplay name for the element.
opacitynumberOpacity level (0-1).
resizablebooleanWhether element can be resized.
rotationnumberRotation angle in degrees.
selectablebooleanWhether element can be selected.
sepiaEnabledbooleanWhether sepia effect is enabled.
shadowBlurnumberShadow blur radius in pixels.
shadowColorstringShadow color.
shadowEnabledbooleanWhether shadow is enabled.
shadowOffsetXnumberShadow horizontal offset in pixels.
shadowOffsetYnumberShadow vertical offset in pixels.
shadowOpacitynumberShadow opacity (0-1).
showInExportbooleanWhether element appears in exports.
srcstringURL or data URI of the image file.
startTimenumberStart time offset in seconds (0-1).
stretchEnabledbooleanWhether stretch mode is enabled.
styleEditablebooleanWhether element style can be edited.
type"video"Element type identifier.
visiblebooleanWhether element is visible.
volumenumberVolume level (0-1).
widthnumberWidth in pixels.
xnumberX position in pixels.
ynumberY position in pixels.

JSON Schema

{
  "additionalProperties": false,
  "properties": {
    "alwaysOnTop": {
      "description": "Whether element stays on top of others.",
      "type": "boolean"
    },
    "animations": {
      "description": "Animation configurations.",
      "items": {
        "$ref": "#/definitions/Animation"
      },
      "type": "array"
    },
    "blurEnabled": {
      "description": "Whether blur effect is enabled.",
      "type": "boolean"
    },
    "blurRadius": {
      "description": "Blur radius in pixels.",
      "type": "number"
    },
    "borderColor": {
      "description": "Border color.",
      "type": "string"
    },
    "borderSize": {
      "description": "Border width in pixels.",
      "type": "number"
    },
    "brightness": {
      "description": "Brightness level (-1 to 1).",
      "type": "number"
    },
    "brightnessEnabled": {
      "description": "Whether brightness effect is enabled.",
      "type": "boolean"
    },
    "clipSrc": {
      "description": "URL or data URI for clipping mask.",
      "type": "string"
    },
    "contentEditable": {
      "description": "Whether element content can be edited.",
      "type": "boolean"
    },
    "cornerRadius": {
      "description": "Corner radius in pixels.",
      "type": "number"
    },
    "cropHeight": {
      "description": "Crop height as percentage (0-1).",
      "type": "number"
    },
    "cropWidth": {
      "description": "Crop width as percentage (0-1).",
      "type": "number"
    },
    "cropX": {
      "description": "Crop X offset as percentage (0-1).",
      "type": "number"
    },
    "cropY": {
      "description": "Crop Y offset as percentage (0-1).",
      "type": "number"
    },
    "custom": {
      "description": "Custom data attached to the element."
    },
    "draggable": {
      "description": "Whether element can be dragged.",
      "type": "boolean"
    },
    "duration": {
      "description": "Video duration in milliseconds.",
      "type": "number"
    },
    "endTime": {
      "description": "End time offset in seconds (0-1).",
      "type": "number"
    },
    "filters": {
      "additionalProperties": {
        "additionalProperties": false,
        "properties": {
          "intensity": {
            "description": "Filter intensity value (-1 to 1).",
            "type": "number"
          }
        },
        "required": [
          "intensity"
        ],
        "type": "object"
      },
      "description": "Applied image filters.",
      "type": "object"
    },
    "flipX": {
      "description": "Whether image is flipped horizontally.",
      "type": "boolean"
    },
    "flipY": {
      "description": "Whether image is flipped vertically.",
      "type": "boolean"
    },
    "grayscaleEnabled": {
      "description": "Whether grayscale effect is enabled.",
      "type": "boolean"
    },
    "height": {
      "description": "Height in pixels.",
      "type": "number"
    },
    "id": {
      "description": "Unique identifier for the element.",
      "type": "string"
    },
    "keepRatio": {
      "description": "Whether to maintain aspect ratio when resizing.",
      "type": "boolean"
    },
    "name": {
      "description": "Display name for the element.",
      "type": "string"
    },
    "opacity": {
      "description": "Opacity level (0-1).",
      "type": "number"
    },
    "resizable": {
      "description": "Whether element can be resized.",
      "type": "boolean"
    },
    "rotation": {
      "description": "Rotation angle in degrees.",
      "type": "number"
    },
    "selectable": {
      "description": "Whether element can be selected.",
      "type": "boolean"
    },
    "sepiaEnabled": {
      "description": "Whether sepia effect is enabled.",
      "type": "boolean"
    },
    "shadowBlur": {
      "description": "Shadow blur radius in pixels.",
      "type": "number"
    },
    "shadowColor": {
      "description": "Shadow color.",
      "type": "string"
    },
    "shadowEnabled": {
      "description": "Whether shadow is enabled.",
      "type": "boolean"
    },
    "shadowOffsetX": {
      "description": "Shadow horizontal offset in pixels.",
      "type": "number"
    },
    "shadowOffsetY": {
      "description": "Shadow vertical offset in pixels.",
      "type": "number"
    },
    "shadowOpacity": {
      "description": "Shadow opacity (0-1).",
      "type": "number"
    },
    "showInExport": {
      "description": "Whether element appears in exports.",
      "type": "boolean"
    },
    "src": {
      "description": "URL or data URI of the image file.",
      "type": "string"
    },
    "startTime": {
      "description": "Start time offset in seconds (0-1).",
      "type": "number"
    },
    "stretchEnabled": {
      "description": "Whether stretch mode is enabled.",
      "type": "boolean"
    },
    "styleEditable": {
      "description": "Whether element style can be edited.",
      "type": "boolean"
    },
    "type": {
      "const": "video",
      "description": "Element type identifier.",
      "type": "string"
    },
    "visible": {
      "description": "Whether element is visible.",
      "type": "boolean"
    },
    "volume": {
      "description": "Volume level (0-1).",
      "type": "number"
    },
    "width": {
      "description": "Width in pixels.",
      "type": "number"
    },
    "x": {
      "description": "X position in pixels.",
      "type": "number"
    },
    "y": {
      "description": "Y position in pixels.",
      "type": "number"
    }
  },
  "required": [
    "alwaysOnTop",
    "animations",
    "blurEnabled",
    "blurRadius",
    "borderColor",
    "borderSize",
    "brightness",
    "brightnessEnabled",
    "clipSrc",
    "contentEditable",
    "cornerRadius",
    "cropHeight",
    "cropWidth",
    "cropX",
    "cropY",
    "draggable",
    "duration",
    "endTime",
    "filters",
    "flipX",
    "flipY",
    "grayscaleEnabled",
    "height",
    "id",
    "keepRatio",
    "opacity",
    "resizable",
    "rotation",
    "selectable",
    "sepiaEnabled",
    "shadowBlur",
    "shadowColor",
    "shadowEnabled",
    "shadowOffsetX",
    "shadowOffsetY",
    "shadowOpacity",
    "showInExport",
    "src",
    "startTime",
    "stretchEnabled",
    "styleEditable",
    "type",
    "visible",
    "volume",
    "width",
    "x",
    "y"
  ],
  "type": "object"
}