iOS SDK 历史更新日志

下载pdf
更新时间:2019-09-27 10:08

2019-09-09(g3161cd976)

新增功能

多房间功能

新增 ZegoMultiRoom 功能,支持用户进入多个房间进行拉流,帮助开发者实现更多特殊的互动视频场景,如教育超级小班,多房间监控等需要用户灵活加入多房间的场景。注意:SDK 默认不包含此功能,需要下载包含此功能的 SDK。

改进优化

1.日志即将写满回调
ZegoLogInfoDelegate 增加日志即将写满回调 onLogWillOverwrite

2.音效匀衡器
ZegoLiveRoomApi 增加音效匀衡器设置接口 setAudioEqualizerGain,提供了频带设置和频带的增益值设置,帮助开发者实现更加优质的音质效果。

3.分层编码新增类型
ZegoVideoCodecAvc 枚举新增 VIDEO_CODEC_VP8 类型。

4.媒体播放器新增设置硬件解码
ZegoMediaPlayer 增加设置硬件编码 requireHWDecoder 接口。

5.媒体播放器新增回调数据格式
 新增 ZegoMediaPlayerVideoPlayWithIndexDelegate 视频播放回调,支持给出 YUV(I420,NV12,NV21) 格式视频帧数据。

6.外部滤镜增加 NV12 类型

7.断线重连机制优化
 为修复已知的断线重连机制出现的问题,对断线重连机制进行全面的优化。

2019-08-09(gc68861be)

问题修复

  1. 对某些特定场景下推流失败的问题进行了优化。
2019-07-09(ge9606fe0)

新增功能

  1. 多播放器实例

    ZegoMediaPlayer 模块支持最多四个播放器实例,支持播放音乐文件,提供播放进度的通知等;便于预加载,有效降低切换内容的首帧时间。

改进优化

  1. 拉流代理 ZegoLivePlayerDelegate 中增加了5个回调:
  • onRenderRemoteVideoFirstFrame: 在拉流成功后,通知所拉视频流的首帧视频已完成渲染,方便了解视频流首帧的渲染情况和渲染的时长。
  • onRemoteCameraStatusUpdate:ofStream: 通知所拉流即推流端的摄像头开/关状态,适用于了解远端是否主动开关摄像头,能够区分远端无视频画面是关闭了摄像头导致还是网络异常等情况导致。
  • onRemoteMicStatusUpdate:ofStream: 通知所拉流即推流端的麦克风开/关状态,适用于了解远端是否主动开关麦克风,能够区分远端无音频声音是关闭了麦克风导致还是网络异常等情况导致。
  • onRecvRemoteAudioFirstFrame: 通知接收到所拉流的首帧音频,方便获取获取首帧音频的时长,了解音频流首次打开的延迟情况。
  • onRecvRemoteVideoFirstFrame: 通知接收到所拉流的首帧视频,方便获取获取首帧视频的时长,了解视频流首次打开的延迟情况。
  1. 推流代理 ZegoLivePublisherDelegate 中增加了 onCaptureAudioFirstFrame 回调,通知收到采集音频的首帧,方便了解音频首帧的采集情况和采集时长。

  2. 混流代理 ZegoMixStreamExDelegate 中增加了 onMixStreamRelayCDNStateUpdate:mixStreamID: 回调,通知混流转推 CDN 的状态。

  3. 拉流质量回调 onPlayQualityUpate:quality: 中的 ZegoApiPlayQuality 增加了推流端到拉流端的延迟 rtt 和推流端到拉流端的丢包率 pktLostRate。方便客户端直接获取端到端的延迟和丢包情况,便于在网络不佳的时候提示用户当前网络的直播情况,从而引导用户切换网络或者重新进入直播。

API 整理

ge9606fe0 版本中对 API 进行了如下变动。

新增:

改动:

2019-06-10(g77803827)

