`
阅读更多
最近由于公司做的一个Android项目,需要上传视频到服务器,实现上下传以及播放,涉及到视频的手机终端播放流媒体视频,所以本人搭配了一个达尔文流媒体服务器,本文还参考了:
百度文库:http://wenku.baidu.com/view/eca0cd5c3b3567ec102d8aef.html,以及网址http://www.devdiv.com/home.php?mod=space&uid=74824&do=blog&id=3491,
http://www.cnblogs.com/zhangweia/archive/2010/08/27/1810030.html

A。首先安装 DDS,即达尔文流媒体服务器:

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下面做如下操作:
o# 根据提示创建 WebAdmin 的账号和密码
oC:\Program Files\Darwin Streaming Server>perl WinPasswdAssistant.pl
o# 运行 WebAdmin 管理器
oC:\Program Files\Darwin Streaming Server>perl streamingadminserver.pl
o# 现在可以打开 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:80/sample_100kbit.mp4 来测试视频了,(注 sample_100kbit.mp4 是 DSS 5.5.5 自带的视频)

B。将自己的视频转换为流媒体格式
一开始,我安装了流媒体之后,弄了很久,发现播放DDS自带的测试视频可以播放正常,但是发现只要是自己用手机拍摄的视频放到流媒体服务器上,即使是同样的后缀格式(如同是.3gp,.mp4)都播放不了,这可急了我了,网上查了很多,都没找到相关的解释,后来想想是不是视频的编码不相同,后来使用了视频编码查看器来对比了下,发现也没什么不同,最后找到了上面第三个参考网址里有解释是因为流媒体服务器只识别包含RTSP信息头的视频,需要在视频的头部加入了RTSP信息之后才可以被DSS识别,所以要使用工具把自己的视频转化为带
RTSP信息头的视频格式;下面使用mp4box.exe来转化

下载到到解压出后会有个叫 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

然后,再用KMPlayer.exe 打开 rtsp://127.0.0.1:80/test.mp4 播放!用智能手机,可以直接用手机打开这个地址试一下。

在java代码中可以直接使用代码调用mp4box.exe来转化,需要把 mp4box.ex相关工具文件直接放到流媒体服务器中的视频目录下,相关转化代码如下:

/**
* 转化为RTSP格式的视频
*
* @param fileName
*/
public void changeToRtsp(String fileName) {
Runtime rn = Runtime.getRuntime();
Process p = null;
try {
p = rn.exec("D:\\tomcat\\webapps\\vmadmin\\vedios\\MP4box.exe D:\\tomcat\\webapps\\vmadmin\\vedios\\" + fileName + " -hint");
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(p.getInputStream()));
String str;
while ((str = bufferedReader.readLine()) != null)
System.out.println(str);
int result = p.waitFor();
System.out.println("thread run result ------------------ : "
+ result);

} catch (Exception e) {
System.out.println("Error   exec   notepad ");
}
finally{
p.destroy();
}
}


其中fileName即为流媒体服务器视频目录中的文件名称,转化后就可以使用手机终端调用系统视频播放器输入:rtsp://127.0.0.1:80/****.mp4类似地址来播放了。

分享到:
评论

相关推荐

    达尔文媒体流服务器

    达尔文媒体流服务器是一款专为视频监控软件设计的平台,它采用了RTPS(Real-Time Publish-Subscribe)协议来高效、稳定地传输媒体流数据。RTPS协议是基于实时发布订阅模型的,旨在满足低延迟、高可靠性的多媒体数据...

    DarwinStreamingSource6.0.3-and-2patch在Ubuntu16.04上安装达尔文流媒体服务器,需要两个补丁文件

    DarwinStreamingSource6.0.3-and-2patch在Ubuntu16.04上安装达尔文流媒体服务器,需要两个补丁文件dss-6.0.3.patch和dss-hh-20081021-1.patch,另外,需要修改DarwinStreamingSrvr6.0.3-Source/Makefile.POSIX中第9...

    DDS(达尔文流媒体)源代码及其注释

    DDS(达尔文流媒体服务器)是苹果公司推出的一款开源流媒体服务器软件,它基于Darwin操作系统,可以在Linux平台上运行。这个源代码包包含了DDS的核心组件和相关文档,对于想要了解和学习流媒体服务原理以及系统架构...

    达尔文视频服务器的的源代码6.0.3_VC6.0可以编译

    达尔文视频服务器(Darwin Streaming Server,DSS)是一款开源的流媒体服务器,广泛应用于网络视频传输领域。它基于Apple的QuickTime Streaming Server技术,支持HTTP、RTSP、RTP等多种协议,能够提供实时的音频和...

    DarwinStreamingSrvr5.5.5-Source

    **达尔文流媒体服务器(Darwin Streaming Server, DSS)**是苹果公司开源的一款高效、可靠的流媒体服务软件,主要用于实时和点播的音频与视频内容传输。DSS基于RealNetworks的Helix DNA Server,支持多种流媒体协议,...

    perl(windows环境)

    描述中提到的“达尔文流媒体服务器”可能依赖于Perl来执行某些后台任务或配置工作,这表明Perl是这个特定应用的重要组成部分。"strawberry-perl-5.16.3.1-32bit.msi"是一个Windows MSI(Microsoft Installer)文件,...

    达尔文进化论PPT

    达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论达尔文进化论

    ffmpeg编写的拉流转推工具.txt

    1.使用ffmpeg编写。 2.输入支持本地视频和网络rtsp/rtmp视频。 3.输出支持rtsp/rtmp视频,在配置里配置。 4.支持解码后输出opencv...8.源码为c++,流媒体服务器使用达尔文流媒体。 9.资源如有问题或有疑惑请联系我。

    darwin 服务器tcp demo

    在这个"darwin服务器tcp demo"中,我们将探讨如何在达尔文系统上实现基于TCP的服务器端应用程序。 首先,TCP是一种面向连接的协议,它在两台通信设备之间建立连接后才进行数据交换。TCP提供了诸如顺序传输、错误...

    2021-2022年收藏的精品资料作文素材达尔文的父亲.docx

    【达尔文的父亲与家庭教育的重要性】 在达尔文的成长历程中,其父亲扮演了至关重要的角色。这位著名生物学家的启蒙,并非始于学院,而是源于家庭。母亲早逝后,父亲成为了达尔文生活中的主要引导者。从达尔文七岁...

    达尔文压力测试.rar

    近期做RTSP音频推拉流的功能,自己做了一个压力测试软件,可以独立MP3文件建立通道推流及指定URL指定数量下载音频流(未做播放解码),用于流媒体服务Darwin 和easydarwin 的服务性能压力测试

    Darwin streaming server

    流服务器负责数据传输,流管理器处理流的创建、修改和删除,媒体处理模块负责媒体文件的解析和编码,客户端接口则处理与播放器的交互。 - **流的生命周期**: 包括创建流、接收流数据、处理数据、发送流到客户端、...

    达尔文darwin镜像文件

    "达尔文Darwin镜像文件"是一个与操作系统相关的主题,主要指的是苹果公司的开源操作系统项目,它是Mac OS X和macOS的基础。Darwin这个名字源于Charles Darwin,他是进化论的提出者,这里的命名象征着操作系统的持续...

    浙大年轻人研发出“达尔文”类脑芯片.pdf

    浙大年轻人研发出“达尔文”类脑芯片.pdf

    EasyDarwin Darwin

    EasyDarwin是一款开源的实时流媒体服务器系统,它基于标准的MPEG-DASH和RTSP/RTMP协议,旨在为开发者和企业提供高效、稳定且可扩展的视频流处理解决方案。这个开源项目是基于Darwin Streaming Server(DSS)进行开发...

    初中语文文摘历史达尔文的气度

    1. 生物学家查尔斯·达尔文:达尔文是英国的著名生物学家,对生物学有着深厚的兴趣。他在19世纪中期提出了生物进化的理论,为现代生物学奠定了基础。 2. 《物种起源》:达尔文在1859年出版的《物种起源》是他的代表...

    苏教小学科学六年级下册达尔文和他的进化论PPT学习教案.pptx

    《达尔文和他的进化论》是苏教版小学科学六年级下册的重要教学内容,主要讲述了查尔斯·达尔文提出的生物进化理论。这个理论的核心概念是自然选择,它解释了生物如何随着时间的推移逐渐演化和发展。 达尔文认为,...

    OA2010传真组件(达尔文)

    此外,可能涉及到的配置包括设置传真服务器、连接数据库以及进行必要的权限设定,这些都会在安装手册中有详尽的指导。 操作手册.doc则涵盖了组件的使用方法和功能特性。用户可以通过这份文档学习如何创建和管理传真...

Global site tag (gtag.js) - Google Analytics