实时音频
  • 平台类型
  • 框架 / 引擎
  • iOS
  • Android
  • macOS
  • Windows
  • Linux
  • Web
  • 小程序
Express-Audio SDK
本地下载
2020.09.24 Version: 1.16.0

新增功能

1. 新增音效播放器功能

音效是指为了增强真实感或者烘托场景氛围播放的简短效果音,例如:在直播期间播放掌声、礼物音效、提示音等;在游戏中,播放子弹声、碰撞打击声。

音效播放器支持音效播放(可以多音效重叠播放)、播放控制(如暂停播放、音量调节、设置播放进度)、预加载音效等功能。

相关 API 请参考 createAudioEffectPlayer, destroyAudioEffectPlayer

问题修复

1. 修复 [onRoomStreamExtraInfoUpdate] 可能会在预期外回调空列表的问题

相关 API 请参考 onRoomStreamExtraInfoUpdate

2020.09.17 Version: 1.15.2

问题修复

1. 修复用户进出房间回调接口 (onRoomUserUpdate) 有概率误触发全量回调的问题

相关 API 请参考 onRoomUserUpdate

2020.09.10 Version: 1.15.0

新增功能

1. 增加媒体播放器音量控制功能

允许单独设置和获取媒体播放器的本地播放音量和推流音量。

相关 API 请参考 ZegoMediaPlayer 类的 setPlayVolume, setPublishVolume, getPlayVolume, getPublishVolume 方法。

2. 新增设置音频采集双声道模式功能

双声道即两个声音通道,听到声音时可以根据左耳和右耳对声音相位差来判断声源的具体位置。当开发者开启双声道采集后,使用专门的双声道采集设备,可以采集到双声道的音频数据并进行推流(推流需同时通过 setAudioConfig 接口开启双声道音频编码功能)。

相关 API 请参考 setAudioCaptureStereoMode, setAudioConfig

3. 开启声浪/音频频谱监控的接口支持设置回调间隔时间

开发者可自行控制声浪/音频频谱监控的回调间隔,默认为 100 ms,取值范围为 [100, 3000]。

相关 API 请参考 startSoundLevelMonitor, startAudioSpectrumMonitor

4. 新增切换房间时配置进阶属性功能

切换房间时允许对新房间的属性进行配置,如登录鉴权等。

相关 API 请参考 switchRoom

废弃删除

  1. 废弃媒体播放器中的 getVolume 接口,请使用 getPlayVolumegetPublishVolume 代替

  2. 废弃 onRemoteAudioData, 请使用 onPlaybackAudioData 代替

  3. 废弃 ZegoAudioDataCallbackBitMaskRemote, 请使用 ZegoAudioDataCallbackBitMaskPlayback 代替

2020.08.27 Version: 1.14.0

新增功能

1. 新增切换房间功能

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

相关 API 请参考 switchRoom

改进优化

1. 增加 onRoomStreamExtraInfoUpdate 的触发时机

当用户进入房间,房间内有流且带有附加信息时,onRoomStreamExtraInfoUpdate 将会回调,因此开发者只需要关心此回调即可处理流附加信息的逻辑。

相关 API 请参考 onRoomStreamExtraInfoUpdate

问题修复

1. 修复在推拉流过程中直接调用 destroyEngine 后,下一次调用开启自定义视频采集渲染、自定义音频采集渲染接口会失败的问题。

相关 API 请参考 enableCustomVideoCapture, enableCustomVideoRender, enableCustomAudioIO

2. 修复 onPlayerRecvSEI 会接收到编码器或者视频文件本身附带的 SEI 的问题。

相关 API 请参考 onPlayerRecvSEI

2020.08.13 Version: 1.13.0

新增功能

1. 新增多房间功能

该功能支持同一用户可以同时加入多个房间,目前可进入的总房间数最多为两个。用户加入房间后,只能在主房间中推流,但可以在所有房间中拉流,并且可以正常接收每个房间的信令和回调。该功能通常用于“超级小班”等场景,若需要开启,请联系 ZEGO 技术支持。

相关 API 请参考 loginMultiRoom

2. 新增房间附加消息功能

该功能可以设置一个以房间为单位的附加消息,该消息跟随整个房间的生命周期,每个登录到房间的用户都能够同步消息。开发者可用于实现各种业务逻辑,如房间公告等等。目前房间附加消息只允许设置一个键值对,且 key 最大长度为 10 字节,value 最大长度为 100 字节。

相关 API 请参考 setRoomExtraInfo

3. 新增音频前/后处理功能

允许开发者在采集音频数据后,或者拉取远端音频数据渲染前,对音频数据进行自定义处理。该功能通常用于 “变声”、“美声” 等场景。

相关 API 请参考 enableCustomAudioCaptureProcessing, enableCustomAudioRemoteProcessing

改进优化

1. 扩大推拉流采集音量范围

推流采集音量与拉流播放音量范围由 0 ~ 100 扩大至 0 ~ 200,默认值为 100。

相关 API 请参考 setCaptureVolume, setPlayVolume

2020.08.06 Version: 1.12.3

