OpenGL ES之实现实时音频的可视化
Posted ╰つ栺尖篴夢ゞ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenGL ES之实现实时音频的可视化相关的知识,希望对你有一定的参考价值。
- OpenGL 实现可视化实时音频的思路比较清晰,可以利用 API AudioRecorder 采集到未编码的音频裸数据(PCM 数据),也可以利用 OpenSLES 接口在 Native 层采集。然后将采集到的音频数据看作一组音频的强度值,再根据这组强度值生成网格,最后进行实时绘制。为方便展示,这里直接采用 API AudioRecorder 采集音频裸数据,然后通过 JNI 传入 Native 层,最后生成网格进行绘制。
- 在使用 AudioRecorder 采集格式为 ENCODING_PCM_16BIT 音频数据需要了解:所采集到的音频数据在内存中字节的存放模式是小端模式(小端序)(Little-Endian),即低地址存放低位、高地址存放高位,因此如果用 2 个字节转换为 short 型的数据需要特别注意。另外,大端序与小端序相反,即低地址存放高位、高地址存放低位。
- Little-Endian 小端序:
- Big-Endian 大端序:
- 小端序存储的 byte 数据转为 short 型数值可以采用如下方式:
byte firstByte =</
以上是关于OpenGL ES之实现实时音频的可视化的主要内容,如果未能解决你的问题,请参考以下文章
从 ByteStream 可视化 Android AudioTrack