Windows raw sound output capture tool.
You tell winscap
how many channels and bits to capture at what sampling rate:
winscap <channels> <sample rate> <bits per sample>
winscap
will output a raw PCM stream (signed little-endian) to stdout.
Note that winscap
uses your audio device in shared mode, so your capture settings
must match the Windows output device. By default, this is 16-bit stereo at 48000 Hz.
If your capture settings do not match, winscap
will fail to start.
The latest stable binaries are available on GitHub releases (winscap.exe).
Latest bleeding edge binaries are available as artifacts on GitHub Actions.
You need a new enough Visual C++ toolchain. To build, run
nmake
I created this tool as a lightweight approach to run Cava on Windows Subsystem for Linux (WSL) while using sound output from Windows.
To use with Cava, configure Cava to read from a named pipe inside WSL (we'll use
/tmp/cava.fifo
in this example) with the following configuration:
[input]
method = fifo
source = /tmp/cava.fifo
sample_rate = 48000
Replace 48000
with whatever sampling rate you use with winscap
.
Then, run winscap
as follows:
$ mkfifo /tmp/cava.fifo
$ /mnt/c/path/to/winscap.exe 2 48000 16 > /tmp/cava.fifo
Again, replace the arguments as appropriate.