Skip to content

Releases: IOServicesLabs/RDPiO

rdpio 0.2.1

Choose a tag to compare

@github-actions github-actions released this 14 Oct 17:11

rdpio 0.2.1

A fix for updating from the launcher, and an easier install.

Fixed

  • Update now / Restart to update in the launcher now installs the update.
    In 0.2.0 the button did nothing and the banner kept coming back: the
    installer couldn't start from the launcher.

    If you're on 0.2.0, install 0.2.1 once by hand, using the one-liner below
    or the downloads on this page. From 0.2.1 on, the button works. Two update
    paths were never affected: a Hyper host updating itself, and a host
    passing updates to the devices that connect to it.

New

  • One-line install for Windows, per user, with no admin:

    irm https://raw.githubusercontent.com/IOServicesLabs/RDPiO/main/install.ps1 | iex

    It installs to %LOCALAPPDATA%\Programs\rdpio, adds a Start menu shortcut
    and puts rdpio on your PATH, then opens the launcher. Run it again any
    time to reinstall.

  • Linux builds work again (Hyper stays Windows-only).

Downloads

  • rdpio-windows-x86_64.zip: rdpio.exe, its signed manifest and the README.
  • rdpio.exe and rdpio.exe.update: what updates download.
  • rdpio-linux-x86_64.tar.gz: the Linux build (headless, see PORTING.md).
  • *.sha256: checksums of the archives.

rdpio 0.2.0

Choose a tag to compare

@github-actions github-actions released this 13 Oct 15:06

rdpio 0.2.0: Hyper Accelerator

rdpio now has its own low-latency stream beside Remote Desktop. Hyper
streams the host PC's real screen, encoded on its GPU, at the client's own
resolution and refresh rate. It runs over encrypted UDP: at home, or from
anywhere through Tailscale.

Highlights

  • Hyper Direct. Connect with a separate Hyper password: no RDP and no
    Windows credentials. The lock screen, the sign-in screen and UAC prompts
    are all streamed and usable.
    • The password is checked with SPAKE2, so it never crosses the network
      and a captured sign-in can't be brute-forced.
    • Every session gets a fresh AES-256-GCM key.
    • Repeated wrong guesses lock the address out.
  • Fast. Measured on an RTX 4080 SUPER host:
    • 120 fps game mode, with the stream decoded about 4–6 ms after capture
      on a home network;
    • lost packets are rebuilt from parity data (FEC) or repaired from
      reference frames the client already holds, without a full keyframe.
  • Office mode (Ctrl+Shift+O) for crisp text. Game mode for the
    lowest latency.
  • Each device gets its own display. With the optional rdpio Display
    driver, the host makes a monitor at exactly the device's resolution, refresh
    rate and display scale. Without it, the host's monitor switches to match.
    The host's own screens rest meanwhile.
  • Everything comes along:
    • sound;
    • the microphone (through Steam's virtual devices, when installed);
    • the clipboard;
    • the pointer, drawn locally so it never lags;
    • Win, Alt+Tab and Alt+F4 go to the host by default (Ctrl+Shift+K
      switches them back);
    • Ctrl+Alt+End sends Ctrl+Alt+Del.
  • A new launcher, styled after IO Services:
    • saved connections, each with its own options;
    • a This PC page that sets the PC up as a Hyper host;
    • settings for what new connections start with, plus this release's
      update options.

Automatic, signed updates

From this release on, rdpio keeps itself up to date:

  • The launcher checks GitHub when it opens and offers new releases.
  • The Hyper service on a host updates itself between streams.
  • A host passes its newer rdpio to the devices that connect to it. It
    downloads in the background and installs when the session ends. A device
    too old to stream from the host updates first, then reconnects by itself.

Every release carries rdpio.exe.update: the version, the build and the
exe's SHA-256, signed with rdpio's release key. Nothing installs unless the
signature checks out and the version is newer, whoever passed it along.
Devices no longer need the exact same build: each sign-in settles on the
newest stream protocol both sides speak.

Easier on laptop batteries

  • On battery, the client decodes on the integrated GPU, so the discrete
    one can sleep. It draws pictures straight from the decoder's memory and
    never waits on the display to present.
  • A screen that barely changes (a clock, a blinking caret) is streamed
    at about 12 frames a second until you touch the keyboard or mouse. Then it
    returns to full speed at once.
  • No sound is sent while the host plays only silence. The client's
    timers and speakers rest while nothing happens.

Getting started

  1. Host (the PC to stream):
    • Run rdpio.exe.
    • Open This PC and choose Set up Hyper. Windows asks for
      administrator permission once.
    • Choose a Hyper password.
  2. Device (laptop):
    • Run rdpio.exe.
    • Add a connection to the host with Hyper Direct and the Hyper
      password.
    • Away from home, use the host's Tailscale address.

Hyper encodes with NVIDIA NVENC directly. Other GPUs use Windows' own
hardware encoder; only NVIDIA hosts have been tested. Decoding works on any
DirectX 11 GPU with H.264 or HEVC video decoding. More is in
docs/hyper.md.

Coming from 0.1.0? Install 0.2.0 by hand on each PC once. Run the host
setup again so the service picks it up. Later versions arrive by themselves.

Downloads

  • rdpio-windows-x86_64.zip: rdpio.exe, its signed manifest and the README.
  • rdpio.exe and rdpio.exe.update: what updates download.
  • rdpio-linux-x86_64.tar.gz: the Linux build (headless, see PORTING.md;
    Hyper is Windows-only for now).
  • *.sha256: checksums of the archives.

Nightly build

Nightly build Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 17:25

Rolling build of main at 67a89d6. Replaced on every push.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 20:29

Release v0.1.0 (66f879d).