Repository navigation
Releases: Everlite/EverLive
Release list
EverLive v1.2.3 - Zero-Sudo Boot, Live RGB Animation & 5V HDMI Hotplug
What's Changed in v1.2.3:
- Zero-Sudo Boot Auto-Binding:
install.shnow automatically sets up/etc/modules-load.d/everlive-vfio.confand/etc/modprobe.d/everlive-vfio.confwith PCIe hardware IDs (1461:0054,1461:0055). The Linux kernel binds the AVerMedia GC573/GC555 directly at boot, completely eliminating sudo password prompts on launch or desktop autostart. - Live RGB Animation Worker:
gc573_user_streamergained a dedicated 20 Hz background worker thread that continuously animates the 5-zone traveling rainbow wave (--wave) and whole-card breathing spectrum cycle (--rainbow) during active streaming. - Eliminated Startup LED Red Blinking Gap: LED preset initialization was moved to millisecond 10 right after FPGA bridge reset. Redundant standby daemon launches were removed when starting directly into streaming mode, eliminating the ~3s red flashing gap during HDMI receiver init and EDID handshakes.
- Combined CLI & System Tray Execution:
--tray(--minimized) can now be passed alongside--headless,--loopback, and--wave/--rainbow, docking EverLive cleanly minimized into the system tray on startup while streaming directly to OBS on/dev/video10. - Automatic HDMI 5V Hot-Plug Detection: Added 5V power-rise detection in
gc573_user_it6664.c. When a console (PS5, Xbox, Switch) is powered on after EverLive is already running in standby, EverLive automatically pulses the RX HPD line so the console immediately locks onto the signal without requiring manual cable replug or restart. - GUI Headless Autostart: Fixed an
AttributeErroron_headless_startinMainWindowduring UI initialization.
v1.2.2 - Multi-Zone RGB Wave, Standby Screen & OBS Rescaling
Changes in v1.2.2
- Multi-Zone RGB Rainbow Wave: Added authentic 5-zone traveling wave (
--wave) with 72° phase shift across LED segments, plus configurable speed (--cycle [seconds], default 3.0s). Selectable in Control Hub. - Standby Screen: Renders a clean 'NO HDMI SIGNAL' 30 FPS screen to both SDL and
/dev/video10when input is disconnected or the console is off, preventing frozen black frames in OBS. - OBS V4L2 Rescale Fix: Added on-the-fly rescaling (
libswscale) if OBS locks the buffer at a different resolution before EverLive starts. - OBS Source Refresh Tip: If OBS was started before EverLive, OBS may pause its capture thread waiting for the first handshake. Simply toggle the V4L2 source visibility (eye icon) or re-select
/dev/video10in source properties to lock the feed. --tray/--minimizedCLI Flag: Launches EverLive directly docked into the system tray without opening the main window.
v1.2.1 - HDMI Passthrough Fix & Custom EDID Audio
What's Changed in EverLive v1.2.1 🚀
📺 HDMI OUT Hardware Passthrough Fixed (#48)
- Continuous Distribution Amplifier (DA) Mode: The physical HDMI OUT port on the IT6664 (
TX2) is now powered, Direct-routed, and unblanked (0x85 = 0x19,0xc0 bit 0 = 1) unconditionally as soon as the upstream RX achieves sync lock. - Deadlock Eliminated: Resolves the chicken-and-egg issue where displays with auto-input switching withheld HPD while waiting for a TMDS clock carrier, while the driver waited for HPD before unblanking.
- Seamless Monitor Input Switching: HPD edge transitions no longer trigger disruptive resets, PLL re-initializations, or AFE power-cycles. Monitors wake up and lock immediately when switching from DisplayPort/other inputs to HDMI.
- Port-2 Pixel Clock & AFE Calibration: TX2 mirrors TX1's measured pixel clock and applies the port-2 AFE clamp so the video PLL locks stably.
🎧 Custom EDID Audio Unification (#47)
- Automatic Audio Injection: Custom 256-byte
.binEDIDs automatically receive the unified L-PCM (8 ch) + Dolby Digital (AC-3 5.1) + DTS 5.1 CTA-861 Audio Data Block, preventing consoles from greying out bitstream audio options. - Smart Space Reclaim & Fallback: Appends an audio block if missing, reclaims optional VCDB space if byte budgets are tight, and gracefully falls back to bit-exact custom EDID if the extension is completely full.
--raw-edid(--no-unify-edid): New CLI flag for 100% bit-exact custom EDID passthrough without injection.
🎛️ System Tray Integration & Studio Mode Polish
- Close to Tray (Clean Alt-Tab): Clicking
[X]now docks the Console Hub into the system tray and completely unmaps it from Alt-Tab and the taskbar while streaming continues uninterrupted. - Tray Context Menu: Right-clicking the tray icon opens a sleek dark menu with quick actions (Open Console Hub, Start/Stop Gaming Screen, Start/Stop Studio, Quit EverLive).
- Decoupled Studio Mode: Studio / Headless mode can now be run strictly for HDMI passthrough and audio capture without requiring
/dev/video10orv4l2loopback. - Intelligent Launcher (
play.sh): Automatically detectsv4l2loopbackand prompts seamlessly via graphical polkit (pkexec) if required when starting the GUI. - Hardware Shadow Latch: Reg
0x00040GPIO output latch shadow prevents readback pin inversion during concurrent access.
Verified on Hardware: Physical Nintendo Switch and PlayStation 5 (1440p @ 60/120 Hz, BenQ MOBIUZ & multi-monitor passthrough, OBS Virtual Camera, bitstream surround audio decoding).
EverLive v1.2.0 - Virtual Camera, Studio Mode & Universal Surround Audio
What's Changed in EverLive v1.2.0 🚀
📷 Native Virtual Camera (V4L2 Loopback Sink)
- Direct Output to OBS / Discord: Real-time raw YUYV capture frames are written directly to
/dev/video10labeled"EverLive Capture"viav4l2loopback(--v4l2 <dev>/--loopback [dev]). - Zero Window Overhead: Feeds unscaled, pristine frames directly to OBS Studio, Discord, or FFmpeg simultaneously with the interactive gaming window or completely headless.
- OBS-Safe Topology: Pre-configured with
exclusive_caps=0so/dev/video10permanently remains visible in OBS even while no writer is actively streaming. - Auto-Retry & Buffer Recovery: Robust auto-retry loop for
VIDIOC_S_FMT(throttled to 250 ms) with writer fd reset on-EBUSY, automatically resuming delivery when input resolution changes under active readers without restarting EverLive.
🎙️ Headless Studio Mode
- Zero Display Overhead: Added
--headlessCLI flag and dedicated Console Hub button ("Start Studio / Headless (OBS)"). - Background Streamer: Runs video capture over VFIO, pumps frames to the V4L2 loopback sink, and plays HDMI audio without opening an SDL2 window.
- Passthrough & Server Rigs: Ideal for TV / monitor hardware passthrough gaming and dedicated Linux streaming PCs.
🔄 Seamless On-The-Fly Mode Switching
- Dynamic Handover: Instant switching between Gaming Mode and Headless Studio Mode without manual stops (
Switch to Gaming Screen↔Switch to Studio (Headless)). - Protected Handshake: Safe DMA and VFIO device handover with retry guard and double-click prevention.
🔊 Universal Surround Bitstream Audio (Dolby Digital & DTS 5.1)
- Automatic Across All Profiles: Standard EDID profiles (
Default,1440p120, and1080p240) now advertise both Linear PCM (up to 8 channels) and compressed Dolby Digital (AC-3 5.1) and DTS 5.1. - Plug-and-Play Detection: Continuous content-driven IEC 61937 preamble scanner active by default; zero manual profile switching required when changing audio formats on PlayStation 5 or Xbox.
- Decoded Stereo Downmix: Hardware-accelerated decoding via
libavcodecand stereo downmixing vialibswresample.
🎛️ Modernized Console Hub GUI
- Aspect Ratio Override: Added dedicated dropdown (
Auto,16:9 Anamorphic,4:3 Retro,Stretch to Fill). - Live Audio Format Status: Real-time indicator displaying the detected format (
L-PCM 48kHz,Dolby Digital 5.1 -> Stereo,DTS 5.1 -> Stereo,(Muted)). - Streamlined UI: Removed obsolete "Render Engine" dropdown and cleaned up redundant badges.
📦 Installer Automations & Module-Free Opt-Out
- Automatic Setup:
install.shautomatically installs and configuresv4l2loopback(/etc/modprobe.d/+/etc/modules-load.d/). - Strictly Module-Free Opt-Out: Run
./install.sh --no-loopbackto keep your system 100% free of DKMS modules and kernel headers.
Verified on Hardware: PlayStation 5 (1440p120 capture, OBS Virtual Camera /dev/video10, Gaming ↔ Studio handover, Dolby Digital & DTS decoding) on Linux / PipeWire.
EverLive v1.1.0 - Real-Time Dolby Digital (AC-3 5.1) & DTS Decoding, Triple Buffering, Bitstream EDID
What's Changed in EverLive v1.1.0 🚀
🔊 Real-Time Compressed Surround Bitstream Decoding (AC-3 5.1 & DTS 5.1)
- Live IEC 61937 Audio Engine: Added real-time IEC 61937 bitstream unpacking with automatic MSB vs LSB alignment detection across 16-bit and 24-bit HDMI audio carriers.
- Hardware-Accelerated Decoding: Live decoding for Dolby Digital AC-3 (5.1) and DTS (5.1) via
libavcodecand studio-grade stereo downmixing vialibswresample(ITU-R BS.775 compliant). - Zero-Pop Audio Transitions: Automatic audio queue flushing with
SDL_ClearQueuedAudio()and extended 800 ms LPCM confirmation to eliminate clicks during console audio renegotiations. - Relaxed Audio Cushion: Increased SDL audio queue limit to 200 ms to absorb desktop compositor and Adaptive Sync timing jitter.
🎮 Dynamic Bitstream EDID Profile
- Added the
--edid bitstreamprofile advertising CTA-861 Short Audio Descriptors (SADs) for AC-3 and DTS 5.1. - Integrated "Bitstream (Dolby Digital / DTS 5.1)" directly into the Console Hub GUI dropdown.
🏎️ Triple Buffering for 1440p and High-Resolution Signals
- Enabled true triple buffering (3 DMA buffers, 2 active hardware DMA channels) for 1440p and 4K capture, completely eliminating dropped frames and presentation micro-stutters under CPU scheduling delays.
🛡️ Boot & Migration Robustness
- Kernel Module Blacklisting: Added
/etc/modprobe.d/blacklist-everlive-legacy.conftoinstall.shto prevent legacyopen_gc573.komodules from racing withvfio-pciat early boot. - IOMMU Documentation: Added step-by-step kernel boot command line documentation (
intel_iommu=on iommu=pt/amd_iommu=on iommu=pt) to prevent VFIO Error -22 on motherboards with unmanaged secondary PCIe slots.
Verified on Hardware: PlayStation 5 (1440p120, Dolby Digital AC-3 5.1, DTS 5.1, LPCM 8ch) on Arch Linux / PipeWire.
EverLive v1.0.1 — Aspect Ratio Override, In-Game OSD & Audio Handshake Recovery
🚀 What's New in EverLive v1.0.1
🎮 Features & Enhancements
- Aspect Ratio Override & Anamorphic Stretch (
--aspect, Hotkeya):- Added support for
auto,16:9,4:3, andstretchmodes in the userspace streamer (#45). - Solves the anamorphic half-vertical RetroTINK 4K 120Hz BFI mode (
3840x1080p120) by allowing a 2x vertical stretch to fill 16:9 frames without downscaling loss. - In-game hotkey a cycles dynamically through all aspect ratio modes at runtime.
- Added support for
- In-Game Hardware OSD (Live Stats Overlay):
- Integrated a lightweight, semi-transparent in-game HUD overlay displaying live hardware statistics (#43):
- Real-time input & output resolution, refresh rate, and signal lock state.
- Live render FPS counter.
- Active Aspect Ratio mode and VSync status.
- L-PCM audio stream status (sample rate, channels, bit depth).
- Defaults to Top-Right (
--osd-pos=tr) to avoid obstructing console menus. - In-game hotkey p cycles position across all 4 screen corners live; hotkey o or Tab toggles OSD visibility.
- Integrated a lightweight, semi-transparent in-game HUD overlay displaying live hardware statistics (#43):
- Console Hub GUI Controls:
- Re-enabled Start in Fullscreen and Enable VSync checkboxes in VFIO mode (#43).
- Forwards
-f/--fullscreenand--vsyncdirectly to the C streaming engine.
🐛 Bug Fixes & Hardware Stability
-
Audio DMA Handshake Recovery (60 Hz
$\leftrightarrow$ 120 Hz):- Fixed an issue where switching between 60Hz console menus and 120Hz games (or vice-versa) permanently muted audio due to an un-stopped DMA state and latched interrupt bits.
- Automatically acknowledges latched IT6805 audio interrupt
0x10(IT6805_COMMON_IRQ_AUDIO) on TMDS renegotiation. - Calls
audio_stop_capture()insidestream_reset_audio(), ensuring a clean DMA re-subscription upon new HDMI signal lock.
-
Console Audio Settings:
- Documented that consoles must output uncompressed Linear PCM (Stereo); added roadmap tracking for future compressed bitstream (AC-3/DTS) decoding and surround downmix.
EverLive v1.0.0 - The Userspace Era
Official release of EverLive v1.0.0 featuring a 100% blob-free userspace VFIO driver.
EverLive v0.4.0 - Upstream Linux Multicolor LED Subsystem & Audio Engine Overhaul
What's Changed in EverLive v0.4.0
💡 Linux Kernel & Hardware RGB LED Lighting
- Standard Linux Multicolor LED Subsystem: Integrated the hardware RGB lighting into the official Linux kernel multicolor classdev subsystem (
/sys/class/leds/gc573:rgb:status). - 24-bit True RGB PWM Hardware Engine: Implemented official AVerMedia Profile 241 (Constant Color 24-bit PWM) reverse-engineered directly from the Artix-7 FPGA firmware, providing dedicated PWM slots for Red, Green, and Blue.
- On-the-fly switching: Smooth switching across all 8 profiles (Off, Blue, Green, Red, Cyan, Magenta, Yellow, White) directly from the Console Hub or CLI without dropping frames or interrupting gameplay.
- New Custom Display Timings: Added support for 1920x240 CRT super-resolution, 1080p96/100, and 1440p100 timings in the driver.
🔊 Audio Engine Overhaul & PipeWire Integration
- Clock Drift & Click Elimination (#31): Migrated audio pipeline to native PipeWire adaptive loopback (
pw-loopback) with dynamic resampler adaptation, completely eliminating quantum underflow clicks, sample rate drift, and buffer underruns during long sessions. - Hardware Isolation & Microphone Hijack Fix (#32): Fixed an issue where loopback could fall back to capturing default USB microphones by resolving exact canonical PipeWire
node.namestrings and strictly binding via-C <node.name>. - System Volume Mixer Recognition (#28): Stream output is now flagged with
node.virtual = false, ensuringpipewire-pulseassigns a real client index so desktop mixers (Cinnamon / KDE / GNOME) properly identify the stream as "EverLive".
🛠️ Desktop & Installation
- Unified Application Entry: Cleaned up duplicate desktop launcher entries; the application is now accessible everywhere as a single unified EverLive launcher.
- DKMS & Kernel Update Automation: Updated DKMS installer and uninstaller for version 0.4.0.
- Automated Release Notifications: Added Discord webhook integration for automated release announcements.
EverLive v0.3.0 - Retro Scaler Support, English UI & Auto-Resolution Switching
What's Changed in v0.3.0
🎮 Retro Scalers & SD Broadcast Modes
- 480i & 576i Interlaced HDMI Support: Full playback support for 2x pixel-repeated HDMI transport (
1440x480i/1440x576i, CEA-861 VIC 6/21) with automatic 4:3 aspect-ratio letterboxing. - 240p Retro Console Modes: Added support for high-bandwidth pixel-repeated 240p (
1440x240/2880x240 @ 60Hz) with dual-pixel DDR bus handling. - Aspect-Ratio-Preserving Scaling: Direct-Renderer automatically scales pixel-repeated SD/retro signals to their native 4:3 aspect ratio to prevent horizontal stretching.
- Progressive & Interlaced (
p/i) Scan Indicators: Accurately formats resolution strings across Console Hub, window titles, and on-screen HUD (e.g.,1080p,480i,2160p), along with true field rate calculation (~60 FPS) for interlaced video.
🌐 Full English Localization
- Complete English UI translation across the Console Hub (
everlive_viewer.py), controls, buttons, CLI help, and Direct-Renderer companion (everlive_display.c). - Expanded the Format / Preset dropdown menu with presets ranging from 4K, 1440p, 1080p, 720p down to 480p, 576p, and ultrawide.
⚡ Seamless Hot-Resolution Switching
- Subscribed to kernel
V4L2_EVENT_SOURCE_CHANGEevents onPOLLPRIineverlive_displayfor immediate, graceful recovery when source devices change resolutions on the fly (e.g. 4K Dashboard$\leftrightarrow$ 1440p 120Hz$\leftrightarrow$ 1080p$\leftrightarrow$ 480i). - Standby engine waits for DV timings to lock cleanly onto the new signal before restarting the stream, eliminating stale-format stalls.
🛠️ Driver & DKMS Maintenance
- Driver
open_gc573module version bumped to0.3.0. - DKMS scripts updated to
0.3.0with legacy cleanups. - Expanded V4L2 DV-timings capabilities to support lower bounds down to 320x240.
Special thanks to @haxman for hardware verification on RetroTINK 4K Pro, modelines analysis, and extensive testing of retro formats!
EverLive v0.2.0-beta
EverLive v0.2.0-beta: Public Beta Release
Welcome to the first public beta release of EverLive — the blob-free, open-source Linux gaming suite and driver for the AVerMedia Live Gamer 4K (GC573) and Live Gamer BOLT (GC555)!
🎮 What is Included in this Beta:
- 100% Blob-Free Kernel Driver (
open_gc573): Native PCIe SG-DMA video streaming and 8-channel LPCM ALSA audio capture. - Sub-2ms Direct Renderer (
everlive_display): Pure native Wayland & X11 display engine with interactive on-screen HUD, volume slider, precision frame timing, and zero presentation delay. - Console Hub Studio (
everlive_viewer.py): Modern PySide6/Qt desktop hub with real-time signal monitor, resolution presets, on-the-fly RGB lighting control, and fixed proportional layout. - Streamer Mode (Clean Feed): Toggle via Console Hub or in-game hotkey (S / F10) to lock overlays and hide the cursor for pristine OBS / Twitch streaming feeds.
- Dynamic Resolution & Standby Handling: Graceful Standby screen when consoles are turned off, and dynamic on-the-fly re-negotiation when source resolutions switch mid-game.
- Hardware HDMI Re-Sync: One-click re-sync in the Hub and hotkey (H / R) to trigger instant HDMI hotplug renegotiations without driver reloads.
- Custom Application Branding: Official EverLive icon across all standard Linux desktop resolutions (16x16 to 512x512, scalable) and desktop launchers.
- DKMS Automatic Kernel Support: Automated kernel module rebuilds on system updates via
install.sh.
🚀 Quickstart:
git clone https://github.com/Everlite/EverLive.git
cd EverLive
sudo ./install.sh
./play.sh💬 Community & Feedback:
Join our official Discord server to share hardware configurations, ask questions, or post logs:
👉 Join the EverLive Discord Server