# Kronos

> Retimes a clip with motion vectors.

Retimes a clip with motion vectors. Timing: Output Speed, Input Speed or an animated Frame curve. Method: Frame (nearest), Blend, Motion (the input's motion / occlusion layers, else AI optical flow) or RIFE 4.26 (AI worker, ours). Shutter samples / time add motion blur. All layers are retimed; float values and highlights are kept. Generating flow never freezes the app: the frame shows when the vectors are ready.

| Node | Kronos |
|---|---|
| Menu | Time › Kronos |
| **Names in each format** | |
| .oink comp (JSON) | `"type": "OC_N_retime"` |
| .nk script | `Kronos` ([how .nk import works](/docs/nuke-users/nk-import)) |
| Python | `nuke.createNode("Kronos")` |
| Assistant (MCP) | `create_node(type="Kronos")` |
| Tab search | `kronos` |

![Kronos properties](/shots/nodes/retime@2x.webp)

## Inputs and outputs

| Port | Name | Type |
|---|---|---|
| input 0 | Source | image |
| output 0 | Image | image |

## Knobs

Panel tab **Kronos**, in panel order.

| Knob | Label | Type | Default | Range / values | .nk knob | Description |
|---|---|---|---|---|---|---|
| `input_first` | Input Range | float | `1` | -100000 to 100000 (integer) |  |  |
| `input_last` | to | float | `100` | -100000 to 100000 (integer) |  |  |
| `reset_input_range` | Reset | button (panel only) |  |  |  |  |
| `use_input_range` | input range from source | bool | `true` |  |  | Input first/last and output first = the upstream clip's frame range |
| `output_first` | output first | float | `1` | -100000 to 100000 (integer) |  | Output frame of the input's first frame (Nuke: the input first) |
| `channels` | Channels | menu | `all` | all, rgba | `retimedChannels` |  |
| `method` | Method | menu | `motion` | nearest (Frame), blend (Blend), motion (Motion), rife (RIFE) | `interpolation` |  |
| `timing` | Timing | menu | `speed` | speed (Output Speed), input_speed (Input Speed), frame (Frame) | `timing2` |  |
| `speed` | Output Speed | float | `0.5` | -4 to 4 | `timingOutputSpeed` |  |
| `input_speed` | Input Speed | float | `0.5` | 0.001 to 4 | `timingInputSpeed` |  |
| `source_frame` | Frame | float | `1` | -100000 to 100000 | `timingFrame2` |  |
| `motion_estimation` | Motion | menu | `Regularized` | Regularized, Local | `motionEstimation` |  |
| `flow_model` | flow model | menu | `AUTO` | AUTO (Auto (by free GPU memory)), sea-raft-m (SEA-RAFT M), sea-raft-s (SEA-RAFT S) |  |  |
| `use_input_vectors` | use input vectors | bool | `true` |  |  | Use the input's motion / occlusion layers when present (else run AI flow) |
| `vector_detail` | Vector Detail | float | `0.3` | 0.01 to 1 | `vectorDetail` |  |
| `strength` | Strength | float | `1.5` | 0 to 5 | `strength` |  |
| `smoothness` | Smoothness | float | `0.5` | 0 to 1 | `smoothness` |  |
| `resample_type` | Resampling | menu | `Bilinear` | Bilinear, Lanczos4, Lanczos6 | `resampleType` |  |
| `shutter_samples` | Shutter Samples | float | `1` | 1 to 64 (integer) | `shutterSamples` |  |
| `shutter_time` | Shutter Time | float | `0` | 0 to 2 | `shutterTime` |  |
| `auto_shutter_time` | Automatic Shutter Time | bool | `false` |  | `autoShutterTime` |  |
| `output` | Output | menu | `Result` | Result, Matte, Foreground, Background | `output` |  |
| `matte_channel` | Matte Channel | menu | `None` | None, Source Alpha, Source Inverted Alpha, Matte Luminance, Matte Inverted Luminance, Matte Alpha, Matte Inverted Alpha | `matteChannel` |  |
| `flicker_compensation` | Flicker Compensation | bool | `false` |  | `flickerCompensation` |  |
| `weight_red` | Weight Red | float | `0.3` | 0 to 1 | `weightRed` |  |
| `weight_green` | Weight Green | float | `0.6` | 0 to 1 | `weightGreen` |  |
| `weight_blue` | Weight Blue | float | `0.1` | 0 to 1 | `weightBlue` |  |
| `vector_spacing` | Vector Spacing | float | `20` | 1 to 100 (integer) | `vectorSpacing` |  |
| `show_vectors` | Overlay Vectors | bool | `false` |  | `showVectors` |  |

### Other knobs (Python, .nk and the assistant; not on the panel)

| Knob | Label | Type | Default | Range / values | .nk knob | Description |
|---|---|---|---|---|---|---|
| `gl_color` | Viewer Controls Color | float ×3 | `0, 0, 0` | 0 to 1 |  |  |
| `postage_stamp_frame` | Static Frame | int | `1` | -2147483648 to 2147483647 |  |  |
| `lifetimeStart` | Lifetime Start | int | `0` | -2147483648 to 2147483647 |  |  |
| `lifetimeEnd` | Lifetime End | int | `100` | -2147483648 to 2147483647 |  |  |
| `useLifetime` | Use Lifetime | boolean | `false` |  |  |  |
| `cached` | Cached | boolean | `false` |  |  |  |
| `bookmark` | Bookmark | boolean | `false` |  |  |  |
| `dope_sheet` | Dope Sheet | boolean | `false` |  |  |  |
| `clone_group` | Clone Group | string |  |  |  |  |
| `link_source` | Link Source | string |  |  |  |  |
| `link_overrides` | Link Overrides | string |  |  |  |  |
| `split_views` | Split Views | string |  |  |  |  |

## Knob names in .nk scripts

| .nk knob | Knob here |
|---|---|
| `retimedChannels` | `channels` |
| `interpolation` | `method` |
| `timing2` | `timing` |
| `timingOutputSpeed` | `speed` |
| `timingInputSpeed` | `input_speed` |
| `timingFrame2` | `source_frame` |
| `motionEstimation` | `motion_estimation` |
| `vectorDetail` | `vector_detail` |
| `resampleType` | `resample_type` |
| `shutterSamples` | `shutter_samples` |
| `shutterTime` | `shutter_time` |
| `autoShutterTime` | `auto_shutter_time` |
| `matteChannel` | `matte_channel` |
| `flickerCompensation` | `flicker_compensation` |
| `weightRed` | `weight_red` |
| `weightGreen` | `weight_green` |
| `weightBlue` | `weight_blue` |
| `vectorSpacing` | `vector_spacing` |
| `showVectors` | `show_vectors` |

Other .nk knobs use the same name here. See [.nk import](/docs/nuke-users/nk-import).

## Examples

Open these from **Help › Examples…**, or from the **?** menu in this node's Properties panel.

- **Retime: half speed with frame blending** (`examples/time/retime_blend.oink`): Retime at speed 0.5 turns the 8-frame Beachball move into 16 frames; "blend" mixes the two nearest source frames (use "motion" for vector-based in-betweens).


---
Sources: opencomp_core/nodes/ai/aimotion.py, opencomp_electron/src/components/properties/knobSchema.ts, opencomp_core/nodes/help/retime.md, opencomp_core/nk/mapping.py
