Darwin Streaming Server用vs2005编译运行过程
原创。
一:编译
Darwin6.0.3版本是最新版本,也提供了.dsw文件。但是使用vs2005和vc6是编译不过的。
所以,采用Darwin5.5.5版本。使用vc6打开WinNTSupport文件夹下的.dsw工程,直接batch build,可一步生成。
使用vc编译速度快,但是调试和看代码不如2005方便。
下面主要是使用vs2005编译的问题。
转换vs2005的sln后,提示没有StreamingloadingTool这个工程,不用管,因为服务器不依赖于该工程。
(1) 提示:winsock2某些函数重定义。
方法:在所有#include <windows.h> 前面加上:
#define WIN32_LEAN_AND_MEAN //zl
#include <windows.h>
(2) 提示:
error C2039: 'timeGetTime' : is not a member of '`global namespace''
方法:包含头文件Mmsystem.h,并在工程设置中引入该Winmm.lib库就OK了
Requirements
Windows NT/2000: Requires Windows NT 3.1 or later.
Windows 95/98: Requires Windows 95 or later.
Header: Declared in Mmsystem.h.
Library: Use Winmm.lib.
注意:加在其他头文件前面,并且形式如下,三行都要加上:
#define WIN32_LEAN_AND_MEAN //zl
#include <windows.h> //zl
#include <Mmsystem.h> //add by zl
(3) error C2894: templates cannot be declared to have 'C' linkage
方法:QTSS.hOSHeader.hws2tcpip.hwspiapi.h
在QTSS.h中,使用了extern "C" 来包含头文件,结果造成这个错误。template只在c++中存在。 解决方法是注释掉QTSS.h 中的extern "C" { 和 }
(4) 在StreamingServer工程中,QTSSRTSPProtocol.h中也有extern "c" {…OSHeader.h…},同样去掉extern部分
==========================================
二:运行
在使用vs2005编译完Debug版本之后,生成如下
读ReadMe-MakeInstall.txt,了解安装方法。现总结如下:
(1) 编辑makeZip.bat,使他copy Debug下的可执行文件,而不是Release下的。
(2) 双击运行makezip.bat,会在当前文件夹下生成
主要是下面那个有用。
它里面有exe,dll,还有从安装包其他目录拷过来的媒体文件。
(3) 将DarwinStreamingServer文件夹打包。
安装包生成完毕。
运行方法:
打开DarwinStreamingServer文件夹,双击Install.bat,即自动将程序拷贝至C:/Program Files/Darwin Streaming Server/...下,并生成Movies目录,放置媒体文件。具体过程想了解的话可看Install.bat内容。
命令行窗口打开C:/Program Files/Darwin Streaming Server/ 执行:
#DarwinStreamingServer -d 即启动服务器。
使用流媒体播放器输入 rtsp://localhost:554/Sample_100kbit.mov 可看视频。
============================================
Debug方法,生成的Debug版本的DarwinStreamingServer文件夹之后,双击安装Install.bat,自动安装到C盘。直接点debug就可以了。注意媒体文件放在C盘安装目录下,不要放在源代码的DarwinStreamingServer文件夹下。程序读取的是c盘那个指定文件夹下的东西。
======================================
#Darwinstreamingserver 选项参数在文档中没有。可以从程序中看有哪些选项。同时也可以 -v 命令看有哪些选项。
编译的时候哪里设置了可以显示每个RTP包的信息,不知道在哪,忘了。 是printfpacket之类的函数作用。
Darwin Streaming Server用vs2005编译运行过程的更多相关文章
- Linux编译安装Darwin Streaming Server 6.0.3。。。
目前主流的流媒体服务器有微软的windows media server.RealNetworks的Helixserver和苹果公司的Darwin Streaming Server. 微软的window ...
- Linux编译安装Darwin Streaming Server 6.0.3
买回来VPS后就一直想在上面搭建一个流媒体服务,在网上搜索了很多资料,大部分都是介绍Linux中安装Darwin Streaming Server 5.5.5版本,因为这个版本提供了针对linux的安 ...
- Darwin Streaming Server编译
EasyDarwin是我们在Darwin Streaming Server的基础上进行开发和扩展的,Windows/Linux编译,包括64位编译补丁,我们都进行了整理和测试,后续还会不断进行迭代和扩 ...
- Darwin Streaming Server 简介
Darwin Streaming Server 概要 Darwin Streaming Server简称DSS.DSS是Apple公司提供的开源实时流媒体播放服务器程序.整个程序使用C++编写 ...
- Darwin Streaming server 的 Task 类
Darwin Streaming Server 是一个开放源代码的streaming server,对于streaming server的编程和软件结构有着一定的参考价值,它是使用C++写的,其中的并 ...
- Darwin Streaming Server for Windows 安装
最近搞流媒体相关的项目,于是打算在局域网搭建一个流媒体服务器.本以为很快搞定的,但是,在安装过程中还是折腾了一番. 现把安装流程记下来: 一.下载 Darwin Streaming Server fo ...
- Darwin Streaming Server 核心代码分析
基本概念 首先,我针对的代码是Darwin Streaming Server 6.0.3未经任何改动的版本. Darwin Streaming Server从设计模式上看,采用了Reactor的并发服 ...
- Darwin Streaming Server Relay Setting
安装完Darwin Streaming Server,就可以使用VLC通过RTSP协议播放流媒体文件了.但是我现在有一个需求,需要将一台DSS(假设为A机)上的媒体文件发送到另一台DSS(假设为B机) ...
- Darwin Streaming Server 安裝操作備忘
Darwin Streaming Server 安裝操作 Darwin Streaming Server是蘋果公司推出的開放源碼.跨平台多媒體串流伺服器, 提供音樂 (mp3) 與影音 (3gp.mp ...
随机推荐
- oracle 字符集导入、导出 、转换
导入导出及转换 导入导出是我们常用的一个数据迁移及转化工具,因其导出文件具有平台无关性,所以在跨平台迁移中,最为常用. 在导出操作时,非常重要的是客户端的字符集设置,也就是客户端的NLS_LANG设置 ...
- Sqlitekit 封装管理
最近需要用到Sqlite数据库来做一个游戏的数据存储.网上搜了一下,两种方法,一种是自己dll搭建环境有可能还需要编译之类的,我自己是搭建出来了,不过我没采用. 还有一种就是使用sqlitekit插件 ...
- DevOps 和技术债务偿还自动化
当企业想要迁移到一个 DevOps 模型时,经常需要偿还高等级的技术债务 说得更明确一点,机构往往陷入「技术债务的恶性循环」中,以至于任何迅速.敏捷的迁移方式都无法使用.这是技术债务中的希腊债务危机水 ...
- java基础知识回顾之---java String final类普通方法
辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /* * 按照面向对象的思想对字符串进行功能分类. * ...
- [转]ASP.NET Session 详解
来源:http://www.webshu.net/jiaocheng/programme/ASPNET/200606/1381.html 阅读本文章之前的准备 阅读本文章前,需要读者对以下知识有所了解 ...
- WPF / Win Form:多线程去修改或访问UI线程数据的方法( winform 跨线程访问UI控件 )
WPF:谈谈各种多线程去修改或访问UI线程数据的方法http://www.cnblogs.com/mgen/archive/2012/03/10/2389509.html 子线程非法访问UI线程的数据 ...
- TopCoder SRM 633div1
250pts PeriodicJumping 题意:从起点开始,每次按找数组jump给定的长度,即jump[0], jump[1], jump[2].....jump[n-1], 向各个方向跳,跳 ...
- Excel多条件筛选求和
单位A 代码B 面积(㎡)C A组 011 124 A组 123 15 A组 011 356 A组 123 44 B组 123 31 B组 011 2 B组 123 2 按照单位和代码求面积的和,可以 ...
- ActiveMQ集群(2)
ActiveMQ具有强大和灵活的集群功能,但在使用的过程中会发现很多的缺点,ActiveMQ的集群方式主要有两种:Master-Slave和Broker Cluster. 1.Master-Slave ...
- cas单点登出
由于项目需求要实现单点登出需要在网上找了N久终于实现单点登出. 使用cas-server-core-3.3.3.jar(CAS Server 3.3.3) 使用cas-client-core-3.1. ...