安装完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. jquery获取标签内容,编辑内容

    一.获取页面元素 三种方式获取页面中元素的内容. input标签使用:.val()获取 标签下的html及文本内容:.html() 仅获取标签下的纯文本内容:.text() <head> ...

  2. 通过WebBrowser获取网页验证码

    /// <summary> /// 返回指定WebBrowser中图片<IMG></IMG>中的图内容 /// </summary> /// <p ...

  3. uva 1368

    简单的贪心 ~ #include <cstdio> #include <cstdlib> #include <cmath> #include <map> ...

  4. mySql 的基本操作

    mysql -uroot -proot show databases; use ltcl_net;show tables; desc tablename; 查看表结构 create table tes ...

  5. C# 知识笔记

    HttpContext.Request.Form.ToString() 获取Form表单中的内容 /// <summary> /// 获取 GET 提交方式值 /// </summa ...

  6. 转: 在.NET中操作数字证书

    作者:玄魂出处:博客2010-06-23 12:05 http://winsystem.ctocio.com.cn/19/9492019.shtml .NET为我们提供了操作数字证书的两个主要的类,分 ...

  7. POJ2251Dungeon Master

    http://poj.org/problem?id=2251 题意 : 就是迷宫升级版,从以前的一个矩阵也就是一层,变为现在的L层," . "是可以走,但是“#”不可以走,从S走到 ...

  8. spring webservice 开发demo (实现基本的CRUD 数据库采用H2)

    在实现过程中,遇到两个问题: 1: schema 写错: 错误: http://myschool.com/schemas/st 正确: http://myschool.com/st/schemas   ...

  9. lintcode 中等题:Divide Two Integers 两个数的除法

    题目 两个整数相除 将两个整数相除,要求不使用乘法.除法和 mod 运算符. 如果溢出,返回 2147483647 . 样例 给定被除数 = 100 ,除数 = 9,返回 11 解题  15%的通过率 ...

  10. 【Linux高频命令专题(17)】head

    概述 head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾. 命令格式 hea ...