安装完Darwin Streaming Server,就可以使用VLC通过RTSP协议播放流媒体文件了。但是我现在有一个需求,需要将一台DSS(假设为A机)上的媒体文件发送到另一台DSS(假设为B机)上,客户端VLC通过访问B机来播放A机的媒体文件,也就是使用B机作为转发服务器。在网上找了很多关于配置DSS的文章,都是讲如何安装及配置播放列表,都没有讲如何配置转发(Relay)。有一篇名为《基于DSS快速流媒体中继实现》的论文讲到了转发,但是它配置的是播放列表,实际播放的是B机上的文件,将B机媒体文件夹下的媒体文件都删除后就不能工作了。最终在http://soundscreen.com/streaming/relay.html找到了详细的配置过程。下面将我的配置过程记录如下,以免以后忘记了。

 
说明:使用三台windows的PC,一台(命名为A,IP地址为100.0.0.108)作为源server,一台(命名为B,IP地址为100.0.0.107)做relay服务器,一台(命名为C,IP地址为100.0.0.109)作为客户端。在A机上建立playlist,A机将本机上的文件发送给B机,如果C机能够通过访问B机来播放A机的媒体文件,则证明relay成功。
 
配置步骤:

1.A与B机安装perl和Darwin Streaming Server,C机安装VLC播放器。

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机发出的媒体文件。

Darwin Streaming Server Relay Setting的更多相关文章

  1. Darwin Streaming Server 6.0.3安装、订制、插件或模块

    How to setup Darwin Streaming Server 6.0.3 on 32 or 64 bit Linux platforms, add custom functionality ...

  2. Darwin Streaming Server 安裝操作備忘

    Darwin Streaming Server 安裝操作 Darwin Streaming Server是蘋果公司推出的開放源碼.跨平台多媒體串流伺服器, 提供音樂 (mp3) 與影音 (3gp.mp ...

  3. Linux编译安装Darwin Streaming Server 6.0.3。。。

    目前主流的流媒体服务器有微软的windows media server.RealNetworks的Helixserver和苹果公司的Darwin Streaming Server. 微软的window ...

  4. Linux编译安装Darwin Streaming Server 6.0.3

    买回来VPS后就一直想在上面搭建一个流媒体服务,在网上搜索了很多资料,大部分都是介绍Linux中安装Darwin Streaming Server 5.5.5版本,因为这个版本提供了针对linux的安 ...

  5. Darwin Streaming server 的 Task 类

    Darwin Streaming Server 是一个开放源代码的streaming server,对于streaming server的编程和软件结构有着一定的参考价值,它是使用C++写的,其中的并 ...

  6. Darwin Streaming Server用vs2005编译运行过程

    原创. 一:编译 Darwin6.0.3版本是最新版本,也提供了.dsw文件.但是使用vs2005和vc6是编译不过的.所以,采用Darwin5.5.5版本.使用vc6打开WinNTSupport文件 ...

  7. Darwin Streaming Server 简介

    Darwin Streaming Server     概要 Darwin Streaming Server简称DSS.DSS是Apple公司提供的开源实时流媒体播放服务器程序.整个程序使用C++编写 ...

  8. Darwin Streaming Server 安装流程

    Darwin StreamingServer 安装流程 Darwin StreamingServer 支持开放源代码和基于标准的实时传输协议/实时流协议(RTP/ RTSP).MPEG-4 和MP3 ...

  9. Darwin Streaming Server服务器mp4文件点播返回”415 Unsupported Media Type“错误

    Darwin Streaming Server中mp4文件点播失败,通过抓包发现服务器返回”415 Unsupported Media Type“错误,如下: RTSP/ Unsupported Me ...

随机推荐

  1. iOS开发之ARC&MRC混用

    Xcode 项目中我们可以使用 ARC 和非 ARC 的混合模式. 如果你的项目使用的非 ARC 模式,则为 ARC 模式的代码文件加入 -fobjc-arc 标签. 如果你的项目使用的是 ARC 模 ...

  2. Unsupervised Learning: Use Cases

    Unsupervised Learning: Use Cases Contents Visualization K-Means Clustering Transfer Learning K-Neare ...

  3. PHP之set_error_handler()函数讲解

    定义和用法 set_error_handler() 函数设置用户自定义的错误处理函数. 该函数用于创建运行时期间的用户自己的错误处理方法. 该函数会返回旧的错误处理程序,若失败,则返回 null. 语 ...

  4. c#操作剪切板

    C#定义了一个类System.Windows.Forms.Clipboard来简化剪切板操作,这个类有一个静态方法,主要有: Clear 清除剪切板中的所有数据: ContainsData,Conta ...

  5. WCF 笔记 (2) - 传输泛型 List 对象

    WCF 笔记 (2) - 传输泛型 List 对象 本帖介绍怎么在 WCF 中,在 Server-side 和 Client-side 之间,传递默认无法传输的 List<T>.List& ...

  6. oracle实现自增列

    手动创建了一个表格,但是id字段无法实现自增,查看了一下网上的信息,没有找到满意的答案.一下是自己总结摸索的,仅供参考 第一步:手动创建表和列中的字段 (本例中,表明 T_VIDEO,第一个字段:ID ...

  7. ZOJ 1642 Match for Bonus (DP)

    题目链接 题意 : 给你两个字符串,两个字符串都有共同的字母,给你每个字母的值,规则是,找出两个字符串中的共同的一个字母,然后这个字母的值就可以加到自己的分数上,但是这步操作之后,这两个字母及其之前的 ...

  8. Floodlight 防火墙是如何起作用的

    前言 用mininet + floodlight搭建好环境之后,运行flooglight,然后在mininet中建立网络拓扑,建好之后,pingall,所有host之间可以ping通. 然后向控制器f ...

  9. 机器学习第三课(EM算法和高斯混合模型)

    极大似然估计,只是一种概率论在统计学的应用,它是参数估计的方法之一.说的是已知某个随机样本满足某种概率分布,但是其中具体的参数不清楚,参数估计就是通过若干次试验,观察其结果,利用结果推出参数的大概值. ...

  10. python 利用pop3接收邮件并保存附件

    def SaveAttach():# login the pop3 server ,retrive the new mails ,and download the attachments dstdir ...