实时语音
  • 平台类型
  • 框架 / 引擎

下载SDK包

更新时间:2020-08-13 19:27

下载AudioRoom SDK
下载

发布历史

2020-08-12 Version:g3575960b7

新增功能

1. 网络探测模块新增下行网络测速功能

可有效帮助用户判断和预测下行网络质量是否良好(目前仅用于预测网络质量),如需要网络测速模块功能,请联系 ZEGO 技术支持处理。

新增 startDownlinkSpeedTeststopDownlinkSpeedTest 等接口,用于下行网络测速。

2. 媒体播放器新增缓存到文件末尾的回调

便于掌握媒体播放器的缓存加载情况。在教育场景中,教学视频缓存到达末尾时可能需要提示用户即将播放下一教学视频/开始下一章节等。

在event回调中新增 onReadEoF 回调,当文件缓冲到达文件的末尾时抛出。

3. 新增切换房间功能

该方法可以实现快速切换房间功能,调用后停止上一个房间的推拉流并进入新房间,切换房间成功会收到新房间登录成功的回调。与之前通过调用登出原房间和加入新房间两个接口实现的方法相比,更易用也更高效。

新增 switchRoom 接口,用于从一个房间切换到另一个房间。

4. AudioDeviceMode下新增 General2 模式

相比 General 模式,该模式下会保持对设备的占用,在切换房间时耗时更短。在狼人杀和剧本杀的场景下,使用该模式可以使用户切换房间后推流/拉流时快速发出声音/听到声音。 具体配置可联系 ZEGO 技术支持咨询。

5. 新增 setConfig 修改配置接口

LiveRoom SDK已有此修改配置的接口,现 AudioRoom 开放 setConfig 接口与LiveRoom SDK对齐。

改进优化

1. 媒体播放器支持同时播放音视频文件的数量从4个提高到10个

优化重构 MediaPlayer 模块,SDK支持最多创建10个媒体播放器实例,同时播放音视频文件。

2. 优化初始化反初始化的逻辑

原先 enableMicsetFrontCam 等接口在反初始化后再次初始化SDK时,在主副通道的逻辑不一致,偶现状态没有被重置的情况。优化逻辑后,反初始化SDK后再初始化,所有状态会重制。

3. 混流支持单独调整输入流的音量,默认为100

便于在多路混流时,单独调整某条流的声音音量,解决混流后因为音频来源本身的音量大小差距较大而导致混流后的音频音量不均衡的问题。修改范围为0-200

4. 优化了使用AirPlay投屏的体验

通过配置 SetConfig("air_play_route_to_speaker") ,可在使用AirPlay投屏时,使得声音依旧从手机扬声器播放,解决投屏场景下声音回采的问题。

5. 增加60Hz高通滤波器的配置开关选项

默认打开,用于处理低于60Hz的低频杂音,可通过 setConfig("prep_high_pass_filter=false") 配置关闭。

问题修复

1. 修复初始化SDK后推流前调用耳返接口无效的问题

2. 修复多房间初始化SDK后设置userID,导致多房间登录失败的问题

2020-07-10 Version:gbbac93b4e

新增功能

1、媒体本地录制新增 AAC 格式

该格式压缩率大,生成的录制文件较小,在线教育场景中,可能需要将音频数据上传至服务器进行分析,而同样的一段音频,编码成 AAC 格式的文件大小比 PCM 格式的文件更小,更易于上传。ZegoAPIMediaRecordFormat 新增 AAC 格式,用于录制 AAC 格式的纯音频。

问题修复

1、修复音频设备暂停且在后台的情况下插入耳机,回到前台,恢复音频模块后,声音从扬声器出来的问题

2、修改复音频模块中断、恢复时因时序可能不一致导致音频模块未启动的问题

2020-06-22 Version:g13dcf9bcd

问题修复

1. 修复因设备重构导致音频设备生命周期变短引入的偶现崩溃问题

2020-06-11 Version:g2e9dbf798

新增功能

