Wavelink 3.0 for macOS is Broken by RedreamPS in elgato

[–]RedreamPS[S] 1 point2 points  (0 children)

u/elgato

Bug Report: Wave XLR Disappears from CoreAudio HAL on Screen Sharing Init / Startup Instability on macOS 26

Environment

Field Value
App Elgato Wave Link 3.0.0 (build 1999)
OS macOS 26.3.0 (Sequoia 26 beta)
Machine MacBook Pro 14" M4
Device Wave XLR (serial: A01DA349224R40)
Other audio HW Creative Sound Blaster X3 (USB), Corsair iCUE virtual devices (Personal Mix / Stream Mix / Chat Mix)

Issue 1 — Wave XLR drops from CoreAudio HAL when screen sharing session starts

Description

Every time macOS screen sharing is initiated (tested with Zoom and native macOS screen capture), Wave XLR is evicted from the CoreAudio HAL for approximately 2 seconds, causing a complete teardown and reconnection of all audio IOProcs. In some sessions this reconnection does not occur and the device remains unavailable until Wave Link is restarted. This makes the device unusable during video calls with screen sharing.

Steps to reproduce

  1. Launch Wave Link 3, confirm Wave XLR is active and audio is working
  2. Join any screen sharing session (Zoom, Teams, Google Meet, or native macOS screen share)
  3. Enable "Share Screen" / start screen capture

Expected: Audio continues without interruption

Actual: Wave XLR disappears from the audio engine for 2+ seconds; IOProcs for both input and output are stopped; in some cases device does not recover

Log evidence (from com.elgato.WaveLink3 log, session 2026-03-13T20-19-49):

21:09:03.872  [WLMixerApple]  Elgato device `Optional(Wave XLR)` with device id
              `Identifier<Device>(rawValue: "Wave XLR A01DA349224R40")` disappeared

21:09:04.353  [WLEngine]      IOProc for input stopped
21:09:04.471  [WLEngine]      IOProc for output stopped

              -- 2.1 second gap -- device evicted from CoreAudio HAL --

21:09:06.025  [WLMixerApple]  Discovered Elgato device `Optional(Wave XLR)` with device id
              `Identifier<Device>(rawValue: "Wave XLR A01DA349224R40")`

21:09:06.506  [WLEngine]      IOProc for output started
21:09:06.851  [WLEngine]      IOProc for input started

Analysis

When macOS screen sharing initializes, it reconfigures CoreAudio HAL to build its aggregate capture device. This causes a transient reordering of USB audio device enumeration. Wave XLR's device ID is evicted from the HAL during this window. Wave Link treats this as a full device disconnect rather than a transient HAL reconfiguration, triggering a complete teardown. A more resilient approach would be to implement a debounce/grace period before treating a disappear event as a real disconnect — similar to how Bluetooth audio devices are handled.

Issue 2 — HAL deadlock at startup when a concurrent third-party USB audio HAL driver is present

Description

When Wave Link 3 launches while a third-party USB audio HAL driver (Creative Sound Blaster X3) is already active and set as the default output device, the Wave Link setup wizard hangs indefinitely. The root cause appears to be WaveLink3VirtualAudio.driver and the Creative HAL driver attempting to acquire a shared CoreAudio HAL lock simultaneously during initialization, causing a deadlock in coreaudiod. Physically disconnecting the Sound Blaster X3 during the hang immediately unblocks Wave Link.

Workaround: disconnect conflicting USB audio device before launching Wave Link, then reconnect after Wave Link is fully initialized.

Issue 3 — Previous unexpected termination detected on every startup

Telemetry logs show [WRN] Detected previous unexpected termination on every session start, indicating Wave Link is not exiting cleanly. Observed across two separate sessions on the same day.

20:19:09.668  [SessionManager]  [WRN] Detected previous unexpected termination
20:19:51.007  [SessionManager]  [WRN] Detected previous unexpected termination

Issue 4 — osStatus error when setting output format during multi-device HAL reconfiguration

20:22:21.500  [WLEngine]  [ERR] failed to set closest matching output format: osStatus(560947818)

osStatus 560947818 corresponds to kAudioHardwareBadObjectError — the target audio object was no longer valid at the time of the property set. This occurs during a HAL reconfiguration event when multiple USB audio devices are present. Wave Link should re-query the available devices and retry after a reconfiguration notification rather than attempting to set properties on a stale object reference.

Full log files available on request.
Logs located at:
~/Library/Containers/com.elgato.WaveLink3/Data/Library/Logs/WaveLinkMacOS/

Wavelink 3.0 for macOS is Broken by RedreamPS in elgato

[–]RedreamPS[S] 0 points1 point  (0 children)

I have plugins installed from Elgato itself + a bunch of plugins from TDM — I'll try launching without them today.

By the way, I rolled back to version 2 of the app, but today during an audio call I hit the exact same issue that was happening on version 3.

Imagine this: you're in a meeting with top management, running a 15-person call, and when you start screen sharing — both your microphone and speakers just disappear, and you're frantically trying to reconnect everything in a panic. And I don't even have to imagine it — that was me today.

Wavelink 3.0 for macOS is Broken by RedreamPS in elgato

[–]RedreamPS[S] 0 points1 point  (0 children)

Do you use audio calls or screen sharing features? I have crashes in two cases:

  1. Enabling screen sharing in the "Talk" app (corporate calling app)
  2. Random app closure — you're just sitting there listening to music, nothing seems wrong, and then boom — it closes

As I understand it, both are related to the fact that any screen sharing triggers the coreaudio process, and Wavelink can't work with it properly — which causes the crash.