问题修复

  1. 修复当登录房间失败后立即重新登录房间时,可能会抛出预期外的 超过最大房间登录数量 错误码的问题。

  2. 修复 IM 消息的回调内容最大长度不符合预期的 1024 字节的问题。

2020.07.30 Version: 1.12.0

新增功能

1. 新增音效均衡器(EQ)

支持调整 10 个频带的增益值,从而达到调整音色的目的。

相关 API 请参考 setAudioEqualizerGain

2020.07.23 Version: 1.11.4

问题修复

  1. 修复 AudioDataCallback 可能不回调的问题。

  2. 修复 ZegoAudioConfig 的 codecID 当设为 Low3 时无效的问题。

  3. 修复 destroyEngine 时个别功能组件销毁失败的问题。

  4. 修复当快速 destroy/create engine 时 MediaRecord 可能不回调的问题。

  5. 修复 JNI 采样率转换出错的问题。

2020.07.15 Version: 1.11.0

新增功能

  1. 新增白板底层 API (白板SDK),可以结合 ZegoWhiteboardView 实现互动白板的功能。

改进优化

  1. IM 消息内容传输长度增加至 1024 个字节,包括房间广播消息 broadcast message 和房间弹幕消息 barrage message

问题修复

  1. 修复 JNI 回调时全局对象引用个数溢出造成的崩溃,此问题在 32 位低端机器下容易出现。

  2. 修复 JNI 对字符串裁剪的逻辑,解决当发送IM消息内容长度超出时会对字符进行裁剪继续发送的 bug。

2020.06.30 Version: 1.10.0

新增功能

1. 新增虚拟立体声、变声、混响功能。

开发者基于此可实现一些音频前处理效果。

相关 API 请参考 enableVirtualStereo, setVoiceChangerParam, setReverbParam

2. 新增本地媒体录制功能。

开发者可将音视频流录制成本地文件,便于日后作回放等用途。

相关 API 请参考 startRecordingCapturedData, stopRecordingCapturedData

3. 新增获取音频 PCM 数据功能。

开发者通过监听音频数据回调获取 PCM 数据后可作进一步用途,如对接第三方音频鉴黄、字幕生成等功能。

相关 API 请参考 enableAudioDataCallback

4. 新增音频降噪模式,默认为 Medium 中等模式。

相关 API 请参考 setANSMode

5. 新增自定义音频采集与渲染功能。

开发者可通过此功能自行采集音频数据发送给 SDK,并且自行获取远端拉流的音频数据来处理或播放。

相关 API 请参考 enableCustomAudioIO

2020.06.20 Version: 1.9.2

问题修复

  1. 修复混流声浪 onMixerSoundLevelUpdate 回调的问题。
2020.06.17 Version: 1.9.1

问题修复

  1. 修复混音 onAudioMixingCopyData 回调数据的拷贝和越界问题。
2020.06.15 Version: 1.9.0

新增功能

  1. 增加混音模块功能:开启混音、对本地混音静音、设置混音音量、向 SDK 拷贝混音数据的回调。

  2. 增加 enableHeadphoneMonitor 接口,支持耳返功能。

问题修复

  1. 修复使用辅流推流时可能会出现异常的问题。

  2. 当流 ID 传 null 时抛出正确的错误码。

  3. 修复部分回调在 destroyEngine 之后将不再回调的问题。

2020.06.11 Version: 1.8.2

问题修复

  1. 修复 advancedConfig 含有特殊字符时设置失败的问题。

  2. 修复 JCenter 版本 SDK 发送弹幕消息可能导致 crash 的问题。

2020.05.31 Version: 1.8.0

新增功能

  1. 增加获取当前音频质量参数(音频码率、推流声道数等)和视频参数(分辨率、码率、帧率等),接口分别为:getAudioConfiggetVideoConfig,方便开发者随时获取和管理当前音视频质量参数。

  2. 增加获取音频设备的状态,对应接口为:isMuteMicrophoneisMuteSpeaker,方便开发者管理音频设备的状态。

问题修复

  1. 修复部分内部状态生命周期过长或过短的问题。

  2. 修复多次设置混流输入输出列表会不断递增的问题

2020.05.18 Version: 1.7.9

问题修复

  1. 修复调用 setEngineConfig 显式设置日志路径不生效的问题。

  2. 修复首次 createEngine 时没有日志的问题

  3. 修复 setEventHandler 设置为 null 不生效的问题。

2020.05.15 Version: 1.7.5

新增功能

1. 新增错误码 1000008

再次调用 setEventHandler 更改 Event Handler 前需要显式置空。

问题修复

  1. 修复 setEngineConfig 接口在 createEngine 之后调用不生效的问题。

  2. 修复媒体播放器无法正确获取到 index 的问题。

  3. 修复 sendBarrageMessagesendCustomCommand 接口参数顺序不正确的问题。

2020.04.30 Version: 1.7.0

新增功能

  1. 新增房间在线人数更新回调 onRoomOnlineUserCountUpdate;开发者基于此回调可以实时监听当前房间人数的变更情况,并以 UI 形式向用户展示。

  2. 新增媒体播放器实例 index 的可读属性。

  3. 新增错误码枚举描述头文件,开发者可直接通过头文件查看所有 Express 的错误码。

