Skip to content

Releases

SwitchCast v1.5.0

Choose a tag to compare

@github-actions github-actions released this 20 Oct 02:52

SwitchCast v1.5.0 — Release Notes

Release Date: October 20, 2026
Target Platform: Windows 10 (version 1809+) & Windows 11 (x64)
Binary Package: SwitchCast-v1.5.0-win-x64.zip
Creator: John Christopher King Zamora
Website: https://switchcast.wasmer.app/
Repository: https://github.com/jczamora-git/SwitchCast


🚀 Overview

SwitchCast v1.5.0 is a major architectural performance milestone. Inspired by the efficiency of professional broadcasting suites (OBS Studio), v1.5.0 introduces Adaptive Rendering, a GPU-Backed Zero-Copy Frame Pipeline, Self-Healing DirectX Device Recovery, and a Live Performance Telemetry Monitor directly in Settings.

This release cuts memory traffic by over 8.3 MB per frame at 1080p, eliminates UI latency during rapid source switching, and guarantees unbroken presentations across GPU driver resets, monitor hotplugs, and system sleep/wake cycles.


✨ What's New & Enhanced in v1.5.0

⚡ Tri-State Adaptive Rendering Engine

  • Hardware Probing (IGraphicsCapabilityService): Probes GPU capabilities and dedicated video memory (VRAM) using low-overhead DXGI 1.1 COM interop at startup.
  • Three Selectable Rendering Modes:
    • Auto (Recommended): Automatically selects hardware Direct3D 11 rendering on capable GPUs and smoothly transitions to WARP software rasterization on resource-constrained or virtualized systems.
    • Prefer Hardware: Locks rendering to the physical Direct3D 11 GPU adapter for maximum throughput and minimum latency.
    • Compatibility Mode (WARP): Forces high-efficiency Windows Advanced Rasterization Platform (WARP), delivering 100% stable presentation rendering inside Remote Desktop (RDP), VMs, or legacy hardware without hardware driver dependencies.
  • Zero-Restart Switching: Rendering mode changes take effect instantly for new sessions without requiring application restarts.

🚀 Direct GPU-Backed Frame Pipeline

  • Zero-Copy Surface Copying: Leverages Direct3D 11 CopyResource and CopySubresourceRegion to transfer frames directly on the GPU, eliminating CPU-side byte array allocations and saving ~8.3 MB of system RAM per frame at 1080p60.
  • Hardware Backpressure & Frame Pacing: Implements a bounded latest-frame-wins queue that drops stale frames atomically under load, eliminating presentation drift and UI thread stutter.

🛡️ Self-Healing DirectX Device Loss Recovery

  • Driver Crash & Reset Resilience: Listens for DXGI_ERROR_DEVICE_REMOVED, DXGI_ERROR_DEVICE_RESET, and DXGI_ERROR_DEVICE_HUNG HRESULT errors.
  • Seamless Pipeline Reconstruction: Automatically rebuilds D3D11 device, swapchain, render target views, and active source feeds without tearing down the audience-facing presentation window or terminating meeting screen shares.
  • Clean Logging: Correctly distinguishes initial cold device startup from true recovery resets, eliminating spurious warning logs.

📊 Live Performance Telemetry Monitor

  • Real-Time Performance Dashboard: Embedded directly within Settings > Performance, displaying live metrics:
    • Live Render FPS: Real-time output framerate alongside configured target FPS.
    • Active Rendering Backend: Visual badge indicating whether Hardware Acceleration (with active GPU model) or WARP Software Rasterizer is rendering.
    • Frame Render Latency: Measured rendering duration in milliseconds with adaptive color coding (Green < 16ms, Orange < 33ms, Red >= 33ms).
    • Dropped Frames: Real-time dropped frame count and drop rate percentage.
    • VRAM / Buffer Memory: Estimated video memory footprint allocated for swapchain and composition buffers.
  • Zero Overhead When Disabled: Metric sampling and high-resolution stopwatch timers run only when the user explicitly enables telemetry and the settings page is active.

🐛 Sources UI & SwitchDeck Hotfixes

  • Category Dropdown Synchronization: Resolved an issue where the Sources page category dropdown appeared blank on initial navigation despite "Application Windows" being selected.
  • SwitchDeck HWND Teardown Protection: Hardened native window cleanup to prevent AccessViolationException or invalid HWND references when dismissing the SwitchDeck floating presenter dock.

