네트워크 스트리밍을 위해 Raspbmc(Kodi)와 함께 pulseaudio를 사용하는 방법은 무엇입니까?

네트워크 스트리밍을 위해 Raspbmc(Kodi)와 함께 pulseaudio를 사용하는 방법은 무엇입니까?

저는 Raspberry Pi(Kodi 14 포함)에서 Raspbmc를 사용하고 있습니다. 이제 pulseaudio모든 Linux 컴퓨터에서 Raspberry pi로 음악을 쉽게 전송할 수 있기를 원합니다 . 내 문제는 Raspberry Pi에서 pulseaudio를 실행할 수 없다는 것입니다. 다음 단계를 시도했습니다.

1.펄스오디오 설치

sudo apt-get install pulseaudio pulseaudio-module-zeroconf

2. 펄스오디오 설정

sudo nano /etc/pulse/default.pa

다음 줄을 추가했습니다.

load-module module-native-protocol-unix auth-anonymous=1
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.1.0/24 auth-anonymous=1
load-module module-zeroconf-publish

3. 펄스오디오 시작

먼저, 데몬으로 pulse를 시작해 보았습니다.

pulseaudio -D

또한 시스템 전체에서 시작해 보았습니다.

sudo pulseaudio --system 

그러나 다른 컴퓨터에서는 펄스가 전혀 나타나지 않습니다(서로를 찾으면 올바르게 구성된 것입니다). 여기에 문제가 있나요?

답변1

system.pa대신 편집해야 합니다 default.pa. RPI에 로그인하여 실행하면 ps fax다음 줄을 볼 수 있습니다.

/usr/bin/pulseaudio --system --realtime --log-target=syslog --log-level=1 --disallow-exit --disable-shm --exit-idle-time=-1

이것이 pulseaudio를 read 대신 read 로 --system만드는 것입니다 . 또한 kodi가 이미 pulseaudio 인스턴스를 시작했기 때문에 단순히 다른 인스턴스를 시작할 수는 없습니다. 첫 번째 인스턴스는 에 바인딩되므로 두 번째 인스턴스는 바인딩할 수 없습니다! 내 kodi에서는 pulseaudio를 다시 시작할 수 없으므로 구성 파일을 변경한 후 다시 시작해야 합니다.system.padefault.pa0.0.0.0:4713

원격 수신기가 실제로 클라이언트에 표시되려면 클라이언트에서 다음을 수행해야 합니다.

  • 모듈 로드 module-zeroconf-discover( pactl load-module module-zeroconf-discover) 및
  • paprefs원격 수신기를 활성화하는 데 사용됩니다 . 첫 번째 탭에 paprefs표시된 첫 번째 확인란을 선택해야 합니다. (모듈을 로드하는 것만으로는 충분하지 않습니다.)
  • 클라이언트에서 avahi-daemon을 다시 시작하십시오.

avahi-browse -a클라이언트에서 이를 사용하여 실제로 PA 서비스를 볼 수 있는지 확인할 수 있습니다 . 중요한 줄은 다음과 같습니다.

+  wlan0 IPv4 root@raspbmc                   PulseAudio Sound Server local

방금 2시간 전에 이 작업을 수행했는데 실제로는 아무런 효과가 없었습니다. 예, 원격 수신기가 나타나고 pavucontrol이를 기본 수신기로 설정하고 볼륨을 조절할 수 있지만 Spotify가 작동하지 않습니다(음악이 재생되지 않습니다. 이것이 저의 유일한 테스트입니다.). 터미널을 열고 실행하면 export PULSE_SERVER=rpi02.local:4713; spotify작동합니다. 설정 방법은 PULSE_SERVER별도의 구성 없이 바로 사용할 수 있습니다. (그러나 이는 우분투 특유의 문제일 수 있습니다.)

Wi-Fi를 사용할 계획이라면 또 다른 RPI 관련 질문이 있습니다.

네트워크를 통해 원격으로 Raspberry Pi의 펄스 오디오를 사용할 때 오디오 재생이 왜곡되는 일반적인 문제가 있습니다. 분명히 Wi-Fi를 사용하면 종종 이 문제가 발생하지만 이는 여전히 Pi 하드웨어 관련 문제이며 사용 가능한 해결 방법이 있습니다.

  1. 라즈베리 파이에서:sudo sed -i 's/^\(load-module module-udev-detect\)/\1 tsched=0/' /etc/pulse/system.pa
  2. Pi에서 펄스오디오 다시 시작
  3. Pi의 pa 서버에 원격 클라이언트 연결

이는 알려진 문제이며 이 솔루션과 함께코디 위키. tsched예를 들어 독서우붓 누투 SE, 우리는 이것이 사운드 하드웨어로 인한 타이밍 문제라는 것을 알게 되었습니다. Linux에서 다른 타이밍 모델을 사용 하게 하면 tsched=0CPU를 더 많이 사용하게 됩니다. 이 솔루션을 사용하면 pulseaudio 서비스가 원격 스트림을 재생할 때 내 B+ CPU의 17%를 소비합니다.

관련 정보