UDPXY手册
udpxy的作用是将组播的数据流变成TCP协议的单播流,避免了在数据链路层广播,在无线网络中尤为需要。同时电视也不支持udp格式的视频流。
udpxy在官方的软件源中,直接安装即可
udpxy没有独立的配置文件,修改参数直接在启动脚本中完成
udpxy手册页
udpxy - UDP到HTTP多播流量中继守护程序。
概要
1 | udpxy [-vTS] [-a <listenaddr>] [-m <mcast_ifc_addr>] [-c <clients>] [-l <logfile>] [-B <sizeK>] [-R <msgs>] [-H <sec>] [-n <nice_incr>] [-M <sec>] -p <port> |
描述
udpxy是UDP到HTTP多播流量中继守护程序:它将UDP流量从给定的多播订阅转发到请求的HTTP客户端。
udpxy监听(在专用地址/端口上)客户端发出的HTTP请求。客户请求的结构应为:
1 | http://{ address }:{ port }/{ cmd }/{ mgroup_address }[ SEP ]{ mgroup_port } |
1 | [SEP] |
其中地址和端口与udpxy 的侦听地址/端口组合匹配,mgroup_address:mgroup_port标识要预订的多播组/通道。
1 | UDP |
udpxy将为每个新的中继请求启动一个单独的客户端进程(在活动客户端的指定限制内)。客户端进程将(从UDP套接字)接收的所有网络流量从指定的多播组中继/转发到请求的HTTP连接。
udpxy还支持一些管理请求:
状态
1 | http:// address:port / status /发回带有守护程序状态和客户端统计信息的HTML页面。 |
重新开始
1 | http:// address:port / restart /关闭所有活动连接并重启。 |
例子
1 | http://192.168.0.12:5056/udp/224.0.2.26:24012 |
选项
udpxy接受以下选项:
1 | -v |
有效载荷类型和处理
udpxy 通过中继数据包中的MPEG-TS有效载荷识别MPEG-TS和RTP ; 如果udpxy遇到RTP有效载荷,它会自动将其“转换”为MPEG-TS(通过剥离RTP头),以便不识别RTP的媒体播放器仍然可以播放该流。
到目前为止,没有为其他有效负载类型执行转换。
录制Mpeg流量
udpxy包括将捕获的流量记录为原始MPEG-TS流到文件中的功能。此功能通过udpxrec启用:与udpxy链接在一起的捆绑应用程序(作为一个可执行文件)。
udpxrec通过符号链接(名为udpxrec)调用udpxy可执行文件(即不重命名 udpxy可执行文件)。
udpxrec创建封装MPEG-TS段的MPEG文件; 某些媒体播放器不会播放此类文件; 为了使它们可播放,必须将流转码为MPEG-PS; vlc’知道’如何进行这样的转码,这是一个命令行示例:
1 | vlc input-ts.mpg --sout =“#std {access = file,mux = ps,dst = out-ps.mpg}” |
由此产生的MPEG-PS文件可以由大多数媒体播放器播放。
环境
udpxy利用以下环境变量来补充其命令行选项; 变量被考虑用于大多数人不需要经常更改的选项(或者从命令行使用简单不方便)。
注意:如果存在与功能环境变量相交的命令行开关,则交换机始终具有更高的优先级。
1 | UDPXY_RCV_TMOUT |