Installation and Operation Manual
for DaVinci Resolve Studio and Stream Deck
Thank you for choosing SpliceDeck for your DaVinci Resolve editing suite.
If you edit, grade or deliver in Resolve every day, you already know the rhythm: find the moment, mark it, cut it, check it, render it. SpliceDeck puts that rhythm under your fingers. Every key and dial on your Stream Deck is connected to Resolve through its official scripting interface, so the deck always shows what is really happening in your project: the timecode under the playhead, the colour of the clip you are parked on, the markers ahead of you, the page you are working on and how far along your render is.
Because SpliceDeck talks to Resolve directly instead of pretending to be a keyboard, it works with any keyboard layout and any custom shortcut set, and it never presses the wrong key when Resolve is in a different window. When something stops it working, the keys tell you exactly what is wrong and how to fix it.
SpliceDeck runs on macOS and Windows in the Elgato Stream Deck app, and on Linux in OpenDeck. Every key works on every Stream Deck model, and the dials and touch strip of Stream Deck + turn into jog wheels, marker maps, colour pickers and render controls.
This manual contains everything you need to install SpliceDeck, connect it to Resolve and get the most out of all 53 actions. Start with Getting Started to be editing within a few minutes, then dip into the chapters for the parts of Resolve you use most.
We hope SpliceDeck becomes the part of your suite you stop noticing because it simply keeps up with you. Enjoy your edit!
The SpliceDeck team at Recourse Software Inc.
At first glance a deck full of live keys can look like a lot to learn. In practice SpliceDeck is quick to set up: you install one plugin, switch on one setting in Resolve, and every key starts showing live information straight away.
This section shows you how to install SpliceDeck, connect it to DaVinci Resolve Studio, put your first keys on the deck and make your first edits with them.
| Item | Requirement |
|---|---|
| DaVinci Resolve | Studio edition, version 18.5 or later. Verified on Resolve Studio 20.2.3. The free edition of Resolve does not allow external scripting, so SpliceDeck cannot connect to it. |
| Stream Deck software | Elgato Stream Deck app 6.5 or later on macOS 12 or later, or Windows 10 or 11. On Linux, OpenDeck. |
| Stream Deck hardware | Any Stream Deck. Keys work on every model. Dial actions need a Stream Deck +. |
| Python | Python 3.8 or later, 64-bit. SpliceDeck finds it on its own: python3 on macOS and Linux, and py -3, python or python3 on Windows. |
TipTo check which edition you have, open DaVinci Resolve > About DaVinci Resolve. The window says DaVinci Resolve Studio when you have the paid edition.
Double-click the file com.jauge.splicedeck.streamDeckPlugin. The Stream Deck app opens and asks to install SpliceDeck. Click Install.
In the action list on the right of the Stream Deck app, a new category called SpliceDeck for DaVinci Resolve appears, marked with the SpliceDeck logo. It contains all 53 actions, sorted into eight groups.
On a Stream Deck +, the app also offers to install the SpliceDeck profile, a ready-made layout with a page for each Resolve page. Accept it to start with a finished deck.
The SpliceDeck category in the Stream Deck app's action list. Each action shows its group colour.
Resolve Status is the best first key: it shows the product, version and project as soon as SpliceDeck connects.
SpliceDeck controls Resolve through the scripting interface that Blackmagic Design built into Resolve Studio. For safety it is switched off when Resolve is installed, so the first time you use SpliceDeck you need to allow local scripting.
In DaVinci Resolve Studio, open DaVinci Resolve > Preferences on macOS, or File > Preferences on Windows and Linux.
Select the System tab, then General.
Set External scripting using to Local, then click Save.
Quit and reopen Resolve so the change takes effect.
Choose Local. The Network option also works, but it lets other computers on your network script your Resolve, which SpliceDeck does not need.
NoteIf a Resolve dialog is open, for example Preferences, a save prompt or a render settings window, Resolve pauses all scripting until you close it. SpliceDeck's keys show Offline or stop updating while the dialog is open and recover by themselves as soon as you close it.
Put a Resolve Status key on your deck. It is the quickest way to see whether SpliceDeck can talk to Resolve, and it explains in plain words what to do when it can't.
Connected. A green bar and dot. The key shows your project, timeline, page or Resolve version, whichever you choose in its settings.
Offline. Resolve isn't running. SpliceDeck reconnects by itself when Resolve starts.
Script off. Resolve is running but refuses the connection. Switch on external scripting as described on the previous page.
Press the Resolve Status key to retry the connection straight away. Hold it for a moment to see diagnostics: how quickly Resolve is answering while connected, or the exact reason SpliceDeck can't connect while offline. Help at the end of this manual lists every state the keys can show.
SpliceDeck's connection to Resolve runs in a small Python program, because Resolve's scripting interface is built for Python. You don't need to know any Python, but it has to be installed.
brew install python).python3 package.TipIf a key says No Python, open the settings of any SpliceDeck key, expand SpliceDeck settings at the bottom, and type the full path to your Python in Python interpreter. Leave it empty to go back to automatic detection.
On a Stream Deck +, the plugin installs a ready-made profile called SpliceDeck. It has eight Stream Deck pages, one for each of Resolve's pages, and the deck follows Resolve: when you change page in Resolve, the Stream Deck + jumps to the matching page. You can also drag actions from the SpliceDeck category onto any key or dial yourself, and change what each one does in its settings below the canvas in the Stream Deck app. Below is the Edit page of the profile.
The Edit page of the SpliceDeck profile. Every key and strip shows live state from Resolve; these images are drawn by SpliceDeck itself.
| Top row | Split (hold: Ripple Delete), Live Timecode, Previous Marker, Next Marker |
| Bottom row | Mark In, Mark Out, Add Marker (hold: Markers panel), Save Project |
| Dials | Playhead Jog, Page Dial, Marker Dial, In/Out Dial |
TipIf you build your own layout instead, make a separate Stream Deck profile or page for SpliceDeck rather than mixing it into your existing layouts. Your other profiles stay exactly as they are.
Resolve's scripting interface only lets other programs move the playhead about twice a second. To make jogging as smooth as a hardware editing panel, SpliceDeck can also use Resolve's own frame-step commands, which are not limited. This is called Turbo Jog, and it needs one permission on macOS.
On macOS, open System Settings > Privacy & Security > Accessibility.
Switch on Elgato Stream Deck. If it isn't listed, click + and add it from your Applications folder.
Quit and reopen the Stream Deck app.
Turbo Jog only sends frame steps while Resolve is the frontmost app, which is always the case while you work, because the Stream Deck never takes focus away from Resolve. The frame steps travel on their own stream, separate from everything else SpliceDeck does, so nothing waits on them. When you stop turning, SpliceDeck reads the playhead back once and, if anything doesn't line up, lands it on the exact frame through the scripting interface. On Windows no permission is needed. On Linux, Turbo Jog works in X11 sessions.
NoteWithout the permission, jogging still works and always lands on the right frame. Resolve's viewer just updates about twice a second while you spin, instead of on every frame.
With Resolve Studio open on the Edit page and a timeline loaded, try this. On a Stream Deck + with the SpliceDeck profile, the deck is already showing the Edit page:
Turn the Playhead Jog dial. The playhead moves one frame per click, faster the quicker you spin. The touch strip above shows the timecode and a small map of the timeline.
Tap the jog's touch strip to switch to Scroll mode, then turn the dial: each click now moves 1% of the timeline. Tap again to go back to Jog. Pressing the dial in also steps through the modes: Jog by frames, Jog by seconds, Scroll, and back to frames.
Hold Shift on your keyboard and turn the jog dial. The strip shows ZOOM and the dial zooms the timeline in and out. Press it to zoom to fit. Let go of Shift to jog again.
Press Add Marker. A blue marker appears at the playhead in Resolve, and the Marker Dial's map shows it immediately.
Press Mark In, jog forward, then press Mark Out. The In/Out Dial's strip shows the range and its duration.
Press Previous Marker to jump back to the marker you added, then hold Add Marker: Resolve opens its Markers panel so you can name the marker.
Press Split to cut the clip at the playhead. Hold it instead to ripple delete the clip under the playhead. Use Edit > Undo in Resolve to put it back.
Press Save Project. The key confirms the save and shows how long ago you last saved.
ImportantSpliceDeck works on your real project. Keys like Save Project, Render Preset and Duplicate Timeline do exactly what they say. While you are learning, practise on a copy of your project or a spare timeline.
You can use SpliceDeck without knowing anything about how it works inside. A few minutes with this chapter will still pay off: once you know where the information on each key comes from, you can read the deck at a glance and you will always know why a key is behaving the way it is.
This chapter explains how SpliceDeck talks to DaVinci Resolve, how to read a key, which Resolve pages each action works on, and how the SpliceDeck profile used throughout this manual is laid out.
SpliceDeck has three parts that work together. You install them all at once with the plugin, and they start and stop by themselves.
SpliceDeck plugin
Runs inside the Stream Deck app. It draws every key and touch strip and reacts to your presses, turns and touches.
SpliceDeck bridge
A small Python program that holds the connection to Resolve and does the work you ask for.
DaVinci Resolve Studio
Answers through its official scripting interface, the one Blackmagic Design documents for developers.
A key press travels from the plugin to the bridge, which asks Resolve to do it. Resolve's answer and every change in your project travel back the same way.
The bridge is the only part that talks to Resolve. It keeps one connection open for as long as Resolve is running, finds Resolve again by itself when you restart it, and tells the keys in plain words when something is in the way.
Between your presses, the bridge keeps asking Resolve what has changed: the playhead, the current page, the clip under the playhead, markers, In and Out points, tracks, timelines and render progress. Only the changes are sent to the plugin, and only the keys that show that information are redrawn.
The bridge asks more often while you are working and less often when nothing happens. Right after a change it checks again within 40 ms, when everything is quiet it slows down to a few times a second, and after a minute of no activity to once a second. The page and the playhead have their own fast lane, so a page you open with the mouse lights up on the deck almost instantly. When no SpliceDeck key is visible on your Stream Deck, the bridge checks only every two seconds.
TipOn a laptop running on battery, open SpliceDeck settings at the bottom of any key's settings and set Polling to Balanced or Battery saver. The keys update a little less often and Resolve does less work. Responsive is the default.
Resolve's scripting interface accepts a new playhead position only about twice a second. That is fine for jumping to a marker, but far too slow for a jog wheel. So the Playhead Jog dial has a second, independent connection called Turbo Jog.
Turbo Jog is a separate small process. It does not use the scripting connection at all. Each click of the dial becomes one of Resolve's own Previous Frame and Next Frame commands, sent straight to Resolve, the same way a hardware editing panel does it. Nothing waits for the bridge, for polling or for an answer, so the viewer follows the dial frame by frame.
The touch strip shows where the playhead is going while you turn. About a fifth of a second after you stop, SpliceDeck checks the real position once through the scripting connection and lands the playhead on exactly the frame the strip showed. If Turbo Jog can't be used, for example because Resolve is not the frontmost app or macOS has not given the Stream Deck app Accessibility permission, the dial carries on through the scripting connection automatically. Navigating the Timeline explains Turbo Jog in more detail, and Getting Started shows how to give the permission.
Many Stream Deck plugins for video editing work by pretending to be a keyboard: a key press sends a shortcut and hopes that the right window is in front and that the shortcut has not been changed. SpliceDeck works differently. Almost every action asks Resolve directly, through the scripting interface, to do one exact thing, and reads the result back.
A few things are not available in Resolve's scripting interface at all. For these, SpliceDeck uses Resolve's own commands, and only while Resolve is the frontmost app:
NoteEven these commands are checked. Turbo Jog confirms every spin by reading the playhead back, and if the frames don't line up, for example because you have remapped the arrow keys in Resolve, SpliceDeck switches Turbo Jog off for that dial and keeps working through the scripting connection.
Every key and touch strip is drawn live from Resolve's current state. Most keys show what the key does, what it will act on, and whether that is possible right now.
Live information. Next Marker previews the marker it will jump to and how far away it is. Mark In shows its timecode.
Lit and blocked. A Switch Page key for Edit lights up while Resolve shows the Edit page. A key that can't work right now is struck through and says why.
Every action belongs to one of eight groups, and each group has its own colour. You will see it in the key's symbol, in the bar along the bottom of many keys and in the touch strip. It lets you spot, say, every marker key at a glance.
So that you never have to rely on colour alone, most keys and every touch strip also carry a small group code in the top-left corner: a row of up to three dots and dashes. Each group has its own pattern. The same pattern appears in the footer of each chapter in this manual.
| Group | Pips | Colour |
|---|---|---|
| Core | Periwinkle | |
| Playhead | Coral | |
| Markers | Orange | |
| Render | Teal | |
| Clips | Chartreuse | |
| Tracks | Azure | |
| Timelines | Orchid | |
| Export | Mint |
Red, amber and green are never used as group colours. They are kept for status, so they always mean the same thing: green is connected or done, amber is a warning or something to check, and red is an error, a refusal or a render that is running and can be stopped.
Many keys light up when what they stand for is true right now: a Switch Page key while its page is open, a Clip Color key when the clip under the playhead already has that colour, a Mark In key when the playhead sits exactly on the In point. Lit keys follow Resolve, so they also change when you do the same thing with the mouse.
When a key has done its job, it briefly shows a green confirmation, such as Done, In/Out cleared or the new mode of a dial. When Resolve refuses, the key shows a short red message for just over a second, for example No clip here, Track locked or Resolve refused, and the Stream Deck app adds its own alert triangle. Then the key returns to its normal face.
If Resolve is busy with something long, such as saving a large project or loading a page, keys that show live values add a small Saving… or Loading page… label instead of showing a frozen value as if it were current.
A key that can't work right now draws its symbol struck through with a status-coloured line and one or two words that explain why. Presses are ignored, so nothing happens by accident, and the key goes back to normal by itself as soon as the problem is solved.
Offline. Resolve isn't running.
Script off. External scripting is switched off in Resolve's preferences.
Busy. A Render Preset key while another render is running.
| Key shows | What to do |
|---|---|
| Connecting | SpliceDeck is starting. Wait a moment. |
| Offline | Start DaVinci Resolve Studio. SpliceDeck reconnects by itself. |
| Script off | Set External scripting using to Local in Resolve's preferences, then restart Resolve. |
| No API | Resolve's scripting files weren't found. Set the paths in SpliceDeck settings. |
| No Python | Install Python 3.8 or later, or set Python interpreter in SpliceDeck settings. |
| Reconnecting | The bridge is restarting by itself. Wait a moment. |
| No project | Open a project in Resolve. |
| No timeline | Open a timeline in the current project. |
Resolve does not offer every scripting command on every page. The most important difference is the playhead: Resolve only reports and moves the playhead on the Cut, Edit, Color, Fairlight and Deliver pages. On the Media and Fusion pages there is no timeline playhead, so keys that need it tell you, for example Live Timecode shows No playhead on Media, until you switch back.
| Works on | Actions |
|---|---|
| Every page | Resolve Status, Switch Page, Page Dial, Load Layout Preset, Keyframe Mode, Save Project, Auto-Save, Project Info, the render actions, the timeline actions, Export Project Backup and Export Stills. |
| Cut, Edit, Color, Fairlight and Deliver | Everything that uses the playhead: the playhead actions, Live Timecode, the marker actions, Export Frame, and the clip actions that work on the clip under the playhead. |
| Edit, Cut, Color and Fairlight | Turbo Jog on the Playhead Jog dial. On the Deliver page the dial still works, through the scripting connection. |
| Edit and Cut | Split on the Split / Ripple Delete key. On other pages the key is dimmed. |
| Color | Grab Still, because Resolve only grabs stills on the Color page. You can let the key hop to the Color page and back with its Outside Color page setting. |
Actions that need a project, such as Save Project, show No project while the Project Manager is open without a project. Actions that work on a timeline show No timeline until you open one.
TipPut a Switch Page key or a Page Dial on every Stream Deck page you use. When a key tells you it needs another page, you are one press away from it, and the lit page key always shows you where Resolve is.
NoteA Resolve dialog, for example Preferences, Project Settings or a save prompt, pauses all scripting until you close it. Keys stop updating or show Offline while the dialog is open and recover by themselves afterwards.
The examples in this manual use the SpliceDeck profile, a ready-made Stream Deck + layout that comes with the plugin. The Stream Deck app offers to install it when you install SpliceDeck, and it appears in the profile list as SpliceDeck. It has eight Stream Deck pages, in the same order as Resolve's page tabs: Media, Cut, Edit, Fusion, Color, Fairlight, Deliver and Project. Dial 2 is the Page Dial on every page.
| Page | Keys, top row | Keys, bottom row | Dials |
|---|---|---|---|
| Media | Project Info, Switch Timeline, Next/Prev Timeline, Auto-Save | Resolve Status, Load Layout Preset, Project Settings, Save Project | Timeline Browser, Page Dial, Live Timecode, Render Dial |
| Cut | Split / Ripple Delete, Live Timecode, Previous Marker, Next Marker | Mark In, Mark Out, Add Marker, Save Project | Playhead Jog, Page Dial, Marker Dial, In/Out Dial |
| Edit | Split / Ripple Delete, Live Timecode, Previous Marker, Next Marker | Mark In, Mark Out, Add Marker, Save Project | Playhead Jog, Page Dial, Marker Dial, In/Out Dial |
| Fusion | Live Timecode, Keyframe Mode, Step Playhead, Next/Prev Edit | Previous Marker, Next Marker, Add Marker, Save Project | Playhead Jog, Page Dial, Timeline Browser, Live Timecode |
| Color | Previous Clip, Next Clip, Grab Still, Color Version | Apply LUT, Apply Grade (DRX), Clip Color, Save Project | Playhead Jog (clip to clip), Page Dial, LUT Browser, Clip Color Dial |
| Fairlight | Track On/Off, Track Solo / Isolate, Track Lock, Previous Marker | Next Marker, Add Marker, Live Timecode, Save Project | Playhead Jog, Page Dial, Track Dial, Marker Dial |
| Deliver | Render Preset, Quick Export, Render Queue, Stop Render | Render Status, Export Timeline, Export Frame, Save Project | Render Dial, Page Dial, Export Timeline, Playhead Jog |
| Project | Project Settings, Project Info, Save Project, Auto-Save | Switch Timeline, Duplicate Timeline, Load Layout Preset, Export Project Backup | Timeline Browser, Page Dial, Render Dial, Live Timecode |
Whenever Resolve changes page, whether you turn the Page Dial, click a page tab or press a keyboard shortcut, the Stream Deck + jumps to the matching page of the SpliceDeck profile. You never have to switch pages on the deck yourself.
The Edit page is built around the jog dial on the left. Turn it to find a frame, press Split to cut there, mark a range with Mark In and Mark Out, and drop markers as you go. The Marker Dial and In/Out Dial let you jump between markers and trim the In and Out points without touching the mouse. The Cut page has the same layout.
On the Color page the jog dial walks from clip to clip, and every jump selects that clip for grading. Previous Clip and Next Clip on the first two keys do the same. Grab a still, apply a LUT or a saved grade, and step through colour versions to compare looks. Grading Clip by Clip in Navigating the Timeline explains the jog setting.
TipPrefer one page of keys that changes with Resolve? A Context Key becomes the right action for whichever page Resolve is on. Project, Pages and Layout describes it.
SpliceDeck has 53 actions, sorted into eight groups. In the Stream Deck app they appear in the SpliceDeck for DaVinci Resolve category, each with its group colour. Each group has its own chapter in this manual.
| Group | Actions | What it covers | |
|---|---|---|---|
| Core | 11 | Connection status, pages and layouts, saving and auto-save, live timecode, project information and settings, keyframe mode and the Context Key. | |
| Playhead | 7 | Jogging and stepping the playhead, jumping to points and edits, and setting and trimming In and Out. | |
| Markers | 6 | Adding, finding, recolouring and deleting markers, and a marker map on the touch strip. | |
| Render | 6 | One-press renders with presets and Quick Export, the render queue, live progress and stopping a render. | |
| Clips | 10 | The clip under the playhead: colours, flags, enable, LUTs, grades, colour versions, stills, Split and Ripple Delete. | |
| Tracks | 4 | Switching tracks on and off, locking them and isolating one track, plus a whole track bank on a dial. | |
| Timelines | 4 | Opening timelines by name or in order, browsing them on a dial, and duplicating the current one as a new version. | |
| Export | 5 | Timeline exports such as XML, EDL and AAF, frames, stills, YouTube chapters and project backups. |
Most actions are keys and work on every Stream Deck model. Actions whose name ends in Dial or Browser, and Playhead Jog, are made for the dials and touch strip of Stream Deck +. A few actions work as either: Live Timecode, Color Version and Export Timeline can go on a key or on a dial, and Page Dial can also go on a key.
TipHover over an action in the Stream Deck app's action list to see a one-line summary of what it does. For dials, the Stream Deck app also shows what turning, pushing and touching do.
Finding the right frame is most of editing. The playhead actions give you a jog wheel, frame and second steps, jumps to the start, the end, edit points and any timecode you type, and keys and a dial for In and Out points. Every one of them shows on its face where the playhead is or where it is about to go.
All playhead actions need a timeline and a page with a playhead: Cut, Edit, Color, Fairlight or Deliver. On the Media and Fusion pages they show that the playhead isn't available and start working again as soon as you switch back.
| Action | Type | Use it to | |
|---|---|---|---|
| Playhead Jog | Dial | Jog by frames or seconds, scroll through the timeline, jump by edits or markers, and zoom the timeline. | |
| Step Playhead | Key | Move a fixed number of frames or seconds, once or repeatedly. | |
| Go To | Key | Jump to the timeline start or end, In or Out, the start or end of a clip, or a timecode. | |
| Next/Prev Edit | Key | Jump to the next or previous cut on the tracks you choose. | |
| Mark In | Key | Set the In point at the playhead, mark a whole clip, or clear In and Out. | |
| Mark Out | Key | Set the Out point at the playhead, mark a whole clip, or clear In and Out. | |
| In/Out Dial | Dial | Trim the In and Out points frame by frame, or slide the whole range. | |
| Live Timecode | Key or dial | Show the playhead as timecode, frames, seconds or time remaining, and jog on a dial. |
Live Timecode belongs to the Core group, but because it is the readout you will look at most while navigating, it is described in this chapter too.
NoteThe playhead keys never move further than the timeline. A step or a jog that would go past the first or last frame stops there.
The jog wheel for your timeline. The touch strip shows the mode, the step per click, the playhead timecode and a small map of the timeline with your In and Out points and markers.
The jog strip in JOG mode. Top left: the mode and the step per click (JOG ±1f). Top right: the unit, FRM for frames, or the speed while you spin fast, such as ×3. Centre: the playhead timecode. Bottom: the whole timeline, with the playhead, markers and In and Out points.
Each click of the dial moves the playhead by the step shown on the strip, one frame by default. The strip shows the new timecode on the same click, before Resolve has even redrawn its viewer, so the dial always feels immediate. If Resolve is slow to confirm a move, the timecode is shown dimmed until it catches up, so the strip never shows a position as certain before it is.
Resolve's scripting interface only accepts a new playhead position about twice a second. To jog as smoothly as a hardware editing panel, Playhead Jog uses Turbo Jog whenever it can. Turbo Jog is a separate process from SpliceDeck's connection to Resolve: each click becomes one of Resolve's own Previous Frame and Next Frame commands, sent straight to Resolve. Nothing waits for an answer or for the next update, so Resolve's viewer follows the dial frame by frame.
While you spin, SpliceDeck also pauses its background checks of Resolve, so Resolve can spend all its time drawing frames. About a fifth of a second after you stop turning, SpliceDeck reads the real playhead position once and, if needed, lands the playhead on exactly the frame the strip shows.
Turbo Jog works when all of these are true:
When any of these is not true, the dial simply carries on through the scripting connection. It still lands on the right frame every time, but Resolve's viewer updates only about twice a second while you spin.
NoteTurbo Jog uses Resolve's default Previous Frame and Next Frame keys, the Left and Right arrows. If you have mapped those commands to other keys, SpliceDeck notices that the playhead does not end up where it should, and after a few spins it switches Turbo Jog off for that dial and uses the scripting connection instead.
With acceleration on, the faster you spin, the further each click moves: up to eight times the step. While acceleration is in use, the chip at the top right of the strip shows the current speed, for example ×3. Turn slowly and every click is exactly one step again.
To switch acceleration off or on, push the dial, keep it pressed for about half a second, then release it without turning. The strip confirms Acceleration off or Acceleration on. You can also set it with the Acceleration checkbox in the settings.
A short push on the dial, released without turning, moves on to the next mode. The strip briefly confirms the new mode.
JOG · frames. Each click moves the step in frames. This is where the dial starts.
JOG · seconds. Each click moves the step in seconds. The chip shows SEC.
SCROLL. Each click moves a share of the whole timeline. The title turns to SCROLL and the chip shows SCRL. Push again to go back to JOG · frames.
JOG · frames. One frame per click.
JOG · seconds. One second per click.
SCROLL. The title shows how far one click moves on this timeline.
ZOOM ⇧. Shown while you hold Shift on the computer keyboard.
Scroll mode is for getting around a long timeline quickly. Each click moves the playhead by a percentage of the timeline's length, 1% by default, and never less than one second. The strip title shows what that is in seconds on the current timeline, for example SCROLL ±12s. Set the percentage with Scroll per tick (%), from 0.1% up to 25%.
Tapping the touch strip is the quickest way in and out of Scroll mode: one tap switches between JOG and SCROLL, and a second tap brings you back to the unit you were using.
Push the dial in and turn it while you keep it pressed to make bigger jumps. What a pressed turn does is set with Turn while pressed, and the chip on the strip shows it while you turn.
| Setting | Chip | Each click while pressed |
|---|---|---|
| Jump by edit points | EDIT | Jumps to the next or previous cut on the tracks set in Tracks. This is the default. |
| Jump by markers | MRK | Jumps to the next or previous timeline marker. |
| 10x steps | ×10 | Moves ten times the normal step. |
When there is nothing further to jump to, the strip shows No more edits or No marker. A push that ends with a turn never changes the mode or the acceleration, so you can press, pause and then turn without worrying.
The timeline map at the bottom of the strip stands for the whole timeline, from its first frame on the left to its last frame on the right. Touch and hold anywhere on the strip and the playhead jumps to that point of the timeline.
A short tap switches between JOG and SCROLL. If you would rather jump with a short tap too, set Tap the strip to Jump to tapped point. Then both a tap and a hold jump to the point you touched.
Hold Shift on your computer keyboard and the jog dial becomes a timeline zoom. The strip changes to ZOOM ⇧ for as long as you hold Shift.
Release Shift and the dial is a jog wheel again, in the mode you left it in. Zooming works on macOS, where SpliceDeck uses Resolve's View > Zoom menu commands through Accessibility, and on Windows, where it sends Resolve's default zoom shortcuts. Resolve needs to be the frontmost app. If it isn't, the strip shows Zoom: bring Resolve to the front. Timeline zoom is not available on Linux.
TipIf you often hold Shift while you jog, or use Linux, clear the Shift + turn: zoom the timeline checkbox. The dial then ignores the Shift key.
NoteIf Resolve isn't showing a playhead, for example on the Media page, the strip shows Edit, Cut or Color page instead of the timeline map. Switch to one of those pages and the dial starts working.
Switch on Turn: clip to clip in the dial's settings and the dial swaps its roles. A plain turn jumps to the next or previous clip, using the edit points on the tracks you chose, and pushing and turning moves by frames. The strip title changes to CLIPS so you can see which way the dial is set.
On the Color page every jump also selects the clip it lands on, so the grade you apply next goes to that clip. This is how the Color page of the SpliceDeck profile is set up.
| Setting | What it does |
|---|---|
| Mode | Jog (frames / seconds) or Scroll (% of timeline). The mode the dial is in now. Pushing the dial or tapping the strip changes it too. |
| Scroll per tick (%) | How much of the timeline one click moves in Scroll mode, from 0.1 to 25. Default 1. One click is never less than one second. |
| Tap the strip | Switch Jog / Scroll (hold: jump), the default, or Jump to tapped point. |
| Shift + turn: zoom the timeline | On by default. Holding Shift turns the dial into a timeline zoom. |
| Unit | Frames or Seconds for Jog mode. |
| Per tick | How many frames or seconds one click moves, from 1 to 1000. Default 1. |
| Acceleration | On by default. Faster spins move further, up to eight times the step. |
| Turn: clip to clip | Off by default. When on, a plain turn jumps from clip to clip and a pressed turn moves by frames. See Grading Clip by Clip. |
| Turn while pressed | Jump by edit points, Jump by markers or 10x steps. |
| Tracks | For edit point jumps: All video tracks, All audio tracks or Video + audio. |
| Skip disabled tracks | On by default. Cuts on tracks you have switched off are ignored, like Resolve's own edit navigation. |
Tracks and Skip disabled tracks appear only when Turn while pressed is set to Jump by edit points.
TipA good setup for long-form editing is Unit set to Frames, acceleration on, and Scroll per tick (%) set to 2. Spin slowly to find a frame, spin fast to cover a scene, and tap the strip to fly across the whole timeline in Scroll mode.
Moves the playhead by a fixed amount, forwards or backwards. The key shows the step, for example +1f or −2s, and the playhead timecode below it, which updates as soon as you press.
| Setting | What it does |
|---|---|
| Amount | How far one press moves. Use a negative number, such as −1, to step backwards. Default 1. |
| Unit | Frames or Seconds. |
When you let go of a held key, the playhead stops straight away, even if Resolve is slow to catch up. It never keeps moving after you release the key.
TipPlace two Step Playhead keys side by side, one set to −1 and one to +1, for precise frame-by-frame nudging. Add a pair set to −5 and +5 seconds for quick review.
Jumps the playhead to one exact place. The key shows the destination and its timecode, and lights up while the playhead is already there. When the destination doesn't exist yet, for example an Out point you haven't set, the key is dimmed and shows Not set.
| Setting | What it does |
|---|---|
| Go to | Timeline start, Timeline end, In point, Out point, Start of the clip under the playhead, End of the clip under the playhead or Timecode. |
| Timecode | The timecode to jump to. Shown only when Go to is set to Timecode. Default 01:00:00:00. |
| From timeline start | Counts the timecode from the start of the timeline, so 00:00:10:00 means 10 seconds in. |
| Use current playhead | Copies the playhead's current timecode into the Timecode field. |
The Timecode field accepts more than a full timecode:
01:02:03:04.10:00, which means 10 seconds into the timeline's hour.01001000.+2:00 jumps 2 seconds forward. The key title then changes to Jump and shows the distance.Below the field, the settings show the exact timecode your entry stands for. The field turns red when the entry is not a valid timecode for this timeline, and amber when it is valid but outside the timeline.
Jumps to the next or previous edit point, the start or end of a clip, on the tracks you choose. Before you press, the key shows how far away the edit is and its timecode. At the end of the timeline it shows Last edit, and at the start First edit.
| Setting | What it does |
|---|---|
| Direction | Next edit or Previous edit. |
| Tracks | All video tracks, All audio tracks, Video + audio, or one track. Each track of the current timeline is listed by number and name, for example V2 - Titles. |
| Skip disabled tracks | On by default. Cuts on tracks you have switched off are ignored, like Resolve's own edit navigation. |
While the timeline is playing, the distance on the key is rounded to whole seconds, so the key stays readable. As soon as playback stops, it shows the exact distance again.
Sets the timeline's In point at the playhead. The key shows the In timecode and the duration of the range, Δ, and it lights up with an amber frame while the playhead is on the In point. Mark Out works the same way for the Out point.
Resolve's scripting interface can only set In and Out together. So when you set an In point and there is no Out point yet, SpliceDeck fills in the missing Out with the end of the timeline, or of the clip under the playhead if you choose that with Missing mark. Mark In works the same way the other way round, using the start of the timeline or clip.
A filled-in mark is shown dimmed and labelled auto, for example Out: auto (end), until you set it yourself. The key with the automatic mark says auto (press to set).
ImportantCheck an automatic Out point before you render the In/Out range or use Quick Export. If you only set an In, the render runs to the end of the timeline.
| Setting | What it does |
|---|---|
| Press | Mark at playhead (hold: clear), the default. Mark Clip (In/Out around the clip) sets In and Out around the clip under the playhead and shows the clip's name and duration. Clear In/Out turns the key into a dedicated clear key. |
| Marks | Video + audio, Video only or Audio only. With video or audio only, the key shows VIDEO or AUDIO. |
| Missing mark | Timeline start / end or Clip under the playhead. Where an automatic mark is placed. |
| Hold to clear | On by default. Clear this checkbox if you don't want a long press to clear the marks. |
When there is nothing to clear, the key briefly shows No In/Out. After a successful clear it confirms In/Out cleared.
Sets and trims the In and Out points. The strip shows both timecodes, highlights the one the dial is trimming, and shows the range duration and a small timeline map.
The In/Out Dial's strip with neither point set. The amber frame shows which point the dial trims.
The strip shows each trim on the same click, and Resolve follows. Each click moves the point by the step, or further when you spin quickly with acceleration on. A point can't be trimmed past the other one, so the In point always stays before the Out point. If you start trimming without any marks, the In point starts at the playhead and the Out point at the end of the timeline.
With Slide mode switched on, pushing the dial cycles In, Out and then Slide. In Slide, both points are highlighted and turning moves the whole range along the timeline while keeping its duration.
| Setting | What it does |
|---|---|
| Marks | Video + audio, Video only or Audio only. |
| Frames per tick | How far one click trims, from 1 to 600 frames. Default 1. |
| Acceleration | On by default. Faster spins trim further. |
| Slide mode | Off by default. Adds Slide to the push cycle. |
Shows the playhead as a large timecode, with hours, minutes and seconds on the first line and the frames below, and the timeline name underneath. Drop-frame timecode is shown with a semicolon.
Live Timecode on a dial: the format, the timeline name, the readout and what turning does.
Each press shows the next format, and the key remembers it:
Timecode. The playhead timecode.
Frames from start and Seconds from start of the timeline.
Remaining to Out point and Remaining to timeline end. When the playhead has passed the Out point or the end, the readout turns red and says PAST OUT or PAST END.
On a Stream Deck + dial, Live Timecode becomes a large readout on the touch strip. Turning the dial jogs the playhead one frame per click by default, and the strip shows the new timecode straight away. Push the dial or tap the strip for the next format.
If you would rather use the dial only as a readout, set Dial rotation to Change format, and turning moves through the formats instead.
NoteLive Timecode jogs through Resolve's scripting connection, not Turbo Jog. For smooth frame-by-frame jogging, use the Playhead Jog dial.
| Setting | What it does |
|---|---|
| Format | Timecode, Frames from start, Seconds from start, Remaining to Out point or Remaining to timeline end. |
| Timeline name | On by default. Shows the timeline's name under the readout. |
| Dial rotation | Jog frames, the default, Jog seconds or Change format. |
| Step per tick | How far one click jogs: 1 to 240 frames, or 0.1 to 60 seconds. Default 1. |
| Max updates/s | How many times a second the key is redrawn during playback, from 2 to 30. Default 30, or 15 on Linux. |
| Touch strip | Automatic (text on Linux / OpenDeck), Graphic or Text only. |
On the Media and Fusion pages, where Resolve has no playhead, the key explains this, for example No playhead on Media. While Resolve is busy saving or loading a page, the readout shows Saving… or Loading page… instead of a frozen timecode.
Markers are the notes you leave in a timeline: a shot to fix, a line to check, a beat to cut on. SpliceDeck lets you drop, find, recolour and remove them without reaching for the mouse.
The Markers group has six actions. Five are keys: Add Marker, Next Marker, Previous Marker, Delete Marker and Marker Color. The sixth, the Marker Dial, puts all of them on one dial of a Stream Deck +, with a map of every marker on the touch strip.
From left: Add Marker, Previous Marker, Next Marker, Delete Marker and Marker Color. Every key shows live information about the markers around the playhead.
NoteResolve only has a playhead on the pages with a timeline, so markers can be added on the Cut, Edit, Color, Fairlight and Deliver pages.
Adds a marker at the playhead with the colour, name, note and duration you set up for the key. The key shows its colour, the name it will use and how many markers the timeline has. On a marker it lights up and shows that marker's name.
| Setting | What it does |
|---|---|
| Color | The colour of new markers. Default Blue. |
| Hold the key | What holding the key does: Open marker details (Resolve's Markers panel) (default), Delete the marker under the playhead or Nothing (add on key down). |
| Name | The name of new markers. You can use the placeholders on the next page. Leave it empty to number the markers Marker 1, Marker 2 and so on. |
| Preview | Shows the name the next marker will get, worked out from your current timeline. |
| Note | Text saved in the marker's notes. The placeholders work here too, except {n}. |
| Duration (frames) | The length of the marker. Default 1. A marker that would run past the end of the timeline or clip is shortened to fit. |
| Add to | Timeline (default) or Clip under playhead (beta). |
NoteClip markers are a beta feature: on trimmed or retimed clips, a marker could land a few frames off. If you see this, please report it.
| Placeholder | Is replaced with |
|---|---|
{n} | A running number, one higher than the highest number already used with the same name. Numbering carries on after you delete markers and never repeats a name. |
{tc} | The timecode of the marker. |
{color} | The marker's colour, for example Red. |
{timeline} | The name of the timeline. |
{clip} | The name of the clip under the playhead. |
{frame} | The frame number of the marker. |
TipResolve does not accept a marker without a name, which is why an empty Name gives you Marker 1, Marker 2 and so on. A name like Fix {n} gives Fix 1, Fix 2, and {tc} check gives a name such as 01:00:12:08 check.
Out of the box, holding Add Marker for half a second opens Resolve's own Markers panel, the same panel you get from Mark > Modify Marker… in Resolve's menu. It is the quickest way to name a marker or write a note while you watch.
Park the playhead on a marker. The Add Marker key lights up and shows the marker's name.
Hold the Add Marker key for about half a second. SpliceDeck brings Resolve to the front and opens its Markers panel for that marker.
Change what you need in the panel: Time, Duration, Name, Notes, Keyword and Color. You can also click Remove Marker to delete it.
Close the panel to go back to editing.
If there is no marker under the playhead when you hold the key, SpliceDeck first adds one with the key's settings and then opens the panel for it. So one long press both adds a marker and lets you name it.
Because SpliceDeck has to wait to see whether you are holding, a short press adds the marker when you let go of the key. It still places the marker on the frame where you pressed, so this makes no difference to where it lands. Resolve allows only one marker on each frame, so a press where there already is one shows Marker exists.
NoteOpening the Markers panel works on macOS only, and needs the same Accessibility permission as Turbo Jog: System Settings > Privacy & Security > Accessibility, with Elgato Stream Deck switched on. Without it, or on Windows and Linux, the key shows Marker panel: macOS + Accessibility. On those systems, choose one of the other options below.
| Hold the key | What happens |
|---|---|
| Open marker details (Resolve's Markers panel) | The default, described above. Press adds a marker when you let go; hold opens the Markers panel. |
| Delete the marker under the playhead | Press adds a marker when you let go; hold deletes the marker under the playhead, and the key confirms with Deleted and the marker's name. This is how earlier versions of SpliceDeck worked, and keys you set up that way keep working like this. |
| Nothing (add on key down) | The key ignores holding and adds the marker the moment you press it down. |
TipPut two or three Add Marker keys side by side with different colours and names, for example a red Fix {n}, a yellow Music {n} and a green Select {n}. A review pass then becomes one press per note, and Next Marker can later jump through one colour at a time.
Resolve does not answer scripting requests while it is playing, so a normal marker request would have to wait. Add Marker notices playback and does it differently: it sends Resolve's own Add Marker shortcut (M) straight to Resolve at the moment you press, so the marker lands on exactly the frame you pressed on. When playback stops, SpliceDeck gives that marker the key's colour, name, note and duration.
Keys set to Clip under playhead (beta) don't use this method.
Move the playhead to the next or previous marker. Each key shows the marker it will jump to, how far away it is and its place among all markers, for example +3.3s · 2/3. At the ends the keys show Last marker or First marker.
| Setting | What it does |
|---|---|
| Only color | Jump only to markers of this colour. Default Any. The key shows a dot in the chosen colour. |
| Markers of | Timeline or Clip under playhead (beta). |
| Second line | Distance · index (default) or Marker timecode. |
Deletes the marker under the playhead. The key shows a dustbin with the colour and name of that marker, or No marker here. Use Edit > Undo in Resolve to bring a marker back.
| Setting | What it does |
|---|---|
| Tolerance (frames) | How close the playhead must be. Default 0: on the marker or inside its duration. |
| Hold deletes | The colour that hold, then press, deletes. Any deletes all markers. |
| Markers of | Timeline or Clip under playhead (beta). |
Changes the colour of the marker under the playhead and keeps everything else about it. The key previews the change: the marker's current colour, an arrow and the new colour, with the marker's name underneath. If the marker already has that colour, the key says so, for example already Red.
| Setting | What it does |
|---|---|
| Mode | Set color (default) or Cycle colors. |
| Color | The colour to set. Default Red. Only shown in Set color mode. |
| Markers of | Timeline or Clip under playhead (beta). |
NoteResolve has no command for changing a marker's colour, so SpliceDeck removes the marker and adds it again in the new colour, with the same name, note, duration and custom data. In Resolve's undo history this counts as two steps, so choose Edit > Undo twice to go back.
In the rare case that Resolve refuses to add the marker again, SpliceDeck puts the original back. If even that fails, it keeps a copy of the marker and the key shows Marker lost · press to restore. The next press of Add Marker or Marker Color, or a push of the Marker Dial, adds the marker back to its timeline or clip and shows Restored.
TipGive each colour a meaning and stick to it, for example red for fixes, yellow for sound notes and green for selects. Then set a Next Marker key to Only color Red to step from fix to fix, and a Marker Color key to Green to mark each one done.
Everything you do with markers, on one dial. The touch strip shows where you are among the markers, the next marker and how far away it is, and a map of every marker on the timeline with the playhead.
The Marker Dial's strip. The top line says where the playhead is, here After marker 1/3, or Marker 2/3 when it is on one. Below are the next marker's name and distance, and the map of all markers.
TipPut the Marker Dial next to the Playhead Jog dial. Spin the jog to find a moment, push the Marker Dial to mark it, and turn the Marker Dial to come back to it later.
| Setting | What it does |
|---|---|
| Color | The colour of markers added with a push. Default Blue. |
| Name, Preview, Note, Duration (frames) | The same as on Add Marker, including the name placeholders. |
| Only color | Turning and tapping only stop on markers of this colour. Default Any. |
| Markers of | Timeline or Clip under playhead (beta). With a clip, the map shows just that clip. |
| Push + rotate | Cycle colors (default) steps through the colours as you turn, or choose one colour to set. |
| Touch strip | Automatic (default), Also as dial image (OpenDeck) or Touch strip only. See the note below. |
NoteOpenDeck shows the strip as the dial's image, and Automatic does this for you on Linux. If you use OpenDeck on macOS or Windows and the strip stays blank, choose Also as dial image (OpenDeck).
| Action | Press | Hold |
|---|---|---|
| Add Marker | Add a marker at the playhead. | Open Resolve's Markers panel (macOS), delete the marker, or nothing. |
| Next Marker | Jump to the next marker. | Keep jumping forward. |
| Previous Marker | Jump to the previous marker. | Keep jumping back. |
| Delete Marker | Delete the marker under the playhead. | Then press within 2 s: delete all markers of a colour. |
| Marker Color | Set or cycle the marker's colour. | Cycle backwards. |
| Marker Dial | Push: add a marker, or show its note. Turn: jump. | Touch and hold the strip, then tap: delete the marker. |
The Clips group works on the clip under the playhead: cutting, colouring and flagging it, and on the Color page LUTs, grades, versions and stills.
There are ten actions: eight keys and two Stream Deck + dials, the Clip Color Dial and the LUT Browser. Color Version works on either.
From left: Split / Ripple Delete, Clip Color, Clip Flag, Clip Enable, Apply LUT and Grab Still.
The clip actions work on the video clip Resolve treats as current at the playhead, normally the one on the highest track. The keys follow the playhead and show that clip's name, colour, flags, LUTs or versions, and dim with No clip when there is none. To grade clip by clip, set the Playhead Jog dial to Turn: clip to clip (see Grading Clip by Clip).
Clip Color, Clip Flag and the Clip Color Dial have an Apply to setting:
| Apply to | Works on |
|---|---|
| Clip under the playhead | The current clip. The default, and the only target that lights the key up live. |
| Clip at the playhead on a video track | The clip at the playhead on the track you enter in Video track. |
| Selected media-pool clips | Every clip selected in the media pool, even before the project has a timeline. With none selected the key shows Select bin clips. |
ImportantApply LUT, the LUT Browser, Apply Grade (DRX) and Color Version change the clip's grade. Use Edit > Undo in Resolve to go back.
Two of the most common edits on one key, with no settings to set up. The key shows SPLIT and the name of the clip under the playhead, or hold: ripple del as a reminder when there is no clip. On pages other than Edit and Cut the key is dimmed, and a press shows Edit or Cut page.
Resolve's scripting interface has no command for splitting clips, so SpliceDeck uses Resolve's own Split Clips command, sent on the same fast stream as Turbo Jog.
| System | How the press splits |
|---|---|
| macOS | SpliceDeck chooses Timeline > Split Clips from Resolve's menu through Accessibility. No keystrokes are sent, so it works with any keyboard layout and shortcut set. It needs the Accessibility permission described in Turning On Turbo Jog; without it the key shows Split: allow Accessibility. |
| Windows | SpliceDeck sends Ctrl+\, Resolve's default Split Clip shortcut, while Resolve is in front. If you have changed that shortcut in Resolve, set it back for the key to work. |
| Linux | Splitting is not available. |
Ripple Delete goes through Resolve's scripting interface, so it works on every system, Linux included.
NoteOn a locked track Resolve refuses the ripple delete: the key shows an error and nothing is removed. Both edits can be undone in Resolve with Edit > Undo.
Gives the clip one of Resolve's 16 clip colours. The key shows the colour and the clip's name, and lights up when the clip already has that colour.
| Setting | What it does |
|---|---|
| Color | Orange (default), Apricot, Yellow, Lime, Olive, Green, Teal, Navy, Blue, Purple, Violet, Pink, Tan, Beige, Brown or Chocolate. Clear makes a key that removes the colour. |
| Media pool too | Also colours the clip's source clip in the media pool. Off by default. |
| Press again clears | Makes the key an on and off switch for its colour. Off by default. |
| Apply to, Video track | Which clips the key colours. See Choosing What a Key Applies To. |
Puts a flag on the clip. The key lights up when the clip has its flag, and shows a dot for every flag on the clip, or No flags. If Resolve refuses some of several clips, it shows, for example, 2/3 clips · Some refused.
| Setting | What it does |
|---|---|
| Flag | The flag colour. Red by default, or any of the 16 colours Resolve uses for flags and markers. |
| Press | Toggle (default) adds the flag, or removes it if it is there. Add only and Remove only never do the opposite, which is safer for many clips at once. |
| Apply to, Video track | Which clips the key flags. See Choosing What a Key Applies To. |
All 16 clip colours on one dial. The touch strip shows the colour you have dialled in, the clip's current colour and its name. Nothing changes in Resolve until you push.
The Clip Color Dial's strip, with the colour dialled in and the clip it will colour.
| Setting | What it does |
|---|---|
| Media pool too | Also colours the source clip in the media pool. |
| Apply to, Video track | As on the Clip Color key. With another target, turning starts from the last colour you applied. |
Switches the clip under the playhead on and off. A disabled clip stays in the timeline, but Resolve skips it when you play. The key shows a switch with Clip on, or Clip off in amber, and the clip's name. It is lit while the clip is enabled, and has no settings.
TipTo compare two stacked takes, switch the top clip off to see the one underneath.
Puts a LUT on a node of the clip under the playhead. The key shows the LUT's name and the node, and lights up when that LUT is on that node. If the node has another LUT, the key names it, for example Node 1: Rec709. If the clip has fewer nodes, it warns No node 3.
| Setting | What it does |
|---|---|
| LUT | The LUT to apply. Start typing to choose from the LUTs Resolve knows. Use a path relative to Resolve's LUT folder, such as Film Looks/My Look.cube, or a full path. |
| Node | The node the LUT goes on. Default 1. |
| Refresh LUT list | On by default. If Resolve doesn't know the LUT yet but the file is in a LUT folder, Resolve refreshes its LUT list once and SpliceDeck tries again. |
| Rescan LUTs | Reloads the list of LUTs to choose from. |
| Hold | Show the node's LUT (default). Rescan LUTs + re-apply makes Resolve reread its LUT folders first, which picks up a LUT file you just edited. Remove LUT (experimental) tries to take the LUT off; Resolve's scripting does not officially support this, and if it refuses the key shows Remove on Color page. |
Copy the file into Resolve's LUT folder, or a subfolder of it: /Library/Application Support/Blackmagic Design/DaVinci Resolve/LUT on macOS, C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\LUT on Windows, or /opt/resolve/LUT on Linux.
In the key's settings, click Rescan LUTs and choose the new LUT.
Keep Refresh LUT list on and press the key. The first press can take a little longer while Resolve refreshes.
NoteIf a key shows LUT not found, check that the file really is in a LUT folder. SpliceDeck only asks Resolve to refresh when the file is there, and not again for the same LUT within a short time.
Browse every LUT Resolve knows on a dial, and apply the one you want to a node of the clip under the playhead. The strip shows the LUT you have dialled in, its place in the list, the node, and the LUT on the node now.
The LUT Browser's strip: the node (N1) at the top, and Now: the LUT on the node. This example has no LUTs installed yet.
| Setting | What it does |
|---|---|
| Node | The node LUTs go on. Default 1. Pushing and turning the dial changes it too. |
| Refresh LUT list | As on the Apply LUT key. |
TipAudition looks with the LUT Browser, and keep an Apply LUT key for the LUT you use on every job, such as your camera's conversion LUT on node 1.
Grabs a still into the current album of Resolve's gallery, and can export it to a folder at the same time. The key shows how many stills the album has and, under the title, the album's name, the export folder, or which frames it grabs.
| Setting | What it does |
|---|---|
| Grab | Clip under the playhead (default), Every clip (first frame) or Every clip (middle frame). The last two grab one still per clip of the timeline, and the key's title becomes Grab All. |
| Outside Color page | Never switch pages (default) or Hop to Color, grab, come back (switches Resolve's page). See the note below. |
| Export to | A folder to save the still to as well. Leave it empty to keep stills in the gallery only. Use default folder fills in a sensible folder for your system. |
| Format | PNG (default), JPEG, TIFF or DPX. |
| File prefix | The start of the exported file names. Empty uses the timeline's name and an underscore. |
NoteResolve may only grab stills on the Color page. With Never switch pages, the key then says Color page only when you press it on the Edit or Cut page. To grab with one press from any page, choose Hop to Color: Resolve switches to the Color page for a moment, grabs, and switches back.
The export folder must be a full path; you can start it with ~ for your home folder. SpliceDeck checks that it can write to the folder before it grabs. If the grab works but the export fails, the key shows Grabbed · Export failed: the still is in the gallery, so don't press again or you get a second copy.
Steps through the colour versions of the clip under the playhead. The key shows the current version's name, the direction and its position, for example Next · 2/4. It is dimmed when the clip has fewer than two versions.
| Setting | What it does |
|---|---|
| Direction | Next (default) or Prev. |
| Versions | Current type (default) follows the type of the version the clip uses now; or choose Local or Remote. |
| Wrap around | On by default: after the last version comes the first. Off: the key stops and shows No more versions. |
Applies a saved grade to the clip under the playhead in one press. The key shows the grade file's name and the keyframe option, or Choose a grade.
| Setting | What it does |
|---|---|
| Grade file | The full path to a .drx file. To make one, right-click a still in Resolve's gallery and choose Export. |
| Keyframes | No keyframes (default), Source TC aligned or Start frames aligned. |
TipA row of Apply Grade keys, one per look, makes a quick look palette for the Color page. If a file has moved, its key shows Grade file missing.
A busy timeline has many layers: picture and graphics on the video tracks, dialogue, music and effects on the audio tracks, and captions on the subtitle tracks. The track keys let you switch those layers on and off, lock them and isolate one of them without reaching for the track headers. The timeline keys take you between the timelines of your project and make a safe copy of the one you are working on.
This section describes the four track actions, followed by the four timeline actions.
Every track key shows the short code Resolve uses in its track headers, followed by the real name of the track:
A key points at a track by its number, so V2 always means the second video track of whichever timeline is open. If the open timeline has fewer tracks, the key shows Missing and how many tracks of that type the timeline has. Nothing happens when you press it.
Track On/Off. Lit while the track is enabled.
Track Lock. An open padlock until the track is locked.
Track Solo / Isolate. Lights up while its track is the only one playing.
When you add or delete tracks, the numbers of the tracks below move. If you want a key to stay with a particular track, for example your Dialogue track, switch on Match by name in the key's settings. The key then follows the track by its name wherever it moves, and shows Missing if no track has that name any more.
TipGive your important tracks real names in Resolve before you use Match by name. Resolve's default names such as Video 2 are only positions, so they can't identify a track that moves.
Enables or disables a track, a group of tracks or every track of one type. The key shows the track code, the track's real name and ON or OFF. While the track is enabled the key is lit. While it is disabled the key is dark and the track code is struck through in red. A small padlock appears when the track is locked, and an S badge when the track is soloed by a Track Solo key or the Track Dial.
| Setting | What it does |
|---|---|
| Track type | Video, Audio or Subtitle. |
| Controls | One track, A group of tracks or Every track of the type. |
| Tracks | For a group: the track numbers, for example 1-4, 6. Pressing switches the whole group off when every track in it is on, otherwise it switches them all on. |
| Track | For one track: pick it from the list, which shows the live names of the open timeline, for example A2 - Music. Numbers the timeline doesn't have yet are marked not in this timeline, so you can set up keys for tracks you will add later. |
| Match by name | Follows the track by its name when tracks are added or deleted. |
| On press | Toggle, Turn on or Turn off. |
With a group or every track of the type, the key shows the group and ON, OFF or how many tracks are on, for example 2/4 ON. If some numbers in the group don't exist in the open timeline, the key says how many are missing.
TipTurn on and Turn off are useful in Stream Deck multi-actions. One multi-action can, for example, switch on your dialogue group and switch off the music group, whatever state they were in before.
NoteIf Resolve refuses to change a track because it is locked, the key flashes Locked with a padlock. Unlock the track with Track Lock or in Resolve, then press again.
Locks or unlocks a track. The key shows a padlock, the track code and the track's name. While the track is locked, the key is lit and the padlock is closed. If the track is also disabled, OFF appears in the top corner.
Settings: Track type, Track and Match by name work as on Track On/Off. On press offers Toggle, Lock and Unlock.
Isolates one track: every other track of the same type is switched off, so only this track plays or shows. Press again and every track goes back exactly to how it was, including tracks you had already disabled before. Video and subtitle keys say SOLO. Audio keys say ONLY.
Settings: Track type, Track and Match by name, as on Track On/Off.
SpliceDeck remembers the restore point for each timeline, and keeps it when Resolve, the Stream Deck app or your computer restarts. Some things to know:
NoteOn audio, Track Solo / Isolate is not the solo button of the Fairlight mixer. Resolve's scripting interface has no access to the mixer solo, so the key works by disabling the other audio tracks instead. That is why audio keys say ONLY.
Puts a whole bank of tracks on one Stream Deck + dial. The touch strip shows every track of the chosen type as a row of chips, with its on, off and lock state, and the selected track's code, name and state above them. Timelines with many audio tracks get an extra overview row under the chips.
The Track Dial's touch strip on a timeline with three video tracks. V1 is selected and on, V3 is switched off.
Settings: Track type chooses the bank the dial starts with. The dial remembers the selected track between sessions.
TipHold and release is a quick way to check one track on its own. Hold the dial on your dialogue track, release to hear it alone, then hold and release again to bring everything back.
The timeline keys work with the timelines of the project that is open in Resolve. They never load a timeline you didn't ask for, and while Resolve is still opening a heavy timeline they show Opening… and ignore extra presses, so Resolve doesn't load the same timeline twice.
Opens one particular timeline. The key shows the timeline's name and its position in the project, for example 2/5. It lights up and says Current while that timeline is open. A new key says Pick a timeline until you choose one in its settings, and a key whose timeline isn't in the open project says Not in project.
| Setting | What it does |
|---|---|
| Match by | This timeline (follows renames) keeps the key on the timeline you pick, even when you rename it or the order of the timelines changes. Position in the project always opens the timeline at a given position, whatever project is open. |
| Timeline | The timeline to open, chosen from the timelines of the open project. |
| Position | For Position in the project: 1 for the first timeline, 2 for the second and so on. |
| Press again to go back | When on, the lit key shows where a second press goes, for example ← Main Edit. It is ignored inside multi-actions. |
TipPosition in the project is ideal for template projects. If every project you build from a template has its social cut as the second timeline, one key opens it in all of them.
NoteIf Resolve takes a long time to load a timeline, the key shows Still switching… for a moment. The timeline still opens, and the key lights up as soon as Resolve has finished.
Steps through the timelines of the project in order. The key always shows the name of the timeline it will open, with an arrow and that timeline's position, for example → 2/3. A press opens exactly the timeline shown on the key.
Settings: Direction is Next or Previous. Wrap around is on by default and jumps from the last timeline back to the first. With it off, the key shows Last one or First one at the end of the list. A project with a single timeline shows Only timeline.
Scrolls through your timelines on the touch strip without opening them, so scrolling past heavy timelines stays instant. The strip shows the highlighted timeline's position and name, its frame rate and duration, and a scroll bar. The header says CURRENT for the open timeline and PRESS TO OPEN in amber for any other.
The Timeline Browser parked on the current timeline: first of three, 24 fps, 1 minute 40 seconds long.
| Setting | What it does |
|---|---|
| Rotate | Browse, press to open (default), or Switch where rotation stops, which opens the timeline you stop on. |
| Return to current after (s) | Seconds without turning before the highlight goes back to the current timeline. Default 8. 0 keeps the highlight until you touch the strip. |
| Only names containing | Lists only timelines whose names contain this text, for example Social. Upper and lower case don't matter. |
Makes a copy of the current timeline with one press, named as the next version: Main Edit becomes Main Edit v2, then Main Edit v3. Before you press, the key shows the name the copy will get. Afterwards it shows a green tick, the new name and Created, or Opened if the copy was opened.
| Setting | What it does |
|---|---|
| Naming | Next version (suffix) or Custom name template. |
| Name suffix | Added to the timeline's name. Default v{n}. |
| Name template | The whole name of the copy, for example {name} backup {n} or Safety {date}. |
| Next name | A live preview of the name the next copy will get. |
| Open the copy | Opens the copy straight away. Off by default, so you keep working on the timeline you had open. |
Names can use these tokens:
| Token | Becomes |
|---|---|
| {n} | The next free number. SpliceDeck looks at every timeline in the project, so the numbering never repeats a version that already exists. |
| {date} | Today's date as YYYY-MM-DD. |
| {name} | The name of the current timeline (templates only). |
Press Duplicate Timeline before every big change, such as a restructure or a round of client notes: the copy keeps the timeline as it was. Duplicating Main Edit v3 with the default suffix gives Main Edit v4, not Main Edit v3 v2. If a name without {n} is already taken, SpliceDeck adds (2), (3) and so on.
NoteCreated, not opened in amber means the copy exists but Resolve couldn't open it. Don't press again, or you will get a second copy.
When the edit is done, the last step is getting it out of Resolve. The render keys start renders with your Resolve render presets, follow their progress and stop them, without leaving the page you are on. The export keys write everything else you hand over: timelines for other applications, frame grabs, stills, YouTube chapters and project backups.
This section describes the six render actions, followed by the five export actions.
Render keys show the progress of a render as a ring that fills up, with the percentage in the middle and the time remaining underneath. Render Status, Stop Render, Render Queue and the Render Dial follow any render, including renders you start yourself on Resolve's Deliver page. Render Preset and Quick Export show the progress of their own renders, and dim to Busy while something else is rendering.
Render Status while a render is 62% done, with 41 seconds to go.
Stop Render turns red while something renders, with the progress underneath.
Render Preset dims to Busy while another render is running.
On Stream Deck +, the Render Dial's touch strip also shows the clock time the render will finish.
When a render finishes, its key shows Done, the render time and the time it finished, for example Done 1m 12s at 14:05. A failed render shows Render failed. Press the key once to dismiss the result.
Every render and export key has a Folder setting. Leave it empty and the files go to the default export folder:
| Computer | Default export folder |
|---|---|
| macOS | ~/Movies/SpliceDeck |
| Windows | %USERPROFILE%\Videos\SpliceDeck |
| Linux | SpliceDeck inside your Videos folder, usually ~/Videos/SpliceDeck |
To use another default folder for every key, open the settings of any SpliceDeck key, expand SpliceDeck settings and type the folder in Default export folder. Devices, Profiles and Settings describes all of these settings.
~, %VAR% and $VAR are expanded, so ~/Deliveries works on every computer.Client A is placed inside the default export folder. Missing folders are created.The File name setting is a template. These tokens are replaced when you press the key:
| Token | Becomes |
|---|---|
| {project} {timeline} | The names of the open project and timeline. |
| {preset} | The render preset (render keys only). |
| {date} {time} | Today's date as YYYY-MM-DD, and the time as HHMMSS. |
| {datetime} | Both, joined: YYYY-MM-DD_HHMMSS. |
| {fps} {tc} | The timeline frame rate, and the timecode at the playhead with dashes instead of colons. |
| {format} | The export format (export keys only). |
Nothing is overwritten unless you ask for it. When a file with the same name exists, render keys add _2, _3 and export keys add (2), (3). Switch on Overwrite to replace the old file.
Renders the current timeline with one of your Resolve render presets. One press loads the preset, sets the folder and file name, adds the job to the render queue and starts it. When idle, the key shows the preset's name and the range it renders, Timeline or In/Out. A + badge means the key only adds the job to the queue.
The key tells you when something stops it from rendering:
| The key shows | Meaning |
|---|---|
| Preset missing | The open project has no render preset with this name. Choose another preset, or save the preset in Resolve. |
| Already rendering | Resolve is already rendering. Wait for it to finish, or stop it first. |
| Set In/Out first | Range is In/Out, but the timeline has no In and Out marks. |
| Out → end | A mark lay outside the timeline, so the range was trimmed to the timeline. The render runs as normal. |
| Queued | Queue only is on: the job was added to Resolve's render queue with the file name shown, but not started. |
NoteJust like choosing a preset on Resolve's Deliver page, pressing Render Preset loads the preset into the project's render settings. If you have changed render settings by hand on the Deliver page, those changes are replaced.
| Setting | What it does |
|---|---|
| Preset | The render preset, chosen from the presets of the open project. Click ↻ to reload the list after you have saved a new preset in Resolve. Default H.264 Master. |
| Range | Whole timeline or In/Out. |
| Folder | Where the file goes. Browse… opens a folder dialog, Use default folder empties the setting. The full folder is previewed underneath. |
| File name | The file name template. Default {timeline}_{date}. |
| Overwrite | Replaces an existing file with the same name. Off: the new file gets _2, _3 and so on. |
| Queue only | Adds the job to Resolve's render queue without starting it. |
| Open Deliver | Switches Resolve to the Deliver page when the render starts. |
| Clean up | Removes this key's job from the render queue once it is complete. Failed jobs stay, so you can retry them. |
TipPut several Render Preset keys side by side with Queue only switched on, for example a master, a review copy and a social version. Press each one to queue its job, then press Render Queue to render them all in one go.
TipUse Range In/Out to send a client one scene. Mark In and Mark Out around the scene, then press the key.
If the Stream Deck app restarts while a render is running, Render Preset picks up its render again and carries on showing the progress.
Puts Resolve's Quick Export presets on a key, such as H.264 Master, YouTube or Vimeo, with SpliceDeck's file name templates and folders. The key shows the preset's name and Quick Export.
Resolve's own Quick Export reports no progress and makes the computer wait until it is finished. SpliceDeck avoids both problems where it can, so the deck always stays responsive:
Stopping a Resolve Quick Export is best effort, because Resolve doesn't let scripts cancel it. The key shows Stopping… until Resolve is idle again. If Resolve carries on, the key says Still busy and stop in Resolve, so you can stop it there.
NoteThe Resolve Quick Export mode has not yet been verified against a live export. The live progress mode uses the same render path as Render Preset.
| Setting | What it does |
|---|---|
| Preset | The Quick Export preset. Click ↻ to reload the list. Default H.264 Master. |
| Folder | Where the file goes, with Browse… and Use default folder, as on Render Preset. |
| File name | The file name template. Default {timeline}. |
| Overwrite | Replaces an existing file with the same name. |
| Progress | Live % + ETA when possible (default) uses a render job for the five presets above. Always Resolve Quick Export always uses Resolve's Quick Export and leaves the project's render settings untouched. |
| Keep job | With live progress: keeps the job in Resolve's render queue after it is complete. |
NoteWith Live % + ETA when possible, the preset is loaded into the project's render settings, just as on the Deliver page. Choose Always Resolve Quick Export if you want your render settings left exactly as they are.
Shows Resolve's render queue and renders it. When idle, the key shows how many jobs are waiting and how many are done, for example 2 ready · 3 done, with the number of waiting jobs in a badge. An empty queue shows Empty, and a queue with only finished jobs shows All done. While rendering, the key shows the progress ring with the job's name, or Job 2/4 when it is rendering several jobs it started.
Render Queue has no settings.
Stops the current render. The key is dim and says Not rendering while nothing renders. As soon as a render starts, it turns red and shows the progress and time remaining, or Quick Export while a Quick Export runs.
Stop Render has no settings.
ImportantStop Render doesn't ask for confirmation. Keep it away from keys you press often, or use the double press on Render Preset, Quick Export and the Render Dial instead.
Follows every render, including renders started on Resolve's Deliver page. While rendering it shows the progress ring with the timeline's name and the time remaining. When idle it shows Idle and No render, or how many jobs are waiting in the queue. After a render it shows Done with the render time and the clock time it finished, or Render failed.
Render Status has no settings.
When Resolve renders something that isn't in its render queue, for example a Quick Export started from Resolve's own menu, there is no percentage to show. Render Status then shows a spinner, In Resolve and the time since it started.
TipRender Status is worth a key on every page of your profile. Start a long render, switch to another Stream Deck page and carry on working, and you can still see at a glance how far the render has got.
A render console on one Stream Deck + dial. When idle, the touch strip shows the highlighted preset and its position in your list, for example Render 1/3, with the format and range underneath. While rendering, it shows the progress, the time remaining and the clock time the render will finish, for any render, including ones started in Resolve.
The Render Dial with the first of three presets highlighted, ready to render the whole timeline.
After a render, the strip shows Done with the finish time, the render time and the file name, or Render failed. Push, tap or turn the dial to dismiss it.
The Render Dial has the same Range, Folder, File name, Overwrite, Queue only, Open Deliver and Clean up settings as Render Preset. Its file name template is {timeline}_{preset} by default, so each preset gets its own file.
Instead of one preset, it has Favourites: tick the presets the dial cycles through. With none ticked, the dial cycles through every render preset of the project. Click ↻ to reload the list from Resolve.
The export keys write files from your project without changing the project itself. They all work the same way:
The settings of every export key end with a Will write preview. It shows the full path of the file the next press will write, and warns about problems before you press, such as a variable your computer doesn't know or a folder that can't be written to. Next to the Folder setting, Choose… opens a folder dialog. If file exists: overwrite replaces a file with the same name. When it is off, the new file gets (2), (3) and so on.
Large exports, such as a project backup with stills or a long AAF, can keep Resolve busy for a while. While Resolve is busy it doesn't answer anything else, so:
If an export takes longer than expected, the key shows Still exporting… and keeps waiting for Resolve to finish, so you never get a false failure or a duplicate file.
TipStart long exports when you are about to take a break. The deck tells you with a flash and a green tick when the file is ready.
Exports the current timeline, a timeline by name or every timeline of the project as an interchange file, for example FCPXML for Final Cut Pro, an EDL or an AAF for Avid. The key shows the format and the timeline it will export, for example FCPXML and 1.10 · Main Edit.
| Setting | What it does |
|---|---|
| Format | The export format. See the list on the next page. |
| Timelines | Current timeline, Timeline by name or Every timeline (one file each). |
| Timeline name | For Timeline by name: the timeline to export. |
| Folder, File name | Where the file goes and its name. Default {timeline}_{date}. |
| Dial formats | On a dial: the formats it cycles through. None selected means every format this project can export. |
Export Timeline never switches the current timeline, even when it exports another one. Every timeline (one file each) writes one file for each timeline, named with {timeline}. If your template doesn't contain {timeline}, the timeline's name is added at the end. The key then flashes how many timelines it exported, for example 3 timelines.
| Group | Formats |
|---|---|
| Final Cut / Premiere | FCPXML 1.10, FCPXML 1.9, FCPXML 1.8, FCP 7 XML (.xml) |
| EDL | EDL (CMX 3600), EDL with CDL, EDL with SDL, EDL of missing clips |
| Avid | AAF (new media), AAF (existing media), ALE, ALE with CDL |
| Other | OpenTimelineIO (.otio), DaVinci Resolve Timeline (.drt), CSV edit list, Tab-separated edit list (.txt) |
| HDR metadata (.xml) | HDR10+ Profile A, HDR10+ Profile B, Dolby Vision 2.9, Dolby Vision 4.0, Dolby Vision 5.1 |
Formats your version of Resolve doesn't offer are marked not in this Resolve in the list and can't be chosen.
Export Timeline on a Stream Deck + dial: turn to change the format, push to export Main Edit.
NoteHDR10+ and Dolby Vision metadata only exist when those controls are switched on in the project, on the Color page. Until they are, the key warns you before you press with HDR10+ off or Dolby Vision off in amber, and a press fails with Needs HDR grade. Unless you choose them as dial formats, the dial skips these formats while they can't export anything.
TipPut three or four formats you send often in Dial formats, for example FCPXML 1.10, EDL and AAF. One dial then covers every hand-over to another suite.
Saves the frame under the playhead as an image file. The key shows Frame and the image format. After a press it flashes the timecode of the frame it saved.
Settings: Format is PNG, JPEG, TIFF, DPX or BMP. File name defaults to {timeline}_{tc}, where {tc} is the timecode of the exact frame that was saved. Folder and If file exists: overwrite work as described above.
NoteResolve can only save the current frame on a page with a timeline viewer: Cut, Edit, Color, Fairlight or Deliver. On the Media and Fusion pages the key flashes an error.
Exports every still in the current album of Resolve's gallery. The key shows how many stills the album holds, for example 12 stills, with the album name and the format. It shows No album when the project has no current album.
| Setting | What it does |
|---|---|
| Current album | Shows the album and its number of stills. Change the album in Resolve's gallery. |
| Format | PNG, JPEG, TIFF, DPX, DRX (grade), Cineon or BMP. |
| File prefix | Added to the start of every file name. Default {project}_. |
| Replace earlier stills with this prefix | Off: a second export uses prefix(2)_, so earlier stills are never replaced. |
To grab one new still and export just that one, use the clips group's Grab Still key instead.
Turns the markers of the current timeline into a chapter list, ready for a YouTube description, a spreadsheet, a document or a video file. Each marker's name becomes the chapter title. The key shows the style and how many markers it will use, for example 3 markers.
| Setting | What it does |
|---|---|
| Style | YouTube chapters (0:00 Title) as .txt, Marker CSV as .csv, Markdown list as .md, or FFmpeg metadata (mux into MP4/MKV) as .ffmeta. |
| Marker color | Any, or one marker colour, so you can keep chapter markers apart from your notes. |
| Folder, File name | Where the file goes and its name. Default {timeline}_chapters. |
Below the settings, a text box shows the chapters exactly as they will be written. Click Copy to copy them, for example straight into a YouTube description, or Refresh after you have changed markers.
YouTube only shows chapters that follow its rules. SpliceDeck applies them for you and tells you when your markers don't fit:
The CSV style has a row for each marker with its timecode, time, frame, colour, name, note and duration.
Saves a timestamped backup of the current project as a .drp file, which you can import into any Resolve. The key shows Backup and the project name, and after the first backup the time it was made, for example Backup 14:05. With Save the project before the backup switched on, the key says Save+Backup.
| Setting | What it does |
|---|---|
| Folder, File name | Where the backup goes and its name. Default {project}_{datetime}, so every backup gets its own file. |
| Include stills and LUTs | Adds the project's gallery stills and LUTs to the backup. The key shows +stills. Off by default, because it makes the backup much slower. |
| Save the project before the backup | Saves the project first, like pressing Cmd+S or Ctrl+S, so the backup includes your latest changes. |
ImportantResolve backs up the project as it was last saved. Unless Save the project before the backup is on, changes you haven't saved yet are not in the backup, and the key's flash says Last saved state to remind you.
NoteThe project must be in the folder that is currently open in Resolve's Project Manager. If the backup fails, open the Project Manager, go to the folder that contains the project and press again.
A backup with stills can take minutes. Meanwhile the key shows the time it has been running, and the other keys behave as described in While an Export Runs.
TipPress Export Project Backup at the end of each day, with the folder set to a drive that is backed up or synced. You then have a dated copy of the project for every day of the job.
Some of the things you do most often in Resolve have nothing to do with a particular clip: moving between pages, saving, checking the project's frame rate before an export, or restoring the window layout you like for grading. The core keys put these on the deck, together with Resolve Status, which shows whether SpliceDeck is connected.
This section describes switching pages, saving, project information and settings, the Context Key, layout presets and keyframe modes, and ends with a reference for the Resolve Status key. Live Timecode also belongs to this group and is described in Navigating the Timeline.
Switch Page set to the Edit page, lit because the Edit page is open.
Page Dial on Stream Deck +: the current page and a ribbon of every page in the rotation.
Opens one Resolve page. The key shows the page's name and symbol in that page's colour, and lights up while the page is open, even when you change pages with the mouse. While a heavy page such as Fusion or Color is loading, the key stays lit and says loading….
Settings: Page is Media, Cut, Edit, Fusion, Color, Fairlight or Deliver. With Toggle back on, the lit key shows where a second press goes, for example ← Edit.
Moves through Resolve's pages with one dial. The touch strip shows the current page and a ribbon of all the pages in the rotation, with the current one lit. Every click of the dial moves the ribbon at once, but Resolve only opens the page you stop on, so spinning from Edit to Deliver doesn't load Fusion and Color on the way. A single click opens its page straight away.
| Setting | What it does |
|---|---|
| Pages | The pages in the rotation. Ctrl-click or Cmd-click to choose several. None selected means all pages. |
| Press opens | The page a push opens. Default Edit. |
| Rotation | Opens the page it stops on (default), or Only selects (push opens), where turning only moves the highlight and a push opens the selected page. |
| Touch strip | Automatic (text on Linux / OpenDeck), Graphic or Text only. |
TipMost edits only use a few pages. Select just Edit, Color, Fairlight and Deliver in Pages, and every click of the dial lands on a page you need.
Saves the current project. The key shows Save and how long ago the deck last saved this project, for example deck save 4m ago. Before the first save from the deck it says no deck save yet.
Settings: Show age shows or hides the time since the last deck save. Amber after (min) turns the key amber with a ! badge when the last deck save is older than this. It is 0, which means off, by default.
NoteResolve's scripting interface can't see saves you make with Cmd+S or Ctrl+S, with Live Save or with Resolve's own auto save. That is why the key says deck save: it counts only saves made by Save Project and Auto-Save keys. The time is remembered for each project, even when you restart.
If a save takes longer than 90 seconds, for example on a very large project or a slow database, the key shows Still saving… and Resolve is busy. This isn't an error: Resolve carries on saving.
While any Auto-Save is running, the Save Project and Resolve Status keys show an AUTO badge with the number of Auto-Saves. The badge turns amber when one of them is on a Stream Deck page you can't see.
TipIf you always save from the deck, set Amber after (min) to, for example, 15. The key turns amber to remind you when it is time to save again.
Saves the project at a regular interval. While it is off, the key is dim and shows Off and the interval, or the time since the last deck save. While it is on, the key shows AUTO, a countdown ring and the time to the next save, for example 4m, then 45s in the last minute.
| Setting | What it does |
|---|---|
| Every (min) | Minutes between saves, from 1 to 60. Default 5. |
| Keep saving when hidden (min) | How long the key keeps saving while it is on a Stream Deck page or profile you can't see: 0, 10, 30, 60 or 240 minutes. Default 10. With 0 it pauses as soon as it is hidden. When the time is up, it waits until you show the key again. |
Auto-Save never interrupts you. It waits, and tells you why under the countdown, while:
| The key shows | Auto-Save is waiting because |
|---|---|
| rendering | Resolve is rendering. The ring turns amber and the countdown says paused. |
| playing | The playhead is moving, for example during playback or recording. |
| untitled | The project is still called Untitled Project. Save it once with a name. |
| slow save | The last save is still running. |
| waiting | Resolve isn't connected. |
| retrying | The last save failed. The ring turns red and Auto-Save tries again. |
Auto-Save keeps its state when you restart, and several Auto-Save keys never save twice at the same moment.
NoteStream Deck reports a deleted key in the same way as a hidden one. Keep saving when hidden (min) is what stops a deleted Auto-Save key, so keep it short. To stop every Auto-Save at once, hold Save Project.
Shows the details of the open project on five cards. The dots at the top of the key show which card you are on.
| Card | Shows |
|---|---|
| Project and database | The project's name and the database it is stored in. |
| Timeline | The current timeline and how many timelines the project has. |
| Frame rate | The timeline frame rate, with DF for drop frame, and the timeline's start timecode. |
| Resolution | The timeline resolution and its aspect ratio, for example 1920×1080 and 16:9. |
| Color science | The project's colour science, for example DaVinci YRGB, and the timeline colour space. |
Settings: Card chooses the card the key shows. The key remembers the last card you pressed to. Pin to this card keeps the key on that card. The settings also show all the details on one line.
TipA Project Info key pinned to Frame rate next to your render keys is a quick check before every delivery: you see straight away whether the timeline is 23.976 or 25 fps.
The details update by themselves when you open another project or timeline. If Resolve can't report a value, the card shows unavailable and SpliceDeck tries again a little later.
Opens Resolve's File > Project Settings… window, where you set frame rate, resolution and colour science. The key shows the name of the open project.
Resolve's scripting interface can't open this window, so SpliceDeck uses Resolve's own menu. On macOS it needs the same Accessibility permission as Turbo Jog; without it the key shows Settings: allow Accessibility. On Windows it sends Resolve's default shortcut, Shift+9.
NoteWhile Project Settings is open, Resolve pauses all scripting, so the other keys wait or show Offline until you close the window.
A key that becomes a different action on each Resolve page. Put eight Context Keys on a Stream Deck page, give them slots 1 to 8, and one page of keys serves Media, Cut, Edit, Fusion, Color, Fairlight and Deliver. It follows the page as soon as it changes, including while the Page Dial is still turning.
| Setting | What it does |
|---|---|
| Slot | 1 to 8. Each slot has a default action on every page. Slot 1, for example, is Split on Edit and Cut, Grab Still on Color, Track On/Off on Fairlight and Render Preset on Deliver. |
| Media, Cut, Edit, Fusion, Color, Fairlight, Deliver | Optional. Pick another action for that page, or Blank for an empty key. |
The action on a Context Key uses its default settings. If you need an action with custom settings, such as a coloured Add Marker, put that action on its own key.
TipContext Keys are an alternative to the bundled SpliceDeck profile for one-page layouts, or for Stream Deck models without dials. The profile gives every page its own full layout; Context Keys give you one layout that adapts.
Loads one of the user interface layouts you have saved in Resolve under Workspace > Layout Presets, or steps through a list of them. The key shows the preset's name. The key whose preset was loaded last from the deck is lit and says loaded. A new key says Set a preset name.
| Setting | What it does |
|---|---|
| Preset name | The exact name of the layout preset, for example Grading 2-up. Names you have loaded before are suggested as you type. |
| Cycle list | Optional: one preset name per line. Each press loads the next preset of the list, and the key shows its position and the next name, for example 1/3 · next: Audio. |
Resolve's scripting interface can't list layout presets, so you type the name yourself. Upper and lower case matter. If Resolve doesn't find the name, the key flashes Preset not found, and the settings remind you to check the spelling next time you open them.
Sets Resolve's keyframe mode to All, Color or Sizing. This action is experimental and marked BETA on the key.
Settings: Press is Cycle All → Color → Sizing, Set All, Set Color or Set Sizing.
Resolve 20 doesn't tell scripts which keyframe mode is active, and a mode you choose with the mouse in Resolve can't be seen by SpliceDeck. So the keys never claim to know the current mode:
TipPut three Keyframe Mode keys side by side, set to Set All, Set Color and Set Sizing. The one you pressed last is marked, so you can see at a glance which mode you chose.
Getting Started describes how to use Resolve Status to check the connection. This is a summary of everything the key can show.
Connected. The project name, with a green dot.
Resolve offline. Start DaVinci Resolve.
Can't connect. Check you have Resolve Studio, with external scripting set to Local.
Shows whether SpliceDeck is connected to Resolve. When connected, the key shows the project, timeline, page or Resolve version, with more detail underneath and a dot in the corner. The dot is green for DaVinci Resolve Studio. It turns amber, with Not Studio, if Resolve reports that it isn't the Studio edition.
Settings: Show is Project, Timeline, Page or Resolve version.
Resolve Status also tells you what the deck is doing in the background:
| Badge | Meaning |
|---|---|
| AUTO 2 | Two Auto-Save keys are running. Amber when one of them is on a page you can't see. Hold Save Project to stop them all. |
| Saving… | A save from the deck is running. |
| Loading page… | Resolve is still opening a page you asked for. |
| Loading layout… | Resolve is still loading a layout preset. |
When SpliceDeck can't reach Resolve, every other key shows the reason too, for example Offline or Script off, and recovers by itself once the problem is solved. Help and Troubleshooting lists every state and how to fix it.
TipSet Show to Timeline if you often work with several timelines. The Status key then doubles as a reminder of which timeline you are working on.
SpliceDeck works the same way on every Stream Deck and on every computer it supports. A few features depend on the hardware you have or on what your operating system allows, and this section explains those differences. It also covers SpliceDeck's own settings, how SpliceDeck keeps your deck in step with Resolve without slowing Resolve down, and the languages it speaks.
Every SpliceDeck key action works on every Stream Deck model with keys. Dial actions need a Stream Deck with dials. On Stream Deck +, each dial also has its own segment of the touch strip above it, which SpliceDeck uses to show live information such as timecode, a map of your markers or render progress.
| Model | What SpliceDeck can use |
|---|---|
| Stream Deck, MK.2, XL, Mini and Neo | All key actions. Each key shows live state from Resolve. |
| Stream Deck + | All key actions, plus all dial actions with their touch strips, and the bundled SpliceDeck profile. Tap or long-touch a strip segment for the gestures described in each action's chapter. |
| Stream Deck + XL | The same as Stream Deck +, with more keys and dials. |
| Stream Deck Studio | All key actions. Its dials can turn and press, but they have no touch strip, so strip information and tap gestures are not available. |
| Stream Deck Mobile | All key actions. |
| Stream Deck Pedal | Key actions can be assigned to pedals. The pedals have no display, so you won't see live state. |
Some actions come in two versions, for example Live Timecode, Color Version and Export Timeline. You can place them on a key or on a dial, and each version is drawn for the space it has.
NoteYou can connect several Stream Decks at the same time. Each key and dial is independent, so you can, for example, keep your editing keys on a Stream Deck XL and your jog and marker dials on a Stream Deck + beside it.
On a Stream Deck +, SpliceDeck comes with a profile called SpliceDeck. The Stream Deck app offers to install it together with the plugin. It has eight pages, in Resolve's page order: Media, Cut, Edit, Fusion, Color, Fairlight, Deliver and Project, with the Page Dial on dial 2 of every page. Using the SpliceDeck Profile in Understanding SpliceDeck lists every key and dial.
The deck follows Resolve. When Resolve opens another page, whether from the Page Dial, the mouse or the keyboard, the Stream Deck + switches to the matching page of the SpliceDeck profile. SpliceDeck only ever switches to its own profile, never to one of yours, and only once Resolve has really changed page, so a dial you are still turning is never replaced.
NoteIf the deck doesn't follow Resolve's pages, check that you have a Stream Deck + and that the SpliceDeck profile is installed. Help and Troubleshooting has the details.
A Stream Deck profile is a complete layout for one device, and each profile can have several pages. Keeping SpliceDeck in its own profile means your other layouts stay exactly as they are. The bundled profile described on the previous page is a good starting point to copy from.
In the Stream Deck app, open the profile menu at the top of the window and choose New Profile. Give it a name, for example Resolve.
Drag SpliceDeck actions from the SpliceDeck for DaVinci Resolve category onto the keys and dials.
Click an action to change its settings in the area below the canvas. Settings are saved for that key only, so you can have two Add Marker keys with different colours side by side.
To add a page, click + next to the page indicator.
In the profile's settings, you can link it to DaVinci Resolve, so the Stream Deck app switches to it whenever Resolve is in front.
TipKeys on pages you are not looking at cost nothing, because SpliceDeck only draws the keys that are on screen. You can have as many pages as you like.
A Stream Deck multi-action runs several actions, one after the other, from a single key. SpliceDeck key actions can be part of a multi-action, with a few things to keep in mind.
SpliceDeck runs in the Elgato Stream Deck app on macOS and Windows, and in OpenDeck on Linux. Almost everything works through Resolve's scripting interface, which is the same on every platform. A few features need something the scripting interface doesn't offer: Turbo Jog, zooming the timeline with Shift and the Playhead Jog dial, the Split press of Split / Ripple Delete, and opening Resolve's Markers panel by holding Add Marker. For these, SpliceDeck uses Resolve's own menu or keyboard commands, which depends on what each operating system allows.
| Feature | macOS | Windows | Linux (OpenDeck) |
|---|---|---|---|
| All other actions | Yes | Yes | Yes |
| Turbo Jog | Yes. Needs the Accessibility permission. Works while Resolve is the frontmost app. | Yes. No permission needed. Works while Resolve is the foreground window. | Yes, in X11 sessions. Not available under Wayland. |
| Shift + turn to zoom | Yes, through Resolve's View > Zoom menu. Needs Accessibility. | Yes, through Resolve's default zoom shortcuts. | No |
| Split (press) | Yes, through Resolve's Timeline > Split Clips menu. Needs Accessibility. | Yes, through Resolve's default Ctrl+\ shortcut. | No |
| Ripple Delete (hold) | Yes | Yes | Yes |
| Markers panel (hold Add Marker) | Yes, through Mark > Modify Marker. Needs Accessibility. | No | No |
| Add Marker while Resolve plays | Yes. Needs Accessibility. | Yes | No |
| Project Settings key | Yes, through File > Project Settings…. Needs Accessibility. | Yes, through Resolve's default Shift+9 shortcut. | No |
| Graphic touch strips | Yes | Yes | Plain text by default |
| Reconnect the moment Resolve starts | Yes | Yes | Within about 3 seconds |
NoteWhen Turbo Jog can't be used, the Playhead Jog dial still works and always lands on the right frame. It moves the playhead through the scripting interface instead, so Resolve's viewer updates about twice a second while you spin.
On macOS, Turbo Jog, Shift zoom, Split, the Markers panel, the Project Settings key and Add Marker during playback all need the Accessibility permission for the Elgato Stream Deck app. Turning On Turbo Jog in Getting Started shows how to switch it on. SpliceDeck's helper programs run inside the Stream Deck app, so you only need to allow the Stream Deck app itself, not Python or SpliceDeck.
For zoom, Split and the Markers panel, SpliceDeck presses the items in Resolve's menus for you rather than typing shortcuts, so it works with any keyboard layout and any custom shortcuts in Resolve. SpliceDeck finds the Split Clips and Modify Marker items by their English names, so these two need Resolve's user interface set to English.
TipIf Elgato Stream Deck is already switched on in Accessibility but Turbo Jog or Split still doesn't work, macOS may be holding on to an old permission. Select it in the list, click - to remove it, add it again with +, then quit and reopen the Stream Deck app.
Windows needs no permission. SpliceDeck sends Resolve's default shortcuts, and only while Resolve is the foreground window: Ctrl+= to zoom in, Ctrl+- to zoom out, Shift+Z to zoom to fit and Ctrl+\ to split. If you have changed these shortcuts in Resolve's keyboard customisation, or use a keyboard layout where these keys are in different places, zoom and Split may not work. The Markers panel can't be opened on Windows, so set Hold the key on Add Marker to Delete the marker under the playhead or Nothing.
/opt/resolve from plugins. If keys say No Python or No API, set the paths in SpliceDeck's settings, or use a non-Flatpak OpenDeck.On macOS and Windows, the Playhead Jog dial doubles as a timeline zoom control. Hold Shift on your computer keyboard and turn the dial: clockwise zooms in, anticlockwise zooms out. Push the dial while holding Shift to zoom the timeline to fit. While Shift is held, the dial's touch strip changes to show that it is zooming.
Shift held. The strip shows ZOOM. Turn to zoom the timeline, push to fit.
Shift released. The dial goes straight back to jogging.
To turn this off, select the Playhead Jog dial and clear Shift + turn: zoom the timeline in its settings. If the dial shows Zoom: bring Resolve to the front, click in Resolve's window and try again.
Most settings belong to one key or dial. A few settings apply to SpliceDeck as a whole. You can reach them from any SpliceDeck action.
In the Stream Deck app, click any SpliceDeck key or dial.
Scroll to the bottom of its settings and expand SpliceDeck settings.
Change a setting. It takes effect straight away for every SpliceDeck action.
| Setting | What it does |
|---|---|
| Python interpreter | The full path to the Python SpliceDeck should use. Leave it empty to find Python automatically. |
| Default export folder | Where exports go when an action doesn't name its own folder. Empty means ~/Movies/SpliceDeck on macOS, %USERPROFILE%\Videos\SpliceDeck on Windows and a SpliceDeck folder inside your Videos folder on Linux. Paths can start with ~. |
| Resolve scripting API folder | The folder with Resolve's scripting modules, if Resolve is installed in an unusual place. Leave it empty to find it automatically. |
| fusionscript library | The path to Resolve's fusionscript library. Leave it empty to find it automatically. |
| Polling | Responsive, Balanced or Battery saver. See the next page. |
The last line of the section shows the live connection, for example connected - DaVinci Resolve Studio 20.2.3. Changing one of the three path settings restarts SpliceDeck's connection to Resolve.
SpliceDeck is available in English, Deutsch, Español, Français and 日本語, including the text on keys and touch strips and the action settings. It uses the language of the Stream Deck app, and English for any other language. SpliceDeck picks up the language when it starts, so after changing the language of the Stream Deck app, quit and reopen the app. The SpliceDeck settings section is shown in English in every language.
Resolve doesn't tell other programs when something changes, so SpliceDeck asks. Many times a second it checks the page, the playhead, your markers, render progress and the other things your keys show, and it redraws only the keys whose information has changed. Each check takes a few milliseconds and doesn't slow Resolve down.
SpliceDeck checks more often while things are changing and less often when nothing is happening. The page you are on and the playhead are checked on a fast lane of their own, so a page you click with the mouse, or playback you start in Resolve, reaches the deck almost at once. The Polling setting sets how often SpliceDeck checks:
| Polling | While changing | Idle | Idle over a minute | Page and playhead |
|---|---|---|---|---|
| Responsive | 40 ms | 300 ms | 1 s | 50 ms |
| Balanced | 66 ms | 500 ms | 1.5 s | 80 ms |
| Battery saver | 100 ms | 1 s | 3 s | 150 ms |
Responsive is the default. Choose Battery saver on a laptop running on battery. Presses on the deck always light up straight away, whichever profile you choose. While a render is running, progress is checked at most four times a second, and when no SpliceDeck key is visible, SpliceDeck checks only every 2 seconds.
Resolve's scripting interface accepts a new playhead position only about every 500 milliseconds. A jog wheel driven only through scripting would update Resolve's viewer twice a second, and every other key would wait behind it. Resolve's own frame-step commands have no such limit, so Turbo Jog sends those instead and checks the result through scripting once you stop turning. While you spin the dial, SpliceDeck also pauses its checks on Resolve, so Resolve can spend all its time drawing frames. The checks resume within half a second of the last turn.
The SpliceDeck harness is a Stream Deck that runs in your web browser. It starts the real SpliceDeck plugin exactly the way the Stream Deck app does, and draws every key, dial and touch strip live, at the resolution of the real hardware. You use it with the mouse.
The harness is a tool for building and testing SpliceDeck. You don't need it to use SpliceDeck with your Stream Deck. It is useful for trying out a layout, seeing what a key does without touching your project, or checking a change to SpliceDeck's source code.
By default the harness doesn't connect to your Resolve at all. It uses a mock Resolve: a simulated copy of Resolve with a project, a timeline, clips, markers and a render queue, which you can change from the harness itself. Nothing you do in mock mode can affect a real project.
npm.Open a terminal in the SpliceDeck folder and install the dependencies with npm install. You only need to do this once.
Build the plugin with npm run build. The harness runs the built plugin, so build again after changing the source.
Start the harness with npm run harness. The terminal prints the address of the harness, normally http://127.0.0.1:5199.
Open that address in your browser. To stop the harness, press Ctrl+C in the terminal.
TipUse the 127.0.0.1 address rather than localhost, which can point at a different program. If port 5199 is busy, the harness moves to the next free port and prints the new address. To choose a port yourself, run node harness/server.mjs --port 5300.
The harness window has four areas.
| Area | What it shows |
|---|---|
| Top bar | Status chips for the harness, the plugin, its Python connection and the connection to Resolve. It also has the Mock Resolve and Live Resolve switch, a Scenario menu, a Host menu, a hot reload checkbox, Host options and Restart plugin. |
| Action list | On the left, every SpliceDeck action by group. K marks a key action and D a dial action. Type in Filter to find one. |
| Devices | In the middle, one or more Stream Decks with their pages, a multi-action area, and an inspector for the selected key with a live preview and the action's real settings. |
| Side panel | On the right, the tabs Resolve, Snapshot, Events, Bridge, Plugin log, Latency and Global. |
Choose a device in the bar above the deck. The harness has Stream Deck +, MK.2, XL, Mini, Neo, + XL, Studio, Pedal and Mobile, and you can plug in several at once. Click ● or ○ next to a name to plug a device in or out.
Drag an action from the action list onto a key or dial.
Click a key to press it. To hold it, keep the mouse button down. For a dial, use ◀ and ▶ to turn it one step (hold Shift for ten) and press to push it. Click a strip segment to tap it.
To open an action's settings, click the grip ⠿ on its key, or right-click the key and choose Inspect. Drag the grip to move the key, or drop it on the action list to remove it.
Each device has page buttons above it, with + page and + folder to add more. On a Stream Deck +, you can also swipe across the touch strip to change page, as on the real hardware. Your layouts, pages and settings are kept when you restart the harness.
NoteThe harness checks SpliceDeck the way the Stream Deck app would, and shows any problems it finds in the top bar and on the affected key or dial.
The Resolve tab in the side panel controls the mock Resolve. Its sections are Mock application, Transport / playhead, Timeline markers, Clip under playhead, Tracks and Render queue. Changes you make here act like an editor working in Resolve with the mouse: the keys pick them up on SpliceDeck's next check.
The Scenario menu in the top bar chooses where the mock starts: default, playing, rendering, not_running, scripting_disabled, free, no_project, no_timeline or empty_timeline.
The other tabs show what is happening inside SpliceDeck. Snapshot is what SpliceDeck has read from Resolve. Events, Bridge and Plugin log list the messages between the harness, the plugin and Resolve. Latency measures the time from a press to the key's new image. Global shows SpliceDeck's settings and can simulate sleep and wake, or a Stream Deck app restart.
The harness can also connect to the DaVinci Resolve Studio running on your computer, to check that keys show your real project correctly. In live mode, SpliceDeck may only read from Resolve: anything that would change the project is blocked, and keys that would change something are marked !.
Start the harness with node harness/server.mjs --allow-live. Without this option, live mode can't be switched on.
Click Live Resolve in the top bar and type LIVE to confirm.
Click Mock Resolve to go back. The harness always starts in mock mode.
ImportantEven with the read-only protection, don't press keys marked ! in live mode. Use the mock Resolve for anything that changes a project.
When something stops SpliceDeck working, the keys say so in plain words instead of failing silently. This section explains every message the keys can show and how to fix it. Most problems take one setting to put right.
When SpliceDeck can't reach Resolve, or Resolve has nothing for an action to work on, each key shows a short status word instead of its normal image. The Resolve Status key shows a longer explanation.
Resolve Status explains the problem.
Other keys show a short word.
Script off: scripting is refused.
| Key shows | Resolve Status shows | What it means and what to do |
|---|---|---|
| Connecting | Starting | SpliceDeck is starting up. |
| Offline | Resolve offline, Start DaVinci Resolve | Resolve isn't running, or a Resolve dialog is open. SpliceDeck reconnects by itself. |
| Script off | Can't connect, 1 Resolve Studio, 2 Scripting: Local | Use Resolve Studio, with external scripting set to Local. |
| No API | Resolve not found, Set paths in settings | Resolve's scripting files weren't found. See Resolve Not Found. |
| No Python | No Python, Install Python 3.8+ | No usable Python was found. See No Python. |
| Reconnecting | Reconnecting, Bridge restarting | SpliceDeck's connection is restarting by itself. |
| No project | No project | Open a project in Resolve. |
| No timeline | No timeline | Open a timeline in the project. |
If Resolve can't do what a key asks, the key flashes a short message for about a second and the Stream Deck app shows a small warning sign on the key.
| Message | What it means |
|---|---|
| No clip here | There is no clip under the playhead on the track the action uses. |
| Wrong page | The action doesn't work on the current Resolve page. Playhead and marker actions need the Cut, Edit, Color, Fairlight or Deliver page. |
| Check settings | A setting of the key is missing or not valid, such as a file not chosen yet. |
| Resolve refused | Resolve received the request but didn't carry it out, for example on a locked track. |
| Not found | The thing the key is looking for doesn't exist, such as a next marker after the last one. |
| Busy | Resolve is rendering, and the action can't run during a render. |
| Resolve was busy | Resolve didn't answer in time, often because a dialog was open. The request was dropped rather than run late. Press again. |
| Timed out | Resolve took too long to answer. |
| Track locked | Resolve won't change a locked track. Unlock it first. |
| Live marker: Resolve in front | Add Marker needs Resolve in front while Resolve plays. Click in Resolve and press again. |
| Settings: allow Accessibility | The Project Settings key needs the macOS Accessibility permission for the Stream Deck app. |
| Not available | This part of SpliceDeck failed to load. Restart the Stream Deck app and check the log file. |
While a dialog is open in Resolve, for example Preferences, a save prompt or the render settings, Resolve pauses all scripting. SpliceDeck's keys show Offline or stop updating until you close the dialog, and then recover by themselves. A press made while the dialog was open is dropped with Resolve was busy rather than carried out later.
Resolve is running but refuses SpliceDeck's connection. There are two possible reasons, and Resolve doesn't say which one it is.
Check that you have DaVinci Resolve Studio. Open DaVinci Resolve > About DaVinci Resolve. The free edition of Resolve doesn't allow external scripting, so SpliceDeck can't work with it.
Check that External scripting using is set to Local in Preferences > System > General, as described in Getting Started.
Quit and reopen Resolve after changing the setting.
SpliceDeck's connection to Resolve needs 64-bit Python 3.8 or later. The Stream Deck app starts plugins with a very short list of places to look for programs, so a Python that works in your terminal may still be missed.
Install Python 3 as described in Checking Python in Getting Started.
If the keys still say No Python, find the full path to your Python. In a terminal, type which python3 on macOS or Linux, or py -3 -c "import sys; print(sys.executable)" on Windows.
Click any SpliceDeck key in the Stream Deck app, expand SpliceDeck settings and paste the path into Python interpreter.
The keys show No API when SpliceDeck can't find Resolve's scripting files. It looks in the places Resolve installs them on each system, including /opt/resolve and /home/resolve on Linux. If Resolve is installed somewhere else, enter the folder that contains Resolve's scripting modules in Resolve scripting API folder, and the path to fusionscript in fusionscript library. Hold the Resolve Status key to see which paths SpliceDeck tried.
SpliceDeck reconnects on its own when Resolve starts, restarts or quits, and when your computer wakes from sleep. It tries again quickly at first and then every 3 seconds. On macOS and Windows, it reconnects the moment Resolve starts. To reconnect straight away at any time, press the Resolve Status key or any key that shows a status word.
When Turbo Jog isn't available, the Playhead Jog dial moves the playhead through the scripting interface, which Resolve limits to about two updates a second. The playhead still lands on the right frame. Check the following:
Turbo Jog checks every move. If Resolve doesn't follow the frame steps three times in a row, the dial stops using Turbo Jog to keep the playhead accurate. Switch to another Stream Deck page and back to try again.
Timeline zoom with Shift works on macOS and Windows, not on Linux. Check that Shift + turn: zoom the timeline is selected in the Playhead Jog settings. If the dial shows Zoom: bring Resolve to the front, click in Resolve's window first. On macOS, zoom needs the Accessibility permission. On Windows, it uses Resolve's default zoom shortcuts, so it won't work if you have changed them.
Holding Split / Ripple Delete deletes the clip under the playhead together with its linked audio and closes the gap. If the key shows Resolve refused, the most likely reason is that the clip, or its linked audio, is on a locked track. Unlock the track in Resolve's timeline header, or with a Track Lock key, and try again. If the key shows No clip here, there is no clip under the playhead.
SpliceDeck writes a log file that explains what it is doing, for example which Python it is using and why Turbo Jog isn't available. If you contact the developer about a problem, include the newest log file.
| System | Log folder |
|---|---|
| macOS | ~/Library/Application Support/com.elgato.StreamDeck/Plugins/com.jauge.splicedeck.sdPlugin/logs |
| Windows | %APPDATA%\Elgato\StreamDeck\Plugins\com.jauge.splicedeck.sdPlugin\logs |
| Linux | The logs folder inside com.jauge.splicedeck.sdPlugin in OpenDeck's plugins folder. |
The newest file is com.jauge.splicedeck.0.log. Older files have higher numbers.
TipOn macOS, the Library folder is hidden. In the Finder, choose Go > Go to Folder and paste the path. On Windows, paste the path into the address bar of File Explorer.
Hold the Resolve Status key for a moment to see diagnostics. When SpliceDeck is connected, the key shows how long one round trip to Resolve takes, how long SpliceDeck's last check took and how often it is checking. When it isn't connected, the key shows the exact reason, including the path that SpliceDeck tried.
Press the key to see the edition and version of Resolve. A press never drops a healthy connection. A small dot in the corner of the key shows the edition. It is green for Resolve Studio. If it is amber and the key says Not Studio, SpliceDeck is connected to an edition of Resolve other than Studio, and some features may not work.
| Problem | Try this |
|---|---|
| Every key says Offline | Start Resolve, or close any open Resolve dialog. Press Resolve Status to reconnect now. |
| Every key says Script off | Use Resolve Studio. Set External scripting using to Local and restart Resolve. |
| Every key says No Python | Install 64-bit Python 3.8 or later, or enter its path in Python interpreter. |
| Every key says No API | Enter Resolve's scripting paths in SpliceDeck settings. On Linux with Flatpak OpenDeck, try a non-Flatpak OpenDeck. |
| Keys say No project or No timeline | Open a project, then a timeline, in Resolve. |
| Keys stop updating for a while | Close the open Resolve dialog. The keys recover by themselves. |
| Jog is slow to update the viewer | Switch on Accessibility for the Stream Deck app on macOS, click in Resolve so it is in front, and use the Cut, Edit, Color or Fairlight page. |
| Shift and turn doesn't zoom | Check the Playhead Jog setting, bring Resolve to the front, and on macOS switch on Accessibility. Not available on Linux. |
| Split doesn't split | Use the Edit or Cut page. On macOS switch on Accessibility and use Resolve in English. Not available on Linux. |
| Hold Add Marker shows an alert | The Markers panel needs macOS and Accessibility. Elsewhere, change Hold the key. |
| The deck doesn't follow Resolve's pages | Page follow needs a Stream Deck + with the bundled SpliceDeck profile installed. Other models don't get it. Reinstall the plugin to be offered the profile again. |
| Ripple delete shows Resolve refused | Unlock the clip's video and audio tracks. |
| A press shows Resolve was busy | Close the open Resolve dialog or wait for Resolve to finish, then press again. |
| The wrong language | Change the Stream Deck app's language, then quit and reopen it. |
| Nothing else helps | Quit and reopen the Stream Deck app, then Resolve. If the problem stays, contact the developer with the newest log file. |
The quickest way to solve most problems is Help and Troubleshooting in this manual. The Resolve Status key is also a good first stop: it tells you in plain words what is wrong, and holding it shows the exact reason.
If you still need help, or you would like to suggest a feature or report a bug, please email Recourse Software Inc., the maker of SpliceDeck, at support@recoursellm.com. To help us find the problem quickly, include:
NoteLog files can contain the names of your projects, timelines and folders. Look through a log file before you send it if those names are confidential.
SpliceDeck runs entirely on your computer. It talks to DaVinci Resolve through Resolve's local scripting interface and doesn't connect to the internet. Your key settings and SpliceDeck's settings are stored by the Stream Deck app. SpliceDeck keeps a small amount of its own data, such as the track states that Track Solo restores, in ~/Library/Application Support/SpliceDeck on macOS, %APPDATA%\SpliceDeck on Windows and ~/.local/state/splicedeck on Linux.
DaVinci Resolve and DaVinci Resolve Studio are trademarks of Blackmagic Design Pty. Ltd. Stream Deck and Elgato are trademarks of Corsair Memory, Inc. macOS is a trademark of Apple Inc. Windows is a trademark of Microsoft Corporation. Linux is a registered trademark of Linus Torvalds. All other trademarks are the property of their respective owners.
SpliceDeck is made by Recourse Software Inc. and is an independent product. It is not affiliated with, endorsed by or sponsored by Blackmagic Design, Corsair or Elgato. All SpliceDeck artwork is original. SpliceDeck, its artwork and this manual are copyright © 2026 Recourse Software Inc. All rights reserved.
SpliceDeck is provided "as is", without warranty of any kind, express or implied, including the implied warranties of merchantability, fitness for a particular purpose and non-infringement. To the fullest extent permitted by law, Recourse Software Inc. is not liable for any claim, damages or other liability arising from the use of SpliceDeck, including loss of data, lost work or interrupted projects.
SpliceDeck makes real changes to your Resolve projects. Keys such as Ripple Delete, Delete Marker, Duplicate Timeline and Render Preset do exactly what they say. Save your project and keep backups as you normally would. The Export Project Backup action can make a .drp copy of your project at the press of a key.
ImportantNothing in this disclaimer limits any rights you have under the consumer laws of your country that cannot be excluded.
SpliceDeck includes the following open source software, each used under the MIT License:
| Component | Licence |
|---|---|
Elgato Stream Deck SDK (@elgato/streamdeck) | MIT License, Copyright (c) Corsair Memory Inc. |
@elgato/utils | MIT License, Copyright (c) Corsair Memory Inc. |
ws WebSocket library | MIT License, Copyright (c) 2011 Einar Otto Stangvik, Copyright (c) 2013 Arnout Kazemier and contributors, Copyright (c) 2016 Luigi Pinca and contributors |
The text of the MIT License, which applies to each of these components together with its copyright notice above, is:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
SpliceDeck also uses software that it doesn't include. Python is installed separately and is distributed by the Python Software Foundation under its own licence. Resolve's scripting modules belong to Blackmagic Design and are installed with DaVinci Resolve Studio.
This manual describes SpliceDeck plugin version 0.2, tested with DaVinci Resolve Studio 20.2.3. Features and the appearance of keys may change in later versions. If something on your deck looks different from this manual, check that you have the latest version of SpliceDeck.
SpliceDeck Installation and Operation Manual. Copyright © 2026 Recourse Software Inc. All rights reserved.