发布日期: 2024-10-10
问题修复
SurfaceTexture
数据类型时,出现崩溃的问题发布日期: 2024-10-09
新增功能
支持 Debian 10 或以上版本、Ubuntu 20.04 LTS、22.04 LTS、24.04 LTS。
媒体播放器播放透明特效时,新增 ZegoAlphaLayoutType > RightTop 枚举,以支持 Alpha 数据拼接在 RGB 数据右上方,设置此枚举时,仅支持 0.5x 的缩放倍率。
相关 API 请参考 loadResourceWithConfig,ZegoStreamResourceMode > Custom,ZegoAlphaLayoutType > RightTop
支持分别设置观众在上麦前和下麦后的拉流资源类型,使拉流方式更灵活,可设置分别为:通过 RTC 拉流、超低延迟直播(L3)拉流或 CDN 拉流中任意一种拉流方式。例如,可用于实现直播连麦场景中,观众上麦前默认使用 L3 拉流,上麦互动时切换为通过 RTC 拉流,下麦后恢复为通过 L3 拉流。
相关 API 请参考 startPlayingStream, ZegoPlayerConfig > customResourceConfig
改进优化
注意:
为更符合隐私规范,删除 AndroidManifest.xml 文件中声明的屏幕共享默认权限,需开发者主动声明:
FOREGROUND_SERVICE
及 FOREGROUND_SERVICE_MEDIA_PROJECTION
权限声明。详情请参考 屏幕共享 文档。
调用 loginRoom 接口登录房间时,userName
原来为必填字段,本次优化为非必填的可选字段。
相关 API 请参考 loginRoom
相关 API 请参考 setVoiceChangerParam
问题修复
发布日期: 2024-08-16
问题修复
发布日期: 2024-07-29
新增功能
注意:
该功能仅适用于 iOS 13 及以上版本,如需使用该功能,请联系 ZEGO 技术支持。
该功能对手机性能消耗比较大,请谨慎使用。
开发者可通过读取 [AVCaptureMultiCamSession.multiCamSupported] 系统库的接口,判断是否支持同时使用前后摄像头能力。
新增枚举值 ZegoVideoSourceTypeSecondaryCamera
用于标识第二个摄像头的视频,支持通过 [setVideoSource] 接口同时将前后摄像头设置为视频采集源并分别推流。开发者可以通过 [useFrontCamera] 将 ZegoVideoSourceTypeCamera
及 ZegoVideoSourceTypeSecondaryCamera
对应的前后画面进行置换。该能力可应用于使用双摄像头直播等场景,更多内容请参考 多源采集。
相关 API 请参考 setVideoSource, useFrontCamera, ZegoVideoSourceType > SecondaryCamera, ZegoVideoSourceType > Camera
注意:
当设备存在 3 个后置摄像头(超广角、主摄与长焦摄像头)时,开启相关配置后,若通过 [setCameraZoomFactor] 更新变焦倍数,SDK 将根据变焦倍数,自动选择最清晰的摄像头采集视频。
相关 API 请参考 setCameraZoomFactor
开发者可根据回调结果做后续业务处理,包括 UI 提示或应用跳转等,更多内容请参考 屏幕共享。
相关 API 请参考 onMobileScreenCaptureStart
注意:
视频分辨率高于设备支持上限会引入额外损伤,导致视频质量下降。因此视频超分辨率能力新增 1.33 倍和 1.5 倍的放大倍数,以适配不同设备的最佳效果,更多内容请参考 超分辨率。
注意:如需使用该功能,请联系 ZEGO 技术支持。
在 10ms 延迟下,依然保持纯净的降噪效果以及高保真的人声音质,适用于游戏语音、游戏开黑、实时合唱等对延迟较为敏感的场景,目前 AI 降噪已支持均衡模式、低延迟模式以及轻量模式,详情请参考 场景化 AI 降噪。
相关 API 请参考 setANSMode
注意:若某条流设置为允许审核,如果开发者没有发起审核任务,这条流也不会被送审。
当调用审核接口时,默认会对房间内的所有流进行审核。如果客户端要控制某条流不可以被送审,可以在调用 [startPublishingStream] 接口开始推流时,将送审标识 [streamCensorFlag] 参数设置为 1(不允许)。
相关 API 请参考 startPublishingStream, ZegoPublisherConfig > streamCensorFlag
媒体播放器的播放速度区间从 [0.5,4.0],扩大为 [0.3,4.0],更多内容请参考 媒体播放器。
相关 API 请参考 setPlaySpeed
注意:如需使用该功能,请联系 ZEGO 技术支持。
控制本端客户端编码兼容范围为房间内所有推流用户或所有用户,即当指定范围内存在用户不支持 H.265 时,本端客户端编码动态回退。
相关 API 请参考 loginRoom, startPublishingStream, ZegoPublisherConfig > codecNegotiationType, ZegoRoomConfig > capabilityNegotiationTypes
问题修复
废弃删除
下架畅直播概念,废弃 CDN Plus 直播相关接口。如需实现直播功能,推荐使用 ZEGO 自研 超低延迟直播产品,实现更高质量的直播体验。
相关 API 请参考 ZegoStreamResourceMode > CDNPlus
发布日期: 2024-06-05
新增功能
注意:如需使用该功能,请联系 ZEGO 技术支持。
支持耳返的声音数据,可以从扬声器中播放。
媒体播放器新增 [enableVoiceChanger] 接口 ,支持针对媒体播放器输出的声音内容开启变声效果,同时选择需要的变调音效。
相关 API 请参考 ZegoMediaPlayer > enableVoiceChanger
改进优化
优化 AI 场景化降噪中,“均衡模式”的降噪效果,在性能不变的情况下,人声清晰度、平稳度进一步提升,且噪音抑制更干净,详情请参考 场景化 AI 降噪。
优化视频硬编解码,增加更多机型兼容适配的范围,同时优化高分辨率、高帧率下的编解码表现。
问题修复
废弃删除
为提升在变声情况下的播放体验,废弃媒体播放器 [ZegoMediaPlayer.setVoiceChangerParam] 接口,请使用 [ZegoMediaPlayer.enableVoiceChanger] 代替。
相关 API 请参考 ZegoMediaPlayer > enableVoiceChanger
发布日期: 2024-05-07
新增功能
注意:从该版本起,不再支持 iOS 11.0 及之前的版本。
从 2024-04-29 开始,所有上架 App Store 的应用必须支持 iOS 17.0 版本,详情请参考 Apple 开发者网站官方说明。
注意:如需使用该功能,请联系 ZEGO 技术支持。
ZegoVoiceChangerPreset 新增 “汽车人”、“没电了” 两种变声效果的枚举值,丰富变声效果。
相关 API 请参考 setVoiceChangerPreset
相关 API 请参考 enableViewMirror
ZegoMixerTask 新增参数 mixImageCheckMode,用于控制背景图(backgroundImageURL)、输入流占位图(inputList.imageInfo.url)、水印图片(watermark.imageURL)等图片资源校验失败时,能否正常发起混流任务。
该功能默认不开启(mixImageCheckMode 默认取值为 0),表示严格执行图片校验,即必须满足参数原有的 “支持协议和格式”、“图片大小”、“图片资源请求成功” 等规则,才能正常发起混流任务。
ZEGO 服务端 API 混流接口此前已支持该功能,详情请参考 开始混流 的 CheckImageMode 参数。
相关 API 请参考 startMixerTask
AI 变声功能对运行设备的性能有一定要求,开发者可以通过 [isAIVoiceChangerSupported] 接口提前判断设备能否支持运行 AI 变声功能。
相关 API 请参考 isAIVoiceChangerSupported
改进优化
问题修复
发布日期: 2024-04-09
问题修复
发布日期: 2024-04-01
改进优化
PrivacyInfo.xcprivacy
注意:如客户集成的是 3.13.2 版本之前的 SDK,如想发布到 App Store,需下载最新版本的 SDK,并拷贝 PrivacyInfo.xcprivacy 文件到旧版 SDK 相应位置。
请将 iOS SDK 内的隐私清单文件 PrivacyInfo.xcprivacy
升级到新版本,详情请参考 SDK 包内的 “ZegoExpressEngine.framework” 文件夹下的“PrivacyInfo.xcprivacy”。
问题修复
发布日期: 2024-03-27
问题修复
发布日期: 2024-03-21
新增功能
注意:
该功能仅支持在视频内部采集时使用、仅支持在 iOS 平台开发使用。
开启本功能后,画面可能会出现延迟、或被裁切的情况,请酌情使用。
新增视频防抖功能,在进行视频内部采集时,设置相机的稳定模式,降低拍摄抖动造成的影响,提高视频采集质量。
相关 API 请参考 setCameraStabilizationMode
注意:
该功能的安全性与传统方式相比稍低,请酌情使用。
使用该功能时,需要将 ZegoCDNConfig.protocol 设置为 “quic”。
ZegoCDNConfig 新增 quicConnectMode 属性,开发者在使用 QUIC 协议进行 CDN 推拉流时,可以设置为 QUIC 建连模式(即 quicConnectMode 取值为 1),0-RTT 建立连接,快速启用服务。目前已适配华为、网宿、腾讯等厂商的 CDN 直播产品。
该功能默认不开启(即 quicConnectMode 默认为 0,表示正常建立连接)。
相关 API 请参考 ZegoCDNConfig > quicConnectMode
注意:该功能只在发起转推时生效,转推过程中如果出现断连,SDK 会保持重试逻辑,此时无该回调通知。
发起转推任务时,支持通过 addPublishCdnUrl 接口,设置转推 CDN 的超时时间,用于监控流是否存在。例如,开发者已经发起转推任务,但该条流还未开始推流,在超过设置的超时时间后,SDK 会返回一个流不存在的回调通知。
该回调只会通知给转推发起者、而不是推流发起者。如果转推发起者和推流发起者不是同一个用户,建议开发者从服务端发起转推、并接收该通知。
相关 API 请参考 addPublishCdnUrl
ZegoDataRecordProgress 新增 quality 属性,在本地录制过程中,通过该属性回调录制文件的帧率、码率等质量数据。
相关 API 请参考 onCapturedDataRecordProgressUpdate
注意:外部采集功能和视频前处理功能不能同时使用,否则可能会出现拉流画面异常。
支持在开启外部采集功能后,分别通过 setLowlightEnhancement 和 enableColorEnhancement 接口,开启低照度增强和色彩增强,对采集画面进行调整,以满足业务需要。
相关 API 请参考 setLowlightEnhancement, enableColorEnhancement
注意:如需使用该功能,请联系 ZEGO 技术支持。
房间内有用户不支持 H.265 格式时,支持推流端回退到 H.264 格式重新推流。
改进优化
优化媒体推流器的回调通知逻辑,增加对“不支持的音频采样率”(例如,不支持 24K 的采样率)的错误回调,帮助开发者快速定位问题。
相关 API 请参考 onMediaDataPublisherFileClose
优化色彩增强算法,在画面色彩饱和度较高的场景下,相较之前的版本表现更佳。
注意:如需使用该功能,请联系 ZEGO 技术支持。
问题修复
发布日期: 2024-02-28
问题修复
发布日期: 2024-01-18
问题修复
发布日期: 2024-01-08
新增功能
注意:
如需使用该功能,请联系 ZEGO 技术支持。
版权音乐插件包无法单独使用,必须与 Express SDK 搭配使用。
支持版权音乐功能插件化,当开发者的业务场景仅需更新版权音乐相关的代码时,可以单独集成插件包,无需更新 Express SDK,即可平滑迁移。
注意:该功能获取的结果为房间内实时流列表;如果房间服务断开连接,获取的结果可能不准确。
支持开发者从客户端获取房间内的流列表,可以用于处理业务侧的相关逻辑。
相关 API 请参考 getRoomStreamList
注意:如需使用该功能,请联系 ZEGO 技术支持。
支持对转推到 CDN 的音视频流补静音帧,可以用于避免因时间戳不同步、造成的卡顿或音画不同步等问题发生。
支持获取当前播放的媒体文件的帧率统计信息,可以用于数据展示、异常监控等。
相关 API 请参考 getPlaybackStatistics
支持在本地缓存网络资源,如果需要播放同一个网络资源时,将优先使用缓存数据,提升用户体验。
相关 API 请参考 enableLocalCache, onMediaPlayerLocalCache
问题修复
发布日期: 2023-12-15
新增功能
注意:如需使用该功能,请联系 ZEGO 商务人员。
通过在云端转码服务中应用领先的编解码算法、以及其他视频前处理能力,持续优化视频播放的清晰度与流畅度,显著提升画质。该功能适用于以下场景:
观看量较大的秀场直播等场景。在保证视频流畅性和高质量的同时,节约带宽成本;同等主观画质下,能够降低 30% 左右的码率。
视频内容更复杂、色彩和纹理细节更丰富的弹幕游戏直播、体育直播等场景。同等拉流码率条件下,实现更高清的观看体验。
相关 API 请参考 ZegoMixerOutputVideoConfig > enableLowBitrateHD
针对各种摄像头等设备采集到的画面色彩偏灰、或饱和度偏低的情况,支持在保护人体肤色的同时,增强画面色彩,使其更加鲜艳明亮,更符合人眼真实的视觉感受,详情请参考 推流视频增强。
相关 API 请参考 enableColorEnhancement
支持向指定的客户端或客户服务器发送房间实时消息;消息类型分为 “普通消息”、“有序消息”,其中后者保证严格按照顺序接收消息。该功能适用于主播需要管理房间内的麦位等场景中,例如:
通过主播客户端,向需要闭麦的用户发送消息,接到消息的客户端进行闭麦。
主播希望将某用户踢出房间时,通过主播客户端,向对方的客户服务器发送消息、并踢出该用户。
相关 API 请参考 sendTransparentMessage
注意:该功能仅支持截图的前处理,不支持其他处理(如旋转、水印等)。
当采集设备输出的视频格式为 MJPEG 时,默认开启硬件解码加速能力,防止出现因设备性能不足而导致的帧率不足等问题。
该功能主要适用于在 4K 分辨率的采集设备上使用。
注意:
该功能默认不开启,即服务端使用默认的配置值。
该功能会增大延迟,请酌情使用。
自动混流接口支持设置水位,控制混流服务器拉流缓存的自适应调整的区间范围下限,以便在“混流耗时”和“推流端不稳定导致的画面卡顿”之间保持平衡。该功能设置后,仅对新的输入流生效,对于已经开始混流的输入流不生效。
例如实时合唱 KTV 场景中,推流端网络轻微波动可能会导致混流卡顿,此时观众观看时也会有较高概率出现卡顿。通过调节水位下限,可以优化观众端卡顿问题,但会增大延迟。
相关 API 请参考 ZegoAutoMixerTask > minPlayStreamBufferLength
新增支持将直播流作为输入流,进行混流处理;直播输入流的 URL 支持 RTMP 和 HTTP-FLV 两种协议。该功能适用于将主播连麦的RTC 画面流与云端体育直播流、游戏直播画面流等进行混合,实现游戏或体育直播解说的场景中。
在使用自定义音视频采集功能、且对应的采集源音频延迟不一致的情况下,可以在混流时自定义音频偏移值,从而实现混流输出后的音视频对齐,保证观众端的体验。
相关 API 请参考 ZegoMixerInput > advancedConfig
媒体播放器支持在检测到视频分辨率发生变化时,抛出相关回调通知开发者。该功能适用于推流画面的分辨率存在多次变更,需要调整推流端编码分辨率、拉流端渲染视图大小进行匹配的场景中。
相关 API 请参考 onMediaPlayerVideoSizeChanged
音效播放器支持分别设置推流音量、本地播放音量,保证本端和远端的音量大小都处于合适的区间。
相关 API 请参考 ZegoAudioEffectPlayer > setPublishVolume, ZegoAudioEffectPlayer > setPlayVolume, ZegoAudioEffectPlayer > setPublishVolumeAll, ZegoAudioEffectPlayer > setPlayVolumeAll
改进优化
优化服务端混流及单流转码能力,提高编码效率,同等码率下提升 5% 以上的主客观画质。
用户在 A 设备上登录成功后,A 设备断网;然后使用同一 userID 在 B 设备上登录成功。此时如果 A 设备网络恢复,重连会失败,并抛出 1002086 错误码,提示该 userID 已在其他设备登录。
问题修复
发布日期: 2023-11-20
问题修复
发布日期: 2023-11-09
问题修复
发布日期: 2023-10-27
新增功能
注意:
“AI 变声”功能为付费功能,如需申请体验或咨询正式收费标准,请联系 ZEGO 商务人员。
当前官网 SDK 不包含此功能,如有需要,请联系 ZEGO 技术支持特殊编包。
新增 AI 变声功能,实时通话中的“柯南变声领结”,完美重现目标角色的音色与韵律,同时保留用户的语速、情感、语调,随心所欲切换音色,超低延迟让用户畅享社交语聊、直播、游戏语音等场景,详情请参考 AI 变声。
相关 API 请参考 createAIVoiceChanger, destroyAIVoiceChanger
注意:
当前官网 SDK 不包含此功能,如有需要,请联系 ZEGO 技术支持特殊编包。
虚拟背景的视频填充方式为居中及等比例缩放,视频过大时,超出部分会被裁减。
使用主体分割功能时,虚拟背景支持使用视频素材,视频素材的最终帧率会与编码帧率保持一致,且循环播放。视频素材的限制说明,请参考 主体分割。
相关 API 请参考 enableVideoObjectSegmentation
媒体播放器支持伴奏音质增强,提升伴奏的音质以及现场的氛围感,适用于语聊房、K 歌等场景中。
相关 API 请参考 enableLiveAudioEffect
注意:由于音频 Dump 文件属于用户的隐私敏感数据,因此开发者实现该能力时,请务必认真阅读 《即构隐私政策》 中关于 “使用音频 Dump 功能” 的内容。此外,在收集音频 Dump 文件时,请在获得用户授权同意时,同步注明 Express SDK 收集目的。
支持将处理前后的音频数据保存下来并上传,用于定位音频相关问题、提高问题排查效率、缩短接入时间,详情请参考 如何获取、上传音频的 Dump 文件?
相关 API 请参考 startDumpData, stopDumpData, uploadDumpData, removeDumpData, onRequestDumpData, onStartDumpData, onStopDumpData, onUploadDumpData
支持提取、编码和传输开发者自定义采集的 RGBA 通道中的 Alpha 通道数据,从而在拉流端渲染出透明背景的主体,实现更加沉浸、真实的视频场景。
相关 API 请参考 enableAlphaChannelVideoEncoder
改进优化
在低照度增强的自动模式下,亮度的动态调整将更加流畅平滑,提升用户视觉体验。
相关 API 请参考 setLowlightEnhancement
优化网络测速的期望推、拉流码率上限,提升至 15M。开发者可以在推拉流前,检查音视频质量与当前网络的匹配程度,以保证通话质量稳定。
相关 API 请参考 startNetworkSpeedTest
注意:新增接口 muteAllPlayAudioStreams、muteAllPlayVideoStreams 与旧接口 muteAllPlayStreamAudio、muteAllPlayStreamVideo 之间不能混用。
新增接口 muteAllPlayAudioStreams、muteAllPlayVideoStreams 接口,用于在拉流时接收所有远端用户的音视频数据;同时支持通过 mutePlayStreamAudio、mutePlayStreamVideo 接口,单独控制指定的流的接收状态。
旧接口 muteAllPlayStreamAudio、muteAllPlayStreamVideo 调用后,无法单独控制指定流的接收状态。
相关 API 请参考 muteAllPlayAudioStreams, muteAllPlayVideoStreams, mutePlayStreamAudio, mutePlayStreamVideo
注意:播放过程中,如果修改了媒体流类型,会在下一次播放时生效。
使用媒体播放器播放音视频文件时,支持通过 setPlayMediaStreamType 接口,设置为“仅播放音频” 或“仅播放视频”,不消耗音视频解码性能。
相关 API 请参考 setPlayMediaStreamType
问题修复
发布日期: 2023-09-18
新增功能
注意:该功能需要 Windows 10.18362 或以上版本。
多源采集模块在进行屏幕采集时,支持系统 WGC(Windows Graphics Capture)采集,且默认使用该模式,采集效率更高。
多源采集模块在进行屏幕采集时,支持用户设置独立的预览和推流区域。
相关 API 请参考 updatePublishRegion
相关 API 请参考 onPlayerRecvMediaSideInfo
注意:
RTC 拉流时,支持通过预设的转码模板触发单流转码任务,输出不同分辨率的转码流,详情请参考 单流转码。
该功能可用于直播等场景中,观众可以基于网络质量、终端设备等,选择不同分辨率的流进行观看,确保播放的流畅性。
相关 API 请参考 ZegoPlayerConfig > codecTemplateId
相关 API 请参考 onPublisherDummyCaptureImagePathError
相关 API 请参考 enablePublishDirectToCdn
注意:当前官网 SDK 不包含此功能,如有需要,请联系 ZEGO 技术支持特殊编包。
支持均衡型 AI 降噪模式,与原有模式相比,在相同的人声保真效果前提下,噪音抑制效果明显提升,可以达到干净无噪音或不扰人的程度;但性能消耗稍微增加。适用于街道、马路、市场等较为嘈杂(信噪比低)的户外环境中,详情请参考 场景化 AI 降噪。
相关 API 请参考 ZegoANSMode > ZegoANSModeAIBalanced
改进优化
扩大 setLogConfig 接口的生命周期为 App 生命周期,且优先级高于 setEngineConfig 接口中的配置。
相关 API 请参考 setLogConfig、setEngineConfig
优化 App 休眠时的重试规则,登录房间和推拉流过程中,“App 休眠时间”也计入“最大允许重试时间”。
问题修复
发布日期: 2023-08-18
新增功能
注意:如需使用该功能,请联系 ZEGO 技术支持。
开发者设置“智能云代理”模式后,在 RTC 或 L3 拉流时,会优先使用直连网络模式进行尝试。如果直连网络不可用、且当前是蜂窝网络,则继续留在直连模式重试;如果直连网络不可用、且当前是非蜂窝网络,则切到云代理模式,详情请参考 云代理。
注意:如需使用该功能,请联系 ZEGO 技术支持。
新增支持抛出编码和硬件解码的低帧率告警回调,在 1v1 聊天、直播等场景中,开发者可基于该回调,实现调整推流分辨率、触发转码等操作。
相关 API 请参考 onPlayerLowFpsWarning, onPublisherLowFpsWarning
媒体播放器支持设置网络资源的 Http Headers,开发者可基于该配置,自定义限定网络资源的访问方式,加强资源的安全防护。
相关 API 请参考 setHttpHeader
在游戏语音场景中:
onPublisherSendAudioFirstFrame 回调函数,新增通道 channel 参数,支持多通道监听推流发送首帧信息。
相关 API 请参考 onPublisherSendAudioFirstFrame
改进优化
问题修复
废弃删除
在 3.8.1 版本,对以下 API 接口进行废弃变更。
API 接口变更后可能存在兼容性问题,详情请参考 3.8.1 及以上版本升级指南。
发布日期: 2023-07-28
新增功能
注意:
使用此功能前,需要先调用 setVideoConfig 接口,指定视频编码格式 codecID 为 “ZegoVideoCodecIDH264DualStream(大小流编码)”。
设置大流、小流的分辨率的 “比例” 需要保持一致,否则调用接口会出错。
在指定编码格式为 “大小流编码” 的情况下,支持分别设置大流和小流的分辨率、帧率和码率,详情请参考 视频大小流和分层编码。
相关 API 请参考 ZegoExpressEngine > setVideoConfig, setPublishDualStreamConfig
新增屏幕采集区域发生变化时的回调通知 onRectChanged。在开始屏幕采集后,当采集区域发生变化时,SDK 会通过此回调通知开发者,开发者通过监听此回调,可以修改预览画面大小等配置。
相关 API 请参考 onRectChanged
改进优化
相关 API 请参考 onNetworkQuality
相关 API 请参考 submitLog
问题修复
发布日期: 2023-07-03
问题修复
发布日期: 2023-06-21
新增功能
注意:当前官网 SDK 不包含此功能,如有需要,请联系 ZEGO 技术支持特殊编包。
在实景或绿幕场景中,开发者可以通过该功能对用户的背景进行虚化模糊处理,或替换为自定义图片背景,详情请参考 主体分割。
该功能可用于视频会议、1v1 音视频通话等场景中,帮助用户更好的保护个人隐私,以及提升通话的趣味性。
相关 API 请参考 enableVideoObjectSegmentation
屏幕采集功能在仅支持采集图像的基础上,增加了采集系统音频的能力,从而实现共享演示课件画面的同时,共享正在播放的音乐。该功能可用于在线教学、游戏直播等场景中。
相关 API 请参考 startCapture
新增增强型 KTV 混响效果,实现更集中、亮度更好的 KTV 人声效果。与之前的 KTV 混响音效相比,Enhanced KTV 混响效果缩短了混响时长,提高了干湿比。
原有的 KTV 混响音效仅适用于人声瑕疵较为明显的用户,增强型 KTV 混响效果适用于大多数专业用户和普通用户。
相关 API 请参考 setReverbPreset
开发者可以通过设置媒体播放器、音效播放器的位置和朝向,实现本地音频、在线音频资源的 3D 音效。该功能可用于在虚拟场景中设置物品的音效、以及指定位置的背景音乐等。
相关 API 请参考 ZegoMediaPlayer > updatePosition, ZegoAudioEffectPlayer > updatePosition
针对媒体播放器正在播放的视频文件,开发者可以主动获取视频的分辨率、帧率等信息。
相关 API 请参考 getMediaInfo
媒体播放器倍速的上限提升到 4 倍速。例如,用户在播放音视频文件时,如果已设置为 2 倍速播放,长按屏幕时可以加速至 4 倍速。
相关 API 请参考 ZegoMediaPlayer > setPlaySpeed
针对在线播放器的版权音乐保护,媒体播放器支持边下载边回调未解密的二进制数据,由开发者解密后再传回媒体播放器播放,过程中不会产生文件或缓存文件。
相关 API 请参考 ZegoMediaPlayer > enableBlockData
改进优化
问题修复
发布日期: 2023-05-19
新增功能
在进行音视频推流时,通过 onPublisherSendAudioFirstFrame、onPublisherSendVideoFirstFrame 回调,监听“首帧音频”或“首帧视频”的发布时机。该功能可用于统计音视频推流的耗时、或更新 UI 表现等。
相关 API 请参考 onPublisherSendAudioFirstFrame, onPublisherSendVideoFirstFrame
在通过媒体播放器进行音视频渲染时,通过 onMediaPlayerFirstFrameEvent 回调,监听渲染完成后的“首帧音频”或“首帧视频”的发布时机。该功能可用于音视频渲染的耗时、或更新 UI 表现等。
相关 API 请参考 onMediaPlayerFirstFrameEvent
注意:如需使用该功能,请联系 ZEGO 技术支持。
使用外部采集功能时,支持通过实验性 API 接口主动偏移 NTP 时间戳。该功能可用于 KTV 的合唱、伴奏、歌词对齐等场景。
多房间模式下,支持通过 switchRoom 接口,快速便捷地实现切换房间的功能。
相关 API 请参考 switchRoom
改进优化
注意:如需使用该功能,请联系 ZEGO 技术支持。
针对华为机型设备,SDK 支持通过相关配置,降低 80% 的视频硬解耗时时长。
该优化从 3.5.0 版本开始生效,不需要额外接口。
问题修复
发布日期: 2023-04-26
新增功能
注意:
将音视频及信令数据访问限定在某一区域,用以满足地区数据隐私安全相关法规,即限定用户访问某一特定区域的音视频服务,详情请参考 地理围栏。
相关 API 请参考 setGeoFence
支持动态开关流量控制功能,同时支持设置流量控制属性等。
相关 API 请参考 enableTrafficControl, setMinVideoBitrateForTrafficControl, setMinVideoFpsForTrafficControl, setMinVideoResolutionForTrafficControl
改进优化
删除 SDK 内部一些没必要的内存申请,优化 SDK 内存使用率,相比上个版本,内存使用率减少了 10% 左右。
优化屏幕共享的旋转逻辑,规避录屏进程下,旋转引发的内存占用超 50MB 限制导致的崩溃。
问题修复
废弃删除
具体说明,请参考 App Store submission requirement starts April 25 及 Xcode 14 Release Notes。
具体说明,请参考 Xcode 14 Release Notes。
发布日期: 2023-03-24
问题修复
发布日期: 2023-03-20
新增功能
在外放场景中,设备的麦克风与扬声器过近,容易导致人声模糊或沉闷。在该场景下,人声增强可以有效提升人声清晰度并改善沉闷感,因此在外放场景下,建议开启该功能。
为实现外放场景下的人声增强效果,可开启人声增强音效并设置增强等级,增强等级推荐配置为 4,可用于 KTV 外放场景下,精细控制人声效果。
相关 API 请参考 enableSpeechEnhance
注意:如需使用该功能,请联系 ZEGO 技术支持。
在自定义音频采集和 SDK 内部渲染模式下,支持混音自适应对齐和 AEC 功能,可使在实现 KTV 场景下的合唱时,达到更好的效果。
游戏语音支持自定义设置发声模式和收听模式,可用于实现加入小队后,需屏蔽非范围内的同一小队玩家的场景,详情请参考 游戏语音。
相关 API 请参考 setRangeAudioCustomMode
注意:如需使用该功能,请联系 ZEGO 技术支持。
注意:通过 CDN 拉取转码流时,必须使用转推 CDN。如需使用该功能,请联系 ZEGO 技术支持。
单流转码,指在云端把每条原始流转换为不同编码格式、不同分辨率的转码流。拉流时需传入转码模板 ID 拉取转码流。在直播等场景中,观众可以基于接入网络质量、终端设备等,自行选择不同分辨率的流进行观看,以保证播放的流畅性。
注意:
同一个混流任务支持输出多个分辨率的视频流,可用于实现混流场景下的转码需求。
场景化音视频配置新增 [StandardVoiceCall] 标准语音通话场景,适用于 1v1 纯语音通话场景,详情请参考 场景化音视频配置。
相关 API 请参考 setRoomScenario
改进优化
注意:enableVideoSuperResolution 修改了调用时机,需要在 initVideoSuperResolution 后才能调用,详情请参考 超分辨率。
相关 API 请参考 enableVideoSuperResolution, initVideoSuperResolution
注意:enableVideoSuperResolution 修改了调用时机,需要在 initVideoSuperResolution 后才能调用,详情请参考 超分辨率。
相关 API 请参考 initVideoSuperResolution, uninitVideoSuperResolution
针对 KTV 场景的 AEC 优化,实现了:
开发者在应用工程中,通过新增的 ZegoExpressEngine > setAppGroupID
及原生层的 ZegoReplayKitExt > setupWithDelegate:appGroup
接口,启动 AppGroup 配置,可以获取更好的性能与稳定性。
相关 API 请参考 setAppGroupID
问题修复
发布日期: 2023-02-24
新增功能
Flutter Web 支持使用屏幕共享功能,详情请参考 屏幕共享。
相关 API 请参考 createScreenCaptureSource、setAudioSource、setVideoSource
Flutter Web 支持使用美颜功能,详情请参考 推流视频增强 - 基础美颜。
相关 API 请参考 enableEffectsBeauty、setEffectsBeautyParam
Flutter Web 支持使用多房间功能,详情请参考 登录多房间。
相关 API 请参考 setRoomMode
问题修复
SEIType
没有效果的问题发布日期: 2023-01-31
新增功能
通过视频大小流编码(H.264 DualStream)对视频进行码流分层时,相比较于分层视频编码(H.264 SVC),视频大小流编码(H.264 DualStream)支持使用硬件编码,即 ZegoVideoCodecID 新增 ZegoVideoCodecID.H264DualStream
字段,详情请参考 设置视频编码方式。
相关 API 请参考 ZegoVideoCodecID
改进优化
注意:自定义信令配置默认大小为 1KB,如需扩展到 4KB,请联系 ZEGO 技术支持进行处理。
问题修复
发布日期: 2022-12-27
新增功能
面向在线 KTV、一起看电影、看比赛等、视频会议、在线教育等音视频源丰富多样的互动场景,多源采集提供了灵活易用的音视频采集源与通道管理能力,大量减少开发者的开发及维护成本。
多源采集能力对屏幕共享、混音等常见能力的实现路径,进行缩短优化及归一化设计,从 3.1.0 版本后,您可以不用再通过自定义采集实现上述复杂的能力,详情请参考 多源采集文档。主要能力特性如下:
注意:如需使用该功能,请联系 ZEGO 技术支持。
通过设置 SDK 的云代理接口,将 SDK 对应的所有流量通过云端的代理服务器进行中转,实现与 RTC 通信,详情请参考 云代理文档。
相关 API 请参考 setCloudProxyConfig
改进优化
ZEGO 自研调度系统针对网络质量极差地区进行了深度优化。
问题修复
Logout
信令可能失败的问题发布日期: 2022-12-06
本次更新包含不兼容改动,详情请参考 3.0.0 及以上版本升级指南。
新增功能
注意:如需使用该功能,请联系 ZEGO 技术支持。此功能目前只支持 Android 平台和 iOS 平台。
新增 enableVideoSuperResolution 接口支持对某一条视频流进行超分辨率处理,从而得到更好的画质。超分辨率,简称超分,是客户端对拉取的视频流的宽和高进行实时倍增处理的技术,例如,从 640x360 超分为 1280x720,详情请参考 超分辨率 文档。
相关 API 请参考 enableVideoSuperResolution, onPlayerVideoSuperResolutionUpdate
注意:如需使用该功能,请联系 ZEGO 技术支持,此功能目前只支持 Android 平台、iOS 平台、 macOS 平台和 Windows 平台。
场景化 AI 降噪功能,在之前针对所有非人声进行降噪的基础上,新增支持在音乐场景下的降噪能力,通过识别音乐,智能调整降噪效果还原音乐音质。SDK 会实时对麦克风输入内容进行音乐检测,在声卡、弹唱或近场音乐场景下,自动调整降噪等级,保证音乐的高保真音质,详情请参考 场景化 AI 降噪 文档。
为方便开发者快速接入,降低开发者接入门槛,SDK 提供多种预设场景。开发者可根据所需场景,选择对应的房间模式 ZegoScenario,SDK 将自动应用适合该场景的音视频编解码器、音视频参数、流控策略等配置,从而快速实现该场景下的最佳效果。
当前支持场景包括秀场直播、KTV、标准 1v1 音视频通话、高画质 1v1 音视频通话、标准语聊房、高音质语聊房(Web 端暂不支持高品质语聊房场景及 KTV 场景),详情请参考 场景化音视频配置 文档。
相关 API 请参考 setRoomScenario
注意:接口增加可选参数 codecBackend
。返回值更改为 int 类型;0 表示不支持,不可以使用该编码格式进行推流;1 表示支持,可以使用该编码格式进行推流;2 表示未确认,建议稍后再调用本接口,此功能目前只支持 Android 平台、iOS 平台、 macOS 平台和 Windows 平台。
SDK 支持获取当前设备指定视频编解码器的编解码模式的支持情况,从而更好的帮助开发者选择使用的编码器及编码模式并获得更好的效果。
例如,ZegoExpressEngine.instance.isVideoEncoderSupported(ZegoVideoCodecID.H265, codecBackend: ZegoVideoCodecBackend.Hardware),即表示检查当前设备是否支持 H265 的硬编,若支持,则返回 1。
相关 API 请参考 isVideoEncoderSupported, isVideoDecoderSupported
注意:该功能默认开启,如需关闭该功能,请联系 ZEGO 技术支持,此功能目前只支持 Android 平台、iOS 平台、 macOS 平台和 Windows 平台。
在 App 有获取地理位置权限的情况下,开发者可以选择是否允许 ZEGO SDK 获取系统缓存的 GPS 信息,默认进行获取。当开发者希望关闭该功能时,需要联系 ZEGO 技术支持进行设置。
注意:此功能目前只支持 Android 平台、iOS 平台、 macOS 平台和 Windows 平台。
支持每次开启远端摄像头后,SDK 拉流并渲染完第一帧远端摄像头视频数据后进行回调,开发者可利用该回调统计首帧耗时,或更新播放流的 UI 组件。
相关 API 请参考 onPlayerRenderCameraVideoFirstFrame
注意:若希望通过地区、用户等更多维度,从云端控制拉流方式,请联系 ZEGO 技术支持进行相关配置。
Web 平台拉流接口新增 CDN、 CDN Plus 的拉流资源模式(ZegoStreamResourceMode),开发者可按流维度自行开启使用 CDN、 CDN Plus 拉流。
CDN Plus 流是比 CDN 拉流直播质量更高,但是价格接近 CDN 的一种性价比高的拉流方式。
相关 API 请参考 startPlayingStream
改进优化
注意:如需使用该功能,请联系 ZEGO 技术支持。
针对 1v1 通话场景进行了优化,适用在纯 RTC 场景下使用。
对空间音频能力进行了优化,用户可以区分前后音源,从而达到更好的沉浸感。
优化 AGC 自动增益控制算法,当采集音量过大时,不会造成破音情况。
SDK 优化了内部策略,在音视频的场景下,支持最小下行 50 kbps 拉流不卡顿,保障更好的极端弱网下的体验。
问题修复
废弃删除
废弃 ZegoScenario 场景枚举中的 General
,Communication
, Live
三种场景,详情请参考 场景化音视频配置 文档。
setDebugVerbose
、setPlayStreamVideoLayer
、enableAudioDataCallback
等接口,详情请参考 3.0.0及以上版本升级指南。发布日期: 2022-10-25
本次更新包含不兼容改动,详情请参考 2.23.0 及以上版本升级指南。
新增功能
Flutter 框架增加对 macOS 的支持。 macOS 目前只支持 TextureRenderer,推荐通过 createCanvasView 获取 ZegoCanvas 的 view。
相关 API 请参考 setPlayerCanvas
Windows 支持媒体播放器通过 setPlayerCanvas 接口设置显示画面,并通过 takePublishStreamSnapshot,takePlayStreamSnapshot,takeSnapshot 接口进行截图。
相关 API 请参考 setPlayerCanvas、takePublishStreamSnapshot,takePlayStreamSnapshot,takeSnapshot。
由于移动端摄像头具备角度、分辨率、旋转等特性,开发者需要做许多复杂的适配。
当前 SDK 对各种配置进行封装,对外提供简单的模式选择,在原有自定义模式基础上,新增固定比例模式、自适应模式及对齐模式,可有效降低开发者接入成本,详情请参考 视频采集旋转。
目前暂不支持 iOS 的 TextureRenderer 渲染模式。
相关 API 请参考 setAppOrientationMode
注意:如需使用该功能,请联系 ZEGO 技术支持。
华为手机使用系统耳返的情况下,增加混响效果。由于系统的限制,只支持如下三种混响效果:KTV、Theatre(剧院)、Concert(音乐会),默认为 KTV。若选择三种效果之外的混响效果,依然默认为 KTV 效果。
Flutter 框架增加部分接口,用于开发 Web 程序。
相关 API 请参考 enableCamera、mutePlayStreamAudio、mutePlayStreamVideo、sendBroadcastMessage、sendBarrageMessage 等。
改进优化
注意:如需使用该功能,请联系 ZEGO 技术支持。
优化超分功能表现,提高支持的最大分辨率、提升机型覆盖、优化资源占用和推理速度。
废弃删除
为了方便开发人员实现视频渲染特性,[createTextureRenderer]、[destroyTextureRenderer]、[updateTextureRendererSize]、[createPlatformView] 和 [destroyPlatformView] API 模块从 2.23.0 版本开始被删除。
因此,当从旧版本升级到 v2.23.0 时,开发人员需要迁移到新的 createCanvasView 和 destroyCanvasView 接口来实现视频渲染功能。新的 ZegoExpressCanvasViewUtils
API 模块可以同时支持外部纹理和 PlatformView 渲染方法,详情请参考 v2.23.0 升级指南
相关 API 请参考 createCanvasView、destroyCanvasView
问题修复
发布日期: 2022-08-24
新增功能
若在内网或防火墙场景下,您可以通过代理服务器与公网交互,并通过 setEngineConfig 设置代理服务器地址,保证 ZEGO 音视频云服务正常,目前仅支持 SOCKS5 协议,详情请参考 本地代理。
相关 API 请参考 setEngineConfig
低照度增强功能默认使用 OpenGL,如果您需要指定使用 Metal,请联系 ZEGO 技术支持。
注意:
相关 API 请参考 enableCustomVideoCapture
注意:若要开启该功能,需要联系 ZEGO 技术支持。
支持 Windows AMD/NVIDIA 独立显卡和 Intel 核芯显卡,您可以通过 setEngineConfig 修改默认显卡优先级。
相关 API 请参考 setEngineConfig, enableHardwareEncoder, enableHardwareDecoder
新增 setAudioDeviceMode 接口进行动态修改设备的音频模式,该配置决定设备的音量模式、前处理模式以及 Mic 占用逻辑,您可以根据具体场景进行选择,详情请参考 如何设置音频设备模式 ZegoAudioDeviceMode?
相关 API 请参考 setAudioDeviceMode
注意:
相关 API 请参考 enableAlignedAudioAuxData, onAlignedAudioAuxData, enableAux
注意: Windows 目前不支持媒体播放器设置显示画面 setPlayerCanvas,且截图功能还在完善中,涉及接口包括 takePublishStreamSnapshot,takePlayStreamSnapshot,takeSnapshot。
Flutter 框架增加对 Windows 的支持。 Windows 目前只支持 TextureRenderer,推荐使用 createCanvasView 获取 ZegoCanvas 的 view。
相关 API 请参考 setPlayerCanvas
createTextureRenderer
及 createPlatformView
接口,且将根据 ZegoEngineProfile.enablePlatformView 接口判断优先使用哪种方式进行创建。同时当平台只支持其中一种创建方式时,将自动使用支持的方式进行创建。目前 Windows 只支持 TextureRenderer, Web 只支持 PlatformView。updateTextureRendererSize
来更新窗口大小。相关 API 请参考 createCanvasView, destroyCanvasView
改进优化
当远端用户异常时,onNetworkQuality 每 2s 回调一次质量未知状态(ZegoStreamQualityLevel.Unknown 状态),当用户该状态持续 8s 后,则认为远端用户已异常断开,此时回调质量异常状态(ZegoStreamQualityLevel.Die 状态)。
相关 API 请参考 onNetworkQuality
推拉流质量回调会每隔 3s 回调一次质量最差的结果,当周期内出现严重的抖动或丢包时,能够立刻反馈出流质量差。
相关 API 请参考 onPlayerQualityUpdate, onPublisherQualityUpdate, onNetworkQuality
优化日志上报策略,提高日志上传效率。
AGC 新改进的谐波检测算法存在崩溃问题,现回退至老版本的谐波检测算法。
问题修复
发布日期:2022.07.15
问题修复
发布日期:2022.07.12
新增功能
SDK 默认的距离更新频率由 1s 改为 100ms,能够基本满足大部分开发者使用范围语音时的平滑衰减效果,优化了使用范围语音时声音衰减的体验,可以实现更平滑、自然的衰减效果。
若希望与实际的业务效果进行更优的匹配,可调用 setPositionUpdateFrequency 接口自行进行修改频率。
相关 API 请参考 setPositionUpdateFrequency
注意:应在调用 createEngineWithProfile 接口创建引擎后,再调用 setLowlightEnhancement 接口。
当推流端用户周围环境较暗、或摄像头设置的帧率较高,导致直播画面比较暗,无法正常显示或识别主体的情况下,可调用 setLowlightEnhancement 接口,设置低照度增强,提升视频画面亮度。低照度增强功能包含三种模式:1:不开启低照度增强(默认)、2:开启低照度增强 、3:自动开关低照度增强。
开发者可以根据业务场景选择不同的低照度增强模式:当希望自行判断是否需要进行低照度增强时,可以通过切模式 1 和 2 来控制;当希望 SDK 自动增强时,可以使用模式 3 ,SDK 将自动判断用户所处的光照环境,开启或关闭低照度增强。
相关 API 请参考 setLowlightEnhancement
在调用 startMixerTask 接口混流时,开发者可以通过 “ZegoMixerInput” 类型参数,设置 “cornerRadius”(视频画面圆角半径),将视频边框设置为圆角。“cornerRadius” 的单位为 px,取值不得超过视频画面宽高中较短者的一半。
相关 API 请参考 startMixerTask
注意:若希望通过地区、用户等更多维度,从云端控制拉流方式,请联系 ZEGO 技术支持进行相关配置。
拉流接口新增 CDNPlus 的拉流资源模式(ZegoStreamResourceMode),开发者可按流维度自行开启使用 CDNPlus 拉流。CDN Plus 拉流是比 CDN 拉流直播质量更高,但是价格接近 CDN 的一种性价比高的拉流方式,详情请参考 CDN Plus 拉流。
相关 API 请参考 startPlayingStream
改进优化
新增 1002074、1002075、1002076、1002077、1002078、1002079、1002080 等错误码。开启强制登录鉴权后,如果 Token 错误时,会返回这些错误码,详情请参考 常见错误码 中的详细解释和处理建议。
优化了 KTV 实时合唱场景中,人声和伴奏对齐能力。避免当客户端同时推人声和伴奏两条流时,因为设备播放的延迟,导致人声和伴奏不对齐,造成的体验下降。
问题修复
修复 2.20.0 ~ 2.20.2 版本 SDK 采用 L3 拉流时,如果拉到的流是 2.15.0 及之前版本 SDK 推送的流,可能会失败的问题。
发布日期:2022.07.04
新增功能
发布日期:2022.06.20
问题修复
发布日期:2022.06.16
新增功能
在调用 createEngine 接口初始化引擎以及 createMediaPlayer 接口创建媒体播放器后,可以调用 setActiveAudioChannel 接口设置左声道、右声道或全部声道。初始化时,媒体播放器默认为全部声道。
相关 API 请参考 setActiveAudioChannel
注意:必须等待媒体播放器结束播放后,接口调用才能生效。
调用 createEngine 接口初始化引擎,调用 createMediaPlayer 接口创建媒体播放器,可以调用 clearView 清除遗留的最后一帧画面。
相关 API 请参考 clearView
注意:当通过 setVideoConfig 设置的帧率小于 enableCameraAdaptiveFPS 期望帧率最小值时,将使用 setVideoConfig 设置的帧率值。由于不同的手机厂商的硬件和算法策略不同,该接口在不同的机型或同一机型的前后摄像头上,效果存在一定差异。
当推流端用户设置的帧率较高,而所处环境光照较低无法正常显示或识别主体的情况下,可以调用 enableCameraAdaptiveFPS 接口,在一定范围内自动降低帧率来增加曝光时间,从而提升视频画面亮度。该功能常用于对曝光要求较高的直播场景。enableCameraAdaptiveFPS 接口需在调用 createEngine 接口初始化引擎之后,启动摄像头前调用。
相关 API 请参考 enableCameraAdaptiveFPS
注意:图片地址长度不得超出1024 字节,否则出现错误码 1005034;图片格式应为 JPG 和 PNG 格式,否则出现错误码 1005035;图片不得超过 1M,否则出现错误码 1005036。
支持通过 startMixerTask 接口的 “ZegoMixerImageInfo” 类型参数,设置图片地址,将单条输入流的内容设置为图片,用于替代视频,即当使用图片时不显示视频。该功能的使用场景为连麦时,视频用户可能需要暂时关闭摄像头而显示其图片,或者当视频用户和音频用户连麦,需要显示音频用户的图片。
相关 API 请参考 startMixerTask
注意:如需使用该功能,请联系 ZEGO 技术支持。
开发者发现推流用户违规时,调用 mutePlayStreamVideo 接口暂停拉流用户拉取违规用户的视频流,要求违规用户整改。同时使用本功能,可避免因拉流用户的视频界面依然保留最后一帧导致的违规风险。
注意:如需使用该功能,请联系 ZEGO 技术支持。
提供新的音量增益方式,开发者可以根据实际需求选择合适的音量增益方式。
注意:如需使用该功能,请联系 ZEGO 技术支持开通后台服务。
在调用 startPublishingStream 接口开始推流时,开发者可以设置 “ZegoStreamCensorshipMode” 参数,进行流级别的音视频自动审核,包含如涉黄、涉政等审核类型,以此降低开发者的接入难度和业务维护成本。
相关 API 请参考 startPublishingStream
改进优化
表示消息输入长度超出限制。出现此错误码时,请检查输入内容长度或联系 ZEGO 技术支持扩展消息内容长度。
在版权音乐初始化时,由于未设置 AppSign 或 Token,导致鉴权失败,会出现此错误码。此时,如果是使用 AppSign 鉴权,请在初始化 SDK 时传入 AppSign;如果是使用 Token 鉴权,在调用 initCopyrightedMusic 接口前,请调用 loginRoom 接口并传入 Token,以供鉴权。
相关 API 请参考 initCopyrightedMusic, loginRoom
问题修复
发布日期:2022.05.23
新增功能
直推 CDN 时,在不改变推流方式的情况下,SDK 从客户的 CDN 源站拉流,通过 L3 将音视频内容分发给观众,通过 [ZegoResourceType] 控制源站资源。该功能常用于直播场景。
相关 API 请参考 startPlayingStream
注意:目前只支持 RTC 场景,直推 CDN 和转推 CDN 场景下无效。
从 2.19.0 版本开始,支持在音视频场景下将 SEI(媒体补充增强信息)与音频帧同步发送。该功能常用于 SEI 与音频强相关的视频场景,例如实时 KTV。
在 2.19.0 之前版本中,SEI 数据是跟随视频帧数据一起发送,一般情况下视频帧率远低于音频帧率,导致混流对齐、伴奏对齐场景下等 SEI 精度/频率不足。
相关 API 请参考 onPlayerRecvAudioSideInfo, sendAudioSideInfo
改进优化
问题修复
发布日期:2022-04-28
新增功能
AI 降噪目前会对麦克风采集的音乐有较大损伤,包括人通过麦克风唱歌的声音。如需使用该功能,请联系 ZEGO 技术支持。
AI 降噪指的是 SDK 会对麦克风采集的声音进行降噪处理,在原有的稳态噪声正常处理的情况下,还会处理非稳态噪声,主要包括鼠标、键盘声、敲击、空调、厨房碗碟、嘈杂餐厅、环境风声、咳嗽、吹气 等非人声噪声。通过 [setANSMode] 接口中的 “ZegoANSMode” 参数设置 AI 降噪模式,并且可以实时调整降噪模式。
该功能常用于通话、会议等没有背景音乐的场景,例如普通音质语聊房、语音会议、语音开黑、一对一视频通话。
相关 API 请参考 setANSMode
开始播放音效后, 调用 [SetPlaySpeed] 接口可以对音效设置四种播放速度(会同时设置本地播放速度和推流速度),分别为 0.5 倍速、原始速度、1.5 倍速和 2 倍速,默认为原始速度。
相关 API 请参考 SetPlaySpeed
QUIC 协议推拉流主要用于改善弱网环境下 CDN 直播质量不稳定的情况,但是改善有限,推荐使用低延时直播,享受高质量且低延时的直播服务。当前支持使用腾讯、网宿两家 CDN 直播产品的 QUIC 协议推流及拉流。
通过 [enablePublishDirectToCDN] 接口中的 “ZegoCDNConfig” 参数配置推流协议和 QUIC 版本,若想进行 QUIC 协议的自定义 CDN 拉流,需要通过 [startPlayingStream] 中的 “ZegoPlayerConfig“ 参数配置拉流协议和 QUIC 版本。
相关 API 请参考 enablePublishDirectToCDN
发起推流后,可以通过 [onPublisherStreamEvent] 回调实时监听推流状态,该回调会返回当前使用的推流地址、资源类型和协议相关信息。
发起拉流后,可以通过 [onPlayerStreamEvent] 回调实时监听拉流状态,该回调会返回当前使用的拉流地址、资源类型和协议相关信息。
相关 API 请参考 onPublisherStreamEvent, onPlayerStreamEvent
调用 startMixerTask 开启或更新混流任务,支持通过 “backgroundUrl” 和 “inputVolume” 分别设置混流水印和混流的输入音量。
相关 API 请参考 startMixerTask
当房间的连接状态发生变化时会触发 [onRoomStateChanged] 回调,通过“ZegoRoomStateChangedReason” 参数提供更加详细的连接状态及状态变化原因。
相关 API 请参考 onRoomStateChanged
改进优化
调用 startMixerTask 接口,通过 “ZegoFontStyle” 中的 “border” 属性可以设置字体是否有边框,通过 “borderColor” 属性可以设置字体边框颜色。
相关 API 请参考 startMixerTask
新增 1005000 错误码,表示未开通混流服务。出现此错误码时,请在 ZEGO 控制台 自助开通混流服务(开通步骤请参考 项目管理 - 服务配置 中的“混流”),或联系 ZEGO 技术支持开通。
相关 API 请参考 startMixerTask
问题修复
发布日期:2022-04-15
问题修复
发布日期:2022-03-18
新增功能
新增 [setMinVideoFpsForTrafficControl] 和 [setMinVideoResolutionForTrafficControl] 接口,可以用于用户网络不佳且开启了流量控制时,通过调用接口设置最低视频帧率及分辨率,帮助用户综合控制视频的显示效果。
相关 API 请参考 setMinVideoFpsForTrafficControl, setMinVideoResolutionForTrafficControl
稳态语音默认检测周期为 3 秒,用户如需修改默认检测周期,可通过 [startAudioVADStableStateMonitor] 接口自定义检测周期参数。
相关 API 请参考 startAudioVADStableStateMonitor
新增枚举 [ZegoRangeAudioModeSecretTeam] 隐秘小队模式。在该模式下,同一房间下的用户,收听者既能与同一小队的人交流,也能听到所有在音频接收范围内且为全世界模式发声者的声音,如太空狼人杀游戏场景。
相关 API 请参考 setRangeAudioMode
注意:该功能仅在开发阶段使用,请勿在线上版本开启此功能。
新增 [enableDebugAssistant] 接口,开发者调用该接口开启调试助手功能,SDK 将会打印日志到控制台,并且在 SDK 其他接口的调用出现异常时,UI 会弹窗提示错误。
相关 API 请参考 enableDebugAssistant
改进优化
2.17.1 及以上版本,在创建引擎时将 AppSign 传空或不传,并且在登录房间时必须传入 Token,鉴权通过后即可使用实时音视频功能,具体请参考 使用 Token 鉴权。
2.17.1 以下版本,在创建引擎时传入 AppSign,鉴权通过后即可使用实时音视频功能。
相关 API 请参考 createEngineWithProfile, loginRoom
问题修复
发布日期:2022-02-17
新增功能
游戏语音模块新增 [muteUser] 接口,本地用户可以根据需要,在初始化游戏语音 [createRangeAudio] 之后,通过 [muteUser] 接口设置是否接收指定远端用户的音频数据。
该功能常用于游戏场景,例如发声者被墙壁阻挡,则听众不需要接收该声音。
相关 API 请参考 muteUser
[onPlayerQualityUpdate] 回调新增 “mos” 参数,表示对拉流音质的评分。开发者对音频质量比较关注时,可通过该参数了解当前音频的质量情况。
相关 API 请参考 onPlayerQualityUpdate
注意:如需使用该功能,请联系 ZEGO 技术支持。
为了在弱网环境下让推流端可以推更高画质的视频流,SDK 支持基于 rtmp over quic 协议来推流。
该功能常用于单主播直推 CDN、直播 PK 场景。
如需使用该功能,请联系 ZEGO 技术支持。
2.15.0 及之前版本:SDK 在使用 [startPlayingStream] 拉 H.265 编码的流时,如果拉流端出现因硬件性能较差导致解码帧率不足时,SDK 无法主动降级,需要用户先停止拉 H.265 编码的流,再转拉 H.264 编码的流。
2.16.0 及以上版本:新增 H.265 拉流自动降级策略,在使用 [startPlayingStream] 拉 H.265 编码的流时,SDK 可以根据拉流质量情况,在拉流端硬件性能较差导致解码帧率不足的情况下,会自动降级拉 H.264 编码的流。
相关 API 请参考 startPlayingStream
改进优化
从此版本开始 Android SDK 支持的 API 级别要求不低于 19,最低支持的操作系统版本从 Android 4.1 变更为 Android 4.4,如需支持 Android 4.1,请联系 ZEGO 技术支持。
ZEGO 提供了全新的基础美颜功能,为用户呈现出良好的肌肤状态,打造自然的美颜效果。开发者需要在推流前先调用 [startEffectsEnv] 接口初始化美颜环境,然后调用 [enableEffectsBeauty] 接口开启美颜功能。通过 [setEffectsBeautyParam] 接口可以按需调整美白、磨皮、锐化以及红润的程度,实现基础美颜能力。
该功能常用于视频通话、直播等场景。
相关 API 请参考 startEffectsEnv, stopEffectsEnv, enableEffectsBeauty, setEffectsBeautyParam
调用 [getNetworkTimeInfo] 接口获取同步网络时间信息时,SDK 会定时更新 NTP 时间,减少获取到的 NTP 时间误差。
相关 API 请参考 getNetworkTimeInfo
废弃删除
旧的美颜功能较为简单,不太符合开发者的预期,因此在 2.16.0 及以上版本废弃了 [enableBeautify] 接口,请使用 [enableEffectsBeauty] 接口代替;废弃了 [setBeautifyOption] 接口,请使用 [setEffectsBeautyParam] 代替。
相关 API 请参考 enableBeautify, enableEffectsBeauty, setBeautifyOption, setEffectsBeautyParam
问题修复
发布日期:2021-12-15
新增功能
媒体播放器新增声浪频谱回调和开关接口,可以控制是否开启回调以及回调的频率,从而获取媒体播放器当前的声浪和频谱。在通过媒体播放器播放资源,如一起看电影、游戏语聊房场景时,通过该功能可以做频谱动画的功能,增加趣味性。
创建媒体播放器后,调用 [enableSoundLevelMonitor] 接口可以开启声浪监听,开启后可以通过 [onMediaPlayerSoundLevelUpdate] 回调监听声浪的变化。
创建媒体播放器后,调用 [enableFrequencySpectrumMonitor] 接口可以开启频谱监听,开启后可以通过 [onMediaPlayerSoundLevelUpdate] 回调监听频谱的变化。
相关 API 请参考 enableSoundLevelMonitor, onMediaPlayerSoundLevelUpdate, enableFrequencySpectrumMonitor, onMediaPlayerFrequencySpectrumUpdate
新增支持全方位虚拟立体声,将单声道的声音,通过算法处理,模拟成立体感的声音。该功能常用于 KTV 场景中,可以使唱歌的声音更加有立体感。
当调用 [enableVirtualStereo] 接口,将 angle 参数设置为 -1 时,表示立体声效果为全方位立体声。
相关 API 请参考 enableVirtualStereo
通过 [onLocalDeviceExceptionOccurred] 回调可以设置要检测的设备类型,如摄像头、扬声器、麦克风等,开发者可以根据不同设备类型的错误回调进行相应的处理。
相关 API 请参考 onLocalDeviceExceptionOccurred
改进优化
混流输出视频配置 [ZegoMixerOutputVideoConfig] 新增 encodeProfile 和 encodeLatency 参数、分别用于设置混流输出视频编码规格和混流输出视频编码延时。
相关 API 请参考 ZegoMixerOutputVideoConfig
登录房间导致网络测试停止,由于网络测试会占用带宽,请在登录房间之前进行。
用户登录房间时如果在服务器黑名单中,则会返回此错误码,表示禁止登录房间。
当使用 SDK 拉低延迟直播流时,若您未开通低延迟直播服务,则会返回此错误码。
问题修复
废弃删除
为了让开发者直观的了解出现异常的设备类型以及具体的异常情况,在 2.15.0 及以上版本废弃了 [onDeviceError] 回调,请使用 [onLocalDeviceExceptionOccurred] 回调代替。
相关 API 请参考 onLocalDeviceExceptionOccurred
发布日期:2021-11-30
新增功能
开发者在需要做远程控制、云游戏等指令分发时,通过实时信令,可以低延迟获取发布端消息。
相关 API 请参考 createRealTimeSequentialDataManager
新增 H.265 解码性能不足的告警回调,在通过 CDN 拉流的场景下,用于提示用户是否做降级处理。如果开发者在拉 H.265 流的过程中收到低帧率回调 [onPlayerLowFpsWarning],建议开发者停止拉 H.265 流,转拉 H.264 流。
推流状态回调 [onPublisherStateUpdate] 和拉流状态回调 [onPlayerStateUpdate] 中新增了 H.265 编解码错误提示。
相关 API 请参考 onPlayerLowFpsWarning, onPublisherStateUpdate, onPlayerStateUpdate
媒体播放器新增 [loadResourceWithPosition] 接口,支持加载媒体资源时指定开始播放进度,单位为毫秒。
相关 API 请参考 loadResourceWithPosition
SDK 支持设置摄像头对焦和曝光模式,常用于鉴宝直播场景,用于放大和对焦一些物体的细节。
在启动本地预览后,可以调用 [isCameraFocusSupported] 接口开启摄像头对焦功能,通过 [setCameraFocusPointInPreview] 和 [setCameraExposurePointInPreview] 接口可以分别设置预览视图中的对焦点和曝光点(每次摄像头重新启动采集,两者的设置都会失效,需要重新设置)。调用 [setCameraFocusMode] 和 [setCameraExposureMode] 接口可以分别设置摄像头对焦模式和曝光模式。
相关 API 请参考 isCameraFocusSupported, setCameraFocusPointInPreview, setCameraFocusMode, setCameraExposureMode, setCameraExposurePointInPreview
该功能常用于 KTV 等需要混流对齐的场景,当拉流端播放时,通过 [setPlayStreamsAlignmentProperty] 接口控制播放的实时音视频流是否需要精准对齐。若需要,则拉取的所有流中包含精准对齐参数的会进行对齐;若不需要,则所有流都不对齐。
相关 API 请参考 setPlayStreamsAlignmentProperty
通过该功能可以判断一定时间内是否有人对着麦克风说话,用于检测采集后或音频前处理后的音频数据是人声还是噪声。
相关 API 请参考 startAudioVADStableStateMonitor, stopAudioVADStableStateMonitor, onAudioVADStateUpdate
改进优化
相关 API 请参考 ZegoEngineConfig, ZegoEngineProfile, ZegoPublisherConfig, ZegoCanvas, ZegoVideoConfig, ZegoPlayerConfig, ZegoMixerInput
[ZegoMixerOutput] 的 videoConfig 改为可选参数,不需要单独配置 videoConfig 时可不传。
相关 API 请参考 ZegoMixerOutput
发布日期:2021-11-17
新增功能
支持基础推拉流、登录多房间、房间实时消息、音视频直播、3A 处理、CDN 直推转推、混流、媒体播放器、音效播放器、游戏语音、流量控制、用户控制权限等功能,详情请参考 概述。
暂不支持定义视频采集、自定义视频渲染、自定义视频前处理、混音功能。
相关 API 请参考 客户端 API
改进优化
为了降低开发者对环境的理解成本,ZEGO 已统一环境概念,从该版本开始,废弃了测试环境,统一使用正式环境。在 2.13.0 版本之前已接入过 SDK 的开发者,可以参考 测试环境废弃说明 进行 SDK 升级及代码调整。
相关 API 请参考 createEngineWithProfile
废弃删除
为了降低开发者对环境的理解,废弃了掉测试环境,统一使用环境。在 2.13.0 及以上版本废弃了原有的 [createEngine] 接口,请使用 [createEngineWithProfile] 接口代替。
相关 API 请参考 createEngine
联系我们
文档反馈