1、新增纯音频自动混流功能 完全由即构后台发起音频自动混流,开发者无需更新线上 SDK 。 如需要开启该功能,请联系 ZEGO 技术支持处理。

改进优化

1、重构获取硬件信息模块,优化拉多路流场景下的系统 CPU 性能

问题修复

1、修复媒体录制模块的异步回调崩溃问题

2020-05-12Version:gaff9b4cc2

改进优化

1. 采集双声道的情况下支持音频3A处理

2. 混流输入流路数限制扩展为16路

(默认9路,如需要支持更多路数,可联系 ZEGO 技术支持处理)

问题修复

1. 修复采集变声偶现的 crash 和破音问题

2020-04-09Version:g18e243156

新增功能

1. MediaRecorder 增加质量回调

媒体本地录制代理 ZegoMediaRecordDelegate 新增 -onRecordStatusUpdateFromChannel:storagePath:duration:fileSize:quality: 回调。
离线录制时可以通过该回调获取分辨率、帧率等质量信息,及时做容错处理。

2. 混音支持分别调节推流和本地播放的音量

改进优化

优化 iOS 音频模块的中断处理逻辑。

问题修复

修复域名解析失败时可能导致的 Crash。

废弃预告

2020-03-09Version:g54f488a0c

新增功能

1. 转推支持 RTMPS 协议

该功能可将直播流转推到 Facebook ,助力客户生态引流。当前仅部署到海外集群。

改进优化

1. 优化重复调用推流接口,然后不调用停止,继续推不同的 streamID (同一个推流通道)时,房间还会存在上一条流信息的问题。

避免用户监听推流回调时还有不存在的 streamID,进而拉空流的问题。

2. SDK 推拉流质量回调新增当前 App 和系统所使用的 CPU 及内存信息。

完善推拉流回调的内容,客户通过该回调可以获取更多的信息。

问题修复

1. 修复 loginMulti 与 InintSDK 并行时有几率收不到回调的 bug。

2. 修复 重复调用 InintSDK UniniSDK 导致带多房间版本 SDK 的 crash 问题。

3. 修复未调用登录接口时,停止辅路视频预览会导致主路预览也被停止的问题。

2020-02-09Version:ge443c0e04

新增功能

  1. 新增 setAudioPostpCallback:config:enableAudioPostp:streamID: 接口,支持音频后处理功能。
  2. 支持设置推流音频采样率
    通过 setConfig 配置,参数 audio_encoder_samplerate=samplerate,支持的 samplerate 值为 16000/32000/44100/48000。
  3. 音效播放器 ZegoAudioPlayer 新增以下功能
    1)新增 getCurrentDuration: 接口,获取音效的当前进度。
    2)新增 getDuration: 接口,获取音效的总时长。
    3)新增 seekTo:timestamp: 接口,设置音效的播放进度。
  4. 支持音频自动混流 ZegoAutoMixStream
    开启功能后自动输出为一路包含房间内所有的音频流,不用关心房间内流新增删除时的流操作。
  5. 支持双声道采集
    新增 enableAudioCaptureStereo: 用于设置单双声道切换。

改进优化

  1. 推/拉流质量回调添加音频、视频和总字节数的统计信息。
  2. 优化设置相机曝光点的日志打印频率,引擎调整为2s/次,SDK 不打印。
  3. SDK 删除媒体播放器 getDuration , getCurrentDuration 的日志打印。

问题修复

  1. 修复在没有重复发音频格式的情况下导致重推流音频缺少 config 的问题。
  2. 修复某些蓝牙耳机无法工作的问题。
  3. 修复解析 http-flv 第一个 Tag,放错 jitter 的缓存队列导致的 crash。
  4. 修复使用不同的 streamID 重复调用推流时房间还会存在上一条流信息的 bug。

API 整理

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

新增:

改动:

2019-12-09Version:gcbdd122c2