☕ Developer Support & Sidebar Enhancements

  • "Buy me a coffee" Integration: Added a minimal, unobtrusive developer support link directly in the primary navigation sidebar above Settings.
  • Dedicated Coffee Icon: Features the Segoe MDL2 Cafe glyph (&#xEC32;) styled with SwitchCast's signature coral accent ({ThemeResource AppAccentBrush}) and external-link icon (&#xE8A7;).
  • Non-Interrupting: Opens the official PayPal donation page in the default web browser without deselecting active views or interrupting live presentations, music, or SwitchDeck.

📥 Download & Installation

Windows x64 Setup Wizard (Recommended)

  • Standalone Installer: SwitchCast-Setup-v1.5.0-x64.exe
  • SHA-256 Checksum: SwitchCast-Setup-v1.5.0-x64.sha256
  • Installation Method:
    1. Download and run SwitchCast-Setup-v1.5.0-x64.exe.
    2. Follow the setup wizard to install into your user profile or custom location.
    3. Start Menu and optional Desktop shortcuts are created automatically.
    4. Supports in-place upgrades and clean uninstallation via Windows Settings > Installed Apps.

Windows x64 Portable Standalone Package

  • Package Archive: SwitchCast-v1.5.0-win-x64.zip
  • SHA-256 Checksum: SwitchCast-v1.5.0-win-x64.sha256
  • How to Run:
    1. Download SwitchCast-v1.5.0-win-x64.zip.
    2. Extract the archive to any folder on your computer.
    3. Launch SwitchCast.exe.
    4. Zero external .NET runtimes or Visual Studio installations required (Self-Contained Windows App SDK package).

🛡️ Verified Publisher & SmartScreen Guidance

  • Verified Author / Publisher Identity: John Christopher King Zamora
  • Official Domain: https://switchcast.wasmer.app/
  • Repository: https://github.com/jczamora-git/SwitchCast
  • Windows Defender SmartScreen Notice:
    • Because SwitchCast is distributed independently outside the Microsoft Store, Windows Defender SmartScreen may display:

      "Windows protected your PC — Microsoft Defender SmartScreen prevented an unrecognized app from starting."

    • Why does this happen? SmartScreen uses cloud telemetry reputation based on download volume. Newly released versions carry new binary hashes that must build reputation over time. Even code-signed binaries experience this until the certificate's identity establishes sufficient telemetry history.
    • How to proceed safely:
      1. Verify that the SHA-256 checksum matches the published checksum file above using PowerShell:
        Get-FileHash .\SwitchCast-Setup-v1.5.0-x64.exe -Algorithm SHA256
      2. Click "More info" on the SmartScreen dialog.
      3. Click "Run anyway" to proceed with installation.
    • Code Signing Readiness: The installation pipeline supports full Authenticode SHA-256 code signing with RFC 3161 timestamping (build-installer.ps1 -Sign) for hardware tokens, PFX credentials, and cloud HSM providers (SignPath Foundation, Azure Trusted Signing).

🧪 Quality & Verification Summary

  • Automated Test Matrix: 480 passing tests (100% pass rate, 0 failures, 0 skipped).
  • Target Platform Alignment: .NET 8 (net8.0-windows10.0.19041.0) on Windows App SDK 1.5.
  • Compiler Health: 0 compiler errors, 0 compiler warnings on both Debug and Release configurations.
  • Privacy & Security: 100% offline, zero network telemetry, zero external egress.

SwitchCast v1.4.0

Choose a tag to compare

@jczamora-git jczamora-git released this 20 Oct 10:35

SwitchCast v1.4.0 — Release Notes

Release Date: October 18, 2026
Target Platform: Windows 10 (version 1809+) & Windows 11 (x64)
Binary Package: SwitchCast-v1.4.0-win-x64.zip
Creator: John Christopher King Zamora
Website: https://switchcast.wasmer.app/
Repository: https://github.com/jczamora-git/SwitchCast


🚀 Overview

SwitchCast v1.4.0 introduces a comprehensive Background Music Subsystem, dedicated Playlists Management, and direct SwitchDeck Audio Controls, transforming SwitchCast into an all-in-one broadcast companion for live presentations and webinars. Presenters can now stream calming background audio or walk-in music independently of live presentation media.

Additionally, v1.4.0 delivers a Responsive Sources Experience with queued-only filtering, moves incident diagnostics into Settings, and resolves critical audio concurrency and startup crash conditions.


✨ What's New & Enhanced in v1.4.0

🎵 Background Music Library & Dedicated Playlists

  • Independent Audio Engine (IBackgroundMusicService): Built a fully decoupled background music player powered by WinRT Windows.Media.Playback.MediaPlayer, isolated from video presentation playback.
  • Dedicated Playlists Navigation: Manage custom music playlists directly from the SwitchCast sidebar. Create, rename, delete playlists, and organize audio files effortlessly.
  • Broad Audio Format Support: Import and play .mp3, .wav, .flac, .aac, .m4a, and .wma files directly into playlists.
  • Immediate UI Refresh & Sync: Newly imported audio files instantly appear in playlist views without requiring page reloads or navigation cycling, complemented by a quick-refresh control.
  • Persistent Playlists: Saved automatically to %LOCALAPPDATA%\SwitchCast\music_playlists.json with safe atomic writes and corrupt file recovery.

🎛️ SwitchDeck Music Transport & Track Picker

  • Presenter Dock Audio Controls: Control background music playback directly from the lightweight Floating Presenter Dock (SwitchDeck) while presenting full-screen.
  • Live Track Indicator & Marquee: Displays the currently playing track title, artist metadata, and playback status.
  • Direct Track Selection: Pick and switch directly to any song in the active playlist via the dock track selector.
  • Dual-Player Audio Isolation: Hardened audio isolation ensures presentation video audio and background music streams maintain independent volume, muting, and lifecycle states without cross-talk.

📋 Responsive Sources & Queue Management

  • Application Windows Default: The Sources page now defaults to "Application Windows" and intelligently preserves your active category filter across sessions.
  • Queued-Only Filter Toggle: Filter your sources view to show only assets currently staged in the presentation queue, making dense asset collections easy to manage.
  • Live Queue Summary: Visual status counter shows total queued items across all categories at a glance.
  • Polite Import Feedback: Added smooth auto-scroll to newly imported assets and non-blocking in-app notification toasts.

🛠️ Diagnostics Architecture Refinement

  • Diagnostics in Settings: Relocated Incident History and local diagnostics reporting from the Control Dashboard to Settings > Diagnostics, keeping the primary presenter dashboard clean and focused.
  • Startup Exception Hardening: Resolved intermittent WinRT COMException (0x80004005) during window initialization and hardened synchronous local crash logging.

📥 Download & Installation

Windows x64 Standalone Package

  • Package Archive: SwitchCast-v1.4.0-win-x64.zip
  • SHA-256 Checksum: SwitchCast-v1.4.0-win-x64.sha256

How to Run:

  1. Download SwitchCast-v1.4.0-win-x64.zip.
  2. Extract the archive to any folder on your computer.
  3. Launch SwitchCast.exe.
  4. Zero external .NET runtimes or Visual Studio installations required (Self-Contained Windows App SDK package).

🧪 Quality & Verification Summary

  • Target Platform Alignment: .NET 8 (net8.0-windows10.0.19041.0) on Windows App SDK 1.5.
  • Dual-Player Regression Suite: 100% test coverage over concurrent video audio and background music state transitions.
  • Compiler Health: 0 compiler errors, 0 compiler warnings on both Debug and Release configurations.
  • Privacy & Telemetry: 100% offline, zero network telemetry, zero data egress.

SwitchCast v1.3.0

Choose a tag to compare

@github-actions github-actions released this 20 Oct 10:32

SwitchCast v1.3.0 — Release Notes

Release Date: October 16, 2026
Target Platform: Windows 10 (version 1809+) & Windows 11 (x64)
Binary Package: SwitchCast-v1.3.0-win-x64.zip
Creator: John Christopher King Zamora
Website: https://switchcast.wasmer.app/
Repository: https://github.com/jczamora-git/SwitchCast


🚀 Overview

SwitchCast v1.3.0 is a landmark feature and stability release. It expands SwitchCast's source capabilities to a unified 6-source presentation engine—adding PowerPoint Slide Decks (.pptx), Live PowerPoint Slideshows, and USB Webcams / Cameras alongside existing Window, Display, Image, and Video sources.

Furthermore, v1.3.0 delivers Smart External Display Automation, a production-grade Local Diagnostics & Error Reporting Subsystem, a dedicated centered Presenter Dock Confirmation Window, and resolves critical native lifecycle and AccessViolation crash scenarios upon presentation stops and floating dock dismissals.


✨ What's New & Enhanced in v1.3.0

📊 PowerPoint Integration (Static Decks & Live Slideshows)

  • Static .pptx Presentation Support: Import PowerPoint presentation files directly into the source library. High-resolution slides are extracted into an isolated local MD5-hashed cache for instantaneous rendering without COM latency.
  • Persistent Slide Decks: Imported presentations are remembered persistently across sessions in UserSettings. Non-existent files are safely flagged as unavailable without destructive deletion.
  • Slide State Continuity: SwitchCast tracks CurrentSlideIndex so switching away to video or camera and returning to PowerPoint resumes on the exact same slide.
  • Attended Live PowerPoint Automation: Seamless integration with Microsoft PowerPoint COM automation (IPowerPointLiveService) in windowed slideshow mode (ppShowTypeWindow = 2), preventing slide decks from hijacking external displays.
  • Adaptive Dock Slide Controls: The Floating Presenter Dock dynamically presents secondary slide navigation buttons (Previous Slide, Next Slide) and a live slide progress indicator (Slide X of Y).

📷 Camera & Webcam Integration

  • Webcam Discovery & Hotplug Support: Automatic hardware enumeration via Windows Device Information Watchers for integrated webcams, USB capture cards, and virtual cameras.
  • Native Video Frame Acquisition: Captures live frames via Windows.Media.Capture.MediaCapture and MediaFrameReader, rendering directly to the presentation output with automatic BGRA8 color space conversion and CPU/GPU fallback pipelines.
  • Hardware Backpressure & Task Observation: Eliminates frame drops and UI freezes via bounded latest-frame-wins rendering and deterministic frame disposal.
  • Privacy First: Cameras are only activated when taken live On-Air, cleanly releasing hardware handles upon source switching or presentation stops.

🖥️ Smart External Display Mode & Multi-Monitor Automation

  • Automatic Display Detection: Discovers extended monitors, TVs, and conference room projectors using physical Win32 desktop geometry.
  • HWND Preservation: Moves the existing PresentationWindow directly to the external display's work area without tearing down or recreating native HWNDs.
  • Configurable Fullscreen: Optionally enters borderless fullscreen automatically on connected external displays (AutoFullscreenOnExternalDisplay), with automatic safe windowed recovery to primary workspace if disconnected.
  • Presenter Workspace Isolation: Control Dashboard and Floating Presenter Dock strictly remain on the primary presenter screen.

🛠️ Production Local Diagnostics & Privacy-First Error Reporting

  • Local Telemetry & Crash Watchdog: Captures structured diagnostic incidents (SC-YYYYMMDD-XXXXXXXX) with hex HRESULTS, thread IDs, stack traces, and OS environments into %LOCALAPPDATA%\SwitchCast\Logs.
  • UI Hang Watchdog: Proactive background watchdog monitors UI thread message loop latency, identifying UI delays or freezes.
  • Privacy Sanitization: Automatically scrubs Windows usernames ([USER]), user profiles, email addresses, and secrets before reporting.
  • Startup Crash Banner & Error Dialog: Alerts presenters on startup if a prior session encountered a fault, providing a rich, non-intrusive diagnostic viewer dialog with one-click clipboard copying. Presentation output is never blocked.
  • Zero Remote Telemetry: Strict local-only operation; zero cloud tracking, zero network telemetry, zero data egress.

🛡️ Critical Dock Lifecycle & Crash Recovery Hotfixes

  • AccessViolationException on Dock Close Resolved: Decoupled PresenterDockConfirmationWindow from native Win32 GWLP_HWNDPARENT ownership tearing. Implemented clean asynchronous dialog dismantling before stopping presentations or destroying docks.
  • Presentation Teardown Isolation: Fully detached DirectX composition textures, MediaPlayer, and compiled bindings before closing presentation windows, eliminating native DComp access violations.
  • Centered Floating Dock Modal: Built a standalone, top-most modal window centered on the active display work area, eliminating focus traps and clipping.
  • Responsive Settings & Dashboard Layout: Standardized layout containers with locked navigation columns, preventing horizontal shifts on maximized ultra-wide displays.
  • Official Website Integration: Added direct website access to https://switchcast.wasmer.app/ in Settings.

📥 Download & Installation

Windows x64 Standalone Package

  • Package Archive: SwitchCast-v1.3.0-win-x64.zip
  • SHA-256 Checksum: SwitchCast-v1.3.0-win-x64.sha256

How to Run:

  1. Download SwitchCast-v1.3.0-win-x64.zip.
  2. Extract the archive to any folder on your computer.
  3. Launch SwitchCast.exe.
  4. Zero external .NET runtimes or Visual Studio installations required (Self-Contained Windows App SDK package).

🧪 Quality & Verification Summary

  • Unit & Contract Tests: 379 passing automated tests (100% pass rate, 0 skipped, 0 failures).
  • Target Platform Alignment: .NET 8 (net8.0-windows10.0.19041.0) on Windows App SDK 1.5.
  • Compiler Health: 0 compiler errors, 0 compiler warnings on both Debug and Release configurations.
  • Privacy & Telemetry: 100% offline, zero network telemetry, zero frame persistence.

SwitchCast v1.2.1

Choose a tag to compare

@github-actions github-actions released this 09 Oct 21:53

SwitchCast v1.2.1 — Release Notes

Release Date: October 10, 2026
Target Platform: Windows 10 (version 1809+) & Windows 11 (x64)
Binary Package: SwitchCast-v1.2.1-win-x64.zip
Creator: John Christopher King Zamora
Repository: https://github.com/jczamora-git/SwitchCast


🚀 Overview

SwitchCast v1.2.1 is a focused usability, stability, and branding release. It delivers dedicated Presentation Output activation for media sources under Active + Live and Active Only modes, updates the official application icon with authentic multi-resolution Windows ICO branding, enhances Floating Presenter Dock focus handoff, fixes mixed-source queue navigation, and introduces direct source unqueuing from the dock.


✨ What's New & Fixed in v1.2.1

🖼️ Media Source Presentation Output Activation

  • Active + Live for Media: When an imported Image or Video source is taken live in Active + Live mode, SwitchCast starts media playback and automatically activates the existing Presentation Output window (restoring if minimized and bringing it to the desktop foreground via Win32 SetForegroundWindow). No external media players (e.g. VLC or Photos) are launched.
  • Active Only for Media: Navigating to an Image or Video source in Active Only mode advances the selection cursor and activates the Presentation Output window without altering the On-Air stream, without starting video playback, and without replacing the current audience-facing frame. If closed, the output opens in Standby mode.
  • Live Only Preserved: Switching media sources in Live Only mode takes them live without stealing focus or requesting foreground focus.
  • Ordinary Window & Monitor Semantics Preserved: Win32 window sources retain standard application activation, and display monitors retain display capture semantics.
  • Presentation State Continuity: Reuses the active output instance without recreation, repositioning, or disrupting fullscreen presentations.

🎨 Authentic Multi-Resolution Application Branding

  • Official App Icon: Packaged high-resolution source icon into standard multi-resolution SwitchCast.ico embedding 16x16, 24x24, 32x32, 48x48, 64x64, 128x128, and 256x256 resolutions.
  • Windows Shell Integration: Seamless integration across Windows Explorer, taskbar, Alt+Tab, and WinUI 3 title bars.

🎛️ Floating Presenter Dock Enhancements & Stability

  • Focus Handoff Coordination: Popup dropdown menu closes and detaches before executing source transitions, preventing dock teardown from stealing focus away from the activated presentation window.
  • Double-Click Maximize Prevention: Subclassed dock HWND (WM_NCLBUTTONDBLCLK on HTCAPTION, SC_MAXIMIZE interception, WM_GETMINMAXINFO clamping) to guarantee the dock remains a compact, floating companion toolbar without accidental maximization.
  • Direct Source Unqueue: Presenters can remove individual items directly from the "Queued Sources" dropdown using interactive checkmark checkboxes without stopping live presentations.
  • Dock X Dismissal Dashboard Activation: Clicking the X button on the Floating Presenter Dock automatically restores and brings the Control Dashboard to the foreground while keeping live presentations and video playback completely running.

🔄 Mixed-Source Queue Navigation Fix

  • Repaired Next/Previous queue cycling between Window, Monitor, Image, and Video sources by traversing a single authoritative ordered queue across all source types.

⏯️ Dynamic Presentation Button Glyphs

  • Main Dashboard button icon dynamically synchronizes with presentation state, updating between Play (\uE768) and Stop square (\uE71A) in lockstep with the button label.

📥 Download & Installation

Windows x64 Standalone Package

  • Package Archive: SwitchCast-v1.2.1-win-x64.zip
  • SHA-256 Checksum: SwitchCast-v1.2.1-win-x64.sha256

How to Run:

  1. Download SwitchCast-v1.2.1-win-x64.zip.
  2. Extract the archive to any folder on your PC.
  3. Launch SwitchCast.exe.
  4. Zero external .NET runtimes or Visual Studio installations required (Self-Contained package).

🧪 Quality & Verification Summary

  • Unit & Integration Tests: 281 tests passed (100% pass rate).
  • Target Platform Alignment: .NET 8 (net8.0-windows10.0.19041.0) on Windows App SDK 1.5.
  • Privacy & Telemetry: 100% offline, zero network telemetry, zero frame persistence.

SwitchCast v1.2.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 16:17

SwitchCast v1.2.0 — Release Notes

Release Date: October 10, 2026
Target Platform: Windows 10 (version 1809+) & Windows 11 (x64)
Binary Package: SwitchCast-v1.2.0-win-x64.zip
Creator: John Christopher King Zamora
Repository: https://github.com/jczamora-git/SwitchCast


🚀 Overview

SwitchCast v1.2.0 is a major feature and stability release introducing full local media presentation (Images & Videos), high-fidelity video audio playback with volume controls, dedicated dock-controlled fullscreen presentation output, native non-client caption dragging for the Floating Presenter Dock, and a permanent resolution to the playback timeline cross-thread COMException.


✨ What's New in v1.2.0

🖼️ Full Media Presentation Integration (Images & Videos)

  • Direct File Import: Presenters can now import local images (.png, .jpg, .jpeg, .bmp, .gif) and video files (.mp4, .mkv, .mov, .wmv, .avi) directly into the SwitchCast presentation queue.
  • Unified Presentation Queue: Media sources seamlessly interleave with desktop application windows and physical monitors.
  • Native Video Playback: Direct hardware-accelerated playback utilizing Windows.Media.Playback.MediaPlayer and MediaPlayerElement.

🔊 Local Media Audio Playback & Volume Control

  • Audible Local Playback: Videos now produce audible local sound connected directly to Windows audio endpoints.
  • Mute & Volume Controls: Dedicated volume slider (0–100%) and instant mute toggle (\uE74F/\uE767) on both the Control Dashboard and the Floating Presenter Dock.
  • Atomic Seek Synchronization: Audio and video seek, pause, resume, and restart in perfect lockstep.

🖥️ Fullscreen Presentation Output

  • Dock-Controlled Fullscreen Toggle: Switch between standard windowed mode and true borderless fullscreen (AppWindowPresenterKind.FullScreen) directly from the Floating Presenter Dock.
  • Same HWND Continuity: Transitions preserve the identical Win32 HWND, active capture session, and media stream without interrupting meeting shares.
  • 100% Viewport Coverage: Title bar collapses automatically in fullscreen mode with 16:9 aspect ratio preserved. Press Escape to quickly exit fullscreen.

🎛️ Floating Presenter Dock Finalization

  • Native Caption Dragging: Replaced custom pointer routing with genuine Windows App SDK InputNonClientPointerSource caption regions, eliminating sticky dragging or click-to-move anomalies.
  • Adaptive Video Transport Controls: When a video source is on-air, the dock dynamically reveals timeline scrubber controls (Restart, Backward 10s, Play/Pause, Forward 10s, live timecode mm:ss / mm:ss).
  • Unified Toolbar Layout: Streamlined 680 DIPs single-row baseline layout with instant source switching, mode selector, and fullscreen toggle.

🛡️ Critical Stability & Threading Hotfix

  • Permanent Elimination of COMException 0x8001010E (RPC_E_WRONG_THREAD):
    • Replaced background thread-pool timers with a single, UI-owned Microsoft.UI.Dispatching.DispatcherQueueTimer.
    • Enforced strict WinUI 3 UI thread affinity for all PropertyChanged notifications bound to XAML slider controls.
    • Eliminated unsafe fallback execution branches on worker threads.

📥 Download & Installation

Windows x64 Standalone Package

  • Package Archive: SwitchCast-v1.2.0-win-x64.zip
  • SHA-256 Checksum: SwitchCast-v1.2.0-win-x64.sha256

How to Run:

  1. Download SwitchCast-v1.2.0-win-x64.zip.
  2. Extract the archive to any folder on your PC.
  3. Launch SwitchCast.exe.
  4. Zero external .NET runtimes or Visual Studio installations required (Self-Contained package).

⌨️ Default Keyboard Shortcuts

Shortcut Action
Ctrl + Shift + → Next Presentation Source
Ctrl + Shift + ← Previous Presentation Source
Ctrl + Shift + 1..5 Direct Queue Switch (Sources 1–5)
Ctrl + Shift + P Toggle Pause / Freeze-Frame
Ctrl + Shift + B Toggle Blackout / Privacy Curtain
Ctrl + Shift + S Stop Presentation
Ctrl + Shift + D Toggle Floating Presenter Dock
Ctrl + Shift + M Bring Dashboard to Foreground

📋 System Requirements

  • OS: Windows 10 (version 1809 / build 17763 or later) or Windows 11
  • Architecture: 64-bit (x64)
  • Graphics: Direct3D 11 compatible GPU or WARP software fallback

👨‍💻 Creator & Attribution

Developed with precision by John Christopher King Zamora
GitHub: @jczamora-git
Repository: https://github.com/jczamora-git/SwitchCast

v1.1.0

Choose a tag to compare

@jczamora-git jczamora-git released this 09 Oct 19:43

SwitchCast v1.1.0

Seamless Windows Screen Sharing & Presentation Management

SwitchCast helps presenters switch between application windows, monitors, images, and videos while sharing a single Presentation Output window in their meeting software. Prepare your sources in advance, control what goes live, and avoid repeatedly changing the shared window.

Download v1.1.0 · Repository · Latest Releases

What's New in v1.1.0

  • Direct image and video sources — Import local media and add it to the presentation queue alongside applications and monitors.
  • Unified source switching — Move between window, display, image, and video sources using the Dashboard, Floating Presenter Dock, or existing shortcuts.
  • Native video playback — Play imported videos inside the existing Presentation Output instead of opening an external media application.
  • Local video audio playback — Play supported audio tracks through the Windows audio output, with mute and volume adjustments in the presenter controls.
  • Media-aware controls — Manage video playback from the Dashboard while retaining existing presentation Pause, Blackout, and Stop actions.

Key Features

Feature | Description -- | -- Window and monitor capture | Capture supported desktop windows and displays using Windows Graphics Capture. Stable Presentation Output | Share a dedicated output window and change its content without repeatedly selecting a different meeting share target. Mixed presentation queue | Queue application windows, displays, images, and video files in your preferred order. Three switching modes | Live Only changes the audience feed; Active + Live also activates supported source windows; Active Only activates supported source windows without taking them live. Floating Presenter Dock | Control queued sources, switching mode, and presentation actions without returning to the main Dashboard. Video and audio | Play supported local videos with synchronized audio, mute, and volume controls. Presenter privacy controls | Pause or black out the audience-facing output when needed. Global shortcuts | Control common presenter actions while working in another application. Native application icons | Recognize discovered application windows by their real Windows icons where available.

Hotkeys may be changed in the application's settings where supported.

Notes and Limitations

  • Meeting audio is separate from local audio. Hearing a video on your computer does not guarantee that meeting participants hear it. Configure audio sharing in your conferencing app where supported.
  • Minimized or protected windows may not be capturable. Windows and individual apps can restrict or suspend capture.
  • Video format support varies. A supported filename extension does not guarantee that its video and audio codecs are available on the target PC.
  • Version-specific documentation: This README describes the v1.1.0 release. For newer presentation features and fixes, see the latest releases.

Technology Stack

  • C# / .NET 8
  • WinUI 3 / Windows App SDK
  • Windows.Graphics.Capture / Direct3D 11
  • Windows.Media.Playback
  • Win32 interoperability
  • CommunityToolkit.Mvvm

Creator

John Christopher King Zamora
GitHub: @jczamora-git
Project: SwitchCast


Version: v1.1.0 · Platform: Windows x64 · Release: GitHub v1.1.0

SwitchCast v1.1.0 Seamless Windows Screen Sharing & Presentation Management

SwitchCast helps presenters switch between application windows, monitors, images, and videos while sharing a single Presentation Output window in their meeting software. Prepare your sources in advance, control what goes live, and avoid repeatedly changing the shared window.
Download v1.1.0 · Repository · Latest Releases
What's New in v1.1.0

  • Direct image and video sources — Import local media and add it to the presentation queue alongside applications and monitors.
  • Unified source switching — Move between window, display, image, and video sources using the Dashboard, Floating Presenter Dock, or existing shortcuts.
  • Native video playback — Play imported videos inside the existing Presentation Output instead of opening an external media application.
  • Local video audio playback — Play supported audio tracks through the Windows audio output, with mute and volume adjustments in the presenter controls.
  • Media-aware controls — Manage video playback from the Dashboard while retaining existing presentation Pause, Blackout, and Stop actions.
    Key Features
    Feature Description
    Window and monitor capture Capture supported desktop windows and displays using Windows Graphics Capture.
    Stable Presentation Output Share a dedicated output window and change its content without repeatedly selecting a different meeting share target.
    Mixed presentation queue Queue application windows, displays, images, and video files in your preferred order.
    Three switching modes Live Only changes the audience feed; Active + Live also activates supported source windows; Active Only activates supported source windows without taking them live.
    Floating Presenter Dock Control queued sources, switching mode, and presentation actions without returning to the main Dashboard.
    Video and audio Play supported local videos with synchronized audio, mute, and volume controls.
    Presenter privacy controls Pause or black out the audience-facing output when needed.
    Global shortcuts Control common presenter actions while working in another application.
    Native application icons Recognize discovered application windows by their real Windows icons where available.

System Requirements

  • Operating system: Windows 10 version 1809 or later, or Windows 11
  • Architecture: x64
  • Graphics: Direct3D 11-compatible hardware or supported software fallback
  • Media formats: Playback depends on the codecs supported by Windows and the installed system configuration
    Installation
  1. Open the SwitchCast v1.1.0 release page.
  2. Download the available Windows x64 application package from Assets.
  3. Extract the archive to a folder on your computer.
  4. Launch SwitchCast.exe from the extracted application files.
  5. If Windows reports a missing runtime or dependency, follow the requirements included with that specific release asset.
    Keep the extracted application files together. The executable may depend on accompanying libraries and resources.

How to Present

  1. Add sources. Open Sources and queue the application windows or monitors you want to show. Import local images and videos under the media source options.
  2. Open Presentation Output. Use the Dashboard to open the dedicated audience-facing window.
  3. Share the output. In Google Meet, Zoom, or Microsoft Teams, select the SwitchCast Presentation Output window as your share target.
  4. Start presenting. Choose a queued source and click Start Presenting.
  5. Switch sources. Use the Dashboard, Floating Presenter Dock, or hotkeys to move through the queue.
  6. Control media. When a video source is active, use the available playback and audio controls. Use Pause or Blackout when you need to temporarily conceal the live presentation.
  7. Stop. Select Stop Presenting to end the presentation session.
    Default Keyboard Shortcuts
    Action Shortcut
    Next presentation source Ctrl + Shift + →
    Previous presentation source Ctrl + Shift + ←
    Select queued source 1–5 Ctrl + Shift + 1 through 5
    Pause / Resume Ctrl + Shift + P
    Blackout Ctrl + Shift + B
    Stop presenting Ctrl + Shift + S
    Show / Hide Presenter Dock Ctrl + Shift + D
    Show Control Dashboard Ctrl + Shift + M

Hotkeys may be changed in the application's settings where supported.
Notes and Limitations

  • Meeting audio is separate from local audio. Hearing a video on your computer does not guarantee that meeting participants hear it. Configure audio sharing in your conferencing app where supported.
  • Minimized or protected windows may not be capturable. Windows and individual apps can restrict or suspend capture.
  • Video format support varies. A supported filename extension does not guarantee that its video and audio codecs are available on the target PC.
  • Version-specific documentation: This README describes the v1.1.0 release. For newer presentation features and fixes, see the latest releases.
    Technol...
Read more

v1.0.0

Choose a tag to compare

@jczamora-git jczamora-git released this 09 Oct 05:22

SwitchCast

Seamless Windows Screen Sharing & Presentation Management
Capture applications and displays, queue your presentation sources, and switch seamlessly in a single stable output window without interrupting your meeting stream.

Release
Platform
Framework
UI
License


Overview

During virtual presentations and live screen-sharing sessions (Zoom, Microsoft Teams, Google Meet, Discord, OBS), presenters frequently need to transition between slide decks, IDE code editors, terminal windows, browser tabs, and application demos. Standard conferencing tools require stopping screen sharing, selecting another application window, and restarting screen sharing—disrupting the meeting flow and risking accidental exposure of private desktop content.

SwitchCast solves this problem.

Presenters share one dedicated, stable Presentation Output window in their meeting software. Inside SwitchCast, presenters queue multiple applications or monitors and switch between them instantly using the Control Dashboard, the lightweight Floating Presenter Dock, or Global Keyboard Shortcuts—all while the meeting audience sees a continuous, uninterrupted live video feed.


Key Features

  • Live Window & Monitor Capture: Hardware-accelerated desktop capture via Windows.Graphics.Capture and Direct3D 11.
  • Dedicated Shareable Output Window: Clean 16:9 audience-facing presentation canvas titled "SwitchCast Presentation Output", directly selectable by all major conferencing platforms.
  • Instant Seamless Source Switching: Switch between queued application windows and physical monitors in milliseconds with latest-request-wins concurrency serialization.
  • Three Source Switching Modes:
    • Live Only (L) (Default): Switches the shared output stream without changing your active desktop focus.
    • Active + Live (A+L): Switches the shared output stream and simultaneously brings the selected application window to the foreground.
    • Active Only (A): Brings the application to your desktop foreground for private interaction without altering the live audience feed.
  • Floating Presenter Companion Dock: Ultra-slim, always-on-top draggable floating toolbar offering on-air status, fast source switching, pause/blackout toggles, and switching mode selection.
  • System-Wide Global Hotkeys: Direct shortcut control across Windows even when SwitchCast is in the background.
  • Live Presentation Controls: Instant Pause / Freeze-Frame and 100% opaque Blackout / Privacy Curtain controls.
  • Dynamic True-Color Native Icons: Automatically extracts and displays authentic 32-bit Windows application icons (Chrome, Visual Studio, File Explorer, IDEs) in the Sources picker.
  • Modern Fluent Design Shell: Custom dark title bars, DPI-aware geometry centering, theme synchronization (Dark & Light modes), and Windows 11 Snap Layouts.
  • Safe Window Lifecycle & Exit Confirmation: Prevents accidental meeting terminations with clear prompts, independent secondary window lifecycle, and clean resource teardown.
  • 100% Privacy & Zero Telemetry: Operates entirely offline on your local device. No network requests, analytics, or cloud dependencies.

Technology Stack

  • Language & Runtime: C# / .NET 8.0 (net8.0-windows10.0.19041.0)
  • UI Framework: WinUI 3 (Windows App SDK 1.5)
  • Capture Engine: Windows.Graphics.Capture (WinRT Interop) & Direct3D 11 swapchain pipelines
  • Diagnostic Capture: Win32 GDI PrintWindow (PW_RENDERFULLCONTENT) and BitBlt fail-safe fallbacks
  • Architecture: Clean Architecture MVVM (CommunityToolkit.Mvvm, Microsoft.Extensions.DependencyInjection)
  • Target OS: Windows 10 (version 1809 / build 17763 or later) & Windows 11 (x64)

Getting Started

System Requirements

  • Operating System: Windows 10 64-bit (version 1809 or higher) or Windows 11 64-bit
  • Architecture: x64
  • Graphics: Direct3D 11 compatible graphics hardware or WARP software rasterizer

Installation

  1. Download the latest SwitchCast-v1.0.0-win-x64.zip release from Releases.
  2. Extract the archive to any folder on your computer.
  3. Run SwitchCast.exe.

Note: SwitchCast is configured as a standalone, unpackaged desktop application.


Basic Usage

  1. Discover & Queue Sources:
    • Open SwitchCast and navigate to the Sources tab.
    • Check the boxes next to the application windows or displays you want to include in your presentation.
  2. Open Presentation Output:
    • Click Open Output Window from the Dashboard or Presenter Dock.
  3. Share in Meeting:
    • In Zoom, Microsoft Teams, or Google Meet, choose Share Window and select "SwitchCast Presentation Output".
  4. Start Presenting:
    • Click Start Presenting on the Dashboard or Presenter Dock.
  5. Switch Between Sources:
    • Use the Floating Presenter Dock, Dashboard, or Global Hotkeys (Ctrl+Shift+Right / Ctrl+Shift+Left) to switch smoothly between your queued sources.

Default Keyboard Shortcuts

Action Default Shortcut Description
Next Presentation Source Ctrl + Shift + → Switches to the next source in the presentation queue
Previous Presentation Source Ctrl + Shift + ← Switches to the previous source in the presentation queue
Direct Source 1–5 Ctrl + Shift + 1..5 Instantly switches to the corresponding queued source
Toggle Pause / Resume Ctrl + Shift + P Freezes or resumes the live video feed
Toggle Blackout Ctrl + Shift + B Blanks the output canvas for instant presenter privacy
Stop Presenting Ctrl + Shift + S Safely stops live capture and returns output to standby
Toggle Presenter Dock Ctrl + Shift + D Shows or hides the floating companion toolbar
Focus Dashboard Ctrl + Shift + M Restores and brings the main SwitchCast window forward

Shortcuts can be viewed and configured in the Settings > Shortcuts panel.


Known Platform Behaviors

  • Minimized Application Windows: In accordance with standard Windows OS graphics compositor policy, minimized application windows suspend DirectX frame generation. SwitchCast retains the last captured frame until the window is restored.
  • OS Protected Windows: Windows with elevated DRM or display affinity flags (WDA_MONITOR / WDA_EXCLUDEFROMCAPTURE) cannot be captured by third-party software by design.

Creator & Attribution

Created by John Christopher King Zamora


Releases

Official builds and release packages are published on the GitHub Releases page.