
PC에 리눅스를 새로 설치하고 부팅했는데, 모든 소리가 스마트폰 스피커에서 나는 것처럼 들린다면? 서브우퍼에 손을 대봐도 전혀 진동이 느껴지지 않습니다. 베이스가 강한 음악을 틀어봐도 마찬가지입니다.
대부분의 주요 리눅스 배포판은 ALSA(Advanced Linux Sound Architecture)와 PulseAudio를 함께 사용해 사운드를 관리합니다. 두 소프트웨어 모두 훌륭하지만, 기본 설정은 다소 빈약한 편입니다. 5.1 서라운드 시스템처럼 두 개 이상의 채널을 사용하는 복잡한 스피커 환경이라면, PulseAudio의 기본 입출력 믹싱 방식 등 여러 이유로 인해 서브우퍼 출력이 누락될 수 있습니다.
이 글에서는 리눅스에서 서브우퍼가 작동하지 않는 문제를 해결하는 방법을 단계별로 알려드립니다.
먼저 확인해야 할 사항
운영체제 설정을 건드리기 전에, 모든 케이블을 점검하여 스피커가 제대로 연결되어 있는지 먼저 확인하세요. 또한 스피커가 마지막으로 정상 작동했던 다른 운영체제가 컴퓨터에 설치되어 있다면, 그곳에서도 한 번 테스트해 보는 것이 좋습니다.

다른 모든 원인을 배제해야, 문제가 현재 리눅스 배포판의 오디오 처리 방식에 있음을 확신할 수 있습니다.
리눅스에서 스피커 테스트하기
리눅스 배포판에서는 시스템 설정에 접근할 수 있는 애플리케이션을 찾을 수 있을 것입니다. 메뉴에 해당 프로그램이 없다면 터미널을 열고 "gnome-control-center"를 설치하세요.
Debian 계열(Ubuntu/Kali/Mint/MX) 시스템의 경우:
sudo apt install gnome-control-center
Arch 계열(Manjaro/EndeavourOS/Garuda) 시스템의 경우:
sudo pacman -S gnome-control-center
설치가 완료되면 앱을 실행하고 "사운드(Sound)" 메뉴로 이동하세요. 출력 장치를 확인하고 올바른 오디오 장치가 선택되어 있는지 점검합니다. 그다음 "서브우퍼(Subwoofer)" 채널의 볼륨이 충분한지 확인하세요. 필자의 경우 최대치로 설정되어 있습니다.

또한 출력 장치 구성이 실제 사용 중인 스피커 유형과 일치하는지도 확인해야 합니다. 6채널 5.1 서라운드 시스템을 사용한다면 "구성(Configuration)" 항목에서 "Analog Surround 5.1 Output"을 선택해야 합니다.