改进优化

  1. 全面更新 SDK 错误码,新版错误码更加统一和清晰,让开发人员排查问题更加快速便捷。
  2. setConfig 接口增加 play_nodata_abort 配置项,从即构服务器拉流没拉到数据时可以控制是否终止拉流。
  3. startPlayingStream 接口的 ZegoAPIStreamExtraPlayInfo 参数增加字段 shouldSwitchServer,支持在连麦时根据此字段判断是否需要切换到即构服务器,开发者在采用附加信息中的拉流 URL 进行拉流的情况下,无需在处理连麦时先停止从 CDN 拉流,再重新从即构服务器拉流。
  4. 混流配置 ZegoMixStreamConfig 增加自定义字段 advancedConfig,支持在混流时传递定制化的混流配置信息到后台,比如指定的视频编码格式、SEI 发送方式。
  5. 新增 addPublishTargetdeletePublishTarget 接口,支持修改已设置的转推地址,可以动态增加或删除转推地址。

问题修复

  1. 修复从 RTC 拉流没拉到数据时会结束拉流的问题。
  2. 修复房间服务器重启导致的断线重连问题。

API 整理

g77803827 版本中对 API 进行了如下变动。

新增:

改动:

2019-05-09(gc410cfbe)

新增功能

  1. 音频频域功率谱
    新增音频频域功率谱功能,频域功率谱展示了音频信号在各个频点上的能量,能根据其值绘制出音频的波形图,比音量的展示效果更优,更适用于主播电台,KTV合唱,语聊点播等场景。相关接口请查看 API 整理->新增接口

改进优化

  1. 修改 setMediaSideFlags 接口,媒体次要信息支持 SEI 方式发送。
  2. 新增 setLogSize 接口,支持设置日志文件的大小。
  3. startPublishing 接口的流附加信息参数长度从 512 bytes 扩充到 1024 bytes,支持更多数据的发送。

问题修复

  1. 修复网络断网并正常恢复后房间重连的问题。
  2. 修复房间心跳超时没有回调 onDisconnect 的问题。
  3. 修复房间登录后没有收到登录回调时就立即登出房间造成房间状态错误的问题。

API 整理

gc410cfbe 版本中对 API 进行了如下变动。

新增:

改动:

2019-04-09(gf6f00774)

新增功能

  1. 音频节约传输开关
    新增 enableVAD 接口用做语音活动检测的开关,在有音频的条件下检测到语音时才发送语音包,有效减少流量消耗,降低成本。

  2. 多播放器实例
    MediaPlayer 模块支持最多三个播放器实例,支持播放音乐文件等;便于预加载,有效降低切换内容的首帧时间。

  3. 登录房间加速
    登录房间新增由后台配置的加速模式,能够缩短登录房间的时间。

  4. 多种回声消除模式
    新增 setAECMode 接口支持设置舒适,适度和激进三种回声消除模式。

改进优化

  1. 新增音频设备模式 Communication2 模式,在开启系统回声消除时会始终占用麦克风设备。
  2. 新增 setMinVideoBitrateForTrafficControl 接口,在使用流量控制时能设置视频码率的最小值,当发送的码率小于这个值时将进行等待,而不是在视频不流畅的情况下继续直播。
  3. 增加 setReverbParam 接口,支持更多的音频混响参数设置,混响阻尼和余响。
  4. 新增 onCaptureVideoFirstFrame 回调,当采集到视频的首帧时收到该回调。
  5. 优化了弱网条件下的音视频传输质量。
  6. 增加 onAVEngineStart 回调,更新 onAVEngineStop 回调的时机,提供设备占用情况的信息通知,获取 SDK 何时在占用音视频设备。
  7. 修改 enableLoopback 采集监听的有效调用时机,在耳机插入时采集监听才生效,即讲话能听到自己的声音。
  8. 混流配置ZegoMixStreamConfig新增选项 ,支持单流直接推流到CDN,或者混流成单流推流到CDN。
  9. 修改 enableTrafficControl 接口,流量控制属性参数新增音频流量控制选项。
  10. onPublishQualityUpdate 推流质量更新回调,增加了 ZegoApiPublishQuality 类型参数,可获取更多推流质量信息,具体请点击接口查看。
  11. onPlayQualityUpdate 拉流质量更新回调,增加了 ZegoApiPlayQuality 类型参数,可获取更多拉流质量信息,具体请点击接口查看。

