Added
- The driver shows up in volume mixers (#25). Its node is a playback stream
(Stream/Output/Audio) withPropsand aFormat, so pavucontrol,
plasma-pa, pulsemixer andwpctllist the host with a slider and mute. The
level scales the host's output per channel inside the driver, inputs are
untouched, and WirePlumber restores it per host as for any stream. Routing is
unchanged: the node carries nonode.autoconnect, so WirePlumber does not
link it. - Bottles instructions (#24), verified against the Flatpak with a Soda 11.0
runner: the PE stub goes into the bottle,WINEDLLPATHinto its environment,
andregsvr32runs throughbottles-cli shellso the bottle's own runner
registers it.pipeasio-registerrefuses a bottle (anything with a
bottle.yml) unlessWINEnames the runner, since host Wine re-stamps the
bottle for its own build.
Changed
- The settings panel names the scheduling mode.
follow_device_clockhas always
set two properties at once (the target device drives the cycle, and the node
turns asynchronous), but the checkbox and tooltip only mentioned the quantum.
The checkbox is now "Follow device clock", the tooltip names both effects,
and a read-onlySchedulingrow readssynchronousor
asynchronous (+1 period, 2.7 ms), tracking the checkbox and the buffer
period live.
Fixed
pipeasio-registerno longer runs host Wine inside a Proton prefix (#22).
The README's Proton section said to register that way, and host Wine's first
process in a prefix rewrites its registry andsystem32for the host build,
not the runner's. The script refuses a prefix with Proton'stracked_files
(besidedrive_c, or one level up in Steam'scompatdata/<id>/pfx).
WINE=<command>substitutes another launcher;WINE=umu-runwith
PROTONPATHandGAMEIDregisters through the game's runner and leaves the
prefix untouched. README, website and uninstall instructions use that form.- The 32-bit WoW64 front end links again against Wine 11.16 and later, whose
libwinecrt0.agained atls.othat collided with mingw's TLS support on
__xl_a/__xl_z. mingw's runtime owns TLS init, so it now owns those
symbols too. - The docs asserted that the driver "is scheduled synchronously" without
qualification, which is wrong wheneverfollow_device_clockis on. The
realtimesection, the Performance list, the FL Studio troubleshooting entry
and the website FAQ now attach that claim to the synchronous case only. - The docs called
follow_device_clocka requirement for Bluetooth sinks and
promised silence without it. Some Bluetooth sinks accept a forced quantum and
run synchronously, so the README, the panel tooltip and the website now say to
try it both ways.
Install
Prebuilt for Arch Linux / CachyOS (x86_64). The exact build toolchain (Wine, glibc, PipeWire, MinGW) is recorded in BUILD-INFO.txt inside the tarball.
- User-local:
tar -xzf pipeasio-v1.6.0-archlinux-x86_64.tar.gz -C "$HOME/.local", then runpipeasio-register. - Proton / Faugus: extract to
$HOME/.localand setWINEDLLPATH=$HOME/.local/lib/wine.
Compatibility
A Wine builtin DLL is coupled to the Wine version and glibc it was built against. A different Wine or an older glibc may fail to load (regsvr32 c0000135). In that case build from source (README) or use the AUR package. Source tarballs are attached automatically below.