모든 설정을 마쳤다면 이제 "테스트(Test)" 버튼을 클릭해 보세요. 각 스피커를 클릭하면서 소리가 어디에서 나오는지 확인합니다. 귀를 대고 들어봐도 특정 스피커에서 소리가 전혀 들리지 않는다면, 거의 확실하게 연결 문제이며 하드웨어 수준에서 스피커가 어떤 이유로든 제대로 작동하지 않는 상태입니다.
반면 "서브우퍼"를 클릭했는데 센터 스피커에서 소리가 나거나, 그 반대 현상이 나타난다면 일부 사운드 시스템에서 흔히 발생하는 문제에 부딪힌 것입니다. 이것이 첫 번째 우선순위입니다.
센터와 서브우퍼가 뒤바뀌었다면? 이렇게 해결하세요!
사운드 시스템의 구조는 완전히 표준화되어 있지 않기 때문에, 일부 제조업체는 센터 채널과 서브우퍼 채널이 서로 교차되도록 배선을 설계하기도 합니다. 이 경우 컴퓨터는 센터 오디오를 우퍼로 재생하려 하고, 그 반대도 마찬가지로 발생합니다.
터미널에서 다음 명령어를 입력하세요:
sudo gedit /usr/share/pulseaudio/alsa-mixer/profile-sets/default.conf
설정 파일에서 "[Mapping ...]"으로 시작하는 섹션들이 나올 때까지 아래로 스크롤하세요. 자신의 스피커 오디오 프로파일과 일치하는 항목을 찾아야 합니다. 예를 들어 5.1 서라운드 스피커를 구성하려면 다음과 같은 헤더의 섹션을 찾으세요:
[Mapping analog-surround-51]
7.1 시스템을 구성하는 경우라면 "analog-surround-71"을 찾으면 됩니다.
이 섹션에서 변경할 변수는 "channel-map"입니다. 기본값은 5.1 서라운드 시스템 기준으로 다음과 같습니다:
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
7.1 미만의 시스템에서는 대부분의 운영체제가 서브우퍼(lfe)를 매핑의 마지막에 배치합니다. 만약 스피커 제조업체가 서브우퍼와 센터 출력을 바꿔 놓았다면, 이 순서를 반대로 변경해야 합니다.
"front-center"와 "lfe"의 위치를 서로 바꿔주면 됩니다! 5.1 서라운드 시스템을 구성하는 경우 다음과 같아야 합니다:
channel-map = front-left,front-right,rear-left,rear-right,lfe,front-center
7.1 서라운드 시스템을 구성하는 경우라면 "channel-map"을 다음에서:
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
다음과 같이 변경하세요:
channel-map = front-left,front-right,rear-left,rear-right,lfe,front-center,side-left,side-right
파일을 저장하고 종료한 뒤 재부팅하면, 오디오가 올바른 채널로 출력될 것입니다.
서브우퍼 소리가 나지 않나요? 이렇게 해보세요!
위의 방법으로도 해결되지 않는다면, 앞서 설명한 대로 오디오 테스트를 먼저 수행했는지 확인하세요. 서브우퍼가 반응하는지 살펴봅니다. 테스트에는 반응하지만 어떤 콘텐츠를 재생하든 베이스 소리가 전혀 들리지 않는다면, 추가적인 조치가 필요합니다.
먼저 아직 설치하지 않았다면 "alsa-utils"를 설치하세요.
Debian 계열 시스템의 경우:
sudo apt install alsa-utils
Arch 계열 시스템의 경우:
sudo pacman -S alsa-utils
이제 터미널에서 alsamixer를 실행하세요. 사운드 장치의 각 채널별 레벨이 표시됩니다. 키보드의 F6 키를 눌러 적절한 오디오 출력을 선택하세요. 필자의 경우 HD-Audio Generic 카드입니다.

왼쪽/오른쪽 방향키로 LFE 항목으로 이동한 뒤, 레벨이 100(또는 선호하는 값)으로 설정되어 있는지 확인하세요:

그래도 스피커에서 베이스가 들리지 않는다면, 네이티브 서브우퍼 입력 채널이 없는 콘텐츠를 재생하려고 하는 것일 가능성이 높습니다. 다행히 PulseAudio에는 이를 보완하기 위해 로우패스 필터링된 신호를 합성하는 기능이 내장되어 있습니다.
시스템에서 풍부한 베이스를 즐기려면 PulseAudio의 "daemon.conf" 설정 파일을 편집해야 합니다.
sudo gedit /etc/pulse/daemon.conf
설정 파일에서 다음 두 줄을 찾으세요:
; remixing-produce-lfe = no
; remixing-consume-lfe = no
각 줄 맨 앞의 세미콜론을 제거하고, 각 줄의 "no"를 "yes"로 변경하세요.

파일을 저장한 뒤 터미널에서 PulseAudio를 재시작합니다:
pulseaudio -k
이후에도 서브우퍼가 작동하지 않는다면 재부팅을 시도해 보세요. 이제 정상적으로 사용할 수 있을 것입니다!
한 단계 더 나아가기
오디오 관리 측면에서 리눅스의 기본 설정은 다소 빈약하지만, 몇 가지 구성만으로 서브우퍼가 작동하지 않는 문제를 손쉽게 해결할 수 있다는 점이 다행입니다. 나아가 PulseEffects를 활용해 시스템의 오디오 성능을 극한까지 끌어올리는 훌륭한 가이드도 함께 확인해 보세요!