使用网易云音乐开放平台接口 文档中心 FFmpeg 5.0
看了一下网易云技术团队博客,他们使用的可视化方案Android 音频可视化
大致流程:获取数据源(自定义Visualizer) > 处理数据 > 绘制,获取数据源和处理数据比较复杂
获取数据源大致流程:在播放进程 native 层中计算 FFT,通过 JNI 调用,把计算结果回调给Java 层,然后通过 AIDL 把 FFT 数据传递给主进程进行后续的数据处理和发送操作
处理数据大致流程:计算索引频率 > 选择数据 > 计算分贝 > 将分贝转化为高度 > 平滑数据
APP目前阶段只是拿到Android Visualizer的fft数据,然后间隔取样,最后平滑,得不到网易云的效果