差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 后一修订版 两侧同时换到之后的修订记录 | ||
im:server:basics:recordfiledownload [2019/10/29 06:14] simon.fu [实时音视频录制文件获取] |
im:server:basics:recordfiledownload [2019/12/05 02:52] huanxinfudh [实时音视频录制文件获取] |
||
---|---|---|---|
行 9: | 行 9: | ||
* 如果需要其他格式,用户可以自己下载转换,转换工具建议用ffmpeg。 | * 如果需要其他格式,用户可以自己下载转换,转换工具建议用ffmpeg。 | ||
* 获取录制文件后,如果需要下载,需要通过文件详情中的URL直接下载保存。 | * 获取录制文件后,如果需要下载,需要通过文件详情中的URL直接下载保存。 | ||
+ | * SDK开启录制 | ||
+ | * [[http://sdkdocs.easemob.com/apidoc/android/chat3.0/classcom_1_1hyphenate_1_1chat_1_1_e_m_call_manager.html#af7447a6669e37d5d0bbf976b098b435b|android 1v1]] | ||
+ | * [[http://sdkdocs.easemob.com/apidoc/android/chat3.0/classcom_1_1hyphenate_1_1chat_1_1_e_m_conference_manager.html#a6a9bd493a33203869d37780d7f8cdbfe|android 多人]] | ||
+ | * [[http://sdkdocs.easemob.com/apidoc/ios/chat3.0/protocol_i_e_m_call_manager-p.html#a429bded3e8040875d02e84936cd75521|iOS 1v1]] | ||
+ | * [[http://sdkdocs.easemob.com/apidoc/ios/chat3.0/protocol_i_e_m_conference_manager-p.html#a7cd6cdf1b116964fe114d700baf26dc6|iOS 多人]] | ||
+ | * [[im/web/basics/videocall#集成步骤|web 1v1]] | ||
+ | * [[im/web/basics/multiuserconference#用户a创建会议|web 多人]] | ||
+ | * 获取录制文件时所需要的confrId,可以从SDK中获取,下面以新版本SDK属性名称为例,老版本以各端SDK头文件内的属性名称为准。 | ||
+ | * 移动端: | ||
+ | * iOS: | ||
+ | * 1v1时:在监听通话建立完成的回调中 - (void)callDidConnect:(EMCallSession *)aSession,通过 aSession.serverVideoId 获取(serverVideoId为 EMCallSession 的属性,只有在通话建立完成后通过 EMCallSession 才能拿到 serverVideoId,否则在通话未建立完成时通过 EMCallSession 取到 serverVideoId 的为空) | ||
+ | * 多人时:在创建并加入会议 createAndJoinConferenceWithType 或者加入会议室 joinConferenceWithConfId 成功后,通过回调中的 EMCallConference 对象 aCall.confId 获取到 | ||
+ | * 安卓: | ||
+ | * 1v1时:在通话状态改变的监听中 void onCallStateChanged (CallState callState, CallError error),通过判断 callState 的状态为 connected 通话建立完成时,通过 EMCallSession 的 getServerRecordId () 获取到录制文件id | ||
+ | * 多人时:在创建并加入会议 createAndJoinConference 或者加入会议室 joinConference 成功后,通过 callback 中的 EMConference 对象 调用 getConferenceId () 获取到 | ||
+ | * web端:1v1时为WebIM.call.getServerRecordId();多人时可以在createConference的回调里拿到,参考 [[im/web/basics/multiuserconference#用户a创建会议|创建会议]] | ||
+ | |||
+ | **注意:** | ||
+ | |||
+ | ''1、通话时长<5s可能会出现服务器录制失败的情况。'' | ||
+ | |||
+ | ''2、生成录制文件所花的时间和通话时长有关,通话时间越长,生成录制文件的时间也越长。一般情况下,通话时间1小时以下,在通话结束后2小时可以获取到,为了保证录制文件数据完整建议在24小时后获取。'' | ||
- | **注意:获取录制文件时所需要的confrId,可以从SDK中获取, | ||
- | 移动端:1v1时为EMCallSession#getServerRecordId,多人时为EMConference#getConferenceId. | ||
- | web端:1v1时为WebIM.call.getServerRecordId(), 多人时可以在创建会议的回调里拿到 | ||
- | emedia.mgr.createConference().then(function (confr) { | ||
- | console.log(confr.confrId) | ||
- | })** | ||
---- | ---- | ||