我想呈现显示音频频率数据的波形。
我的数据点为150点/秒。
我使用canvas渲染它,显示每个数据值的行。所以我用1秒的歌曲显示150行,它以正确的方式显示,但是当我们滚动视图时,它的滞后。
是否有任何库可以使用openGL,canvas或使用滚动时平滑的任何其他方法呈现数据点。
These are two waves。每行代表一个数据点,最小值为零,最大值将是数据集中的最高值。
如何在OpenGL中渲染此wave或使用任何其他库,因为如果使用canvas渲染,它在Scrolling中会滞后。
答案 0 :(得分:0)
也许你可以展示它的样子。你是如何创建线条的?积分分散了吗?你需要连接它们还是有固定点?
通常在OpenGL-ES中,过程如下: - 读入您的音频数据 - 对它们进行排序,以便OpenGL知道如何连接它们 - 将它们上传到你的vertexShader
答案 1 :(得分:0)
我真的会推荐this教程。我不知道你的OpenGL背景,因此这是启动它的完美工具。 实际上,您的应用程序不应该太复杂,教程应该为您提供足够的信息。在这种情况下,您希望用150点可视化每一秒 只是一个小概述
用于绘制
在glBegin(GL_LINES)
glVertexf((float)x每行的值,(float)y每行的小值); glVertexf((float)x每行的值,(float)y每行的高值);
glEnd();
如果必须使用移动图形,则需要着色器,因为OpenGLES仅支持GLSL中的着色器