When there is no physical sound card in pulseaudio, cpal refuse to record any sound from the Virtual_Audio_Output
pactl list sinks
Sink #0
State: IDLE
Name: audio_output
Description: Virtual_Audio_Output
Driver: module-null-sink.c
Sample Specification: s16le 2ch 44100Hz
Channel Map: front-left,front-right
Owner Module: 0
Mute: no
Volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
Base Volume: 65536 / 100% / 0.00 dB
Monitor Source: audio_output.monitor
Latency: 990983 usec, configured 2000000 usec
Flags: DECIBEL_VOLUME LATENCY SET_FORMATS
Properties:
device.description = "Virtual_Audio_Output"
device.class = "abstract"
device.icon_name = "audio-card"
Formats:
pcm
#!/usr/bin/pulseaudio -nF
### Create virtual output device sink
load-module module-null-sink sink_name=audio_output sink_properties=device.description="Virtual_Audio_Output"
### Create virtual input device sink
load-module module-null-sink sink_name=audio_input sink_properties=device.description="Virtual_Audio_Input"
### Create a virtual audio source linked up to the virtual input device
load-module module-virtual-source source_name=microphone master=audio_input.monitor source_properties=device.description="Virtual_Microphone"
### Allow pulse audio to be accessed via TCP (from localhost only), to allow other users to access the virtual devices
load-module module-native-protocol-unix socket=/tmp/pulseaudio.socket auth-anonymous=1
### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink
When there is no physical sound card in pulseaudio, cpal refuse to record any sound from the Virtual_Audio_Output