Skip to content

Releases: elliotttate/SpliceKit

v3.3.2

21 Apr 13:01

Choose a tag to compare

🐞 Bug Fixes:

  • Fixes Blackmagic RAW thumbnail crash when third-party Media Extensions are installed.
  • Restores LiveCam camera/microphone access.
  • Fixes rare installer signing failures from stray extended attributes.
  • Adds build-time guards against undefined SpliceKit_ symbols.

v3.3.1

21 Apr 02:52

Choose a tag to compare

🔨 Improvements:

  • Adds a Vision Pro preview panel, Bonjour discovery for _ivtpreviewclient._tcp, MCP bridge additions for the Vision Pro tools, and the Resolve Immersive BRAW reverse-engineering notes.

🐞 Bug Fixes:

  • Fixes crash-on-launch regression in v3.3.0. The SpliceKitBridgeMetadata module had its declaration and call site committed but its implementation file was never included in the build, so the safe-install block jumped to 0x0 during Final Cut Pro's didFinishLaunching fanout.

v3.3.0

21 Apr 02:36

Choose a tag to compare

🔨 Improvements

  • New icon by the amazing Matthew Skiles. 🥳
  • Wider Wizard layout so the update buttons fit correctly when updating.
  • Launch Final Cut Pro button improvements. Thanks for reporting Jonny!
  • Help button now opens the website.
  • Switched Sparkle from a vendored framework to Swift Package Manager for easier updating.

v3.2.10

20 Apr 22:36

Choose a tag to compare

Smooth Scroll (Splices menu) now respects the Continuous Scrolling preference. The gate was reading a rate-derived property (keepsPlayheadCenteredDuringPlayback) that is only true during fast-forward/rewind, so normal-rate playback was silently skipping the 120Hz centered takeover and feeling jerky. Swapped to scrollDuringPlayback backed by FFScrollDuringPlaybackKey — Continuous Scrolling ON engages our smooth centered path, OFF leaves FCP native edge-tracking intact with a smooth 120Hz overlay line on top. Also fixes a first-install crash in the Overview bar where the renderer could hit a half-built collection synchronously; both entry points now defer via performSelector.

v3.2.09

20 Apr 21:47

Choose a tag to compare

Smooth Scroll (on by default in Splices menu). 120Hz centered-playback path replaces FCP native 24/30Hz step scroll: clip view now slides continuously under a stationary playhead line on ProMotion displays instead of hopping sideways once per source frame. Implemented via CADisplayLink-driven clipView.setBoundsOrigin + reflectScrolledClipView, with TLKScrollingTimeline paused for the duration of playback so Apple step-centering does not fight the smooth path. Filmstrip and anchored-clip layer updates are also suspended during active pinch/marquee/scrollbar drag via TLKEventHandlerDid{Start,Stop}TrackingNotification and a swizzle on TLKTimelineHandler.magnifyWithEvent - removes the cell-rebuild hitch you used to see when zooming. Apples hidden TLKOptimizedReload fast path is enabled via a getter swizzle. Fixes MCP bridge event-frame contamination (events are now opt-in; bridge client skips notifications), async command.completed now reports status:error for normal RPC failures, per-fd serial write queues keep RPC replies and events ordered without byte interleave, and the overview bar tears down its notification observers on uninstall. Toggle Smooth Scroll from Splices > Smooth Scroll or via the timelinePerformanceMode bridge option.

v3.2.08

20 Apr 20:01

Choose a tag to compare

Inline timeline overview bar sits below the ruler and shows a scaled-down view of the whole project, color-coded by lane. Click or double-click anywhere to jump the playhead; drag the visible-region rectangle's body to pan the main timeline or its edges to zoom. Uses FCP's own FFAnchoredCollectionImageCreation renderer (the same one the Touch Bar overview uses) so lanes match FCP's internal representation exactly. All redraws are event-driven — CADisplayLink during playback (matches 60Hz / 120Hz ProMotion display refresh), TLKPlayheadViewFrameDidChangeNotification for scrub or step, FFSequenceEditedNotification for edits — zero CPU when idle. Toggle from Splices menu > Overview, or via the timelineOverviewBar bridge option.

