Focusrite Scarlett 2i2 USB 오디오 인터페이스에 디지털 피아노가 연결되어 있습니다. 이 커넥터와 Logitech USB 웹캠이 모두 내 컴퓨터에 연결되어 있습니다. Scarlett의 사운드와 웹캠 마이크를 널 싱크로 결합하고 원격 피아노 레슨을 위해 Skype에서 해당 디스플레이를 "마이크로폰"으로 사용하고 싶습니다. 그러면 선생님은 내 연설은 물론 Scarlett에서 직접 나오는 음악도(공중으로 녹음되지 않고) 들을 수 있습니다.
지금까지 나는 이것을하고 있습니다 :
pactl load-module module-null-sink sink_name=piano_lesson
pactl load-module module-loopback sink=piano_lesson
pactl load-module module-loopback sink=piano_lesson
이제 null 수신자로 루프백해야 합니다. 그런 다음 pavucontrol GUI를 열고 녹음 탭에서 Scarlett을 첫 번째 루프백에 할당하고 웹캠 마이크를 두 번째 루프백에 할당했습니다. 이것은 작동합니다. 그러나 이것은 지루한 작업이므로 프로세스를 자동화하는 스크립트를 작성하기 시작했습니다.
그러나 이러한 루프백에 장치를 할당하는 명령을 찾는 데 문제가 있습니다. pactl move-sink-input|move-source-output
문서 및 기타 스택 질문/답변을 읽어도 이것이 올바른 명령인지 확실하지 않습니다 . 그 목적을 완전히 이해하지 못합니다. 명령은 자동 완성을 제공하지만 매개변수 제안이 혼란스럽거나 예상 매개변수(예: 마이크)가 표시되지 않습니다.
Q: 명령줄을 통해 Scarlett/마이크를 루프백 장치에 어떻게 연결합니까?
내 목표:
- 소스 #4(alsa_input.usb-Focusrite_Scarlett_2i2_[...].analog-stereo)를 싱크 입력 1에 연결합니다.
- 소스 #5(alsa_input.usb-046d_09a1_C5BDCE20-02.analog-mono [=webcam])를 싱크 입력 2에 연결합니다.
다음은 일부 출력입니다.
$ pactl list sinks short
0 alsa_output.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
1 alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y8GCE759613412-00.analog-stereo module-alsa-card.c s32le 2ch 44100Hz SUSPENDED
2 piano_lesson module-null-sink.c s16le 2ch 44100Hz RUNNING
$ pactl list sink-inputs short
0 0 1 protocol-native.c float32le 2ch 44100Hz
1 2 - module-loopback.c s16le 2ch 44073Hz
2 2 - module-loopback.c s16le 2ch 44032Hz
$ pactl list sources short
0 alsa_output.pci-0000_00_1b.0.analog-stereo.monitor module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
1 alsa_input.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
3 alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y8GCE759613412-00.analog-stereo.monitor module-alsa-card.c s32le 2ch 44100Hz SUSPENDED
4 alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y8GCE759613412-00.analog-stereo module-alsa-card.c s32le 2ch 44100Hz RUNNING
5 alsa_input.usb-046d_09a1_C5BDCE20-02.analog-mono module-alsa-card.c s16le 1ch 16000Hz RUNNING
6 piano_lesson.monitor module-null-sink.c s16le 2ch 44100Hz IDLE
$ pactl list source-outputs short
7 4 - module-loopback.c s16le 2ch 44100Hz
9 5 - module-loopback.c s16le 2ch 44100Hz
노트: 나는 또한 그러한 구성(예: 구성 파일에서)을 로드할 수 있는 스크립트이든 GUI 기반 도구이든 관계없이 PulseAudio가 아닌 솔루션에도 열려 있습니다.
답변1
루프백 장치의 소스를 설정할 수 있습니다.
pactl load-module module-loopback source=alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y8GCE759613412-00.analog-stereo sink=piano_lesson
pactl load-module module-loopback source=alsa_input.usb-046d_09a1_C5BDCE20-02.analog-mono sink=piano_lesson