安装完Darwin Streaming Server,就可以使用VLC通过RTSP协议播放流媒体文件了。但是我现在有一个需求,需要将一台DSS(假设为A机)上的媒体文件发送到另一台DSS(假设为B机)上,客户端VLC通过访问B机来播放A机的媒体文件,也就是使用B机作为转发服务器。在网上找了很多关于配置DSS的文章,都是讲如何安装及配置播放列表,都没有讲如何配置转发(Relay)。有一篇名为《基于DSS快速流媒体中继实现》的论文讲到了转发,但是它配置的是播放列表,实际播放的是B机上的文件,将B机媒体文件夹下的媒体文件都删除后就不能工作了。最终在http://soundscreen.com/streaming/relay.html找到了详细的配置过程。下面将我的配置过程记录如下,以免以后忘记了。
2.A机B机打开浏览器键入http://localhost:1220,输入用户名和密码。
3.进入A机的DSS admin,在A机建立playlist
1)单击playlist,选择按钮New Media Playlist。
2)设置Playlist
name处填写playlist的名字,
mount point处填写与playlist同名的sdp文件名。
Play Mode中选择Sequential Looped,以保证播放不停止。
Available Content中,可以拖拽媒体文件到右侧的Items in this playlist。
在此界面最下方,有Save Changes,可以保存设置。
3)新建的Playlist
4.在A机建立新的relay。单击左侧relay Settings,在右侧选择New Relay。
Source Settings中:
Source Hostname or IP Address中填写源数据ip。因为是将本机的playlist转给其它地址,所以,Source Hostname or IP Address中填写的是127.0.0.1。
Mount Point就填写要播放的playlist的名字(/v.sdp)。
Request incoming Stream中填写A机的DSS用户名和密码。
Destination Settings中:
Hostname or IP Address填写B机IP地址。
Base Port中填写将送达B机的端口号(需要填写来建立连接)。
Multicast TTL填写最多可以中继的级数。
在页面最下方有save changes保存设置。
可以增加和删除Destination。
5.在A机单击左侧菜单的playlist,将v.sdp启动。
6.在A机单击左侧菜单relay status出现下图的连接状态,证明已有数据送达B机。
7.将A机DSS安装目录下的playlist文件夹中的与mount point同名的文件夹中的v.sdp文件拷贝到B机的媒体文件夹中。在B机上编辑v.sdp文件,找到第一个以“m=”开头的行,将0改为前面在Relay Setting中配置的Base Port(i.e.9000);继续找到下一个以“m=”开头的行,将0改为Base Port+2(i.e.9002)。
8.在B机建立新的relay。单击左侧relay Settings,在右侧选择New Relay。
Source Settings中:
Source Hostname or IP Address中填写源数据IP。因为是接收A机的playlist,所以,Source Hostname or IP Address中填写的是A机的IP地址。
Mount Point就填写要播放的playlist的名字(/v.sdp)。
Request incoming Stream中填写A机的DSS用户名和密码。
Destination Settings中:
Hostname or IP Address填写目的IP地址。因为是接收A机的playlist,所以,Source Hostname or IP Address中填写的是127.0.0.1。
Base Port中填写将送达B机的端口号(需要填写来建立连接,与4中相同)。
Multicast TTL填写最多可以中继的级数。
在页面最下方有save changes保存设置。
9.启动C机的VLC,打开url:rtsp://100.0.0.107/v.sdp
10.C机播放了A机发出的媒体文件。