原创。

一:编译

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.hOSHeader.hws2tcpip.hwspiapi.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编译运行过程的更多相关文章

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

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

  2. Linux编译安装Darwin Streaming Server 6.0.3

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

  3. Darwin Streaming Server编译

    EasyDarwin是我们在Darwin Streaming Server的基础上进行开发和扩展的,Windows/Linux编译,包括64位编译补丁,我们都进行了整理和测试,后续还会不断进行迭代和扩 ...

  4. Darwin Streaming Server 简介

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

  5. Darwin Streaming server 的 Task 类

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

  6. Darwin Streaming Server for Windows 安装

    最近搞流媒体相关的项目,于是打算在局域网搭建一个流媒体服务器.本以为很快搞定的,但是,在安装过程中还是折腾了一番. 现把安装流程记下来: 一.下载 Darwin Streaming Server fo ...

  7. Darwin Streaming Server 核心代码分析

    基本概念 首先,我针对的代码是Darwin Streaming Server 6.0.3未经任何改动的版本. Darwin Streaming Server从设计模式上看,采用了Reactor的并发服 ...

  8. Darwin Streaming Server Relay Setting

    安装完Darwin Streaming Server,就可以使用VLC通过RTSP协议播放流媒体文件了.但是我现在有一个需求,需要将一台DSS(假设为A机)上的媒体文件发送到另一台DSS(假设为B机) ...

  9. Darwin Streaming Server 安裝操作備忘

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

随机推荐

  1. 几款实用的 JavaScript 图形图表库

    一款好的图表插件不是那么容易找到的.最近项目里需要实现统计图表功能,所以在网上搜罗了一圈,找到一些不错的图表插件,分享大家.众多周知,图形和图表要比文本更具表现力和说服力.这里给大家精心推荐几款实用的 ...

  2. SQLite 学习流水账笔记

    1.SQLite随机取n行数据,可加自己的条件 SELECT * FROM TableName WHERE key ? ORDER BY RANDOM() LIMIT ,Num; 2.sql语句中查询 ...

  3. 利用Qemu Guest Agent (Qemu-ga) 实现 Openstack 监控平台

    经常使用vmWare的同学都知道有vmware-tools这个工具,这个安装在vm内部的工具,可以实现宿主机与虚拟机的通讯,大大增强了虚拟机的性能与功能, 如vmware现在的Unity mode下可 ...

  4. DevOps 和技术债务偿还自动化

    当企业想要迁移到一个 DevOps 模型时,经常需要偿还高等级的技术债务 说得更明确一点,机构往往陷入「技术债务的恶性循环」中,以至于任何迅速.敏捷的迁移方式都无法使用.这是技术债务中的希腊债务危机水 ...

  5. POJ 1922 Ride to School(贪心+模拟)

    题意:起点与终点相隔4500米.现Charley 需要从起点骑车到终点.但是,他有个习惯,沿途需要有人陪伴,即以相同的速度, 与另外一个人一起骑.而当他遇到以更快的速度骑车的人时,他会以相应的速度跟上 ...

  6. Sublime Text 3 搭建 React.js 开发环境

    sublime有很强的自定义功能,插件库很庞大,针对新语言插件更新很快,配合使用可以快速搭建适配语言的开发环境. 1. babel 支持ES6, React.js, jsx代码高亮,对 JavaScr ...

  7. Java Socket 使用BufferedWriter和BufferedReader要注意readLine 以及换行标志的发送

    当接收的类使用的是BufferedReader,发送的类是BufferedWriter的时候,要注意发送的一行要有换行标识符. 请看下面一个例子,服务器接收不到客户端的信息. 服务器: import ...

  8. MySQL 卸载 --Mac

    pkill mysql sudo rm /usr/local/mysql sudo rm -rf /usr/local/mysql* sudo rm -rf /Library/StartupItems ...

  9. mysql23个知识点

    1.它是一种解释语言:写一句执行一句,不需要整体编译执行. 2.1.没有“ ”,字符串使用‘ '包含 3.一个表只有一个主键,但是一个主键可以是由多个字段组成的 组合键 4.实体完整性:实体就是指一条 ...

  10. Hibernate逍遥游记-第13章 映射实体关联关系-003单向多对多

    0. 1. drop database if exists SAMPLEDB; create database SAMPLEDB; use SAMPLEDB; create table MONKEYS ...