I was successful with using JACK, though unlike Eir Nym's answer, the sound is playing from the Linux box as you requested. I did a small write-up of it here: https://gist.github.com/kotarou3/3813bbf7833a0e4618f7fbe8a377872d
The advantage of using JACK over PulseAudio would be lower latency (provided you configure it correctly). Doesn't really matter if you're just playing music, but things like games and recording work needs the low latency.
Partially quoting for posterity:
Stream audio from Windows to Linux
Tested on Ubuntu 16.04 and Windows 10 Redstone 1
Both boxes need to be on the same network (such that multicast packets
can be passed between them)
Installing
Linux
- Setup JACK (easy to do with Cadence)
Windows
- Install JACK and ASIO Bridge on the Windows
box
- Run
regsvr32 32bits\JackRouter.dll and regsvr32 64bits\JackRouter.dll from JACK installation directory
- Modify
32bits\JackRouter.ini and 64bits\JackRouter.ini to match your channel and sample config
- (Optional) Set the ASIO Bridge (Hi-Fi Audio) input as the default playback device
Running
- Start the netjack2 server on Linux with
jack_load netmanager (probably also possible to add to .jackdrc for it to autoload)
- Run JACK NetDriver on Windows (it's in the Start menu), or
jackd -R -d net
- A new device named the hostname of the Windows box should have appeared on the Linux JACK patch panel
(Catia if you're
using Cadence). Connect it as you see fit (Note: Channels might not
match up as expected if you have more than 2).
- Run ASIO Bridge (also in the Start menu), turn ASIO on, and set the ASIO device to JackRouter
- The ASIO Bridge should have automatically set up routes to the system device in the Windows JACK patch panel. You can double check
with qjackctl (Jack Control in the Start menu) → Connections
and connect them if not