音乐,是生活中不可缺少的一部分。我们依靠耳朵接收声音,感受音乐节奏的变化,体会其中的情感变化。除了听觉外,我们借助频谱,可以显示音乐的起伏变化,让音乐节奏不仅听得见还能看得见。
频谱是频率谱密度的简称,是频率的分布曲线。声音频谱一般分为高音频段、中高音频段、中低音频段和低音频段。高音频段的声音幅度影响音色的表现力;中高音频段是人耳听觉比较灵敏的频段,它影响音色的明亮度、清晰度、透明度;中低音频段是人声和主要乐器的主音区基音的频段。由此可见,一首动听的曲子离不开各个频段声音的协调和配合。
随着语音社交应用的兴起,直播、语聊房、K歌房等玩法花样频出,跟着音乐的节奏一起跳动的频谱增加了产品的趣味性和互动性。让用户在唱歌、连麦时不仅可以看到歌词、进度条,还能通过频谱的变化调整自己的歌声,让声音的表现更加的丰富。
针对客户对频谱的需求,Zego SDK 新增了展现音频功率谱的能力。即把时域的音频数字信号经 Zego SDK 内部处理,转换成频域的音频数字信号。开发者无需具备专业的数字信号领域相关知识,即可使用 Zego SDK 从采集到的音频数据或所拉的流里音频的数据里得到音频的功率谱数据。业务端再把数据用自己想要的UI展示出来,就可以做出各种炫酷的频谱动效。
zego 音频频谱功能体验 Demo 源码下载地址:
https://github.com/zegodev/liveroom-topics-android
音频功率谱与声浪模块源码请查看 /src/LiveRoomPlayground/frequencySpectrum 目录下的源文件,该模块展示了音频功率谱与声浪相关接口的使用方法。
功能使用步骤如下:
1、初始化SDK