v3.2.07

19 Apr 05:03

Choose a tag to compare

HEVC MP4s tagged hev1 (Dolby Vision, DV.HDR10+ WEB-DLs, and other tool-transcoded HEVC material) now import into Final Cut. Previously those files showed up as unimportable because AVFoundation / QuickTime / Final Cut only decode HEVC muxed with the hvc1 sample-entry tag. SpliceKit now detects hev1 at import time and retags the file using an APFS clonefile() COW snapshot plus a 2-byte edit to the moov box — no stream-copy remux required, no extra disk space consumed, a few seconds even on 19 GB files. The original file on disk is untouched; only the clone is modified.

v3.2.06

19 Apr 04:15

Choose a tag to compare

Shadow-remux now handles h264, hevc, av1, and prores Matroska sources (previously VP9/VP8 only), with audio transcoded to AAC when the source codec can't go into MP4. HEVC gets the hvc1 sample-entry tag so Final Cut actually decodes Main-10 MKVs. Subtitle and attachment tracks are dropped from the mux. B-frame-safe CFR timestamp rewrite preserves h264/hevc/av1 display order. Media Import 'Processing files for import...' no longer stalls on folders with unrelated files — the hook short-circuits non-Matroska extensions and uses a deterministic shadow path so the same source is never remuxed twice. Menu renamed from Enhancements to Splices; Debug dropdown hidden from the menu bar.

v3.2.05

18 Apr 21:38

Choose a tag to compare

MKV / WebM imports — drop .mkv or .webm files onto Final Cut and SpliceKit generates a shadow MP4 remux on the fly so FCP sees a native container while the original file stays untouched on disk. Highest Quality toggle for URL imports — new checkbox in the Import URL dialog fetches the highest available resolution from YouTube / Vimeo (1080p, 1440p, or 4K via VP9 / AV1) instead of YouTube's 720p progressive-mp4 cap; leave it off for the fast path. URL import reliability — fixes an FCPXML parse failure when downloaded filenames contain ampersands or other XML-reserved characters (e.g. 'PS5 & PS5 Pro'), replaces the misleading twin-percent progress HUD with a single smooth readout, and vertically aligns the spinner with its label. Share Logs — one-click upload of the latest Final Cut Pro crash log plus SpliceKit logs to filebin.net, added to the Patcher status panel. LiveCam mask kernel dispatch and shader-coordinate fix resolves subject-lift / green-screen edge artifacts on some machines. BRAW settings inspector locks to dark appearance to match FCP's other inspectors. Also points the bundled .mcp.json at the mcp-setup venv interpreter so Claude Desktop MCP works without hand-editing Python paths.

v3.2.04

18 Apr 03:52

Choose a tag to compare

LiveCam — native webcam booth that records direct to your Library or active timeline without leaving Final Cut Pro. Live preview with looks, color/exposure/contrast/saturation/temperature/sharpness/glow adjustments, audio meter, mirror, date/time stamp overlay, and Library / Timeline placement (Append, At Playhead, or Connected Above). Subject-lift green screen uses Visions VNGenerateForegroundInstanceMaskRequest (macOS 14+) for a tight, edge-aware matte that works on people and objects, with a custom Metal pipeline that runs joint-bilateral edge refinement, signed choke, temporal smoothing, spill suppression, and light wrap every frame; falls back to person segmentation on macOS 12-13. Transparent recording — pick "Transparent" as the green-screen color and LiveCam writes ProRes 4444 with a real alpha plane via CIRenderDestination + kVTCompressionPropertyKey_AlphaChannelMode, so the clip drops onto your timeline ready to composite without an external keyer. Open via the LiveCam toolbar button, the Enhancements menu, the Command Palette, or liveCam.show / open_livecam. URL import now auto-discovers yt-dlp and ffmpeg from your login shell PATH and symlinks them into the SpliceKit tools dir at install time, so Homebrew installs work without make url-import-tools. Also fixes scroll dead space in the Captions panel.