Create a custom effect

Sequence's built-in effects — Color, Blend, Halation, and Chroma Key — cover the common jobs. A custom effect is one you bring yourself. You supply the effect and the controls you want to adjust it with, publish it into the project's effect Library, then apply it to any clip. This page walks through bringing in an effect you already have — one a colleague shared, or one you had Snippy generate — without writing any effect code yourself.

A custom effect comes in two kinds, defined by what you see on the clip: one that adjusts the clip's existing picture (a look or grade, like a warm tint), and a generative one that draws its own pattern — a background, wipe, or overlay that looks the same over any clip. The steps below are the same for either kind.

Create a custom effect#

Bring your effect into the project by opening the editor, dropping in your effect, and publishing it:

  1. Select a clip on the timeline and open the Effects tab in the Inspector.
  2. Open the Library sub-tab, next to Applied in the tab bar. The Library lists every custom effect in the project.
  3. Click the + button in the Library header. Sequence opens the effect editor.
  4. Click the name field at the top of the editor — it defaults to "New Effect" — and type a name.
  5. Supply your effect. You provide two things together, bundled as a small block of JSON: your shader code and the controls you want to expose. Do either of the following:
    • Paste it in: Click the JSON button near the top-right to open the Import / Export JSON panel. Paste your bundle into the text area, then click Apply JSON.
    • Ask Snippy to build it: Click the JSON button, then click Copy LLM Prompt. Send that prompt to Snippy, Sequence's in-app AI assistant, along with a description of the effect you want. Copy the JSON Snippy replies with, paste it into the same text area, then click Apply JSON.
  6. Click Publish v1 at the bottom-right of the editor.
  7. Sequence validates the effect. A green "passed" confirmation means it's ready to apply; a red report lists what to fix.

Your effect now appears in the Library with a v1 badge and a green status dot, ready to apply to any clip.

The Effects tab's Library sub-tab, where a published custom effect shows its name, a one-line description, a version badge, and a green validation status dot.
Your published effect in the Library, ready to apply.

Versions are kept

Each time you publish, Sequence adds a new version and keeps the old ones, so you can revert to an earlier one. The version badge on the Library row tracks the current version.

Define the controls#

Alongside your shader code, you list the controls you want to expose — the dials a person adjusts on the clip after applying the effect. Each control is described in plain terms:

  • Name — matches the control to the value it drives in your shader. Your shader and its controls share these names, so a control named intensity drives the shader's intensity value.
  • Label — the name that shows in the Inspector (for example, "Intensity").
  • Type — a number, a color, or an on-off.
  • Control style — a slider, a knob, a color picker, or a switch.
  • Range and default — the lowest and highest value the control accepts, and the value it starts at.
  • Group — an optional heading the control sits under in the Inspector, for organizing related controls together.

You bundle these controls together with your shader as JSON, then paste that into the Import / Export JSON panel (or let Snippy write it for you). The controls you expose look like this — one number on a slider and one color on a color picker, both under a "Look" heading — with your shader code standing in for the rest:

{
"shaderProgram": "<your shader code>",
"inputs": [
{
"name": "intensity",
"label": "Intensity",
"uniformType": "float",
"inputHint": "slider",
"min": 0,
"max": 1,
"defaults": [0.35],
"group": "Look"
},
{
"name": "tint",
"label": "Tint",
"uniformType": "vec3",
"inputHint": "color_picker",
"min": 0,
"max": 1,
"defaults": [1.0, 0.75, 0.45],
"group": "Look"
}
]
}

Animate a custom effect

Every control you expose is an ordinary Sequence property. To animate the effect over time, arm a control for keyframing and change its value across the clip, exactly as you would Position or Opacity. See Keyframe animation.

Apply the effect to a clip#

Once an effect is published and validated, add it to any clip from the Applied sub-tab:

  1. Select a clip on the timeline and open the Applied sub-tab in the Effects tab.
  2. Click the + button in the Applied header.
  3. Choose your effect from the list. Only effects that pass validation appear here.

Sequence adds the effect to the clip and shows its controls — grouped under any headings you set — as a module in the Applied sub-tab. Adjust the controls right there in the Inspector to dial in the look.

Remove an effect from a clip#

To take an effect off a clip, click Remove Effect at the bottom of its module in the Applied sub-tab. This removes it from that clip only — the effect stays in the Library for reuse elsewhere.

Was this page helpful?