锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / Darwin服务器 / Darwin连编模块
服务方向
软件开发
办公财务MIS
股票
设备监控
网页信息采集及控制
多媒体
软件开发培训
流媒体开发
Java 安卓移动开发
Java Web开发
HTML5培训
iOS培训
网站前端开发
VC++
C++游戏开发培训
C#软件
C语言(Linux)
ASP.NET网站开发(C#)
C#软件+ASP.NET网站
SOCKET网络通信开发
COMOLE和ActiveX开发
C++(Linux)
汇编和破解
驱动开发
SkinMagicVC++换肤
MicroStation二次开发
计算机英语翻译
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

连编模块


有两种方法将QTSS m模块添加到QuickTime流媒体服务器中,即将代码直接编译成服务器的一部分,或者编译为模块,作为一个分立的代码片断,在服务器启动的时候被装载。

无论是编译为服务器的一部分,或者编译为分立的模块,模块的代码都是一样的,唯一的区别是代码以何种方式进行编译。

这个部分包含如下主要内容:

将QTSS模块编译为服务器的一部分

将QTSS模块连编为代码片段

将QTSS模块编译为服务器的一部分

如果您有QuickTime流媒体服务器的源代码,就可以将自己的模块编译为服务器的一部分。

请注意:T服务器的源代码在下面的站点上可以得到:

http://www.publicsource.apple.com/projects/streaming

要将您的代码编译为服务器的一部分,需要在QTSServer.cpp文件中找到QTSServer::LoadCompiledInModules函数,并添加下面几行代码:

QTSSModule* myModule = new QTSSModule("__XYZ__");
(void)myModule->Initialize(&sCallbacks, &__XYZMAIN__);
(void)AddModule(myModule);

 

这里,XYZ i是指您的模块名称,XYZMAIN则是您的模块的主例程。

某些平台要求模块需要使用唯一的函数名。在将模块编译为服务器的一部分时,为了避免名字冲突,请将您的函数声明为静态函数(static)。

被编译为服务器一部分的模块成为静态模块。

将QTSS模块连编为代码片段

为使服务器在运行时装载连编为代码片段的QTSS模块,需要按照如下步骤进行:

  • 将源代码编译为目标平台的动态共享库。对于Mac OS X平台,其工程类型必须为可装载的程序包(loadable bundle)。
  • 将编译的结果文件和您目标平台的QTSS API stub库连接起来。
  • 将连接完成的结果文件放在/Library/QuickTimeStreaming/Modules目录(Mac OS X),/usr/local/sbin/StreamingServerModules(Darwin平台),以及c:\Program Files\Darwin StreamingServer\QTSSModules目录下。服务器将在下次启动的时候装载您编写的模块。

某些平台要求模块使用唯一的函数名。为了避免在您的模块被服务器装载的时候发生名字冲突,请在装载之前将符号从模块中剥离(strip)出来。

友情链接
版权所有 Copyright(c)2004-2015 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州市文化路47号院1号楼4层(47-1楼位于文化路和红专路十字路口东北角,郑州大学工学院招待所南边,工学院科技报告厅西边。)