美文网首页程序员
如何展示实时音视频通话时正在说话用户的音浪

如何展示实时音视频通话时正在说话用户的音浪

作者: 即构开发者 | 来源:发表于2022-05-08 07:39 被阅读0次

    1 概述

    在 K 歌场景中,经常需要拉多路流并显示其中正在讲话的用户,我们需要甄别用户是否说话、说话音量大小(音浪),并在 UI 上展示,如图:


    2 源码下载

    下载示例源码
    参考文件: src/Examples/AdvancedAudioProcessing/SoundLevelAndAudioSpectrum

    3 环境准备

    在监听音量变化功能之前,需确保:

    4 使用步骤

    4.1 监听音浪回调接口

    注册 soundLevelUpdate 回调,接收流音量大小的变化。
    音浪即某条流音量的大小。

    zg.on('soundLevelUpdate', (streamList) => {
        streamList.forEach(stream => {
            stream.type == 'push' && $('#soundLevel').html(Math.round(stream.soundLevel) + '');
            console.warn(`${stream.type} ${stream.streamID}, soundLevel: ${stream.soundLevel}`);
        });
    });
    

    4.2 启动音浪监听

    调用 setSoundLevelDelegate接口启动监听音量大小,设置音浪回调间隔时间。

    zg.setSoundLevelDelegate(true, 1000);
    

    4.3 停止声浪监听

    调用 setSoundLevelDelegate 接口停止监听音量大小。

    zg.setSoundLevelDelegate(false);
    

    5 API 参考列表

    方法 描述
    soundLevelUpdate 音浪回调
    setSoundLevelDelegate 设置是否监听音浪及音浪回调间隔时间

    结语

    获取本文的Demo、开发文档、技术支持。
    获取SDK的商务活动、热门产品。
    注册即构ZEGO开发者帐号,快速开始。

    相关文章

      网友评论

        本文标题:如何展示实时音视频通话时正在说话用户的音浪

        本文链接:https://www.haomeiwen.com/subject/fancurtx.html