SSH를 통해 HTTP 음악 스트림을 어떻게 재생합니까?


29

난 그냥 할 수있는 알고 mplayer <stream>하는 재생 로컬 컴퓨터에 스트림을. 그러나 나는 방화벽 뒤에 있습니다.

대신, 내가하고 싶은 A의 스트림 원격 시스템을 ,하지만 여전히 플레이 에 그것을 이것 . 원격 연결은 무엇입니까 SSH를 위해, 그러나 일을 ssh "mplayer <stream>"모두하는 것은 개방 리모컨의 스트림을한다.

SSH의 -x플래그는 X11 디스플레이 전달을 활성화합니다. 내가 필요한가요?

답변:


19

ssh-L플래그를 사용하여 시스템에서 원격으로 터널을 만들 수 있습니다 .

ssh -L <localport>:<streamhost>:<streamport> <user>@<remote>

그런 다음 mplayer다른 방법으로 터널 끝에 연결할 수 있습니다 .

mplayer localhost:<localport>

1
HTTP 서버가 가상 도메인을 사용중인 경우 (즉, 클라이언트가 HTTP 헤더로 보낸 적절한 도메인 이름을 요구하는 경우)이 기능이 작동하지 않습니다. 이 문제를 해결하기 위해 예를 들어 대상 도메인이 로컬 컴퓨터에서 호스팅된다고 생각 hosts하게 하는 규칙을 파일에 임시로 추가 할 수 있습니다 mplayer.
liori

3
또는 헤더 -http-header-fields를 강제하는 데 사용할 수 있습니다 Host.
Ignacio Vazquez-Abrams

@ IgnacioVazquez-Abrams 어디에서 명확하게 설명 하시겠습니까? 에 그런 옵션이 없습니다 man ssh.
윌리엄

@LiamWilliam : mplayer옵션입니다.
Ignacio Vazquez-Abrams

34

당신은 사용할 수 있습니다 wget이상 ssh다음 HTTP 연결 및 출력 스트림 데이터를 열고 mplayer재생할 로컬 컴퓨터에.

ssh <user>@<host> "wget <stream> -O -" | mplayer -cache 512 -

미묘함 :

  • wget-O(대문자 oh) 옵션은 출력 파일을 설정합니다. -(대시)는을 의미합니다 stdout.

  • mplayer-cache옵션은 네트워크 지터를 보상 버퍼링되는 입력의 양을 설정시킨다. -(대시) 옵션은 읽을 수 있습니다 stdin.

예를 들어 SceneSat Radio 스트리밍을 시도하십시오 .http://r1.scenesat.com:8000/scenesat


6
나는 이것이 어떤 종류의 음악인지조차 모르지만, 그것을 파이핑하고 있기 때문에 굉장합니다! 감사.
SaultDon

1
이 질문에는 음악이 스트리밍되는 특정 프로토콜이 언급되어 있지 않습니다. 음악을 스트리밍 할 수있는 다른 프로토콜 (예 : RTP 및 MMS)이 있습니다. 둘 다에서 재생할 수 있지만에서 mplayer다운로드 할 수는 없습니다 wget.
liori

@liori 좋은 지적입니다. 이것은 분명히 일반적인 해결책이 아닙니다.
Anko

8

SOCKS 프록시를 설정할 수 있습니다 .

ssh -D localhost:8080 user@remotehost
mplayer http_proxy://localhost:8080/http://stream

웹 브라우저와 같은 다른 응용 프로그램에이 프록시를 사용하도록 지시 할 수 있습니다.


2
http_proxy 기능이 실제로 SOCKS 프록시에서도 작동합니까? 이 기능은 설명서 페이지에 설명되어 있지 않으며 웹의 다양한 사이트에서이 tsocks방법을 선호합니다 .
liori

1
@liori : 그렇습니다 tsocks mplayer -playlist http://bassdrive.com/bassdrive.m3u. 조언 해 주셔서 감사합니다. tsocks (일명 만 사용 http_proxy://…)가 없으면 작동하지 않았습니다.
erik

6

sshfs이런 경우에 훌륭한 도구입니다. 많은 방화벽을 숨기고 선택한 플레이어를 사용할 수 있습니다 (mplayer는 여전히 좋은 선택입니다).

sudo apt-get install sshfs # your favorite packager here
sshfs me@mydomain.org:/home/arthur/Music ~/Music

또한 실행 음속 의 포트 4040에 듣기 localhost다음 ssh-tunnel 홈으로

ssh -L 4040:localhost:4040 me@mydomain.com

그런 다음의 브라우저에서 Subsonic을 열 수 있습니다 http://localhost:4040.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.