设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 6964|回复: 11
打印 上一主题 下一主题

window客户端调用BRAC_StreamRecordCtrl,得到MP4文件只有音频没有视频

[复制链接]

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
跳转到指定楼层
楼主
发表于 2015-4-8 10:42:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教一个问题,我在window客户端调用BRAC_StreamRecordCtrl并列录制,得到MP4文件只有声音没有图像。

代码如下:
ulong flags = AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_VIDEO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_AUDIO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_MIXAUDIO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_MIXVIDEO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_ABREAST;
            AnyChatCoreSDK.StreamRecordCtrl(-1, true, flags, 0); //开始录像

ulong flags = AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_VIDEO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_AUDIO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_MIXAUDIO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_MIXVIDEO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_ABREAST;
            AnyChatCoreSDK.StreamRecordCtrl(-1, false, flags, 0); //结束录像

我的sdk版本为AnyChatCoreSDK_Win32_r4509

谢谢。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

5

主题

1269

帖子

3677

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3677
沙发
发表于 2015-4-8 10:43:54 | 只看该作者
您好,方便将您的客户端日志发上来,我们分析下。是在视频通话过程中看到双方的图像之后才开始录制的吗?
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
板凳
 楼主| 发表于 2015-4-8 13:02:04 | 只看该作者
