|
AnyChat又增加新功能了!亲,快来体验吧,新版本(AnyChat r4594)支持中心服务器端拍照,拍照文件格式为jpeg,保存于中心录像服务器的配置目录下。
一、客户端本地拍照
可以对本地视频进行抓拍,也可以对其它用户的视频进行抓拍,所拍摄的照片文件保存在客户端本地,可以通过API接口设置照片文件保存路径;
API调用:DWORD BRAC_SnapShot(DWORD dwUserId, DWORD dwFlags, DWORD dwParam);其中dwFlags=0,dwParam为上层应用附带参数;
二、中心服务器拍照
可以对本地视频进行抓拍,也可以对其它用户的视频进行抓拍,所拍摄的照片文件保存在中心录像服务器的配置目录下,可以通过中心录像服务器的配置文件(AnyChatRecordServer.ini)配置照片保存路径;
API调用:
1、DWORD BRAC_SnapShot(DWORD dwUserId, DWORD dwFlags, DWORD dwParam);
2、DWORD BRAC_StreamRecordCtrlEx(DWORD dwUserId, BOOL bStartRecord, DWORD dwFlags, DWORD dwParam, LPCTSTR lpUserStr);
上述两个API均可实现中心服务器拍照,其中dwFlags=ANYCHAT_RECORD_FLAGS_SNAPSHOT+ANYCHAT_RECORD_FLAGS_SERVER,若是需要触发客户端本地的回调函数,则dwFlags=ANYCHAT_RECORD_FLAGS_SNAPSHOT+ANYCHAT_RECORD_FLAGS_SERVER+ANYCHAT_RECORD_FLAGS_LOCALCB;
若使用API:BRAC_StreamRecordCtrlEx进行服务器拍照,则bStartRecord=TRUE(1)。
三、其它
1、中心服务器拍照完成之后,会触发业务服务器的回调事件:BRAS_OnServerRecordEx_CallBack,里面包含用户ID、文件保存路径;
2、若是客户端调用时dwFlags加了ANYCHAT_RECORD_FLAGS_LOCALCB标志,则在触发业务服务器回调事件之外,还会触发客户端本地的回调事件:BRAC_RecordSnapShotEx_CallBack;
3、在客户端与业务服务器的回调事件中,拍照、录像所触发的异步事件均为相同的回调事件,上层应用可通过回调事件中的dwFlags参数区分是拍照,或是录像类型的事件;
4、通过API:BRAC_StreamRecordCtrlEx进行中心服务器拍照,可传递用户自定义字符串(lpUserStr),该自定义字符串将出现在回调函数事件中,便于上层应用扩展;
5、如果需要返回URL路径到客户端,请参考:有关中心录像服务器配置项【RecordRootURL】的说明;
6、有关中心服务器录像可参考:AnyChat音视频录制整体解决方案;
7、有关中心录像服务器部署可参考:Windows平台中心录像服务器部署、Linux平台中心录像服务器部署;
8、若上层应用需要自定义拍照文件名可参考:拍照、录像支持自定义文件名;
|
|