Use the Blackmagic Speed Editor as a macro/remap panel on Windows (USB or Bluetooth). Map panel keys to keyboard shortcuts or typed text, and use the jog wheel for scrolling, zoom, or custom keys.
- CLI macro engine — Run
speededitor_macro.pyfor headless key remapping and jog actions. - GUI remap editor — Configure keys and jog behaviour, live input stream, key recording (capture PC keyboard shortcuts).
- Jog / shuttle / scroll — JOG (slow), SCRL (fast), and SHTL (shuttle) with configurable sensitivity.
- Tray minimize — Close the GUI window to minimize to system tray.
- One-file exe — Build a single Windows executable with no separate install.
- Windows (tested on Windows 10/11).
- Python 3.x (3.10+ recommended). See requirements.txt.
- Speed Editor connected via USB or paired via Bluetooth. Close DaVinci Resolve (or any app using the panel) before starting.
pip install -r requirements.txt-
GUI (primary):
python gui.py
Use the Speed Editor–style layout to remap keys, set jog mode and divisors, view the live stream, and start/stop the device. -
CLI:
python speededitor_macro.py
Options:--transport usb|bluetooth|any,--config <path>,--verbose,--led-feedback.
- If PyInstaller reports the obsolete
pathlibpackage, uninstall it:
python -m pip uninstall pathlib - Install build deps:
pip install -r requirements.txt pyinstaller - Build:
python build_onefile.py
Output:dist/SpeedEditorMacro.exe. On first run the exe createsremap.yamlnext to itself if missing. If HID fails, addhidapi.dllnext to the exe (e.g. from your Pythonhidpackage).
Pre-built Windows executable: see the Releases tab on GitHub.
- remap.yaml — User config (keys and jog). Created on first run from built-in defaults if missing.
- remap.example.yaml — Example config in the repo; copy to
remap.yamland edit.
Keys: Map Speed Editor key names (e.g. CUT, ESC, CAM1…CAM9, SMART_INSRT, STOP_PLAY) to:
key: "ctrl+x"— Hotkey or single key (pyautogui-style names).type: "Some text"— Type a string.
Jog: Under jog: set mode: scroll (or zoom / keys), jog_slow_divisor, jog_fast_divisor, shuttle_divisor, shuttle_max, and optionally scroll_reset_at: 3800 for infinite scroll.
- raw_stream.py — Print raw HID report stream (report ID + hex) to the terminal. Useful for debugging.
- probe_device.py — Probe the Speed Editor HID device and print manufacturer, product, serial.
- speed_editor_demo.py — Minimal demo: jog mode switching and a couple of key actions.
MIT (see LICENSE if present).