DSS 搭建手机流媒体服务器

DSS 搭建手机流媒体服务器

最近研究了一下手机流媒体服务器的搭建,目的是实现通过3G手机看在线视频。

开始的时候研究了一下 Tudou手机版 ,可它哪并没有实现在线播放,因为视频地址是 http 协议的。参看了许多文章,终于了解到要用 RTSP 、MMS 这类。

RTSP 有一个来自 Apple 的开源项目:Darwin Streaming Server (DSS)

DSS 是跨平台的软件,可以在Linux、Mac OSX 或 Windows 等上面部署。

一、DSS Windows 安装教程:

  1. 从:http://dss.macosforge.org/downloads/DarwinStreamingSrvr5.5.5-Windows.exe (只有5.5的) 这里下载 DSS for Windows
  2. 下载后解压,会看到一个 Install.bat 的文件,直接运行它就会安装到 C:/Program Files/Darwin Streaming Server/ 并还会在 系统服务里面加一个号 Darwin Streaming Server 的服务程序,这个就是 DSS 的 RTSP 服务器。
  3. 接下来你要安装 Perl 解释器,可以从 http://www.perl.org/get.html 这里下载到,然后安装
  4. 装好 Perl 后就可以在 CMD 下面使用 perl **.pl 来运行程序了
  5. 接下来在CMD下面做如下操作:
    • # 根据提示创建 WebAdmin 的账号和密码
    • C:/Program Files/Darwin Streaming Server>perl WinPasswdAssistant.pl
    • # 运行 WebAdmin 管理器
    • C:/Program Files/Darwin Streaming Server>perl streamingadminserver.pl
    • # 现在可以打开 http://127.0.0.1:1220/ 来对 DSS 服务器进行管理了
  6. 在 DSS WebAdmin 里面修改 General Settings -> Media Directory ,将它改为你的 Media 目录,当然也可以使用默认的,把自已的视频文件放到 C:/Program Files/Darwin Streaming Server/Movies 里面
  7. 现在你可以使用 QuickTime 或 VLC 打开 rtsp://127.0.0.1:554/sample_100kbit.mp4 来测试视频了,(注 sample_100kbit.mp4 是 DSS 5.5.5 自带的视频)

二、如何将自己的视频转换为流媒体格式?

研究这个东西费了我好大的劲,一开始不知道视频还有专门针对流媒体的,以为只要用 MediaCoder 将视频转换成合适的格式,如:MPEG4 + AAC + MP4 / MPEG4 + AAC + 3GP 就可以放了,反复放到服务器上面去测试,VLC 和 QuickTime 都没法打开。于是又用工具打开 DSS 自带的几个示例视频看它们的格式,反复转换试不同的视频和音频编码和外壳,还是不行...郁闷死我了

在 DSS 的邮件列表里面找了找相关的文章,发现有讲好像要用特别的工具对视频 hint 一下,然后就可以在 RTSP 上面用了,说可以用 QuickTime Pro 或 VLC 来转换,我用 VLC 试了一下,文件菜单一个叫“流(s)”的功能,但试了还是不行,没看到文件有变动过。

于是再沿着 Hint 关键词在 Google 上面找文章,找到了 Nokia 论坛里面,看到这篇文章:http://discussion.forum.nokia.com/forum/showthread.php?t=125540 里面有说可以使用 Mp4box 对视频进行 hint

于是我在 http://www.videohelp.com/tools/mp4box 这里下载到了mp4box (不用下载GUI的,直接用命令行操作就好了,只用一条命名)

下载到到解压出后会有个叫 mp4box.exe ,用它在命令行下面运行

C:/Program Files/Darwin Streaming Server/Movies>mp4box mymovie.mp4 -hint

出现结果:

Hinting file with Path-MTU 1450 Bytes
Hinting track ID 201 - Type "mp4v:mp4v" (MP4V-ES) - BW 33 kbps
Hinting track ID 101 - Type "mp4a:mp4a" (mpeg4-generic) - BW 64 kbps
Saving
mymovie.mp4: 0.500 secs Interleaving

流媒体视频就转换好了,现在文件大小就会有变动,变大了一些。

然后,再用 VLC 或  QuickTime 打开 rtsp://127.0.0.1:554/mymovie.mp4 试试能否播放吧!如果你有3G手机,可以直接用手机打开这个地址试一下。

 

三、附加资源

  • Apple’s Darwin Streaming Server On Centos 5.2 (如何在 CentOS 5.2 下面安装DSS)

 

Tags: 流媒体 Darwin Streaming Server RTSP

网友评论

王平 在 09年08月18日 11:21 说:
王平

我现在也在做这个东西,可惜时间很短啊 ,很多都没有时间去做

xiaodong 在 09年08月19日 11:07 说:
xiaodong

你好我也在看着方面的
请问那个perl解释器应该下载哪个?

李华顺 在 09年08月19日 11:21 说:
李华顺

@xiaodong
http://strawberryperl.com/

wangbing 在 09年11月16日 12:14 说:
wangbing

我最近也在做手机直播,已经按你说的搭建OK。在PC上测试通过,但在IPOD TOUCH上如何播放RTSP地址呢?需要特别安装软件吗? 方便的话给我回邮件好吗?

李华顺 在 09年11月16日 14:40 说:
李华顺

@wangbing
iPhone 或 iPod Touch 据我所知,好像直接连接 http 协议的地址就可以播放了,不用复杂搭建 RTSP

肥肥 在 09年12月03日 04:22 说:
肥肥

你好,我按你的方法,可以在自己电脑上用VLC播放rtsp://127.0.0.1:554/sample_100kbit.mp4。但是在别人电脑用VLC播放不了。所以很想问下,你的手机上测试成功了吗?

李华顺 在 09年12月03日 17:11 说:
李华顺

@肥肥

可以检查是否被防火墙拦截了
我的确是经过手机测试成功了的,目前仍在使用中。

johnnywww 在 09年12月07日 17:21 说:
johnnywww

用什么手机可以测试成功?我用电脑的realplayer可以访问,但是手机无法访问

hugoxue 在 09年12月08日 05:12 说:
hugoxue

请问用这个工具要实现直播该怎么做呢?

李华顺 在 09年12月09日 03:52 说:
李华顺

@hugoxue
直播我也不清楚

@johnnywww
我这边之前有用过移动TD的手机测试通过、另外2G网络在HTC G1、HTC HD上面测试通过,联通3G也是测试过的。

 

ganxiaojun 在 09年12月27日 23:54 说:
ganxiaojun

perl **.pl怎么用

ganxiaojun 在 09年12月27日 23:56 说:
ganxiaojun

perl **.pl是不是从C:/命令提示符打开?好像没用,请问该怎么用呢

你可能感兴趣的:(移动流媒体服务器)