Web SDK 发布说明

本文介绍 Web SDK 各版本的发布特性。

V 1.5.0(2022-04-25)

  • 发布参数支持降级策略:流畅度优先或清晰度优先,参见 InitRoomConfigPublish 接口下的 degradationType 字段。

  • 共享屏幕:支持 tab 中的音频(仅限 tab),参见 InitRoomConfigPublish 接口下的 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。