问题修复

  1. 修复混流时带鉴权转推 CDN 的情况下,会因为 URL 非法被过滤的问题。
2020.04.15 Version: 1.6.0

新增功能

  1. onPublisherQualityUpdate 回调新增几个质量属性,包括 totalSendBytes(已发送的总字节数)、audioSendBytes(已发送的音频字节数)、videoSendBytes(已发送的视频字节数)。开发者可以根据这些属性进行推流数据的统计。

  2. onPlayerQualityUpdate 回调新增几个质量属性,包括 totalRecvBytes(已接收的总字节数)、audioRecvBytes(已接收的音频字节数)、videoRecvBytes(已接收的视频字节数)、peerToPeerDelay(端到端延迟)、peerToPeePacketLostRate(端到端丢包率)。开发者可以根据这些属性进行拉流数据和拉流延迟的统计。

改进优化

  1. 重构 API 上报模块,优化逻辑。

问题修复

  1. 修复从 JNI 回调 Java 过于频繁而可能出现崩溃的问题。
2020.04.05 Version: 1.5.6

问题修复

  1. 修复 JCenter 版本包中含有无用资源的问题,减小包大小。

  2. 移除 Android support 和 Android X 的相关依赖,避免冲突。

  3. 修复 Android 特定低端机偶尔出现的崩溃问题。

2020.03.31 Version: 1.5.5

改进优化

  1. 优化 API 注释。
2020.03.19 Version: 1.5.1

问题修复

  1. 修复正确填写混流配置后发起混流时,仍有几率被 SDK 检测为混流失败的问题。

  2. 修复混流转推 CDN 时,RTMP 格式 URL 检测有误的问题。

  3. 修复一些极端场景下未抛出正确错误码的问题。

2020.03.14 Version: 1.5.0

新增功能

1. 增加场景预配置属性。

开发者在调用 createEngine 时,可选择应用场景,SDK 会针对实时通讯场景和直播场景进行最优预配置。

2. 增加推辅流功能。

当开发者需要实现一路流推摄像头,另一路流推如屏幕采集等输入源时,可使用推辅流功能。该功能可用于实现教学、会议等场景。

3. 增加推流流控功能。

开发者可通过调用 enableTrafficControl 选择流控的自适应属性,包括:自适应分辨率、自适应码率、自适应帧率。

4. 增加直接推流到 CDN 功能。

开发者可通过指定具体 CDN 的 URL(或使用Zego后台配置),直接将音视频流推送到 CDN,需在推流前设置。

相关 API 请参考 enablePublishDirectToCDN

5. 增加拉流进阶配置。

startPlayingStream 增加一个重载 API ,实现进阶拉流功能。开发者可通过设置拉流CDN配置,直接通过 URL 进行拉流。当推流方使用了直推或转推 CDN 功能的情况下,拉流方需要使用 URL 进行拉流。当推流方开启了分层编码功能后,拉流方可通过设置 videoLayer 为 base 以拉取低分辨率图层。

6. 混流支持标识每条输入流的声浪。

当开发者需要让拉混流的观众知道当前每条流的声浪状态时,可在发起混流时调用 enableSoundLevel 开启 sound level,且在每条输入流配置中标记一个唯一的音浪ID,则拉流方可以通过监听 onMixerSoundLevelUpdate 获取每条流的音浪通知。

7. 增加房间弹幕消息功能。

当开发者需要在超过 500 人的房间中发送一些业务不可靠的消息时(如弹幕消息,房间每位观众不一定都必须收到每一条信息),可使用房间弹幕消息功能。

相关 API 请参考 sendBarrageMessage

改进优化

1. 废弃原本无参数的 destroyEngine 接口,增加同名但带一个 callback 参数的 destroyEngine 接口。

当开发者销毁 SDK 且收到回调时,则可认为 SDK 内部占用资源已释放,此时开发者可进行多家 SDK 的切换。

2020.01.17 Version: 1.3.5

问题修复

  1. 修复媒体播放器的一些问题。
2019.12.27 Version: 1.3.4

新增功能

  1. 新增媒体播放器 (MediaPlayer) 模块。

  2. 新增 SEI (媒体增强补充信息) 模块。

  3. 新增 setAudioConfig 接口,可选择配置推流前音频参数(音频编码类型/音频码率/声道数)

2019.12.13 Version: 1.3.3

新增功能

  1. 新增流附加信息更新接口。

  2. 新增监听音频声浪与频域功率谱接口。

  3. 新增帧顺序检测开关接口。

改进优化

  1. 日志功能优化。
2019.11.27 Version: 1.2.1

新增功能

  1. 新增混流模块。

  2. 新增 IM 模块。

2019.11.11 Version: 1.1.1

新增功能

  1. 新增日志压缩上报功能,支持测试环境上报全量接口调用日志,用于接口使用情况分析。

问题修复

  1. 对齐各端接口,接口命名、参数命名、取值等统一。
2019.11.01 Version: 1.1.0

新增功能

  1. 首次发布,包含系统、房间、推流、拉流、前处理、设备模块。