PulseDroid is an audio player for Android that plays pcm16le mono/stereo
audio from a simple TCP connection, as provided by PulseAudio/PipeWire,
but also by a few other implementations.
PulseAudio/PipeWire has `module-simple-protocol-tcp` that provides such an endpoint, which allows streaming audio to, among others, this app.
## Setup
1. Load `module-simple-protocol-tcp`.
Warning: this PulseAudio module provides an endpoint that allows anyone in
your network to listen to the connected source, and to play back audio.
Make sure that your network is trusted or that you secure the connection
appropriately, e.g. using a TLS tunnel or WireGuard.
Run the following to add and configure the module; of course, the port and source can be
modified as you want, and rate can be either 44100 or 48000, and channels can be either 1 (mono) or 2 (stereo),
depending on what you'll set in the app:
pactl load-module module-simple-protocol-tcp rate=44100 format=s16le channels=1 source=0 record=true port=12345 listen=0.0.0.0
In case you want to unload, simply run:
pactl unload-module module-simple-protocol-tcp
or, if you have multiple TCP sinks and want to unload a specific one, unload the number returned
in the the first command for it (the number is an example):
pactl unload-module 536870918
2. Install the app and start it.
3. Enter the host and port of your PulseAudio endpoint and hit play.