소리를 재생하면 5초간 아무런 소리도 나지 않아서 사운드 서버를 교체했습니다.

알림
|
X

페이지 정보

작성자 no_profile 커널패닉 125.♡.12.173
작성일 2024.11.11 18:19
350 조회
2 추천

본문

Linux Mint 22 버전부터 PipeWire를 사용한다고 하는데, 막상 idle시 전원 절약을 위해 suspend되는 기능을 끌 수가 없었습니다. 따라서 예전에 잘 사용하던 PulseAudio를 설치해 주었더니 딜레이 없이 잘 재생하네요.


sudo apt purge pipewire pipewire-bin
systemctl enable --user pulseaudio
sudo reboot


사운드 서버가 제대로 적용되었는지 확인하려면 inxi -A 명령을 실행하면 아래와 같이 표시됩니다.

[hm:~]$ inxi -A                  
Audio:
  Device-1: Intel Raptor Lake High Definition Audio driver: snd_hda_intel
  Device-2: NVIDIA driver: snd_hda_intel
  API: ALSA v: k6.8.0-48-generic status: kernel-api
  Server-1: PulseAudio v: 16.1 status: active


PulseAudio의 module-suspend-on-idle 기능을 비활성화 하는 방법은 아래 코드를 주석처리하기만 하면 문제가 해결됩니다.

# /etc/pulse/default.pa

### Automatically suspend sinks/sources that become idle for too long
load-module module-suspend-on-idle    # 이 라인 주석처리

댓글 2

시커먼사각님의 댓글

작성자 시커먼사각 (49.♡.218.16)
작성일 2024.11.12 01:54
감사합니다. ㅎㅎ
안그래도 라즈베리파이로 만들어놓은 간단한 네트워크 플레이어에서 신호를 줘도 소리가 먹어버리는 현상이 있어서 골치를 앓고 있었습니다. ㅎ

커널패닉님의 댓글

작성자 no_profile 커널패닉 (119.♡.59.225)
작성일 01.07 22:43
Pipewire 사용시에는 아래 코드를 수정하면 문제가 해결되는 것 같습니다.

# /usr/share/wireplumber/wireplumber.conf
## Node configuration hooks
  {
    name = node/create-item.lua, type = script/lua
    provides = hooks.node.create-session-item
    requires = [ si.audio-adapter, si.node ]
  }
# {
#   name = node/suspend-node.lua, type = script/lua
#   provides = hooks.node.suspend
# }
  {
    name = node/state-stream.lua, type = script/lua
    provides = hooks.stream.state
  }
  {
    name = node/filter-forward-format.lua, type = script/lua
    provides = hooks.filter.forward-format
  }
  {
    type = virtual, provides = policy.node
    requires = [ hooks.node.create-session-item ]
#   wants = [ hooks.node.suspend
    wants = [
              hooks.stream.state
              hooks.filter.forward-format ]
  }
  {
    name = node/software-dsp.lua, type = script/lua
    provides = node.software-dsp
  }


그 후 변경된 설정을 반영하기 위해 Pipewire를 재시작하려면 `systemctl --user restart pipewire wireplumber` 명령을 실행하면 됩니다.
참고 링크: https://forum.endeavouros.com/t/58125/7
홈으로 전체메뉴 마이메뉴 새글/새댓글
전체 검색