问题修复

  1. 修复未登录房间或者登录房间未完成时调用 endJoinLive 等房间信令时崩溃的问题。
  2. 修复 iOS 版的媒体播放器无法回调 onPlayError 的问题。

API 整理

gf6f00774 版本中对 API 进行了如下变动。

新增:

改动:

2019-01-04(gcb20f711)

新增功能

  1. 新增变声功能;
  2. 新增转推CDN状态回调接口;
  3. 新增 MediaPlayer 模块重复播放接口;
  4. 新增 MediaPlayer 模块截图接口;
  5. 新增 iOS 推流过程中摄像头支持动态朝向。

问题修复

  1. 修复若干BUG,提升稳定性。
2018-11-06(gb5998cbf)

问题修复

  1. 修复若干BUG。
2018-10-30(g3021b99d)

新增功能

  1. 支持第三方授权。
  2. 媒体播放器支持播放网络资源,支持同时播放视频并回调视频帧数据,支持选择播放的音轨。
  3. 混流支持多路输出、水印功能、输出编码码率控制模式。
  4. 新增启用预览和推流镜像接口。
  5. 新增外部渲染模块的 Objective-C 接口。
  6. 本地录制支持 MP4 格式。

改进优化

  1. 优化网络连接模式,增加弱网环境下的推流能力。
  2. 优化分层编码接口。

问题修复

  1. 修复若干BUG,增强系统稳定性。
2018-07-13(gace83bc5)

新增功能

  1. 外部渲染支持回调未解码 264 视频数据给用户
  2. 提高硬编、硬解的稳定性
  3. 混流中支持下发各路流的音量信息
  4. 抖动缓冲优化,减少网络好转时延迟降低的时间
  5. 新增音、视频本地录制接口

问题修复

  1. 修复“MediaPlayer 渲染时,解码画面宽、高和渲染宽、高不一致导致的重影问题”
  2. 修复“iOS8 摄像头卡死阻塞 sdk 的 bug”

改进优化

  1. setPreviewView:setPreviewView:channelIndexstartPlayingStream:inViewstartPlayingStream:inView:paramsstartPlayingStream:inView:extraInfo等 API 不再支持 AutoResizing 布局的 UIView,使用 AutoResizing 布局的 UIView 将不能渲染,可以使用 AutoLayout 布局替代。这次修改主要是为了修复 cocos2dx 的兼容问题。
2018-05-28(g7ea5ae9)

新增功能

  1. 新增“audio-aux 模块,支持 onAuxCallback 中发送媒体次要信息”
  2. 新增“sound-level 模块,支持回调出房间内谁在说话”
  3. 新增“分层编码功能”
  4. 新增”音频加密、解密接口“

问题修复

  1. 修复“无法正确检测硬编码流的 poc 导致的拉流卡顿”
  2. 修复“渲染和 cocos2dx 冲突导致的闪烁”
2018-04-24(g76eafb9)

新增功能

  1. setConfig 接口新增设置 “support_general_mode_below_ios9” (iOS9 及以下连麦时支持 general mode(非强制 voip ))

问题修复

  1. 修复“硬编 crash”
  2. 修复“屏幕分享功能,声音时有时无不同步的问题“
  3. 修复“开始拉流后,使用相同的 StreamID 重复拉流,SDK 内部会重新拉流的 Bug”,修改后的逻辑为“保持之前的拉流状态”

改进优化

  1. 开始一次推流后,如果没有向业务层通知过“推流成功“,则不会向业务层回调“推流重试事件”
  2. 开始一次拉流后,如果没有向业务层通知过“拉流成功”,则不会向业务层回调“拉流重试事件”