컴퓨터 옆에 하나의 스피커가 있는데 주로 헤드폰 증폭기로 사용합니다. 때때로 나는 그것을 스피커로 사용해야합니다. 오디오 출력을 시스템 전체 또는 미디어 플레이어의 플러그인으로 스테레오에서 모노로 빠르게 변경할 수 있습니까?
컴퓨터 옆에 하나의 스피커가 있는데 주로 헤드폰 증폭기로 사용합니다. 때때로 나는 그것을 스피커로 사용해야합니다. 오디오 출력을 시스템 전체 또는 미디어 플레이어의 플러그인으로 스테레오에서 모노로 빠르게 변경할 수 있습니까?
답변:
다음을 실행하여 오디오 싱크의 이름을 찾으십시오.
pacmd list-sinks | grep name:
그런 다음이 명령을 실행하십시오 (각진 브래킷을 조심스럽게 제거하십시오).
pacmd load-module module-remap-sink sink_name=mono master=<name_of_audio sink_given_by_previous_command> channels=2 channel_map=mono,mono
나에 대한 인수 추가 pacmd
로 /etc/pulse/default.pa
이 시작할 때 실행해야하는가.
그런 다음 사운드 환경 설정 에서 "모노"를 출력으로 선택하십시오. 그러나 두 채널이 하나로 혼합되거나 왜곡 될 수 있으므로 볼륨을 절반으로 줄이십시오. 테스트하려면 다음을 실행하십시오.
speaker-test -c 2 -t sine
단일 명령에서 같은 것 :
pacmd load-module module-remap-sink sink_name=mono master=$(pacmd list-sinks | grep -m 1 -oP 'name:\s<\K.*(?=>)') channels=2 channel_map=mono,mono
모노 채널을 제거하려면 다음을 사용하십시오.
pacmd unload-module module-remap-sink
sudo emacs /etc/pulse/default.pa
(또는 sudo nano
, 또는 사용자가 선호하는 편집기) 끝까지 아래로 스크롤 한 다음 pacmd
부분을 제외한 명령의 모든 항목을 파일 맨 아래의 새 줄에 붙여 넣습니다 . 그런 다음 저장하고 다시 시작하십시오 :-)
대답 1을 펄 스크립트로 캐스트 했으므로 다음 두 명령을 기억할 필요가 없습니다.
#!/usr/bin/perl
use strict;
my @choices = ();
my $i = 0;
for (`pacmd list-sinks`) {
if( /name:.*<(.+)>/) {
$choices[$i++] = $1;
print "$i:\t$1\n";
}
}
my $choice = $choices[<>-1] or die "invalid choice";
exec (qw(pacmd load-module module-remap-sink sink_name=mono),
"master=$choice",
qw(channels=2 channel_map=mono,mono));
(나는 그 대답에 주석을 달았지만 내 업장은 낮다 ;-))
exec "pacmd load-module module-remap-sink sink_name=hono master=$choice channels=1 channel_map=mono >/dev/null";
(이것은 출력을 숨기고 약간 더 간단한 매핑을 사용한다.)
당신이 사용하는 경우 잭 , 당신은 patchage을 (있는 설치할 수 있습니다 사용하여 수행 할 수 있습니다 apt-get install patchage
). 매우 직관적 인 인터페이스가 있습니다.
펄스 오디오 사운드 설정 관리자를 사용하여 스테레오를 모노로 변경할 수 있습니다. 또는 모든 것을 왼쪽 또는 오른쪽 스피커로 이동하십시오.
부록으로, 위의 답변으로 모노 싱크를 만든 후에이 스크립트를 핫키에 매핑 할 수 있습니다.
#!/bin/bash
if [ "* index: 0" == "$(pacmd list-sinks | grep "*" | sed 's/^ *//')" ];
then pacmd set-default-sink 1 && notify-send "Mono";
SINK=1;
else
pacmd set-default-sink 0 && notify-send "Stereo";
SINK=0;
fi;
pacmd list-sink-inputs | grep index | grep -o '[0-9]*' | while read -r line;
do pacmd move-sink-input $line $SINK;
done;
싱크 사이를 토글하고 현재 스트림을 새 싱크에 다시 매핑합니다 (ma