Я пытаюсь создать PulseAudio для некоторой потоковой передачи, и я думал, что у меня был настроенный правильно. По-видимому, я был неправ. У меня были некоторые проблемы с объемом в моей установке, таким образом, я решил запуститься с нуля.
После выполнения ниже команд, любой вход (программа), присоединенная к "stream_spkr", выходит в низком объеме, вероятно, приблизительно половина того, что это, как предполагается. Созданный приемник в 100%-м объеме:
pacmd insert-module module-null-sink sink_name=stream_spkr sink_properties=device.description=sink_spkr
pacmd insert-module module-loopback source=stream_spkr.monitor sink=alsa_output.pci-0000_00_1b.0.analog-stereo
Я удалил обратную петлю и использовал ffplay -f pluse -i stream_spkr.monitor
для проигрывания входа от пустого приемника по моим динамикам, и это в полном объеме. Это приводит меня полагать, что это - на самом деле, обратная петля, вызывающая проблему.
Какие-либо гуру PulseAudio здесь? Я не могу ни за что в жизни выяснить, какова проблема. Я проверил опции модуля в документацию PulseAudio и там, кажется, не опции для объема, таким образом, я должен пропускать что-то.
Править: После дальнейшего расследования pacmd показывает, что петлевой объем - действительно, 36%:
index: 37
driver: <module-loopback.c>
flags: VARIABLE_RATE START_CORKED
state: RUNNING
sink: 1 <alsa_output.pci-0000_00_1b.0.analog-stereo>
volume: 0: 36% 1: 36%
0: -26.62 dB 1: -26.62 dB
balance 0.00
muted: no
current latency: 35.78 ms
requested latency: 66.67 ms
sample spec: s16le 2ch 44100Hz
channel map: front-left,front-right
Stereo
resample method: speex-float-1
module: 35
properties:
media.role = "abstract"
module-stream-restore.id = "sink-input-by-media-role:abstract"
media.name = "Loopback from Monitor of stream_spkr_sink"
media.icon_name = "audio-input-microphone"
Почему это запустило бы обратную петлю в 36%-м объеме, и как я могу переопределить это?
Я думаю, что знаю то, что произошло здесь, я изменил объем приемника в Pavucontrol некоторое время назад. Pulseaudio сохранил установку где-нибудь и загружал мой старый объем, когда я повторно добавил обратную петлю. Последующий разгружаются/загружают обратной петли модуля после возврата объема к 100%, доказанным это.