Subscribe the OBS source as a playback-only LGMP audio client. Decode
the advertised formats and channel maps, then resample into the OBS
clock domain without participating in driver clock feedback.
Keep queue and resampler storage fixed in the packet path.
Replace the single-owner PCM queues with one shared LGMP SPMC stream.
Give each admitted client reliable state and an independent playback
cursor, while clients without clock authority resample locally.
Extend the audio protocol with per-client epochs and barriers.
Keep capture exclusive and bound authority backpressure so slow
secondary readers cannot affect the disciplined low-latency path.
Give microphone data priority over replaceable clock feedback and
reduce feedback traffic on the shared client-to-host FIFO.
Retry short FIFO stalls outside the realtime thread and coalesce
consecutive packets in the existing fixed Windows buffers.
Avoid one broker write per tiny PipeWire quantum without adding
allocations or intentional capture latency.
Advertise signed and floating-point 32-bit formats across mono,
stereo, quad, surround, 5.1, and 7.1 at every supported rate.
Carry sample encoding through the broker and LGMP protocol so integer
and floating-point streams remain distinct.
Expand packet, shared-memory, and ring capacity for eight-channel
32-bit audio.
Forward coalesced feedback through the broker to the render clock.
Keep capture independent and apply the rate to WaveRT timing.
Bound and slew targets, then restore unity when feedback stalls.
Withdraw feedback after the watchdog makes fallback safe.
Keep initial playback prewarming, but announce STOP when a stream that
has already run enters PAUSE or ACQUIRE. Restart it when RUN returns.
Keep RUN history across owner changes so a paused stream is not
mistaken for a new prewarm generation.
Only announce capture while it is running. Derive active status flags
from the stream generations successfully announced to the client.
Queue playback STOP, START, and DATA for the same wire generation.
Verify that the client creates a fresh local generation and delivers the
first restarted packet.
Persist hardware-ID installation for the LGAudio WDK project and
enable deployment in every existing solution configuration.
This allows LGAudio to run as the kernel-debugger startup project.
Treat the binding phase as the authoritative shutdown state after
graceful stream release.
Cover disconnect while the host drains and unbinds both streams.