是在看到图像后开始录制的,但是由于双方都运行在一台电脑上,只有一个摄像头,所以只有一方有视频图像。日志如下:[2015-04-08 11:32:46(412)]        ---------------------------AnyChat Platform Core SDK Client Log---------------------------
[2015-04-08 11:32:46(413)]        Load BRAnyChatCore.dll success!(V5.2 Build Time:Feb 10 2015 14:09:19)
[2015-04-08 11:32:46(434)]        Load BRMiscUtil.dll success!(V5.2 Build Time:Feb 10 2015 14:07:32)
[2015-04-08 11:32:46(464)]        Load BRMediaUtil.dll success!(V5.2 Build Time:Feb 10 2015 14:07:48)
[2015-04-08 11:32:46(465)]        Load BRMediaShow.dll success!(V5.2 Build Time:Feb 10 2015 14:07:40)
[2015-04-08 11:32:46(469)]        Load BRMediaCore.dll success!(V5.2 Build Time:Feb 10 2015 14:08:00)
[2015-04-08 11:32:46(500)]        Apply video parameter:1280x720, bitrate:600000, quality:0, gop:20, fps:12, preset:3, codec:0
[2015-04-08 11:32:46(501)]        Invoke        BRAC_Connect(192.168.52.144,8906)=0
[2015-04-08 11:32:46(502)]        Invoke        LoginServer(username=lincy)
[2015-04-08 11:32:46(503)]        Invoke        EnterRoom(lincy)
[2015-04-08 11:32:46(570)]        CheckClientSocketLink         Connect(ip=192.168.52.144,port=8906)
[2015-04-08 11:32:46(671)]        Server version: V5.2(Build Time:2015-02-10 14:08:34, Server OS:Windows)
[2015-04-08 11:32:46(877)]        Message        OnConnect(bSuccess:1, errorcode=0)
[2015-04-08 11:32:47(397)]        Message        OnLoginSystem(userid=20,errorcode=0,username=lincy), msg deliver worked(1)
[2015-04-08 11:32:47(398)]        Server running time: 56 days, 0 hours, 36 minutes, license mode:0
[2015-04-08 11:32:47(439)]        Connection to streaming media server successfully!(udp delay:23ms)
[2015-04-08 11:32:47(650)]        Message        OnEnterRoom(roomid=554,errorcode=0,siteindex=0)
[2015-04-08 11:32:47(652)]        Message        OnReceiveOnlineUser(count=1,roomid=554)
[2015-04-08 11:32:47(652)]        Invoke        BRAC_SetVideoPos(dwUserId:-1, hWnd:0x2600be, l:0, t:0, r:332, b:284)
[2015-04-08 11:32:47(653)]        Invoke        UserCameraControl(userid=-1,bOpen=1)
[2015-04-08 11:32:47(654)]        Invoke        UserSpeakControl(userid=-1,bOpen=1)
[2015-04-08 11:32:47(682)]        WaveIn Audio Capture Driver(麦克风 (HD Webcam C270))
[2015-04-08 11:32:47(683)]        Audio Init, error:0, device:0, 1, 16000, 16, capmode:0
[2015-04-08 11:32:47(683)]        Audio codec init, handle:1, 11, 1, 16000, 16, 15850
[2015-04-08 11:32:47(697)]        Audio Playback Device Init(0, 1, 16000, 16), WaveOut Playback Driver
[2015-04-08 11:32:47(721)]        Audio FX Status: VAD:1, NS:1, AGC:1, AEC:1
[2015-04-08 11:32:47(794)]        MinCroppingSize(640, 480)        MaxCroppingSize(640, 480)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(794)]        MinCroppingSize(160, 120)        MaxCroppingSize(160, 120)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(795)]        MinCroppingSize(176, 144)        MaxCroppingSize(176, 144)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(796)]        MinCroppingSize(320, 176)        MaxCroppingSize(320, 176)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(796)]        MinCroppingSize(320, 240)        MaxCroppingSize(320, 240)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(797)]        MinCroppingSize(352, 288)        MaxCroppingSize(352, 288)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(797)]        MinCroppingSize(432, 240)        MaxCroppingSize(432, 240)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(798)]        MinCroppingSize(544, 288)        MaxCroppingSize(544, 288)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(799)]        MinCroppingSize(640, 360)        MaxCroppingSize(640, 360)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(800)]        MinCroppingSize(752, 416)        MaxCroppingSize(752, 416)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(800)]        MinCroppingSize(800, 448)        MaxCroppingSize(800, 448)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(801)]        MinCroppingSize(800, 600)        MaxCroppingSize(800, 600)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(801)]        MinCroppingSize(864, 480)        MaxCroppingSize(864, 480)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(802)]        MinCroppingSize(960, 544)        MaxCroppingSize(960, 544)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(802)]        MinCroppingSize(960, 720)        MaxCroppingSize(960, 720)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(803)]        MinCroppingSize(1024, 576)        MaxCroppingSize(1024, 576)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(803)]        MinCroppingSize(1184, 656)        MaxCroppingSize(1184, 656)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(804)]        MinCroppingSize(1280, 720)        MaxCroppingSize(1280, 720)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(804)]        MinCroppingSize(1280, 960)        MaxCroppingSize(1280, 960)        Format(RGB24, 0x0)
[2015-04-08 11:32:47(805)]        MinCroppingSize(640, 480)        MaxCroppingSize(640, 480)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(805)]        MinCroppingSize(160, 120)        MaxCroppingSize(160, 120)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(806)]        MinCroppingSize(176, 144)        MaxCroppingSize(176, 144)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(806)]        MinCroppingSize(320, 176)        MaxCroppingSize(320, 176)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(807)]        MinCroppingSize(320, 240)        MaxCroppingSize(320, 240)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(807)]        MinCroppingSize(352, 288)        MaxCroppingSize(352, 288)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(808)]        MinCroppingSize(432, 240)        MaxCroppingSize(432, 240)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(808)]        MinCroppingSize(544, 288)        MaxCroppingSize(544, 288)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(809)]        MinCroppingSize(640, 360)        MaxCroppingSize(640, 360)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(809)]        MinCroppingSize(752, 416)        MaxCroppingSize(752, 416)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(810)]        MinCroppingSize(800, 448)        MaxCroppingSize(800, 448)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(811)]        MinCroppingSize(800, 600)        MaxCroppingSize(800, 600)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(811)]        MinCroppingSize(864, 480)        MaxCroppingSize(864, 480)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(812)]        MinCroppingSize(960, 544)        MaxCroppingSize(960, 544)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(813)]        MinCroppingSize(960, 720)        MaxCroppingSize(960, 720)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(813)]        MinCroppingSize(1024, 576)        MaxCroppingSize(1024, 576)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(814)]        MinCroppingSize(1184, 656)        MaxCroppingSize(1184, 656)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(814)]        MinCroppingSize(1280, 720)        MaxCroppingSize(1280, 720)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(815)]        MinCroppingSize(1280, 960)        MaxCroppingSize(1280, 960)        Format(YUV420P, 0x30323449)
[2015-04-08 11:32:47(815)]        Video Config Size(1280, 720)        Format(RGB24, 12fps)
[2015-04-08 11:32:48(147)]        video init finish:1280x720, RGB24, fps:12
[2015-04-08 11:32:48(163)]        Message        OnUserEnterRoom(userid=-220,nickname=customerTTTNETPF_600500_1_370781198510161234_100000,siteindex=1)
[2015-04-08 11:32:48(210)]        Invoke        BRAC_SetVideoPos(dwUserId:-220, hWnd:0x111302, l:0, t:0, r:557, b:338)
[2015-04-08 11:32:48(211)]        Invoke        UserCameraControl(userid=-220,bOpen=1)
[2015-04-08 11:32:48(212)]        Invoke        UserSpeakControl(userid=-220,bOpen=1)
[2015-04-08 11:32:48(733)]        Message        OnP2PConnectState(userid=-220, state=1)
[2015-04-08 11:32:48(853)]        Message        OnP2PConnectState(userid=-220, state=3)
[2015-04-08 11:32:48(893)]        On Remote UserCameraControl(dwUserId:-220, bOpen:1)
[2015-04-08 11:32:48(894)]        On Remote UserSpeakControl(dwUserId:-220, bOpen:1)
[2015-04-08 11:32:49(714)]        video codec init:codec:1, 12fps, 1280x720, bitrate:600kbps, quality:0, preset:3, gop:20, handle:3
[2015-04-08 11:32:49(908)]        Invoke        SnapShot(-220, 0x0, 0)=0
[2015-04-08 11:32:56(382)]        Invoke        StreamRecordCtrlEx(-1, 1, 0x133, 0, )=0
[2015-04-08 11:32:57(770)]        Record audio parameters: aac, 2 channel, 16.0kHz, 64kbps
[2015-04-08 11:32:57(771)]        Record video parameters: h264, 2560x720, 12fps, 0kbps
[2015-04-08 11:32:57(771)]        Record status, input video count:14(1264 ms), record video count:16(1333 ms), 12 fps, audio frame count:20480(1280 ms), audio_eof:1, video_eof:1
[2015-04-08 11:32:57(772)]        Record filename: C:\Users\lincy\AppData\Local\Temp\2015-04-08\11-32-56-422_lincy_0.mp4
[2015-04-08 11:32:57(773)]        Invoke        StreamRecordCtrlEx(-1, 0, 0x133, 0, )=0
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
地板
 楼主| 发表于 2015-4-8 13:20:04 | 只看该作者
