Releases: ilyambr/backtrack
Releases · ilyambr/backtrack
Release list
v0.4.0
[v0.4.0] - 2026-09-06
Direct Google Drive Cloud Integration, Adaptive Tray Theming & Full Architecture Modularization
- Direct Google Drive Cloud Uploads (
GoogleDriveService.cs):- Native OAuth 2.0 PKCE authentication flow with local loopback listener.
- Windows DPAPI-encrypted credential token storage (
%AppData%\Backtrack\GoogleDrive\Tokens\). - Interactive Google Drive folder browser dialog (
GoogleDrivePickerWindow.xaml) with live folder creation and navigation. - High-performance chunked resumable media upload engine with live progress bar and direct shareable view links.
- Remote Drive Relay RPC (
PairingService.DriveRpc.cs):- Paired secondary machines (e.g. streaming PC, laptop) can browse folders and upload clips directly to the primary machine's authenticated Google Drive account over the local network without re-authenticating.
- Streamer Privacy & Email Redaction:
- Added Streamer Mode setting to mask user Google account email (
***@domain.com) across all UI dialogs.
- Added Streamer Mode setting to mask user Google account email (
- Adaptive System Tray Theming (
SystemTrayManager.cs):- Live detection of Windows system theme changes (
WM_SETTINGCHANGE/ RegistryAppsUseLightTheme&SystemUsesLightTheme). - Automatically switches between high-contrast white and dark tray icons (
backtrack_tray_white.png) so the icon is never lost against light taskbars. - Added instant HUD status overlay toggle directly from the right-click tray context menu.
- Live detection of Windows system theme changes (
- Settings View Section Modularization:
- Decoupled monolithic settings window into dedicated domain UserControls (
SettingsGeneralSection,SettingsObsSection,SettingsOverlaySection,SettingsClipsSection,SettingsAdvancedSection).
- Decoupled monolithic settings window into dedicated domain UserControls (
- Core Partials & RPC Decoupling:
- Split
PairingServiceinto discrete RPC modules:PairingService.Client.Gallery.cs,PairingService.DriveRpc.cs,PairingService.TranscodeRpc.cs. - Split
MainWindow.Compress.csintoMainWindow.Compress.Transcode.cs. - Split player context menus into
MainWindow.PlayerMenu.csand card action handlers intoMainWindow.Cards.Menu.cs.
- Split
- Legal & Compliance Documentation:
- Added comprehensive
PRIVACY.mdandTERMS.mdcompliant with Google API Services Limited Use requirements.
- Added comprehensive
Full Changelog: v0.3.15...v0.4.0
Hotfix (2026-09-08)
- Fix (Stream Deck): changing the clip duration on a Stream Deck key no longer calls
set_buffer_duration, which was force-stopping and restarting the live replay buffers (wiping the pre-roll you were about to save). The duration card now only adjusts the trim length, matching the Save Replay "Clip length" slider.
v0.3.15
Smart Clip Deduplication Engine, Sub-Millisecond Audio Cross-Correlation & Seamless Hardware Merge
- Modular Deduplication Engine (
DeduplicationService.cs): Standalone deduplication service withDeduplicationEntryrecords tracking origin-child clip relationships, duration, and millisecond timestamps stored in%AppData%\Backtrack\deduplicated.json. - Sub-Millisecond Acoustic Overlap Alignment: Mathematical audio fingerprinting using 8kHz normalized cross-correlation (
DetectOverlapOffsetSeconds) to detect the exact splice point down to 0.125ms across OBS keyframe boundaries, completely eliminating repeated frames and audio stutter. - High-Precision Timestamp Fallback: Automatic millisecond timestamp tracking (
ExactDurationSeconds) for videos with no audio or silent tracks. - Hardware-Accelerated Seamless Merge Engine (
MainWindow.Merge.cs): Fast GPU hardware-accelerated filter concatenation with monotonic PTS presentation normalization (setpts=PTS-STARTPTS,asetpts=PTS-STARTPTS,aresample=async=1000) and 1-second GOP keyframes (-g 60 -keyint_min 30) for instant seeking in media players. - Multi-Track Audio Concat & Preservation: Stream-copy and multi-stream filter complex mapping preserving all discrete audio tracks (game audio, mic, discord, desktop audio).
- Gallery Drag-and-Drop Merge & Themed Overlays: Drag deduplicated clip cards onto their origin to merge with live progress. Added floating themed pill cards (
BadgeBg,BadgeBorder,Text0) for merge/compress progress and dynamic luminance calculations for compress preset buttons across all themes.
Full Changelog: v0.3.14...v0.3.15
v0.3.13
Features & Improvements
- Native Stream Deck Integration: Built a native two-way localhost WebSocket IPC server (127.0.0.1:44558) and official Elgato Stream Deck plugin package (Backtrack.streamDeckPlugin) with zero-touch configuration.
- 🟩 Clip Replay Buffer: Flushes and saves instant replay buffer for any selected source with dynamic buffer duration readout.
- 🔴 Record Source: Starts/stops recording for any source with live stopwatch ticker on keycap.
- ⏹️ Cancel Recording: Instantly purges and cancels active recording with status feedback.
- ⭐ Bookmark Segment: Drops chapter star marker into clip metadata on the fly.
- 🖥️ Toggle Backtrack HUD: Toggles overlay on screen with live OBS connection dot.
- Dynamic HTML5 Canvas Keycap Engine: Custom-rendered keycaps with corner-radius safe insets, high-contrast typography, and automatic desaturated/dimmed offline states when Backtrack or OBS is disconnected.
- Self-Contained Zero-Prerequisite Deployment: Binaries and installer are now published with --self-contained true, embedding the .NET 8 desktop runtime and LibVLC decoders directly to run out-of-the-box on any Windows machine with zero missing runtime errors.
v0.3.12
Features & Improvements
- UI Architecture Modularization: Modularized the monolithic 1,967-line MainWindow into standalone views (SaveReplayView, GalleryView, PlayerView, SettingsView) and dedicated style dictionaries (ControlStyles.xaml, ButtonStyles.xaml, PlayerStyles.xaml, MenuStyles.xaml, Converters.xaml).
- Clip Length Persistence: The clip length slider on the "Save Replay" screen now automatically remembers and persists your chosen duration across app launches and OBS sessions without resetting to 1:00.
- Toggle Switch & Slider Styling: Restored signature rectangular track styling for toggle switches (AppToggle) and non-linear track fill scaling for RowLengthSlider.
- Dropdown Theming Fixes: Restored proper Text1/Text0 theme hierarchy for dropdown selection text and ComboBox items across themes.
- Startup Resource Resolution: Merged resource dictionaries at the application root level in App.xaml, eliminating static resource lookup errors on startup across modular views and overlays.
v0.3.11
Fix auto-update loop and normalize version comparison
Full Changelog: v0.3.10...v0.3.11
v0.3.10
Fix remote recording cancellation toast and remote file deletion
Full Changelog: v0.3.9...v0.3.10
v0.3.9
Full Changelog: v0.3.8...v0.3.9
Full Changelog: v0.3.8...v0.3.9
v0.3.8
Features & Improvements
- Audio Cue Volume & Delegation: Added an Audio Cue Volume slider with live scaling and automatic RPC delegation to stream audio cues to the transmitter PC in remote setups.
- Accurate Bookmark Timing: Improved bookmark calculation across continuous recordings, replay buffers, and active video player playhead.
- Gallery Starred Filter & Theming: Added a dedicated ★ Starred toolbar toggle, Starred First/Only sorting options, and dynamic theme-matched storage progress bars.
- Video Compression & Bundled FFmpeg: Packaged standalone FFmpeg binary with optimized MP4 compression presets and faststart flags.
- OS-Native Drag & Drop: Implemented Windows Shell drag-image helper for zero-lag clip dragging into folders and external applications.
v0.3.7
Features & Improvements
- Video Player Overhaul: Removed the player sidebar for a full-width 16:9 player surface with zero letterboxing.
- Top-Right Context Menu: Replaced sidebar actions with a compact 3-dot trigger pill opening an action grid (Rename, Trim, Reveal, Delete) and metadata details.
- Fullscreen Positioning: Improved fullscreen layout with 20px insets matching the floating transport bar.
- Inactive Replay Buffer Guard: Inactive replay buffers are ignored on hotkey triggers and no longer generate stuck toasts.
v0.3.6
Features & Improvements
- Restructured Settings UI: Reorganized settings into 7 clear categories (General, Clips, Overlay & Hotkeys, OBS, Sharing, Experimental, Maintenance) with card-style groupings.
- Context Menu Positioning: "Cancel recording" context menu now opens directly at the cursor position.
- Player Mute Feedback Fix: Fixed inverted mute state and icon feedback in the built-in video player.
- Quick Gallery Renaming: Added title renaming support by double-tapping the title in Quick Gallery.
- Audio Cues: Added audio chime feedback on clip and recording saves with a dedicated mute toggle in Settings.
- Remote OBS Gating: Automatically locked plugin auto-updates when OBS runs on a remote transmitter PC.
- Overlay Z-Order & Fullscreen Detection: Improved window layering and topmost window detection across games and fullscreen apps.