나는 오디오를 내 스피커용, 방송용(화상 채팅 또는 기타 스트림용) 및 둘 다를 위한 것으로 분할하는 방법을 알아냈습니다.
이것이 내가 지금까지 가지고 있는 것입니다 ~/.pulse/default.pa
:
# Swap channels of workstation speakers
load-module module-remap-sink sink_name=reversed-speakers sink_properties='device.description="Reversed speakers"' master=alsa_output.usb-0c76_USB_PnP_Audio_Device-00.iec958-stereo channels=2 master_channel_map=front-left,front-right channel_map=front-right,front-left
# Virtual sinks for myself, broadcast, and both
load-module module-null-sink sink_name=for-me sink_properties='device.description="For me"'
load-module module-null-sink sink_name=for-broadcast sink_properties='device.description="For broadcast"'
load-module module-null-sink sink_name=for-all sink_properties='device.description="For all"'
# Split for-all to me and to broadcast
load-module module-loopback source=for-all.monitor sink=for-me
load-module module-loopback source=for-all.monitor sink=for-broadcast
# Point the microphones at the broadcast
load-module module-loopback source=alsa_input.usb-046d_C922_Pro_Stream_Webcam_266FB1AF-02.iec958-stereo sink=for-broadcast
load-module module-loopback source=alsa_input.usb-0c76_USB_PnP_Audio_Device-00.iec958-stereo sink=for-broadcast
load-module module-loopback source=alsa_input.pci-0000_00_1f.3.analog-stereo sink=for-broadcast
# Point everything aimed at me to the (flipped) speakers
load-module module-loopback source=for-me.monitor sink=reversed-speakers
# By default things should go just to me
set-default-sink for-me
# By default things should get the for-broadcast input
set-default-source for-broadcast.monitor
이것은 훌륭하게 작동합니다. 내가 듣고 싶은지 여부에 따라 특정 앱을 "방송용" 또는 "모든 사람용"으로 지정하여 방송하기만 하면 됩니다.
시작시 볼륨을 설정하는 방법을 찾지 못했습니다. "For Me" 및 "For Broadcast" 루프백에 대해 각각 -6dB 및 -12dB가 되는 소스 출력 레벨을 원합니다.
(예를 들어) pavucontrol에서 수동으로 설정할 수 있지만 재부팅 시모두Loopbacks의 소스 출력 볼륨은 결국 동일한 낮은 레벨로 끝났습니다(-6인지 -12인지 기억이 나지 않습니다).
이 볼륨을 동시에 설정하는 옵션을 찾을 수 없으며 파일 load-module module-loopback
에 생성되 default.pa
자마자 루프백 인덱스를 set-source-output-volume
실행하는 방법도 모르겠습니다.