我知道我可以做mplayer <stream>
来打开并在本地机器上播放一个流。不过,我在防火墙后面。
相反,我想在远程机器上打开流,但仍然在这台机器上播放。远程连接是SSH的目的,但是执行ssh "mplayer <stream>"
会打开并播放远程上的流。
SSH的-x
标志支持X11显示转发。我需要那个吗?
发布于 2013-11-12 17:19:42
您可以使用ssh
's -L
标志创建从系统到远程的隧道:
ssh -L <localport>:<streamhost>:<streamport> <user>@<remote>
然后,您可以使用mplayer
连接到隧道的末端,否则:
mplayer localhost:<localport>
发布于 2013-11-12 17:15:31
您可以使用wget
over ssh
打开HTTP并输出流数据,然后在本地机器上播放mplayer
。
ssh <user>@<host> "wget <stream> -O -" | mplayer -cache 512 -
微妙之处:
wget
's -O
(大写字母哦)选项设置它的输出文件;-
(破折号)意味着stdout
。mplayer
的S -cache
选项会导致可配置的输入量被缓冲,从而补偿网络抖动。-
(dash)选项使其从stdin
读取。例如,尝试流SceneSat无线电。http://r1.scenesat.com:8000/scenesat
发布于 2013-11-12 21:51:41
您可以设置一个SOCKS代理:
ssh -D localhost:8080 user@remotehost
mplayer http_proxy://localhost:8080/http://stream
您也可以使用tell任何其他应用程序,例如您的web浏览器来使用此代理。
https://unix.stackexchange.com/questions/100921
复制相似问题