乐趣区

关于音视频:Flutter耳返和双声道功能的实现

1 耳返性能简介

ZEGO Express SDK 提供了 Flutter 耳返和双声道的性能,在视频直播、K 歌、音频录制等场景下广泛应用,开发者可依据理论业务场景须要设置,一套代码可实现跨平台音视频耳返性能,节俭开发成本。

实时音视频的耳返作用就是在嘈杂的环境下,分明地听伴奏和本人的声音,来鉴定本人有没有走音。技术实现上要实时录制的音频低提早播放进来,这个过程对提早要求很高。

  • 耳返即耳机采集监听,在设施上插入耳机(一般耳机或蓝牙耳机)后,能从本机耳机侧听到本设施麦克风采集的声音。
  • 双声道即两个声音通道,听到声音时能够依据左耳和右耳对声音相位差来判断声源的具体位置。ZEGO Express SDK 默认音频采集单声道,当开发者有高音质需要时,可开启双声道采集性能,通过专门的双声道采集设施能够采集到双声道的音频数据并进行推流。

2 实现耳返和声道性能的前提条件

在进行耳返与声道设置之前,请确保:

  • 已在我的项目中集成 ZEGO Express SDK,实现根本的实时音视频性能,详情请参考 疾速开始 – 集成 和 疾速开始 – 实现流程。
  • 已在 ZEGO 控制台 创立我的项目,并申请无效的 AppID 和 AppSign,详情请参考 控制台 – 项目管理 中的“我的项目信息”。

3 ZEGO 音视频 SDK 应用步骤

3.1 设置直播或 K 歌场景下的耳返

3.1.1 开启直播耳返

开启预览后或者开始推流后调用 enableHeadphoneMonitor 开启采集监听即耳返,主播方讲话后,会听到本人的声音。

开启耳返后,在连贯上耳麦时耳返性能才理论失效。

ZegoExpressEngine.instance.enableHeadphoneMonitor(true);

3.1.2 设置耳返音量

开启预览后或者开始推流后可调用 setHeadphoneMonitorVolume 调整耳返的音量。

其中参数“volume”为采集耳返音量大小,取值范畴为 0 ~ 200,默认“60”。

ZegoExpressEngine.instance.setHeadphoneMonitorVolume(100);

3.2 设置声道

setAudioConfigsetAudioCaptureStereoMode 都须要在 startPublishingStreamstartPlayingStreamstartPreviewcreateMediaPlayercreateAudioEffectPlayer 之前调用才无效。

3.2.1 设置音频双声道编码

在推流前调用 setAudioConfig 办法设置音频品质相干配置,其中音频编码声道参数“channel”须要设置为双声道编码(默认值为单声道编码),其余参数取默认值即可。

var audioConfig = ZegoAudioConfig.preset(ZegoAudioConfigPreset.HighQualityStereo));
ZegoExpressEngine.instance.setAudioConfig(audioConfig);

3.2.2 设置音频采集双声道模式

调用 setAudioCaptureStereoMode 办法开启音频双声道采集,并依据理论场景设置“Mode”参数(默认值为始终不开启双声道),用于实现始终开启双声道采集或仅在推流时开启双声道。

ZegoExpressEngine.instance.setAudioCaptureStereoMode(ZegoAudioCaptureStereoMode.Always);

3.2.3 推流

请参考 疾速开始 – 实现流程 的“3.3 推流”,此时所推流的音频是双声道,拉流端无需做额定的配置,间接拉流即可播放双声道音频。

双声道采集须要推流端应用反对双声道采集的设施作为音频输出源,个别手机的麦克风不反对采集双声道。

4 ZEGO 即构音效解决方案

ZEGO 即构音视频 SDK 还领有 AI 降噪、美声音效的能力,在线 K 歌场景中可精益求精,配合超低延时耳返性能,端到端提早低于 70 ms,达到人体无感官提早程度,演唱者可享受极致的 K 歌体验,畅享真正实时的高兴。

退出移动版