내 로컬 컴퓨터에서 SSH를 통해 Finch의 소리/알림 재생

내 로컬 컴퓨터에서 SSH를 통해 Finch의 소리/알림 재생

그래서 내가 입력한 원격 컴퓨터에서 실행 중인 finch명령줄 채팅 클라이언트(pidgin 생각)가 있습니다. 알림 소리가 있고 특정 이벤트가 발생할 때 명령을 실행할 수 있으므로 사운드 파일을 .sshfinch%smplayer %s

원격 시스템에서 알림이 발생하면 %s로컬 시스템에 있는 모든 항목을 재생하기 위해 어떤 명령을 실행할 수 있습니까?

답변1

당신이 사용하는 경우펄스 오디오사운드 서버로서 이를 사용하여 module-native-protocol-tcp원격 컴퓨터로부터의 TCP 연결을 수락할 수 있습니다.

다음 예에서는 SSH 터널을 사용하여 원격 컴퓨터의 오디오 요청을 로컬 컴퓨터로 전달합니다.

로컬 컴퓨터에서 다음을 수행합니다.

pactl load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
ssh -R 9999:127.0.0.1:4713 you@remotehost

그런 다음 원격 컴퓨터에서 사용할 수 있습니다paplay

paplay -s 127.0.0.1:9999 soundfile.wav

다음에 추가내가 찾은 것은 유효한 매개 변수로 auth-ip-acl허용되지 않는다는 것 입니다. (또는 컴퓨터에서 사용하는 로컬 호스트 주소)를 localhost사용해야 합니다 .127.0.0.1

편집하다ssh -R대신 이어야 합니다 ssh -L(원격 포트를 로컬 포트로 전달합니다).


이전 버전의 펄스 오디오(0.9.3 이전)를 사용하는 경우 쿠키 기반 인증을 사용할 수 있습니다.

pactl load-module module-native-protocol-tcp auth-anonymous=1 auth-cookie-enabled=0
scp ~/.pulse-cookie you@remotehost:
ssh -R 9999:localhost:4713 you@remotehost

분명히 Pulse Audio에서는 인증을 사용할 수 없지만 이 솔루션을 권장할 수는 없습니다. 원격 연결을 피하려면 최소한 방화벽을 사용하십시오.

관련 정보