EdnunpandClaude Opus 4.7 6cbde0da12 Updater: distinguish 'no newer version' from 'check failed' on all three paths
Tech Singer's Windows 7 log from 2026-05-28 had this pattern:

  updater: GET https://api.github.com/repos/...
  updater: check failed: HttpRequestException: The SSL connection could not be established
  ...
  updater: startup check — up to date (v3.0.1)

i.e. the SSL handshake to GitHub failed (Win7's TLS stack missing
KB3140245 / KB4474419) but the updater logged 'up to date' and the
user-facing message in CheckForUpdatesManually said the same. So a
user with a broken update check has no way to distinguish that from
genuinely having the latest version.

Fix:
  * CheckForUpdateAsync now returns a discriminated UpdateCheckResult
    (UpdateAvailable / UpToDate / UpdateCheckFailed) instead of the
    old UpdateInfo?. Each return-null site is replaced with the
    appropriate concrete type.
  * The catch-all 'try { ... } catch (Exception ex) { return null; }'
    becomes 'return new UpdateCheckFailed(ClassifyFailure(ex), ...)'.
    ClassifyFailure walks the exception chain and maps to a coarse
    FailureKind enum: SecureConnection (TLS/auth), Timeout, HttpError,
    NetworkUnreachable. SecureConnection is broken out separately so
    the manual-check UI can point Win7 users at the specific Microsoft
    KBs that fix the issue.
  * MainForm.CheckForUpdatesManually pattern-matches on the result:
    UpToDate -> existing 'you're running the latest' message;
    UpdateAvailable -> existing install confirmation;
    UpdateCheckFailed -> NEW dialog (ShowUpdateCheckFailedDialog)
    whose wording is tailored to the FailureKind. The
    SecureConnection branch explicitly names KB3140245 and KB4474419
    and offers the manual zip-install URL as a fallback. All branches
    keep the technical detail out of the dialog and route it to the
    log instead.
  * Background and startup polls stay silent on UpToDate and
    UpdateCheckFailed (no point nagging the user about something
    they can't act on from a timer tick), but the startup-poll log
    now records the failure kind and detail instead of mislabelling
    the outcome as 'up to date'.

No version bump - this rides along with the next feature release
(planned v3.2 with the Reaper ReaStream integration). The bug is
silent on the affected users today, and shipping a v3.1.2 just for
the error-message improvement would mean another update cycle for
everyone for marginal benefit.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 19:42:26 +01:00
2026-05-13 15:15:27 +01:00
2026-05-13 15:15:27 +01:00

RemSound

Free Windows app for sending live audio between two computers — across a house, across a city, or anywhere your internet reaches. Low delay, great quality, fully accessible to screen-reader users.

Download the latest version · Read the user manual


RemSound is for musicians, sound designers, podcasters, and anyone else who wants to share audio between two Windows machines with as little delay as possible.

You sit at one computer, RemSound captures whatever is playing — a track in your music software, a video call, system sound from anything else running — and sends it cleanly to another computer where it plays through speakers or headphones in real time. The person at the other end hears what you're hearing, with a delay measured in milliseconds rather than seconds.

It's also fully accessible. The interface was designed with screen readers (NVDA in particular) in mind from day one. Every button has a keyboard shortcut, every status line is read out clearly, and there are no menus or controls that need a mouse to reach.

What you can do with it

  • Listen to one of your computers from another room. Sit at your laptop and hear what's playing on your desktop. Walk around the house — the sound follows you.
  • Play music together over the internet. Two musicians at different houses can play along together with very low delay. Much faster than a video call, fast enough that timing-sensitive playing works.
  • Send a finished mix to a producer or client in real time, without uploading a file and waiting.
  • Record what comes through the connection to WAV, MP3, OGG-Opus, or FLAC. Save sessions for review later.

Three quality settings, simple choice

Inside RemSound there's just one main decision: which quality and delay you want.

  • PCM 48K 24 bit — uncompressed. The best possible sound. Uses about 2.3 megabits a second. Use it when both computers are on the same local network.
  • Opus, broadcast quality — loss tolerant. Compressed, very good sound, only 200 kilobits a second. Robust against patchy connections. Use it across the internet.
  • Opus, live latency — for jamming and monitoring. Compressed, ultra-low-latency mode. About 5 milliseconds of delay added by the codec itself, very close to PCM. Best when you and the person on the other end are playing along together over a clean network.

How to install it

  1. Go to the latest release.
  2. Download the file called RemSound-v3.1.zip (the version number changes over time — pick whichever is newest).
  3. Extract the zip into a folder of your choice.
  4. Double-click RemSound.exe and away you go.

The first time you launch, RemSound will offer to install Microsoft's .NET 10 Desktop Runtime if you don't already have it. Free, just say yes.

After that, RemSound updates itself. Help → Check for updates pulls the next version, or you can tick a box in Preferences and let it install updates quietly in the background.

What you'll need

  • Windows 10 or 11. Some users run it successfully on Windows 7, but it's not officially supported there.
  • Another person running RemSound on their own Windows machine.
  • A way for the two machines to reach each other on the network. Both on the same Wi-Fi works. Both on the same Tailscale network works (free and easy to set up). Or both pointed at the public RemSound relay (also free, no setup).

Learn how to use it

The full user manual is right here on GitHub: Read the user manual. It covers getting connected for the first time, every setting and what it does, troubleshooting tips, and a glossary at the end. It's the same manual you can press F1 to read from inside RemSound, so you can read it before installing if you want to see what you're getting.

Questions or problems?

File an issue. Bugs and questions are welcome and someone will get back to you.

Who made this

RemSound was built by a sound designer who wanted to listen to one of his computers while sitting at another, and couldn't find anything else that fit the bill. It's free, open-source, and yours to use however you like.

Licence

MIT. See LICENSE.

S
Description
Fork of RemSound
Readme MIT
20 MiB
Languages
C# 95.5%
Python 1.8%
PowerShell 1.7%
Shell 0.9%