本帖最后由 lincy 于 2015-4-8 13:21 编辑

另外这句好像也不起作用:AnyChatCoreSDK.SetSDKOption(AnyChatCoreSDK.BRAC_SO_RECORD_TMPDIR, recordPath, frmRoom.recordPath.Length);保存路径没有修改。 我是写在如下位置:
AnyChatCoreSDK.SetSDKOption(AnyChatCoreSDK.BRAC_SO_RECORD_TMPDIR, recordPath, frmRoom.attachmentPath.Length);
ulong flags = AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_VIDEO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_AUDIO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_MIXAUDIO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_MIXVIDEO + AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_ABREAST;
            AnyChatCoreSDK.StreamRecordCtrlEx(-1, true, flags, 0,""); //开始录像
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
5#
 楼主| 发表于 2015-4-8 13:27:48 | 只看该作者
本帖最后由 lincy 于 2015-4-8 13:32 编辑
lincy 发表于 2015-4-8 13:20
另外这句好像也不起作用:AnyChatCoreSDK.SetSDKOption(AnyChatCoreSDK.BRAC_SO_RECORD_TMPDIR, recordPath ...


这句现在可以了,原因是最后一个参数应该是字节数。
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
6#
 楼主| 发表于 2015-4-8 14:32:28 | 只看该作者
是不是因为双方在同一台电脑上运行的关系?
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
7#
 楼主| 发表于 2015-4-8 14:51:04 | 只看该作者
lincy 发表于 2015-4-8 14:32
是不是因为双方在同一台电脑上运行的关系?

我试了一下,果然是这个原因!
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
8#
 楼主| 发表于 2015-4-8 14:52:49 | 只看该作者
另外再问一下,我在客户端触发开始录制和停止录制的话,能把录制的文件放在服务器上而不是客户端本地吗?
回复 支持 反对

使用道具 举报

3

主题

57

帖子

759

积分

高级会员

Rank: 4

积分
759
9#
发表于 2015-4-8 15:16:54 | 只看该作者
本帖最后由 陈文仲 于 2015-4-8 15:38 编辑

您好,在录制的参数flags 中加上AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_SERVER就是在服务器端进行录制,录制文件保存在录像服务器上;服务器录制需要部署中心录像服务器,参考http://bbs.anychat.cn/forum.php? ... 1%B7%FE%CE%F1%C6%F7
回复 支持 反对

使用道具 举报

26

主题

161

帖子

485

积分

中级会员

Rank: 3Rank: 3

积分
485
10#
 楼主| 发表于 2015-4-8 16:04:29 | 只看该作者
陈文仲 发表于 2015-4-8 15:16
您好,在录制的参数flags 中加上AnyChatCoreSDK.ANYCHAT_RECORD_FLAGS_SERVER就是在服务器端进行录制,录制 ...

那么快照是否也可使用这个flag,在服务器端保存?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-5-10 11:34 , Processed in 0.125859 second(s), 21 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表