Finding the Discord Sound Device
How the TranscriptOMatic should operate is, to connect to Discord voice using a dedicated Discord account for this purpose. During sessions, the Discord client (Legcord) will join the discord voice session. No microphone or speaker will be attached to the device.
Finding the system's audio sinks
Checking for the system's audio sinks:
pactl list short sinks
The result should look something like this:
mela@Cox:~ $ pactl list short sinks
35 auto_null PipeWire float32le 2ch 48000Hz SUSPENDED
Finding the Discord sound device
After joining a Discord voice channel, checking for the Discord system sound device:
pactl list short sink-inputs
The result should be something like:
mela@Cox:~ $ pactl list short sink-inputs
184 35 183 PipeWire float32le 2ch 48000Hz
Adding a persistent sink to create a stable audio source
Creating a persistent sink (and using its monitor andas a persistentstable sink.audio
source).
pactl load-module module-null-sink \
sink_name=discord_sink \
sink_properties=device.description=DiscordSink
You need to be quick after joining a voice channel. If the channel is silent, or the sink will go away quickly.
pactl move-sink-input $(pactl list short sink-inputs | awk '{print $1}') discord_sink
Controlling the result:
pactl list short sinks
The result should look something like this: IDLE instead of SUSPENDED.
mela@Cox:~ $ pactl list short sinks
199 discord_sink PipeWire float32le 2ch 48000Hz IDLE
Getting the sound monitor source:
pactl list short sources
The result should look something like this:
mela@Cox:~ $ pactl list short sources
199 discord_sink.monitor PipeWire float32le 2ch 48000Hz IDLE