本文介绍 Web SDK 各版本的发布特性。
V 1.5.0(2022-04-25)
发布参数支持降级策略:流畅度优先或清晰度优先,参见 InitRoomConfig 和 Publish 接口下的 degradationType 字段。
共享屏幕:支持 tab 中的音频(仅限 tab),参见 InitRoomConfig 和 Publish 接口下的 enableDesktopAudio 字段。
共享屏幕:优化桌面共享关闭事件监听逻辑。
修复 Safari 下的报错问题:RTCRtpSender.getCapabilities。
音视频质量统计:支持部分手机浏览器。
V 1.4.9(2022-01-21)
优化摄像头、麦克风在通话时的状态监听逻辑。
修复
RTCIceServer.url
已废弃问题。废弃
OnGetSign
接口,改为业务主动传sign
(兼容旧有的接入方式)。新增录制参数
crf
(清晰度)和tagPositions
(自定义视频布局),具体参见 附录 中参数说明。新增发布参数,支持自定义设置分辨率、帧率、码率。
新增文件共享关闭回调接口
OnFileStreamClosed
。新增桌面共享关闭回调接口
OnDesktopDisplayClosed
。
V 1.4.8(2021-10-12)
增加 StreamFilterHandler 功能,支持自定义编辑流等功能。
去除非 Chrome 浏览器的版本判断,使用 alert 强提示。
以下 V 1.4.8 版本之前的发布说明内容已不再维护。
V 1.4.7(2021-08-23)
废弃
ice_relay_ip_array
参数,统一在服务端上配置。共享音视频文件支持播放/暂停。
自动发布订阅增加条件选项(即
auto_publish_subscribe
参数增加选项 5)。支持自定义推流。
增加摄像头切换分辨率接口。
优化浏览器录制:
支持设置画布大小。
支持时间戳/文字/图片水印。
V 1.4.6(2021-06-08)
修复 Chrome 88 以上版本中共享视频文件在对端无法查看的问题。
V 1.4.5(2021-05-18)
增加 540P 分辨率档位。
拆分 SDK 内部架构。
切流时发出事件,并变更 mediaSource。
支持服务端录制实时变更水印。
调整服务端录制启动参数(兼容旧参数,详见 附录)。
V 1.4.4(2021-03-04)
浏览器录制支持 4 路。
浏览器录制流与流之间增加白边分屏。
V 1.4.3(2021-02-24)
增加 1280P 分辨率档位。
调整各档位码率。
支持自定义设置多个中转代理外网 IP。
bundlePolicy 设置为 max-bundle,多路流共用同一个 ice。
V 1.4.2(2021-01-21)
修复自动订阅模式下自定义中转服务器设置问题。
V 1.4.1(2021-01-14)
修复 SDK 初始化后首次进入房间心跳异常问题。
修复服务端推送消息部分没回 ack 问题。
优化自定义区域共享。
摄像头接口松动监测,支持自动恢复。
支持发布纯音频不传 video 标签,订阅纯视频(纯音频)只传 video(audio)标签。
提供预启动摄像头/麦克风功能。
V 1.4.0(2020-12-17)
修复自定义推流发布成功后没有回调问题。
修复帧率切换失效问题。
支持服务端录制每个画面打上发布 tag 水印。
修复直播 rtmp 地址设置无效问题。
V 1.3.9 (2020-12-09)
修复自定义推流模糊问题。
V 1.3.8 (2020-12-02)
修复房间中无发布流情况下启动录制会报错的缺陷。
V 1.3.7 (2020-11-23)
音视频通话功能支持 H5:Android Chrome 浏览器(VP8/部分机型支持 H264)/iOS Safari(H264)。
V 1.3.6 (2020-11-06)
废弃 ASR/TTS 功能。
V 1.3.5 (2020-11-02)
服务端录制支持自定义布局(见主调接口 3、21 中的 mixPosition 参数)。
支持同一时间进行多个发布。
V 1.3.4 (2020-09-29)
服务端录制支持两种结束类型(除主动调用结束)(见主调接口 3、21 中的 endType 参数)。
修复外接麦克风插拔导致没声音问题。
V 1.3.3 (2020-09-02)
服务端录制支持静默功能(见主调接口 3、21 中的 silentRecord 参数)。
V 1.3.2 (2020-08-25)
修复客户端录制视频高度不一致,导致拼接视频后高度小的视频下方出现黑块的问题。
修复服务端录制在全房间没有发布情况下会出现初始化超时问题。
V 1.3.1 (2020-08-14)
服务端录制回调接口命名调整(兼容旧接口)。
服务端录制增加暂停/恢复功能。
V 1.3.0 (2020-08-12)
服务端录制增加参数 record_third_id,用于业务方区分调用批次。启动录制时传入(见主调接口 3、21),在初始化成功、启动成功、启动失败的回调携带返回(见被调接口 33、34、63)。
支持并发启动录制。
V 1.2.9 (2020-08-11)
优化音视频质量统计。
服务端录制放开并发限制。
V 1.2.8 (2020-08-07)
浏览器录制:升级接口,丰富配置(原主调接口 16 废弃,新接口为主调接口 40)。
服务端录制:增加 tagFilter、tagPostion 配置(见主调接口 3、21)。
初始化房间增加三方业务 ID 属性(见主调接口 3)。
V 1.2.7 (2020-07-28)
发布添加最大码率参数 publish_bitrate:
InitRoomConfig 接口(见主调接口 3)。
Publish 接口(见主调接口 9)。
ChangeMediaStream 接口(见主调接口 37)。
自定义推流支持 PDF 文件。
服务端录制支持时间戳水印、图片水印,支持多人录制(见主调接口 3、21)。
支持设置自定义设置中转服务器 defaultTurnServer(见主调接口 3)。
V 1.2.6
修复 ice 建立连接后清除定时器。
V 1.2.5
修复离开房间销毁浏览器端录制信息。
V 1.2.4
浏览器录制相关接口调整
主调接口调整
StartRecord 删除 targetType 参数,添加 timeSlice 参数 recordType 值调整为 1,2,3(见主调接口 16)。
DownloadRecord 删除 returnType 参数(见主调接口 20)。
被调通知接口调整
OnClientStartRecordSuccess 删除 targetType参数(见被调接口 67)。
OnClientStopRecordSuccess 删除 targetType参数(见被调接口 69)。
OnClientDownloadRecordSuccess 删除 returnType, clientRecordBlob 参数(见被调接口 75)。
添加 OnClientRecordBlob 接口(见被调接口 81)。
V 1.2.3
添加相关。
添加切流成功通知 OnChangeMediaStreamSuccess(见被调接口 79)。
添加切流失败通知 OnChangeMediaStreamFailed(见被调接口 80)。
ChangeProfile 添加参数 local_video_width 和 local_video_height(见主调接口 38)。
删除相关。
浏览器录制,停止录制 StopRecord 接口删除 targetType 参数(见主调接口 17)。
video_profile_type 参数去掉选项 4(见主调接口 3、9)。
内部调整。
创建房间和加入房间添加用户浏览器信息(SDK 内部调整)。
修复浏览器录制结果 blob 为空(SDK 内部优化)。
发布流 tag 更新(SDK 内部调整)。
添加 web-sdk 业务接入说明。
V 1.2.2
修复浏览器录制多次回调的 bug。
V 1.2.1
publish_device 新增 2 种发布类型,发布文件和发布自定义页面区域(见主调接口 3、9)。
发布和初始化接口调整。
新增 videoSource 参数, 摄像头的deviceId, 用于发布指定摄像头(见主调接口 3、9)。
新增 audioSource 参数,麦克风的deviceId,用于发布指定麦克风(见主调接口 3、9)。
新增 aspectRatioStrongDepend 参数,是否指定横纵比(见主调接口 3、9)。
新增 aspectRatio 参数,横纵比(见主调接口 3、9)。
新增 file 参数,用于发布图片或视频文件(见主调接口 9)。
新增 part_of_screen_id 参数,用于发布指定页面区域(见主调接口 9)。
新增自定义切流接口 ChangeMediaStream(见主调接口 37)。
新增动态切换(分辨率、摄像头麦克风、横纵比)接口 ChangeProfile(见主调接口 38)。
新增音视频设备相关接口。
新增获取音视频设备接口 GetDevices(见主调接口 39)。
获取设备信息成功 OnGetDevicesSuccess(见被调接口 77)。
获取设备信息失败 OnGetDevicesFailed(见被调接口 78)。
V 1.2.0
浏览器录制
主调接口
StartRecord 开启浏览器录制(见主调接口 16)。
StopRecord 停⽌浏览器录制(见主调接口 17)。
PauseRecord 暂停浏览器录制(见主调接口 18)。
ResumeRecord 继续浏览器录制(见主调接口 19)。
DownloadRecord 下载浏览器录制音视频(见主调接口 20)。
回调接口
OnClientStartRecordSuccess 开启浏览器录制成功(见被调接口 67)。
OnClientStartRecordFailed 开启浏览器录制失败(见被调接口 68)。
OnClientStopRecordSuccess 停止浏览器录制成功(见被调接口 69)。
OnClientStopRecordFailed 停止浏览器录制失败(见被调接口 70)。
OnClientPauseRecordSuccess 暂停浏览器录制成功(见被调接口 71)。
OnClientPauseRecordFailed 暂停浏览器录制失败(见被调接口 72)。
OnClientResumeRecordSuccess 继续浏览器录制成功(见被调接口 73)。
OnClientResumeRecordFailed 继续浏览器录制失败(见被调接口 74)。
OnClientDownloadRecordSuccess 下载浏览器录制文件成功(见被调接口 75)。
OnClientDownloadRecordFailed 下载浏览器录制文件失败(见被调接口 76)。
V 1.1.9
ASR 回调接口添加 sessionId。
开始语音识别成功 OnStartAsrSuccess(见被调接口 49)。
开始语音识别失败 OnStartAsrFailed(见被调接口 50)。
停止语音识别成功 OnStopAsrSuccess(见被调接口 51)。
停止语音识别失败 OnStopAsrFailed(见被调接口 52)。
通知识别结果 OnAsrMessage(见被调接口 53)。
长时间没有返回结果通知 OnAsrMsgIdle(见被调接口 54)。
V 1.1.8
去掉 ASR 连接时 uid 带 asr 后缀(SDK 内部更新)。
V 1.1.7
ASR 相关。
说明:
tag 是业务透传参数。
status 表示会话是否结束,status=0 表示会话未结束,status=1 表示会话结束后的最终结果。
StartAsr 接口 config 添加 tag 业务透传参数(见主调接口 30)。
OnStartAsrSuccess 接口增加返回参数 tag(见被调接口 49)。
OnStartAsrFailed 接口增加返回参数 tag(见被调接口 50)。
OnStopAsrSuccess 接口增加返回参数 tag(见被调接口 51)。
OnStopAsrFailed 接口增加返回参数 tag(见被调接口 52)。
OnAsrMessage 接口增加两个参数 OnAsrMessage(msg, sid)—>OnAsrMessage(msg, sid,tag,status)(见被调接口 53)。
OnAsrMsgIdle 接口增加返回参数 tag(见被调接口 54)。
修复 ASR 并发启动。
TTS 相关。
开始语音合成 StartTts(见主调接口 35)。
停止语音合成 StopTts(见主调接口 36)。
开启语音合成成功 OnStartTtsSuccess(见被调接口 64)。
开启语音合成失败 OnStartTtsFailed(见被调接口 65)。
语音合成结果 OnTtsResult(见被调接口 66)。
录制相关。
录制默认参数调整 (见主调接口 3、21)。
如果 recordTotalStream=0,startTimeout 默认为 10s。
如果 recordTotalStream!=0,startTimeout 默认为 5 分钟。
startTimeout 优先级:业务指定优先于默认值。
V 1.1.6
更新 ASR 生产环境域名。
V 1.1.5
Chrome 版本号低于 67,弹窗提示。
发布分辨率档位调整:
1: 720p(HD), 1280x720, 16:9。
2: VGA, 640x480, 4:3。
3: 360p(nHD), 640x360, 16:9。
4: CIF, 352x288, 4:3。
发布时优先按照上述分辨率采集,如浏览器不支持,则按浏览器默认分辨率采集。
访问设备失败时,alert 弹窗提示原因。
服务端录制调整:
启动超时时间 startTimeout:范围在 3 ~ 10s 之间,默认 5s。
录制启动成功标准 recordTotalStream:成功订阅流,订阅流数默认为 0,之前默认为 2(2 即成功录下双方)。
服务端录制增加初始化成功接口 OnInitRecordSucc (见被调接口 63)。说明:正常情况下,开启录制后会先回调 OnInitRecordSucc,之后再回调 OnStartRecordSucc,两个回调之间的时间间隔视业务设置 recordTotalStream 而定。
ASR 内部优化修复状态管理漏洞。
V 1.1.4
ASR 内部优化修复识别不准的问题。
V 1.1.3
录制通知回调 SDK 内部优化
ASR 识别结果:完善说明,根据 procType 来确定格式(见被调接口 53)。
V 1.1.2
增加点播通知功能,StartVod 接口参数变更 vodParams(见主调接口 32)。
增加录制通知功能,InitRoomConfig 和 StartRemoteRecord 接口中 recordParam 参数添加 2 个属性:startTimeout 和 recordTotalStream(见主调接口 3、21)。
增加录制过程中录制中断接口 OnRecordingFailed(见被调接口 62)。
录制默认音频采样率 sampleRate 从 24000 修改为 48000(见 InitRoomConfig 和 StartRemoteRecord)。
废弃 OnRecordInfo 接口,通过 OnStartRecordSucc 替代(见被调接口 32)。
V 1.1.1
修复 ASR 验签失败(SDK 内部改动,接口未改动)。
V 1.1.0
修复离开房间未关闭摄像头(SDK 内部改动,接口未改动)。
V 1.0.9
增加开始语音识别失败接口 OnStartAsrFailed(见被调接口 50)。
语音识别结果接口名从 OnAsrMsg 修改为 OnAsrMessage(见被调接口 53)。
开始语音识别接口添加参数引擎类型 procType(见主调接口 30)。
服务端录制结束通知接口名从 OnRecorderOver 修改为 OnRecordOver(见被调接口 61)。
增加视频清晰度参数 video_profile_type(见主调接口 3、9)。
弱网回调接口添加 sid 参数(见被调接口 48)。
废弃指令消息相关接口(见主调接口 27 和被调接口 41 ~ 44)。
V 1.0.8
增加错误日志上报保存到本地(见主调接口 34)。
V 1.0.7
增加语音识别功能(见主调接口 30 ~ 31, 被调接口 49 ~ 54)。
增加语音点播功能(见主调接口 32 ~ 33, 被调接口 55 ~ 59)。
增加自定义截屏文件格式(见主调接口 15)。
增加实时音量可视化功能(见主调接口 3、9、10 的 need_volume_analyser 字段,被调接口 60 的回调接口)。
增加服务端录制结束通知回调(见被调接口 61)。
音视频关闭通知接口添加 sid 参数(见被调接口 30)
邀请加入房间添加 channelType 参数 (见主调接口 6)。
V 1.0.6
修改发布弱网频率告警(见主调接口 28 SetPublishWeakBitrateLimit)。
添加订阅弱网频率告警(见主调接口 29 SetSubscribeWeakBitrateLimit)。
添加退出回调参数,退出类型leaveType(见被调接口 45 OnLeaveRoom)。
启动服务端录制添加参数 recordParam(见主调接口 21 StartRemoteRecord)。
添加退出类型参数(见被调接口 46 OnParticipantLeaveRoom)。
添加服务端录制相关参数 recordParam 和 recordStrongDepend(见主调接口 3 InitRoomConfig)。
V 1.0.5
添加获取录制信息接口(见 GetRecordInfo)。
添加获取服务端录制结果成功(见 OnRecordInfoSucc)。
添加获取服务端录制结果失败(见 OnRecordInfoFailed)。
添加退出类型参数 OnParticipantLeaveRoom(见被调接口 46)。
添加服务端是否录制 defaultRecord参数(见主调接口 3 InitRoomConfig)。
V 1.0.4
添加发布共享桌面功能。
添加弱网回调接口(见被调接口 46)。
添加设置弱网码率告警下限(见主调接口 27)。
添加参数 publish_device 标识发布类型(见主调接口 3 和主调接口 9)。
V 1.0.3
支持签名在页面重写(被调接口 3)。
截屏如果不指定宽高,则默认为视频窗口的宽高。
TakePicture() 接口参数宽高设置默认值(主调接口 15)。
服务端录制,不在录制中时停止录制,直接返回(主调接口 22)。
StartRemoteRecord 接口添加可选参数服务端录制路径(主调接口 21)。
publish_video_id 由必填更正为根据 media_type 选填(主调接口 3 和主调接口 9)。
StartRemoteRecord 接口添加可选参数 filePath 服务端录制路径(主调接口 21)。
OnSubscribeFailed(sid,err_code, err_msg) 接口去掉 feed 参数(被调接口 23)。
如果发布的是纯音频,则 sid 获取方式为 publish_streamId_id 的 name 值,具体参考 meeting.html。
InitRoomConfig 接口添加服务端录制路径的可选参数 filePath,通过 OnRecordInfo 接口回调 recordId(见主调接口 3 和被调接口 32)。
V 1.0.2
添加录制功能:主调接口 16 ~ 22 和被调接口 31 ~ 35。