기본적으로 alsa 또는 펄스 오디오를 사용 중인지 어떻게 알 수 있습니까? (i3-wm으로 전환)


50

핵심 개념을 이해하지 못했을 수 있습니다.이 경우 내가 틀렸다면 정정하십시오.

우분투에는 두 가지 다른 오디오 렌더링 서버 인 pulse와 alsa가 있습니다. Alsa는 펄스 중간 단계입니까? 본질적으로 나는 어느 것을 사용하고 있는지 알아야합니다.

내가 알아야 할 이유는 내가 단결에서 i3-wm으로 전환하려고하기 때문입니다. i3을 설정하는 동안 오디오가없고이 스레드에 도달했습니다 . 그것은 내 노트북 ​​볼륨 업 및 다운 키를 기능에 바인딩하기위한 다양한 옵션을 지정하며 몇 가지 옵션을 사용하여 매우 까다로운 오디오를 얻었으므로 실제로 사용중인 것을 알아야합니다.

답변:


81

우분투는 사운드 입력 및 출력을 제어하기 위해 ALSA와 Pulseaudio를 모두 사용합니다.

ALSA

ALSA는 사운드 하드웨어를 운영 체제에 연결하기위한 커널 기반 시스템의 역할을합니다. 시스템의 모든 사운드 카드는 드라이버 및 카드 특정 설정을 사용하여 제어됩니다. 이 작업의 대부분은 사용자가 방해 할 필요가없는 상태에서 수행됩니다.

또한 ALSA는 사운드 시스템을 제어하는 ​​라이브러리 및 도구를 제공합니다. 우리 대부분이 접할 수있는 도구는 alsamixer시스템의 모든 카드와 프로필의 음량 및 음소거 상태를 제어하는 ​​세미 그래픽 터미널 응용 프로그램 일 수 있습니다.

PulseAudio 또는 다른 사운드 서버없이 ALSA를 사용하여 사운드 카드에 사운드를 제공 할 수 있습니다.

펄스 오디오

ALSA베이스 위에 PulseAudio 사운드 서버는 사운드 시스템을보다 잘 제어 할 수있는 추가 도구를 제공합니다. 볼륨 수준, 오디오 카드 프로파일, 출력 싱크 또는 입력 소스 등을 정의하는 모듈을 사용하여 대부분의 우분투 응용 프로그램에서 쉽게 액세스 할 수 있습니다.

ALSA와 마찬가지로 PulseAudio는 가능한 한 적은 사용자 상호 작용으로 실행되도록 설계되었습니다. 볼륨, 밸런스 또는 입력 / 출력 장치를 변경해야 할 때마다 PulseAudio 모듈 또는 응용 프로그램 또는 응용 프로그램 호출입니다.

PulseAudio의 전문적인 대안은 JACK 오디오 서버 로 사운드 하드웨어와 상호 작용할 수있는 옵션이 더 많고 대기 시간이 짧습니다. JACK 실행을 기대하는 음악 제작 응용 프로그램은 거의 없으며 PulseAudio와 병렬로 수행 할 수 있습니다.

응용 프로그램 / 데스크톱 통합

볼륨 컨트롤 애플릿과 같은 Unity / GNOME 데스크탑에서 실행되는 애플리케이션에서 Ubuntu 사운드 시스템을 추가로 제어 할 수 있습니다.

주어진 응용 프로그램에서 사운드 컨트롤을 사용하는 응용 프로그램은 응용 프로그램 개발자에게 달려 있습니다. 일부 응용 프로그램은 ALSA 만 사용하고 일부는 PulseAudio, 일부는 JACK이 필요합니다.

따라서 Ubuntu 위에 다른 데스크톱 관리자를 설치할 때마다 사운드를 제어하기 위해 데스크톱 특정 응용 프로그램이 손실 될 수 있지만 ALSA 및 PulseAudio는 사운드 제어를 위해 백그라운드에서 실행됩니다.

펄스 오디오 pavucontrol 설치 GTK 기반 볼륨 제어 응용 프로그램 인 pavucontrol 과 같은 추가 패키지를 설치해야 할 수도 있습니다 .

ALSA 또는 PulseAudio가 실행 중입니까?

ALSA와 PulseAudio는 사운드 시스템의 상태를 인쇄하기위한 명령 줄 응용 프로그램과 함께 제공됩니다.

  • 펄스 오디오 :

    pactl list
    
  • ALSA :

    aplay -l
    

사운드 시스템이 작동하지 않으면 둘 다 오류가 발생합니다. ALSA는 커널과 함께로드되고 PulseAudio는 나중에 시작됩니다. 그렇지 않은 경우 다음을 사용하여 터미널에서 PulseAudio를 수동으로 시작할 수 있습니다.

pulseaudio [options]  ## option -D starts the daemon

경우에 우리는 내가 읽어 보시기 바랍니다 오디오 문제가 우리가해야 일에 데이비드 Henningsson에 의해 작성 후 하지 우리가 더 이상 갈 befor을 우리의 오디오 문제를 디버깅을 .


1
@Takkat 놀라운 설명, 감사합니다. 나는 오랫동안 리눅스와 우분투에서 오디오 시스템에 대한 기본적인 이해를 얻으려고 오랫동안 노력해 왔습니다.
AlexN

내 raspberry pi 시스템에서 "pactl list"는 "Connection 거부 됨"을 반환하지만 "pactl --server 127.0.0.1 list"는 작동합니다. 환경 변수 "PULSE_SERVER = 127.0.0.1"을 내 보내면 pulseaudio 클라이언트가 올바르게 연결할 수 있습니다. 내가 누락 된 아이디어가 있습니까? 이것은 라즈베리 파이에 있습니다.
Joao Costa
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.