Debian(LMDE 5) Bullseye를 사용하면 Ubuntu에서처럼 pacmd를 사용하여 오디오 싱크를 변경할 수 없습니다. 단, 볼륨 조절 애플리케이션/GUI와 연동하여 수신기를 변경할 수 있습니다.
Bullseye에서는 pulseaudio가 기본적으로 실행되지 않으므로 더 낮은 수준이나 다른 방법을 사용해야 합니다. pulseaudio를 시작한 후 pacmd 명령은 오류 없이 실행되지만 오디오는 GUI에 설정된 수신기에서 계속 재생됩니다.
/etc/pulse/default.pa
내가 아는 한, pacmd에서 펄스가 방출될 때 변경 사항이 취소되는 것을 방지해야 하는 다음 줄을 편집했습니다 .
load-module module-stream-restore restore_device=false
Ubuntu의 사운드 카드에 작동하는 명령은 다음과 같습니다.
#change to analog stereo
pacmd set-card-profile alsa_card.pci-0000_00_1b.0 output:analog-stereo
#change to hdmi
pacmd set-card-profile alsa_card.pci-0000_00_1b.0 output:hdmi-stereo-extra1+input:analog-stereo
내 질문은 다음과 유사합니다. 터미널을 이용하여 출력(수신기) 변경이지만 질문에 유효한 제안이 없습니다.
최근 데비안에서 스크립트를 통해 싱크를 성공적으로 변경한 사람이 있나요?
답변1
pacmd
Debian Bullseye에서 스크립팅을 통해 사운드 싱크(오디오 출력 장치)를 변경하려면 PulseAudio 사운드 서버의 일부인 명령줄 도구를 사용할 수 있습니다 . 단계별 가이드는 다음과 같습니다.
pacmd
아직 사용할 수 없는 경우 필요한 패키지를 설치합니다. 다음 명령을 사용하여 설치할 수 있습니다.sudo apt-get install pulseaudio-utils
다음 명령을 실행하여 사용 가능한 사운드 수신기를 확인합니다.
pacmd list-sinks | grep -e 'index:' -e 'name:'
이 명령은 사용 가능한 수신기와 해당 인덱스 번호를 나열합니다. 전환하려는 사운드 수신기의 인덱스 번호를 기록해 두십시오.
change_sound_sink.sh
원하는 텍스트 편집기를 사용하여 스크립트 파일을 만듭니다. 예를 들면 다음과 같습니다.nano change_sound_sink.sh
스크립트 파일에 다음 줄을 입력합니다.
#!/bin/bash # Set the desired sink index SINK_INDEX=my_sink_index # Change the default sink to the desired index pacmd set-default-sink $SINK_INDEX # Move existing streams to the new sink pacmd list-sink-inputs | awk '/index:/{print $2}' | while read -r input; do pacmd move-sink-input "$input" "$SINK_INDEX" done
my_sink_index
3단계에서 얻은 원하는 사운드 수신기의 인덱스 번호(예0
:1
등) 로 바꿉니다 .스크립트 파일을 저장하고( Ctrl+ Oin
nano
) 텍스트 편집기를 종료합니다( Ctrl+ Xinnano
).다음 명령을 실행하여 스크립트 파일을 실행 가능하게 만듭니다.
chmod +x change_sound_sink.sh
다음 명령을 사용하여 스크립트를 실행합니다.
./change_sound_sink.sh
이렇게 하면 사운드 싱크가 지정된 인덱스로 변경되고 기존 오디오 스트림이 새 싱크로 이동됩니다.
스크립트를 실행한 후 사운드 출력이 원하는 수신기로 전환되어야 합니다. 필요에 따라 이 스크립트를 다른 자동화 또는 제어 시스템에 통합할 수 있습니다.