AnyChat技术支持论坛

标题: 关于视频录制问题 [打印本页]

作者: Maco    时间: 2013-11-28 17:43
标题: 关于视频录制问题
请问,我在android端打开视频时候调用anychat.StreamRecordCtrl(userID, 0, AnyChatDefine.BRAC_RECORD_FLAGS_SERVER, 0);此方法,怎么才能进行视频录制并保存到指定的windows pc上(web版与android版之间进行视频通话),录像服务器和核心服务器已搭建并能正常运行。
作者: 廖斌    时间: 2013-11-28 17:50
您好。录制服务器视频第三个参数需要设置BRAC_RECORD_FLAGS_SERVER+BRAC_RECORD_FLAGS_VIDEO+BRAC_RECORD_FLAGS_AUDIO=7.
录制保存路径可以设置,在录制服务器的配置文件中
作者: Maco    时间: 2013-11-29 10:08
本帖最后由 Maco 于 2013-11-29 10:11 编辑

你好。那当我结束退出activity时是不是要再次调用anychat.StreamRecordCtrl(userID, 1, AnyChatDefine.BRAC_RECORD_FLAGS_SERVER+AnyChatDefine.BRAC_RECORD_FLAGS_VIDEO+AnyChatDefine.BRAC_RECORD_FLAGS_AUDIO, 0);这个方法
作者: admin    时间: 2013-11-29 10:14
是的,需要您的程序主动开启、停止录像。
作者: Maco    时间: 2013-11-29 10:21
但是我设置了关闭,视频存放的文件夹里面创建了一个以今天的时间为准的文件夹,但是没有视频,后台打印的信息为StreamRecordCtrl(-8, 1, 0x7, 1)=0
作者: Maco    时间: 2013-11-29 10:44
你好,我在录像服务器端看到打印信息,录像文件名是在那里设置的
[2013-11-29 10:05:43(827)]        Received recording tasks(userid:-5), preparing record...
[2013-11-29 10:08:51(698)]        Stop recording(userid:-5), record file name:
作者: admin    时间: 2013-11-29 11:01
您好,录像文件名不能设置,但是可以在录像完成的回调函数中上层应用直接改名。
作者: Maco    时间: 2013-11-29 11:08
但是BRAS_SetOnServerRecordCallBack(BRAS_OnServerRecord_CallBack lpFunction, LPVOID lpUserValue=NULL)在安卓没有
作者: Maco    时间: 2013-11-29 11:12
你好,那我是不是需要在web端新增BRAS_OnServerRecord_CallBack(DWORD dwUserId, DWORD dwParam, DWORD dwRecordServerId, DWORD dwElapse, LPCTSTR lpRecordFileName, LPVOID lpUserValue)和BRAS_SetOnServerRecordCallBack(BRAS_OnServerRecord_CallBack lpFunction, LPVOID lpUserValue=NULL)函数
作者: 廖斌    时间: 2013-11-29 11:17
Maco 发表于 2013-11-29 11:08
但是BRAS_SetOnServerRecordCallBack(BRAS_OnServerRecord_CallBack lpFunction, LPVOID lpUserValue=NULL) ...

