Releases: OpenCloudGaming/OpenNOW
OpenNOW Nightly (60030b6)
What's Changed
- Hide stream UI top bar in fullscreen mode by @zortos293 in #4
- Add dynamic resolution and FPS dropdowns from subscription data by @zortos293 in #6
- Build Versioning by @zortos293 in #7
- Merge dev to main by @zortos293 in #8
- Raw mouse input by @zortos293 in #11
- Fix resolution by @zortos293 in #10
- Merge dev to main by @zortos293 in #12
- Merge dev to main by @zortos293 in #13
- Add region latency testing with color-coded ping display by @zortos293 in #15
- Merge dev to main by @zortos293 in #16
- Discord rich presence + Low latency mode by @zortos293 in #17
- UI Redesign with Custom Components and Native macOS Support by @zortos293 in #19
- UI improvements, code cleanup, and bug fixes by @zortos293 in #21
- OpenNOW rebrand, auto-updates, session polling & reconnection fixes by @zortos293 in #31
- Add AI-powered release notes & game variant selector improvements by @zortos293 in #33
- Add NVIDIA Reflex, improve input latency, and expand resolution options by @zortos293 in #34
- Dev by @zortos293 in #35
- Major input latency improvements, subscription fixes by @zortos293 in #39
- Enable persistent in-game settings via enablePersistingInGameSettings flag by @Copilot in #40
- feat: add queue times navigation and API integration for free tier users by @Kief5555 in #46
- chore: migrate from npm/vite to bun/rolldown-vite by @MarkPLacer in #43
- Merge dev: Logging system, Alliance Partner support, server fixes by @zortos293 in #47
- fix: add @tauri-apps/plugin-http dependency by @zortos293 in #48
- fix: update fetch calls for main games and library data loading by @Kief5555 in #50
- fix: bump version to 0.0.19 in package.json and Cargo.toml by @Kief5555 in #52
- Add disclaimer regarding project affiliation by @zortos293 in #54
- [README] Add macOS troubleshooting for app quarantine by @zortos293 in #55
- Add Discord badge to README by @zortos293 in #56
- Add MIT License to the project by @zortos293 in #62
- v0.0.21: ARM64 builds, mouse/keyboard fixes, streaming improvements by @zortos293 in #65
- v0.0.22: Emergency fix for Zain alliance partner streaming by @zortos293 in #68
- fix: Zain alliance partner signaling URL (follow-up) by @zortos293 in #70
- Stupid camelcase fix ahhhh by @zortos293 in #71
- Release v0.1.0 - Major streaming improvements, Alliance Partner fixes, and UX enhancements by @zortos293 in #74
- fix: improve version parsing and validation in CI workflow by @zortos293 in #75
- [skip ci] Add warning about app rebuilding with native libraries by @zortos293 in #79
- Fix typo in rebuild notice in README.md by @zortos293 in #80
- Rewrite CI workflow for native opennow-streamer builds by @zortos293 in #82
- Remove legacy Tauri-based code and cleanup by @zortos293 in #84
- Capy/implement session re 2b4c7dea by @f1shy-dev in #85
- v0.2.0: Native Rust Rewrite & Build Fixes by @zortos293 in #93
- build: Package release artifacts as ZIP archives for all platforms by @zortos293 in #94
- Implement PrintedWaste Queue Times API integration by @Kief5555 in #95
- V0.2.2 Performance Improvements + Stability by @zortos293 in #98
- V0.2.3 Features & Bug Fixes by @zortos293 in #102
- v0.2.4: Major Migration from Rust/Tauri to Electron by @zortos293 in #117
- chore: remove legacy opennow-streamer (Rust) [skip ci] by @zortos293 in #118
- fix(ci): publish release on main branch pushes [skip ci] by @zortos293 in #119
- feat(webrtc): Implement microphone support for cloud sessions by @zortos293 in #121
- Add stream UX improvements, auth/subscription updates, and CI/build hardening by @zortos293 in #125
New Contributors
- @Copilot made their first contribution in #40
- @Kief5555 made their first contribution in #46
- @MarkPLacer made their first contribution in #43
- @f1shy-dev made their first contribution in #85
Full Changelog: https://github.com/OpenCloudGaming/OpenNOW/commits/nightly-60030b626b57914e9e4d538aba1d4ed954a82653
OpenNOW Nightly (529d0b076e620e64e1f29cc7ad73cc1cb4ed0ebc)
What's Changed
- v0.2.4: Major Migration from Rust/Tauri to Electron by @zortos293 in #117
- chore: remove legacy opennow-streamer (Rust) [skip ci] by @zortos293 in #118
- fix(ci): publish release on main branch pushes [skip ci] by @zortos293 in #119
Full Changelog: v0.2.3...nightly-529d0b076e620e64e1f29cc7ad73cc1cb4ed0ebc
OpenNOW v0.2.3
OpenNOW v0.2.3
Open source native GeForce NOW client built with Rust.
Added
- Clipboard Paste Support: You can now use
Ctrl+Vto paste text during streaming sessions. This includes a toggle in the Input settings and a 64KB safety limit. - Enhanced Linux Video Decoding: Completely rewritten H.264 decoding using Vulkan Video for better performance, featuring improved picture buffer management and reference frame tracking.
- GStreamer Integration: New backend for audio and video streaming to improve playback stability.
- Portable Linux Bundles: Linux x64 and ARM64 versions now include built-in GStreamer libraries, allowing the app to run without system-wide dependencies via a new
run.shscript. - Steering Wheel Support (Alpha): Initial implementation for steering wheel input (currently disabled by default for fine-tuning).
- Copy Link Option: Added the ability to copy game links directly.
- Clipboard Management: Integrated
arboardfor robust cross-platform clipboard access.
Changed
- Persistent Window Size: The app now saves and restores your window dimensions across sessions on macOS and all other platforms.
- Improved Search Workflow: Typing in the search bar now automatically switches the view to the "All Games" tab to display results immediately.
- Audio Improvements: Updated the audio engine to remove FFmpeg dependencies in favor of a leaner GStreamer pipeline.
- Streamlined Audio Pipeline: Simplified audio processing by removing unnecessary parsers and adding resampling for better device compatibility.
Fixed
- Wayland Fullscreen: Resolved issues with fullscreen mode not behaving correctly on Wayland-based Linux distributions.
- Session UI Refresh: The session setup screen now updates at 30 FPS, ensuring progress bars and status messages move without requiring mouse movement.
- Windows Dependency Errors: Fixed "loading" and "missing DLL" errors on Windows by bundling all necessary GStreamer components and plugins (e.g., ffi-7, opus).
- GitHub Actions: Fixed various CI/CD workflow issues regarding YAML compatibility and build bundling.
Downloads
- Windows x64: Portable executable with bundled GStreamer
- Windows ARM64: Portable executable with bundled GStreamer (Surface Pro X, etc.)
- macOS ARM64: Apple Silicon native binary with bundled FFmpeg + GStreamer (Intel Macs can use Rosetta 2)
- Linux x64: Portable binary (requires system GStreamer - see below)
- Linux ARM64: Portable binary (requires system GStreamer - see below)
Linux users: Install GStreamer via your package manager:
# Ubuntu/Debian
sudo apt install gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav
# Fedora/RHEL
sudo dnf install gstreamer1-plugins-base gstreamer1-plugins-good gstreamer1-plugins-bad-free gstreamer1-plugins-ugly-free gstreamer1-libav
# Arch
sudo pacman -S gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libavOpenNOW v0.2.2
OpenNOW v0.2.2
Open source native GeForce NOW client built with Rust.
Added
- New Backend Engine: Migrated the streaming core to GStreamer for improved stability and performance.
- Vulkan Support: Implemented a full VulkanVideo decoder and a dedicated Vulkan encoder for Linux users.
- Windows Features: Added a native DX11 decoder for high-performance hardware acceleration on Windows.
- Queue System Integration: Integrated the PrintedWaste Queue Times API, allowing users to view server mapping, live queue data, and estimated wait times.
- Queue Management: Added filtering by region and advanced sorting options (ping, queue time, best value, and alphabetical).
- Fallback Options: Included a fallback encoder and restored video encoding options in the settings menu.
- Platform Support: Introduced Mac Legacy builds.
Changed
- Audio Engine: Overhauled audio handling to support multi-channel devices (up to 7.1). Added intelligent upmixing from stereo to surround sound.
- Render Pacing: Synchronized the render frame rate with the decoder output to prevent excessive CPU usage and duplicate frame requests.
- GUI Performance: Implemented image caching for the user interface and hardware-accelerated video decoding.
- Raspberry Pi: Updated Raspberry Pi support status to "untested" and updated associated codec configurations.
Fixed
- Audio Quality: Fixed glitchy audio playback on multi-channel headsets.
- Mouse Behavior: Resolved issues where the cursor would remain visible while alt-tabbed or get stuck in the center of the screen.
- Visual Glitches: Fixed a "green color" issue by improving frame skipping logic and resolved a redrawing bug that caused high CPU spikes.
- Linux/AMD Stability: Fixed VAAPI decoder bugs specifically affecting AMD hardware and resolved Linux-specific build errors.
- Device Support: Fixed a crash issue specific to the Raspberry Pi 5.
- Network: Resolved a ping calculation issue within the queue system.
- General Build: Fixed various auto-build, CI, and cross-platform compilation issues across Windows and Linux.
Removed
- Legacy Components: Removed the old macOS legacy build and deprecated FFmpeg options on Windows and Linux.
- Cleanup: Removed redundant encoder options and unused VAAPI handler code.
Downloads
- Windows x64: Portable executable with bundled FFmpeg DLLs
- Windows ARM64: Portable executable with bundled FFmpeg DLLs (Surface Pro X, etc.)
- macOS ARM64: Apple Silicon native binary with bundled FFmpeg dylibs (Intel Macs can use Rosetta 2)
- Linux x64: Portable binary (requires system FFmpeg - see below)
- Linux ARM64: Portable bundle with FFmpeg libs (run via
./run.sh)
Linux x64 users: Install FFmpeg via your package manager:
# Ubuntu/Debian
sudo apt install ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev
# Fedora/RHEL
sudo dnf install ffmpeg-free ffmpeg-free-devel
# Arch
sudo pacman -S ffmpegOpenNOW v0.2.1
OpenNOW v0.2.1
Open source native GeForce NOW client built with Rust.
Changed
- Release artifacts are now packaged as ZIP archives for all platforms.
Downloads
- Windows x64: Portable executable with bundled FFmpeg DLLs
- Windows ARM64: Portable executable with bundled FFmpeg DLLs (Surface Pro X, etc.)
- macOS ARM64: Apple Silicon native binary with bundled FFmpeg dylibs (Intel Macs can use Rosetta 2)
- Linux x64: Portable binary (requires system FFmpeg - see below)
- Linux ARM64: Portable bundle with FFmpeg libs (run via
./run.sh)
Linux x64 users: Install FFmpeg via your package manager:
# Ubuntu/Debian
sudo apt install ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev
# Fedora/RHEL
sudo dnf install ffmpeg-free ffmpeg-free-devel
# Arch
sudo pacman -S ffmpegOpenNOW v0.2.0
OpenNOW v0.2.0
Open source native GeForce NOW client built with Rust.
Added
- Core Application: Initial release of the OpenNow Streamer application with windowing, input handling, and state management.
- Hardware Acceleration: Hardware-accelerated H.264, H.265, and AV1 video decoding with automatic GPU vendor detection.
- WGPU Renderer: High-performance GPU renderer for video frames and UI overlays using
wgpuandegui. - Audio Support: Added Opus audio decoder and
cpalaudio player featuring dynamic device switching and resampling. - WebRTC Integration: Built-in WebRTC streaming client components including peer connection and signaling.
- macOS Native Input: Implemented raw mouse input with event coalescing for macOS and Windows.
- Platform Features: Added D3D11VA zero-copy video for Windows and VideoToolbox optimizations for macOS.
- GFN Integration: Game catalog GraphQL API integration, proactively refreshing tokens, and CloudMatch API support.
- Session Management: Added session conflict detection with the ability to resume or claim existing GeForce NOW sessions.
- UI Screens: New GUI architecture including login screens, game session loading, and a comprehensive settings modal.
Changed
- Performance Optimizations: Optimized macOS rendering for a 60fps minimum, low-latency decoder flags, and a lock-free ring buffer for audio.
- Rendering Logic: Synchronized render FPS to match the video decode rate to reduce unnecessary CPU/GPU usage.
- macOS Bundling: Improved the macOS build process to create proper
.appbundles with updatedInfo.plistand library reference rewriting. - Refactoring: Modularized the codebase by splitting large files into dedicated modules for UI screens, RTP depacketizers, and application cache.
- Documentation: Updated README to reflect the native Rust implementation and detailed platform support.
- Build System: Updated FFmpeg dependencies to n7.1 for improved compatibility with
ffmpeg-next.
Fixed
- Raspberry Pi 5: Resolved Vulkan crashes and Out-Of-Memory (OOM) errors on RPi5 by adjusting device limits and memory hints.
- Controller Support: Fixed controller input issues by implementing the correct packet type and XInput formatting.
- Game Launch: Fixed a bug where games would fail to launch by ensuring pending game cache is saved before the launch flag is set.
- macOS Libraries: Resolved
@rpathdependency issues and implemented ad-hoc code signing for macOS builds. - CI/CD: Fixed various cross-platform compilation errors for Linux (VAAPI) and Windows (D3D12), and improved ARM64 build dependencies.
- Stability: Fixed unused import warnings and addressed recursion limits in
serde_jsonmacros.
Removed
- Removed
IMPLEMENTATION_PLAN.mddocumentation. - Removed the mouse input flush timer in favor of more efficient event handling.
Downloads
- Windows x64: Portable executable with bundled FFmpeg DLLs
- Windows ARM64: Portable executable with bundled FFmpeg DLLs (Surface Pro X, etc.)
- macOS ARM64: Apple Silicon native binary with bundled FFmpeg dylibs (Intel Macs can use Rosetta 2)
- Linux x64: Portable binary (requires system FFmpeg - see below)
- Linux ARM64: Portable bundle with FFmpeg libs (run via
./run.sh)
Linux x64 users: Install FFmpeg via your package manager:
# Ubuntu/Debian
sudo apt install ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev
# Fedora/RHEL
sudo dnf install ffmpeg-free ffmpeg-free-devel
# Arch
sudo pacman -S ffmpegOpenNOW v0.1.1
OpenNOW v0.1.1
Open source GeForce NOW client.
Added
- Alliance Partner Support: Improved compatibility for partners like Zain, including proper ICE server configuration and dynamic streaming URL handling.
- Error Handling Modals: New user-friendly modals for "Region Not Supported" and "Session Limit Exceeded" with tailored troubleshooting steps and retry options.
- Improved Loading States: Replaced placeholder elements with clean loading spinners across game grids for a smoother initial experience.
- Session Info: Added GPU Type display to the session settings panel.
- Installer Options: Windows installers now support both per-user and per-machine installation modes.
Changed
- Streaming Reliability: Refined session reconnection flow and WebRTC configurations to use real media ports and validated ICE candidates.
- Polling Logic: Simplified session polling to a consistent 2-second interval for more predictable behavior.
- UI/UX Cleanup: Removed input latency statistics from the streaming overlay and settings for a cleaner interface.
- Windows Compatibility: Enabled static CRT linking for Windows builds, removing the requirement for users to manually install the Visual C++ Redistributable.
- Provider Updates: Renamed "Brothers Pictures" login provider to "bro.game" for better recognition.
- Backend Refactoring: Standardized API responses to camelCase across Rust and TypeScript for better consistency.
- Optimized Assets: Enabled LZMA compression for Windows installers to reduce file size.
Fixed
- Windows Startup: Resolved "app can't run on your PC" errors on certain Windows environments by embedding necessary runtimes.
- Alliance Partner Sessions: Fixed
get_active_sessionsto correctly target partner-specific URLs rather than hardcoded production defaults. - Tauri 2.0 Compatibility: Updated NSIS configuration structure to meet Tauri 2.0 requirements.
- CI Workflow: Improved version parsing and validation in the build pipeline to ensure stable releases.
- General Stability: Addressed various code review feedback, improved error detection logic, and fixed unused variable warnings.
Downloads
- Windows x64:
.msior.exeinstaller - Windows ARM64:
.msior.exeinstaller (for ARM devices) - macOS:
.dmgdisk image (Universal - Intel + Apple Silicon) - Linux x64:
.debor.AppImage - Linux ARM64:
.debor.rpm(Raspberry Pi, ARM servers)
OpenNOW v0.0.24
OpenNOW v0.0.24
Open source GeForce NOW client.
Fixed
- Corrected inconsistent naming conventions in the codebase.
Downloads
- Windows x64:
.msior.exeinstaller - Windows ARM64:
.msior.exeinstaller (for ARM devices) - macOS:
.dmgdisk image (Universal - Intel + Apple Silicon) - Linux x64:
.debor.AppImage - Linux ARM64:
.debor.rpm(Raspberry Pi, ARM servers)
OpenNOW v0.0.23
OpenNOW v0.0.23
Open source GeForce NOW client.
Fixed
- Zain Alliance Partner connections: Resolved an issue where stale session storage prevented successful connections by ensuring the signaling URL is correctly passed from the frontend to the internal WebRTC configuration.
- Connection Stability: Improved internal tracing and debug logging for better troubleshooting of URL handling during the streaming handshake.
Downloads
- Windows x64:
.msior.exeinstaller - Windows ARM64:
.msior.exeinstaller (for ARM devices) - macOS:
.dmgdisk image (Universal - Intel + Apple Silicon) - Linux x64:
.debor.AppImage - Linux ARM64:
.debor.rpm(Raspberry Pi, ARM servers)
OpenNOW v0.0.22
OpenNOW v0.0.22
Open source GeForce NOW client.
Changed
- Improved session management by using the signaling URL directly from the API response for better connection reliability.
- Enhanced WebRTC configuration logic to better handle and validate various alliance partner network setups.
Fixed
- Fixed a connection issue with Zain alliance partners where the signaling URL was missing the required IP address.
- Added a fallback mechanism to use the server IP when a malformed signaling URL is detected.
Downloads
- Windows x64:
.msior.exeinstaller - Windows ARM64:
.msior.exeinstaller (for ARM devices) - macOS:
.dmgdisk image (Universal - Intel + Apple Silicon) - Linux x64:
.debor.AppImage - Linux ARM64:
.debor.rpm(Raspberry Pi, ARM servers)