anyChat怎么修改服务器端口号怎么设置

查看: 32888|回复: 142
AnyChat使用攻略之独立部署Windows视频服务器
主题帖子积分
1、首先下载AnyChat for Windows SDK();
2、解压缩下载的SDK包,如下图所示:
sdk package.jpg (21.26 KB, 下载次数: 52)
20:44 上传
3、进入【bin\server】目录,用记事本打开配置文件:AnyChatCoreServer.ini
anychatcoreserver_ini.jpg (64.92 KB, 下载次数: 45)
20:48 上传
4、修改参数配置:
& & a)若有授权证书,请将[Base Settings]下面的“DemoMode=1”修改为“DemoMode=0”,如下图所示:
anychat demomode.jpg (17.48 KB, 下载次数: 49)
20:51 上传
可直接将授权证书拷贝到核心服务器(AnyChatCoreServer.exe)所在目录下即可,若没有授权证书,则不需要修改该项配置,服务器将工作在评估模式下。
& & b)启用AnyChat Server SDK通信接口,将[Function Settings]下面的“SDKFilterPlus=”修改为“SDKFilterPlus=IPCFilterPlus.dll”,如下图所示:
ipcfilterplus.jpg (13.66 KB, 下载次数: 43)
20:54 上传
将修改后的配置文件保存并关闭,有关“AnyChat Server SDK”通信接口可参考FAQ:。
5、启动核心服务器。双击“run.bat”批处理文件:
run.jpg (59.49 KB, 下载次数: 49)
20:58 上传
将会出现DOS窗口,如下图所示,该窗口可被关闭,不影响服务器程序在后台的运行。
runresult.jpg (18.38 KB, 下载次数: 39)
21:00 上传
同时在计算机桌面的右下角托盘区域将出现核心服务器运行图标:
anychatcoreserver_run.jpg (26.98 KB, 下载次数: 42)
21:02 上传
核心服务器启动之后,将会在当前目录下产生日志文件:AnyChatCoreServer.log,可用记事本打开:
anychatcoreserver log.jpg (61.58 KB, 下载次数: 39)
21:15 上传
通过日志文件可判断核心服务器启动是否正常。
6、启动业务服务器;进入【bin\serversdk】目录,
anychat bussiness server.jpg (37.58 KB, 下载次数: 41)
21:05 上传
运行业务服务器“AnyChatBussinessServer(C++).exe”
anychat bussiness server run.jpg (28.08 KB, 下载次数: 43)
21:05 上传
业务服务器启动之后,将会显示提示信息:“与AnyChat服务器连接成功!”
7、用客户端连接服务器;运行【bin\demo】目录下的“BRAnyChatMeeting.exe”程序,在【登录】界面中点“设置”按钮,在“服务器”输入栏中输入正确的服务器IP地址,如下图所示:
anychat set serverip.jpg (31.11 KB, 下载次数: 42)
21:09 上传
按下登陆按钮,将连接到前面部署的核心服务器,同时在业务器界面上将会显示相关的业务流程提示信息,如下图所示:
anychat bussiness server work.jpg (38.6 KB, 下载次数: 39)
21:11 上传
主题帖子积分
如果按上面的流程部署,客户端通过IP地址无法连接到服务器,则可能存在的因素包括:
1、IP地址是否正确?客户端连接的IP地址是否为服务器的IP地址,如果服务器有多个IP地址(内网、外网)则可换一个IP地址再尝试;
2、服务器上是否有防火墙或是第三方的网络监控软件?可尝试关防火墙,或是第三方的网络监控软件关闭再尝试,如果确认是防火墙的因素导致的,可将核心服务器进程(AnyChatCoreServer.exe)或是端口号(注意有TCP、UDP两个端口)加入防火墙的允许名单中;
3、客户端计算机所在的网络被限制,可尝试更换一台客户端计算机再尝试;
主题帖子积分
注册会员, 积分 63, 距离下一级还需 137 积分
你好~我想请问下,服务器应该得开通哪些端口?
主题帖子积分
您好,主要有一个TCP端口,一个UDP端口,都可以在核心服务器的配置文件(AnyChatCoreServer.ini)中配置。
主题帖子积分
你好,这两个端口我都打开了,但是还是连接失败,请问下是什么情况?这是我的AnyChatCoreServer.ini里的设置
[Base Settings]
ServerID=1
TCPListenPort=8906
UDPServicePort=8907
SDKAuthPass=
DemoMode=1
ShowTrayIcon=1
[P2P Settings]
RoutingPolicy=2
RoutingTTL=3
RoutingMTN=4
[Video Settings]
VideoWidth=320
VideoHeight=240
VideoFPS=15
VideoGOPSize=30
VideoBitrate=90000
VideoCodec=1
VideoQuality=3
VideoPreset=3
[Audio Settings]
AudioSamplesPerSec=16000
AudioChannels=1
AudioBitsPerSample=16
AudioCodec=11
AudioBitrate=15850
[Function Settings]
CloseFrontLink=1
AutoAddRoom=1
AllowGuestLogin=1
SDKFilterPlus=IPCFilterPlus.dll
MaxUsersPerRoom=500
[Standby Server Settings]
SlaveMode=0
MasterServerIP=
MasterServerUDPPort=8907
主题帖子积分
然后我看到默认的“”打开的端口不是这两个端口~
主题帖子积分
您好,可参考这个FAQ: 最后面有网络测试工具,您可以使用该工具进行网络测试,希望对您有所帮助。
主题帖子积分
你说的这些,我都已经看过了~~也弄过了,都不行,我们公司这边有内网和外网,我通过访问内网的ip地址,就可以连接上服务器,但是我想让外网的人能访问该服务器,我的电脑有公有地址,但是我让其他人用外网无法访问该IP地址,这是为什么?
主题帖子积分
您好,您需要请网络管理员协助,在路由器上进行NAT映射,谢谢!
主题帖子积分
您好。NAT已经配置好了。端口也已经开放了~~一个是tcp:8906和udp:8907,但是还是无法通过外网的IP地址来访问该服务器。还能有啥解决办法吗?谢谢
Powered by2344人阅读
AnyChatCoreSDK是一个很好用的视频会议SDK,用它可以很快的开发出一个视频应用。
关于AnyChatCoreSDK的介绍可以访问主页。
本程序是用V4.2版本开发。
由于此SDK是基于服务器客户端分别开发的,一般是在客户端与客户端进行通信,服务器不能作为一个发送视频数据者。
所以本文主要开发服务器端的SDKFilterPlus,在服务端加入一个微客户端用于悄悄发送视频音频数据到控制端。
服务器端操作:
打开bin\server目录中的run.bat启动。
客户端操作:
打开bin中的jk.exe
依次点击初始化-&登录-&进入房间
在发送按钮左边的输入框中输入命令对微客户端进行控制。
&start为启动微客户端 stop为关闭
ola为监控微客户端音频 cla为关闭
olv为监控微客户端视频 clv为关闭
源码下载:
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:25811次
排名:千里之外
(4)(1)(8)(3)AnyChat SDK视频质量主要是通过服务器的&AnyChatCoreServer.ini&配置文件来控制,该配置是整个系统所有房间的默认配置,早期的版本无法实现由上层应用来控制不同的用户采用不同的视频质量参数,自&AnyChat Platform Core SDK V2.8&版本开始,AnyChat便提供了本地视频质量控制接口,可以由上层应用控制本地视频的编码质量,为某些特定的应用提供了基础,例如:可以实现主持人发言时采用高质量的视频参数,而普通用户采集一般的视频参数,从而达到发言者的视频效果优于普通用户的特定效果。(如果采集的视频信号有&横条&干扰,可参考:)
AnyChat SDK的本地视频质量控制接口可以调节的参数包括&视频采集分辩率&、&视频帧率&、&视频码率&、&视频质量&、&关键帧间隔&以及&预设参数&的控制,参数定义如下:
///& 本地视频编码码率设置(参数为int型,同服务器配置:VideoBitrate)
#define BRAC_SO_LOCALVIDEO_BITRATECTRL
///& 本地视频编码质量因子控制(参数为int型,同服务器配置:VideoQuality)
#define BRAC_SO_LOCALVIDEO_QUALITYCTRL
///& 本地视频编码关键帧间隔控制(参数为int型,同服务器配置:VideoGOPSize)
#define BRAC_SO_LOCALVIDEO_GOPCTRL
///& 本地视频编码帧率控制(参数为int型,同服务器配置:VideoFps)
#define BRAC_SO_LOCALVIDEO_FPSCTRL
///& 本地视频编码预设参数控制(参数为int型,1-5)
#define BRAC_SO_LOCALVIDEO_PRESETCTRL
///& 本地视频采集分辨率宽度控制(参数为int型,同服务器配置:VideoWidth)
#define BRAC_SO_LOCALVIDEO_WIDTHCTRL
///& 本地视频采集分辨率高度控制(参数为int型,同服务器配置:VideoHeight)
#define BRAC_SO_LOCALVIDEO_HEIGHTCTRL
其中视频质量控制有两种模式&平均码率模式&(默认设置)和&质量因子模式&,当设置的码率大于0时,启动&平均码率模式&,当设置的码率为0时,启动&质量因子模式&。
典型的设置&平均码率模式&参数代码如下:
DWORD dwValue = 0;
// 设置本地视频采集的宽度
dwValue = 320;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_WIDTHCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频采集的高度
dwValue = 240;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_HEIGHTCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的码率
dwValue = 60 * 1000; // 60 kbps
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_BITRATECTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的关键帧间隔
dwValue = 20;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_GOPCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的帧率
dwValue = 8;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_FPSCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的预设参数
dwValue = 3;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_PRESETCTRL,(const char*)&dwValue,sizeof(DWORD));
// 使参数设置生效
BOOL bUseAppParam = TRUE;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_APPLYPARAM,(const char*)&bUseAppParam,sizeof(DWORD));
典型的设置&质量因子模式&参数代码如下:
DWORD dwValue = 0;
// 设置本地视频采集的宽度
dwValue = 320;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_WIDTHCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频采集的高度
dwValue = 240;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_HEIGHTCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的码率
dwValue = 0;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_BITRATECTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的质量因子
dwValue = 4;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_QUALITYCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的关键帧间隔
dwValue = 20;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_GOPCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的帧率
dwValue = 8;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_FPSCTRL,(const char*)&dwValue,sizeof(DWORD));
// 设置本地视频编码的预设参数
dwValue = 3;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_PRESETCTRL,(const char*)&dwValue,sizeof(DWORD));
// 使参数设置生效
BOOL bUseAppParam = TRUE;
BRAC_SetSDKOption(BRAC_SO_LOCALVIDEO_APPLYPARAM,(const char*)&bUseAppParam,sizeof(DWORD));
当启动&平均码率模式&时,质量因子的参数设置仍然有效,只是系统会限制输出的最高码率。另外要使设置的参数生效,需要调用&BRAC_SetSDKOption&接口并使用&BRAC_SO_LOCALVIDEO_APPLYPARAM&标志启用所设置的参数,同时也可利用该标志恢复服务器配置的默认视频质量参数。
关于视频帧率与关键帧间隔的参数设置可参考如下原则:
1、帧率越高,视频越流畅(最大值为25fps),同时帧率也会对码率和CPU资源占用产生一定的影响,通常的建议是互联网应用(8-12fps),局域网应用(18-25fps);
2、关键帧间隔是指在编码的过程中,两个关键帧之间非关键帧的数量,值越大,码率越小,但会降低视频的质量,值越小,码率越大,视频质量较好,但不宜过小,通常的建议是互联网应用(帧率的3、4倍),局域网应用(等于帧率),不要小于帧率;
关于本地视频编码的预设参数:BRAC_SO_LOCALVIDEO_PRESETCTRL,其取值范围为1-5,主要用来控制CPU资源占用率和画面细节,值越小,编码时的CPU占用率越低,但会损失对画面细节的处理;值越大,编码时的CPU占用率越高,但对画面细节的处理会更细腻,该参数主要针对高码率有效,低码率时由于码率的限制,视频画面细节无法表现出来,所以低码率模式下,可以将该参数调节低一些,以降低CPU的利用率。
关于本地视频编码的码率参数:BRAC_SO_LOCALVIDEO_BITRATECTRL,单位为bps,码率越小,视频质量越差;码率越高,视频质量越好,同时该参数还与视频画面的分辩率有关,不同的分辨率有不同的取值范围,如在互联网应用状态下,分辩率是176x144典型的取值范围是(10kbps ~ 60kbps),分辨率是320x240典型的取值范围是50kbps ~ 120kbps,如果是局域网应用,则码率可适当提高。
关于本地视频编码的质量因子参数:BRAC_SO_LOCALVIDEO_QUALITYCTRL,取值范围为1-6,值越小,画面质量越低,输出码率也越低,值越大,画面质量越高,输出码率也越高。
关于&平均码率模式&和&质量因子模式&两种视频质量控制模式的区别和应用,可参考如下原则:
1、&平均码率模式&:视频编码时以输出码率为优先考虑条件,当画面静止时,输出的码率较低,动态画面码率会较高,瞬时码率可能会超过设置的参数(最高不会超过10%),但是其输出的视频数据平均码率将会维持在设置的参数附近,当画面运动量过大时,编码器为了维持平均码率,将会损失画面的质量,通常互联网应用可采用该模式;
2、&质量因子模式&:当码率参数设置为0时,该模式生效,视频编码时以视频质量为优先考虑条件,静止的画面和动态画面将会用不同的量化因子进行编码,维持在一个固定的画面质量下,当画面静止时,码率较低,当画面运动时,码率较高,通常局域网应用可采用该模式。由于该模式下没有限制码率,所以大运动量画面时,为了保持固定的画面质量,码率的变化将会比较大,所以该模式不适合于互联网应用。
3、如果希望在互联网的环境下获得较高质量的视频效果(在网络带宽许可的情况下),建议采用&平均码率模式&,只是可以适当提高视频质量参数(VideoQuality)的值,视频码率参数根据需要进行设置。低码率,配置较低的视频质量,高码率就需要配置较高的视频质量。
注:&AnyChat Platform Core SDK& V4.0版本开始支持每个用户单独设置视频采集分辩率,当上层应用程序没有设置视频采集分辨率以及视频质量控制相关参数时,客户端将采用服务器默认配置参数。音视频(9)
音视频录制是音视频解决方案中最重要的功能特性之一,特别是一些行业应用中音视频录制是最基本的功能需求,AnyChat作为业界一流的跨平台音视频解决方案,在音视频录制方面也提供了非常完善的整体解决方案。
1. AnyChat音视频录制整体解决方案
<span style="color:#.&&&&&可针对单个用户的音频、视频进行录制;
<span style="color:#.&&&&&可针对通话双方的音频、视频合成录制,支持画中画、并列模式等多种合成方式;
<span style="color:#.&&&&&可以自定义录制参数,包括录制码率、视频分辩率等;
<span style="color:#.&&&&&录制的视频&#26684;式可自定义,支持MP4(默认)、WMV、FLV、MP3等;
<span style="color:#.&&&&&可以在客户端录制,也可以在中心服务器录制;
<span style="color:#.&&&&&可以在客户端进行音视频合成,中心服务器对合成音视频流录制,录像服务器支持高并发;
<span style="color:#.&&&&&客户端录制支持的平台包括:Windows、Web、Android、iOS、Linux;
<span style="color:#.&&&&&服务器录制支持的平台包括:Windows、Linux(x86、x64);
<span style="color:#.&&&&&提供客户端录制API、服务器录制API接口,与上层业务无缝集成;
<span style="color:#.1 API接口定义
AnyChat在客户端提供的录制API接口与回调事件为:
// 用户音、视频录制(扩展)
BRAC_API DWORD BRAC_StreamRecordCtrlEx(DWORD dwUserId,BOOL bStartRecord, DWORD dwFlags, DWORD dwParam, LPCTSTR lpUserStr);
// 录像、快照任务完成扩展回调函数定义
typedef void (CALLBACK * BRAC_RecordSnapShotEx_CallBack)(DWORDdwUserId, LPCTSTR lpFileName, DWORD dwElapse, DWORD dwFlags, DWORD dwParam,LPCTSTR lpUserStr, LPVOID lpUserValue);
AnyChat在服务器端提供的录制API接口与回调事件为:
// 中心端录像控制(扩展)
BRAS_API DWORD BRAS_StreamRecordCtrlEx(DWORD dwUserId,BOOL bStartRecord, DWORD dwFlags, DWORD dwParam, LPCTSTR lpUserStr=NULL, DWORDdwRecordServerId=-1);
// 服务器录像回调函数定义(扩展)
typedef void (CALLBACK *BRAS_OnServerRecordEx_CallBack)(DWORD dwUserId, LPCTSTR lpFileName, DWORDdwElapse, DWORD dwFlags, DWORD dwParam, LPCTSTR lpUserStr, DWORDdwRecordServerId, LPVOID lpUserValue);
<span style="color:#.2 录制API调用
API第一个参数表示录制对象,指录制某一个用户的音视频,对于合成录制,只需要通过第三个参数(dwFlags)加入特定的标志即可实现。
开始录制以及停止录制均调用同一个API接口(如客户端为:BRAC_StreamRecordCtrlEx),通过第二个参数(bStartRecord)来控制,当bStartRecord=TRUE(<span style="color:#)时,表示开始录制,当bStartRecord=FALSE(<span style="color:#)时,表示停止录制。
当调用API开始录制时,相当于下达了一个录制任务,AnyChat内核将开始录制,可以在客户端调用API(BRAC_QueryUserState)来查询录制状态;通过第三个参数(dwFlags)可控制录制行为:是在客户端录制,还是在服务器录制;是录制音频,还是音视频一同录制;是录制单个用户,还是通话双方合成录制等,具体应用可参考后续的“录制功能示例”部分。
当调用API停止录制时,AnyChat内核会结束录制任务,同时触发上层应用的回调事件(如客户端为:BRACRecordSnapShotExCallBack),在回调事件中,将录制文件名(含路径)、录制时长、用户自定义参数等信息返回给上层应用。
AnyChat内核提供了两个自定义参数,一个是整形(dwParam),一个是字符串类型(lpUserStr),在开始录制(或结束录制)时通过API接口传入,如果开始录制、结束录制均为传入,则以结束录制时的&#20540;为准,在录制完成回调事件中返回给上层应用,如可以通过字符串类型自定义参数来传输一个上层应用的业务流水号,则可以实现在回调事件中将录制的文件名与业务流水号进行关联,保存在数据库中等功能。
<span style="color:#.3 录制功能示例
下面以JavaScript脚本为例,针对常用的录制功能给出示例代码:
<span style="color:#.客户端对单个用户的音频、视频进行录制,录制为MP4&#26684;式:
BRAC_SetSDKOption(BRAC_SO_RECORD_FILETYPE, 0);//录制为MP4&#26684;式
var dwFlags = ANYCHAT_RECORD_FLAGS_VIDEO &#43;ANYCHAT_RECORD_FLAGS_AUDIO;
BRAC_StreamRecordCtrlEx(userid, 1,& dwFlags, 0, &Hello, world!&);
<span style="color:#.客户端对单个用户的音频进行录制,录制为MP3&#26684;式:
BRAC_SetSDKOption(BRAC_SO_RECORD_FILETYPE, 3);//录制为MP3&#26684;式
var dwFlags = ANYCHAT_RECORD_FLAGS_AUDIO;
BRAC_StreamRecordCtrlEx(userid, 1,& dwFlags, 0, &Hello, world!&);
<span style="color:#.客户端对通话双方的音频、视频进行录制,录制为MP4&#26684;式,画中画模式:
BRAC_SetSDKOption(BRAC_SO_RECORD_FILETYPE, 0);//录制为MP4&#26684;式
var dwFlags = ANYCHAT_RECORD_FLAGS_VIDEO &#43;ANYCHAT_RECORD_FLAGS_AUDIO &#43; ANYCHAT_RECORD_FLAGS_MIXVIDEO &#43;ANYCHAT_RECORD_FLAGS_MIXAUDIO;
BRAC_StreamRecordCtrlEx(userid, 1,& dwFlags, 0, &Hello, world!&);
<span style="color:#.4 其它说明
<span style="color:#.&&&&&客户端可以通过API:BRACSetSDKOption(BRACSORECORDTMPDIR,
path)来设置录像文件保存路径;
<span style="color:#.&&&&&客户端可以通过API:BRACSetSDKOption(BRACSORECORDVIDEOBR,
bitrate)来设置录制视频的质量,调节录制视频的清晰度;
<span style="color:#.&&&&&有关录像文件改名:录制完成之后,AnyChat将触发上层应用的录制完成回调事件,在回调事件中返回录制文件名(含路径),上层应用可以在回调事件中调用操作系统提供的文件改名函数(如Windows平台为:MoveFile函数)对文件进行改名操作,AnyChat内核本身没有提供对录制文件名进行修改的接口;
<span style="color:#.&&&&&有关录制完成回调事件中“lpUserStr”的&#20540;,如果结束录制时,调用API:BRAC_StreamRecordCtrlEx有传入lpUserStr的&#20540;,则回调以结束录制时传入&#20540;为准,否则以开始录制时传入&#20540;为准。
2. AnyChat独立部署Windows中心录像服务器
AnyChat for Windows SDK自V4.8版本开始支持中心服务器录像(,位于SDK包bin\recordserver目录下,AnyChat
for Android SDK所需要的与这个一样),之前的版本只能在客户端录像,新版本支持在服务器端录像,集中保存,录像任务可由客户端发起,也可由业务服务器发起,录像完成之后,将录像文件名反馈给业务服务器,业务服务器可保存到数据库中便于集中维护。录像保存路径可设置。
下面一步一步介绍如何部署中心录像服务器,以及让中心录像服务器正常工作的注意事项:
一、下载AnyChat forWindows SDK包(要求V4.8及以上版本),解压缩,部署核心服务器和业务服务器(参考:AnyChat独立部署Windows视频服务器),让客户端能与核心服务器,以及核心服务器与业务服务器之间能正常的工作。
启动核心服务器之后,查看核心服务器的日志文件(AnyChatCoreServer.log),显示内容如下:
[ 18:28:28(479)]&&&&&&& ---------------------InitService--------------------------
[ 18:28:28(488)]&&&&&&& Current File Version[4, 8, 0, 0],Buildtime: 13:52:21
[ 18:28:28(586)]&&&&&&& Start TCP Server Successed(port=8906)!
[ 18:28:28(604)]&&&&&&& Start UDP Server Successed(port=8907)!
[ 18:28:28(742)]&&&&&&& Authorized certification success!
二、进入SDK包的bin\recordserver目录,里面包含如下图所示的文件:
其中“AnyChatRecordServer.exe”是主程序,注意,该主程序不能直接运行,可以通过如下两种方式来运行:
<span style="color:#.&&&&&运行run.bat来启动中心录像服务器;
<span style="color:#.&&&&&运行install.bat来安装为Windows服务,在“服务”中启动;
三、中心录像服务器参数配置。打开AnyChatRecordServer.ini配置文件,内容如下:
[Base Settings]
DebugMode=1
ServerIpAddr=127.0.0.1
ServerUdpPort=8907
RecordRootDir=record
RecordRootURL=/record/
ServerCallBackPathType=1
ClientCallBackPathType=2
配置项详细说明如下:
【DebugMode】配置为<span style="color:#时,不在日志中输出相关的调试信息;为<span style="color:#时,可输出更多的调试信息,如录像开始,录像结束,录像文件名等,便于分析故障原因;
【ServerIpAddr】配置核心服务器的IP地址,录像服务器与核心服务在同一台计算机时,默认为<span style="color:#7.0.0.1
【ServerUdpPort】配置核心服务器的UDP通信端口,默认为<span style="color:#07
【RecordRootDir】表示录像文件保存的本地根目录,可以为相对地址,如:RecordRootDir=record,表示当前录像服务器目录下的record子目录,也可以为绝对路径,如:RecordRootDir=d:\record(注意:不要配置为:RecordRootDir=d:\record\,即路径后面不要加上“\”);
【RecordRootURL】表示录像文件保存本地根目录的互联网访问地址,是一个URL地址,通过该URL地址,可以访问到中心录像服务器目录下的指定文件,通常需要在Web服务器(如Apache)中设置一个虚拟路径指向【RecordRootDir】,而【RecordRootURL】就是该虚拟路径;
【ServerCallBackPathType】表示中心录像服务器完成录像之后,触发业务服务器回调事件中的路径类型:<span style="color:#相对路径、<span style="color:#
绝对路径、<span style="color:# URL路径;
【ClientCallBackPathType】表示中心录像服务器完成录像之后,触发客户端回调事件中的路径类型:<span style="color:#相对路径、<span style="color:#
绝对路径、<span style="color:# URL路径;
四、启动中心录像服务器。运行run.bat,出现如下图所示的界面:
同时在Windows右下角的任务栏区域显示程序图标(点击该图标将弹出菜单,可选择退出程序):
在中心录像服务器程序目录下将生成日志文件:AnyChatRecordServer.log,内容如下所示:
[ 19:58:49(865)]&&&&&&& AnyChat Record Server Init,V1.0, BuildTime:Jun& 9 :55
[ 19:58:49(872)]&&&&&&& Record Root Directory:D:\anychat\AnyChatRecordServer\Record\
[ 19:58:49(877)]&&&&&&& Ready to connect to the server& 127.0.0.1(8907)....
[ 19:58:49(910)]&&&&&&& Successfully connect to theanychatcoreserver!
若在日志中显示“Successfully connect to theanychatcoreserver!”则表示中心录像服务器与核心服务器连接成功,工作正常;否则请检查相关参数配置是否匹配,如AnyChatRecordServer.ini中的UDP端口和AnyChatCoreServer.ini中的UDP端口是否一致,另请检查程序的版本是否符合要求。
五、启动中心录像。客户端调用API:BRACStreamRecordCtrl(...),或是业务服务器调用API:BRASStreamRecordCtrl(...)可启动或停止对目标用户的录像任务,停止录像之后,若录像成功,则会在业务服务器上触发相应的回调函数调用。
六、注意事项:
<span style="color:#.&&&&&由于早期的授权证书不支持中心录像服务器,若希望使用该功能(为可选模块),请与我们的商务人员联系升级授权证书;
<span style="color:#.&&&&&在中心服务器录像过程中,客户端网络异常掉线将会中断录像,并触发业务服务器的录像回调函数;
<span style="color:#.&&&&&停止录像、用户注销等操作与业务服务器触发录像回调函数的时机是异步的过程,在业务服务器编程时需要考虑这种时间差的因素,可能存在先触发用户注销的回调,然后再触发录像完成的回调;
关于回调事件路径类型:
?&&相对路径,形如:<span style="color:#14-08-31/12-08-31-074AnyChat453.mp4
?&&绝对路径,形如:d:\record\\12-08-31-074AnyChat453.mp4
?&&URL路径,形如:/record/201... 074AnyChat453.mp4
默认配置中:
?&&【ServerCallBackPathType=1】表示业务服务器回调事件中返回绝对路径
?&&【ClientCallBackPathType=2】表示客户端回调事件中返回URL地址,便于客户端可以直接通过该URL地址访问中心录像服务器上面的文件;
3. 有关中心录像服务器配置项【RecordRootURL】的说明
AnyChat支持中心服务器录像,参考:,若是录制完成之后,在客户端需要访问中心录像服务器上面的录像文件,则需要配置中心服务器的URL地址(即:RecordRootURL),使得录像完成之后在客户端收到的录像完成回调所包含的录像文件路径参数为URL地址,客户端可以直接通过该URL地址来访问录像服务器上的录像文件。
有关中心录像服务器的部署请参考:、,中心录像服务器配置文件(AnyChatRecordServer.ini)可以控制录像完成后录像路径参数是绝对路径,或是相对路径,或是URL路径,下面主要说明配置项RecordRootURL的作用:
假如您的录像保存路径为:RecordRootDir=d:\record(注意:不要配置为d:\record\,即后面不要加上“\”)
而服务器上面安装了Apache,可以通过URL地址(如:http://192.168.1.25/,或是/)访问到这台服务器。那么可以在Apache上创建一个虚拟目录(如:record)来指向路径:d:\record,则您就可以通过URL地址http://192.168.1.25/record/,或是/record/来访问录像文件。
若是RecordRootURL=/record,则实际返回的录像文件路径类&#20284;于:/record//14-09-10name34.mp4,您在客户端就可以直接通过该完整的URL地址来访问录像文件。
4. 如何快速安装部署AnyChat服务器
<span style="color:#.1 部署核心服务器流程
核心服务器位于AnyChat for Windows SDK包\bin\server目录下
<span style="color:#.&&&&&安装服务:执行服务器程序目录下的批处理程序:install.bat(参考:<span style="color:#7. Windows服务安装与卸载)
<span style="color:#.&&&&&修改配置文件(AnyChatCoreServer.ini):如有授权证书,请将DemoMode改为<span style="color:#,让服务器运行于授权模式下,默认DemoMode=1,表示工作于演示模式;如有SDKFilterPlus插件,请配置好SDKFilterPlus配置项;
<span style="color:#.&&&&&将对应的证书:AnyChat.cer拷贝到服务器程序所在目录;
<span style="color:#.&&&&&在“服务”中启动“AnyChatPlatform
Service”服务;
<span style="color:#.&&&&&启动服务后,可通过日志文件(AnyChatCoreServer.log)判断服务器是否启动成功,如果启动失败,则会提示相关的出错信息。
注:如果采用UKey授权,则需要先插入UKey,再启动服务,认证成功之后,UKey指示灯会开始闪烁,服务器退出,或是停止服务后,UKey指示灯会关闭;UKey授权方式需要<span style="color:#.1.0.1以上版本服务器程序才能支持
如需要使用双机热备模式,参考:
关于服务器授权方式,参考:
<span style="color:#.2 部署业务服务器流程
业务服务器是指采用AnyChat Server SDK开发的服务器,专门用于处理业务流程
<span style="color:#.&&&&&修改配置文件(AnyChatCoreServer.ini):
?&&[Function Settings]
?&&CloseFrontLink=1
?&&SDKFilterPlus=IPCFilterPlus.dll
?&&AutoAddRoom=1
<span style="color:#.&&&&&从SDK包的bin\ServerSDK目录下拷贝“IPCFilterPlus.dll”库文件到核心服务器目录下
<span style="color:#.&&&&&重启核心服务器
<span style="color:#.&&&&&启动业务服务器(AnyChatServerSDK.dll必须和业务服务器在同一个目录下),业务服务器便会收到与核心服务器连接成功的消息。
5. AnyChat独立部署Windows视频服务器
<span style="color:#、首先下载AnyChat for Windows SDK();
<span style="color:#、解压缩下载的SDK包,如下图所示:
<span style="color:#、进入【bin\server】目录,用记事本打开配置文件:AnyChatCoreServer.ini
<span style="color:#、修改参数配置:
a)若有授权证书,请将[Base Settings]下面的“DemoMode=1”修改为“DemoMode=0”,如下图所示:
可直接将授权证书拷贝到核心服务器(AnyChatCoreServer.exe)所在目录下即可,若没有授权证书,则不需要修改该项配置,服务器将工作在评估模式下。
b)启用AnyChat Server SDK通信接口,将[Function Settings]下面的“SDKFilterPlus=”修改为“SDKFilterPlus=IPCFilterPlus.dll”,如下图所示:
将修改后的配置文件保存并关闭,有关“AnyChat Server SDK”通信接口可参考FAQ:
<span style="color:#、启动核心服务器。双击“run.bat”批处理文件:
将会出现DOS窗口,如下图所示,该窗口可被关闭,不影响服务器程序在后台的运行。
同时在计算机桌面的右下角托盘区域将出现核心服务器运行图标:
核心服务器启动之后,将会在当前目录下产生日志文件:AnyChatCoreServer.log,可用记事本打开:
通过日志文件可判断核心服务器启动是否正常。
<span style="color:#、启动业务服务器;进入【bin\serversdk】目录
运行业务服务器“AnyChatBussinessServer(C&#43;&#43;).exe”
业务服务器启动之后,将会显示提示信息:“与AnyChat服务器连接成功!”
<span style="color:#、用客户端连接服务器;运行【bin\demo】目录下的“BRAnyChatMeeting.exe”程序,在【登录】界面中点“设置”按钮,在“服务器”输入栏中输入正确的服务器IP地址,如下图所示:
按下登陆按钮,将连接到前面部署的核心服务器,同时在业务器界面上将会显示相关的业务流程提示信息,如下图所示:
如果按上面的流程部署,客户端通过IP地址无法连接到服务器,则可能存在的因素包括:
<span style="color:#、IP地址是否正确?客户端连接的IP地址是否为服务器的IP地址,如果服务器有多个IP地址(内网、外网)则可换一个IP地址再尝试;
<span style="color:#、服务器上是否有防火墙或是第三方的网络监控软件?可尝试关防火墙,或是第三方的网络监控软件关闭再尝试,如果确认是防火墙的因素导致的,可将核心服务器进程(AnyChatCoreServer.exe)或是端口号(注意有TCP、UDP两个端口)加入防火墙的允许名单中;
<span style="color:#、客户端计算机所在的网络被限制,可尝试更换一台客户端计算机再尝试;
PS:补充 →
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:40892次
积分:1005
积分:1005
排名:千里之外
原创:61篇
(4)(1)(1)(1)(3)(4)(3)(11)(31)(4)(1)(1)(1)}

我要回帖

更多关于 远程服务器端口号修改 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信