您好,服务器录制,回调触发是在业务服务器端哦,客户端不会触发的
作者: admin    时间: 2013-11-29 11:17
您好,如果是在服务器端录像,只需要在业务服务器上处理即可,不需要在客户端进行文件改名的操作。
作者: 廖斌    时间: 2013-11-29 11:18
Maco 发表于 2013-11-29 11:12
你好,那我是不是需要在web端新增BRAS_OnServerRecord_CallBack(DWORD dwUserId, DWORD dwParam, DWORD dwR ...

不需要的,客户端不需要这个函数。
作者: Maco    时间: 2013-11-29 11:32
廖斌 发表于 2013-11-29 11:18
不需要的,客户端不需要这个函数。

您好,我现在整个系统一个有4个部分,核心服务器,录像服务器,java web版程序,安卓版程序;客户端不需要设置这个函数,那么应该在web javascript里面添加这个函数还是其它
作者: admin    时间: 2013-11-29 11:40
您好,您没有部署业务服务器吗? http://bbs.anychat.cn/forum.php? ... &extra=page%3D1
作者: Maco    时间: 2013-11-29 11:53
admin 发表于 2013-11-29 11:40
您好,您没有部署业务服务器吗? http://bbs.anychat.cn/forum.php?mod=viewthread&tid=12&extra=page%3D1

没有,请问业务服务器在哪里下载的
作者: admin    时间: 2013-11-29 11:56
您好,业务服务器需要您自己开发的,采用AnyChat for Server SDK开发,AnyChat for Windows SDK和AnyChat for Linux SDK都包含有服务器端的SDK。
作者: Maco    时间: 2013-12-2 11:13
您好,我在结束视频录制时调用业务服务器的回调函数OnServerRecordCallBack(int dwUserId, int dwParam,int dwRecordServerId, int dwElapse, String szRecordFileName)方法还是不能保存视频,而两个客户端之间进行视频录制能保存视频。
作者: admin    时间: 2013-12-2 11:28
您好,业务服务器的回调函数OnServerRecordCallBack不需要您主动调用,而是由录像服务器被动的触发,当录像服务器录像完成之后会触发该回调函数。
作者: Maco    时间: 2013-12-2 11:43
您好,那我怎么知道是否录制保存成功,录像服务器一直出现下面的问题
[2013-12-02 11:25:15(040)]        Stop recording(userid:-54), record file name:
[2013-12-02 11:38:42(404)]        Received recording tasks(userid:-57), preparing record...
作者: admin    时间: 2013-12-2 11:47
您好,请上传完整的:客户端日志、核心服务器日志、录像服务器日志,谢谢。
作者: Maco    时间: 2013-12-3 14:58
您好,昨天我能进行录制,但是按你们技术人员所说的方法anychat.StreamRecordCtrl(userID, 0, AnyChatDefine.BRAC_RECORD_FLAGS_SERVER+AnyChatDefine.BRAC_RECORD_FLAGS_VIDEO+AnyChatDefine.BRAC_RECORD_FLAGS_AUDIO, 0);这样设置无法录制视频,保留下来的只是音频,但是也出现录制不稳定的情况
作者: 廖斌    时间: 2013-12-3 15:03
Maco 发表于 2013-12-3 14:58
您好,昨天我能进行录制,但是按你们技术人员所说的方法anychat.StreamRecordCtrl(userID, 0, AnyChatDefin ...

您好,要在对方音视频已经打开的情况下面,才可以开始录制哦。第二个参数为1的时候是开始录制,为0是停止录制。
作者: Maco    时间: 2013-12-3 15:16
您好,假如我在手机端打开摄像头,web端不打开的情况也是只录制音频,还有一个小问题,怎么取得录制成功后的视频路径
作者: 廖斌    时间: 2013-12-3 15:18
Maco 发表于 2013-12-3 15:16
您好,假如我在手机端打开摄像头,web端不打开的情况也是只录制音频,还有一个小问题,怎么取得录制成功后 ...

假如我在手机端打开摄像头,web端不打开的情况也是只录制音频

这种情况是正常的哦,因为你录制的是web端的视频,你第一个参数用-1(录制自己)试试看。录制成功后会触发业务服务器的录制成功回调函数,在回调函数中可以获取路径
作者: Maco    时间: 2013-12-3 15:57
谢谢,视频录制可以了!但是我发现:我在开发板的安卓开发时,打开视频对讲,对方接收的视频帧数很低,不能正常流畅显示,而用手机来开发视频帧数能流畅传输!请问出现这种情况是那些设置不对(我默认最低配置)
作者: 廖斌    时间: 2013-12-3 15:59
Maco 发表于 2013-12-3 15:57
谢谢,视频录制可以了!但是我发现:我在开发板的安卓开发时,打开视频对讲,对方接收的视频帧数很低,不能 ...

您好,将您android端视频通话后的日志发上来看下,我们看下
作者: Maco    时间: 2013-12-3 16:37
我在logcat下记录的日志
作者: Maco    时间: 2013-12-3 16:39
logcat日志记录

log.rar

795 Bytes, 下载次数: 2


作者: 廖斌    时间: 2013-12-3 16:50
Maco 发表于 2013-12-3 16:39
logcat日志记录

您好,将视频通话之后的anychat的日志发上来看下,日志位于sdcard根目录下面的BRAnyChatCore.log文件

作者: Maco    时间: 2013-12-3 17:23
BRAnyChatCore.log日志

BRAnyChatCore.rar

807 Bytes, 下载次数: 2


作者: admin    时间: 2013-12-3 20:02
您好,从log看您的SDK的编译日期不是最新的(Build Time:Sep 20 2013 07:54:51),请更新一下SDK包,下载地址:http://www.anychat.cn/,谢谢。
作者: Maco    时间: 2013-12-4 10:39
您好,谢谢您的分析,我下载了最新版的得到了部分解决,开发机上视频传输帧数还是不稳定,比之前的有所改善,但是在手机上面是正常的。还有贵公司的sdk更新的时候能不能把时间更新一下,我每次看到2013-07-28号更新的就引起别人的误区,以为之前下载的是最新版
作者: 廖斌    时间: 2013-12-4 10:45
Maco 发表于 2013-12-4 10:39
您好,谢谢您的分析,我下载了最新版的得到了部分解决,开发机上视频传输帧数还是不稳定,比之前的有所改善 ...

好的,谢谢您的反馈!
作者: Maco    时间: 2013-12-5 09:23
本帖最后由 Maco 于 2013-12-5 09:26 编辑

您好,请问一下,最新版的demo好像对开发机不支持,无法打开摄像头
作者: 廖斌    时间: 2013-12-5 09:34
Maco 发表于 2013-12-5 09:23
您好,请问一下,最新版的demo好像对开发机不支持,无法打开摄像头

您好。是什么型号的开发机?
作者: Maco    时间: 2013-12-5 09:55
广州斯道有限公司 SMDkv210
作者: admin    时间: 2013-12-5 09:59
您好,您可以尝试一下在“设置”中,将视频采集、视频显示驱动设置为“内核驱动”,默认是“Java驱动”。
作者: Maco    时间: 2013-12-5 10:23
您好,现在主要是开发板的安卓客户端视频能正常显示,但是客户端的摄像头录制的视频到web端显示不正常,严重掉帧,不稳定。
作者: 廖斌    时间: 2013-12-5 10:34
Maco 发表于 2013-12-5 10:23
您好,现在主要是开发板的安卓客户端视频能正常显示,但是客户端的摄像头录制的视频到web端显示不正常,严 ...

您好,是用的默认视频参数吗?网络情况怎么样?
作者: 廖斌    时间: 2013-12-5 10:38
廖斌 发表于 2013-12-5 10:34
您好,是用的默认视频参数吗?网络情况怎么样?

我看您之前的日志,码率用的是质量模式。在互联网网络情况下,建议用一个固定的码率
作者: Maco    时间: 2013-12-5 11:16
您好,我是在公司内部网络做的,手机与web视频能正常
作者: 廖斌    时间: 2013-12-5 11:39
Maco 发表于 2013-12-5 11:16
您好,我是在公司内部网络做的,手机与web视频能正常

在局域网下面视频正常,在互联网下面会卡?
作者: Maco    时间: 2013-12-5 11:52
不是,是这样的,我用手机,开发机,电脑同在一个局域网下做测试,手机与web端之间的视频双方都能流畅,但是开发机与web端或与手机之间的视频就出现严重的掉帧,web端没办法看到开发机传过来的视频,但是开发机上能流畅看到web端传过来的视频
作者: 廖斌    时间: 2013-12-5 11:56
Maco 发表于 2013-12-5 11:52
不是,是这样的,我用手机,开发机,电脑同在一个局域网下做测试,手机与web端之间的视频双方都能流畅,但 ...

您的开发机性能怎么样?是不是编码能力不行?
作者: Maco    时间: 2013-12-5 12:27
开发机的Soc芯片是单核版Context A8架构,而手机的是双核版Context A5架构,同一个程序手机上表现正常,开发机就有以上说的问题




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3