新增功能

  1. 音频设备模式添加 communication3 模式,支持下麦后释放麦克风设备。
    setAudioDeviceMode: 设置音频模式增加 ZEGOAPI_AUDIO_DEVICE_MODE_COMMUNICATION3 参数,使用此参数可保证不推流的情况 ZEGO SDK 不会占用麦克风设备。

改进优化

  1. 修正了一些场景的错误码。

问题修复

  1. 修复媒体播放器打开硬解不出帧的 bug。
  2. 修复 kickOut 接口兼容性问题。
  3. 修复判断流是否存在的逻辑错误问题。
  4. 修复变量重复定义可能导致未知行为的问题。
  5. 修复无法停止播放 wav 文件的问题。
  6. 修复 uninitSDK 可能 crash 的问题。
  7. 修复外部调用推送重复流名,有几率导致发送2次相同流名的流新增问题。
2019-11-09Version:gc3c7f5327 ### 新增功能 1. 断线重连机制增加设置最大重试时间接口,setConfig("room_retry_time=xxx")和setConfig("av_retry_time=xxx"),开发者可以根据场景需要设置最大重试时间。

改进优化

  1. 优化了断线重连机制的逻辑,为业务提供更优质的重连服务。
  2. 优化了日志目录,清晰的区分本地缓存目录和日志目录。
  3. 优化 - onKickOut:roomID:customReason: 回调接口,新增了字段 customReason
  4. 优化 + setConfig: 接口,允许通过 setconfig 接口设置 max_channels

问题修复

  1. 修复快速初始化反初始化导致 SDK 崩溃的问题。
  2. 修复连麦加速时没有拉流质量回调问题,限制最大重试时间最大值。
  3. 修改监听耳机插拔的时机。
  4. 修复断网事件监听。
  5. 修复 wifi 切换 4G 网络时,流通知可能异常的问题。

API 整理

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

改动:

2019-08-09Version:gc68861be

问题修复

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

新增功能

  1. 多播放器实例

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

改进优化

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

  2. 拉流质量回调 onPlayQualityUpate:quality: 中的 ZegoApiPlayQuality 增加了推流端到拉流端的延迟 rtt 和推流端到拉流端的丢包率 pktLostRate

API 整理

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

新增:

改动:

2019-06-10Version:g77803827

改进优化

  1. 全面更新 SDK 错误码,新版错误码更加统一和清晰,让开发人员排查问题更加快速便捷。

问题修复

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

新增功能

  1. 音频流控
    新增 enableAudioTrafficControl 接口,推流端开启音频流控后,在网络差(网络带宽10kb/s以上)时,能保证推流出去的音频流畅。
2019-1-4Version:gcb20f711

新增功能

  1. 新增变声功能;
  2. 新增转推CDN状态回调接口;
  3. 新增 MediaPlayer 模块重复播放接口;

问题修复

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

问题修复

  1. 修复若干BUG。
2018-10-30Version:g3021b99d

新增功能

  1. 支持第三方授权。
  2. 媒体播放器支持播放网络资源,支持选择播放的音轨。
  3. 混流支持多路输出。

改进优化

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

问题修复

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

新增功能

  1. 混流中支持下发各路流的音量信息
  2. 抖动缓冲优化,减少网络好转时延迟降低的时间
  3. 新增音频本地录制接口
  4. 新增 UpdatedStreamExtraInfo 接口,可用于更新与流相关的自定义信息
  5. 新增 onStreamExtraInfoUpdated 回调,可获取与流相关的自定义信息
2018-05-28Version:gaf952ccf

新增功能

  1. 新增“audio-aux 模块,支持 onAuxCallback 中发送媒体次要信息”
  2. 新增“sound-level 模块,支持回调出房间内谁在说话”
  3. 新增”音频加密、解密接口“
2018-04-24Version:g76eafb9

新增功能

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

问题修复

  1. 修复“推流状态码为 7 时, 调用 restartPublishStream 不能重新推流的 Bug”
  2. 修复“开始拉流后,使用相同的 StreamID 重复拉流,SDK 内部会重新拉流的 Bug”,修改后的逻辑为“保持之前的拉流状态”

改进优化

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