【发布时间】:2010-11-06 01:52:43
【问题描述】:
我一直在编写一些声音处理代码,现在我正在做一些可视化。我完成了spectrogram 频谱图,但是我绘制它的速度太慢了。
我正在使用 OpenGL 进行 2D 绘图,这使得寻求帮助变得更加困难。另外我对 OpenGL 很陌生,所以我不知道事情的标准完成方式。
我将每个像素的 r,g,b 值存储在一个大矩阵中。 每次我得到一个小的声音片段时,我都会对其进行处理并将其转换为像素列。一切都向左移动 1 个像素,新行放在最后。
每次重绘时,我都会循环设置颜色并单独绘制每个像素,这似乎是一种非常低效的方法。
有没有更好的方法来做到这一点?有什么方法可以简单地移动一堆像素吗?
【问题讨论】:
-
为什么不从你的频谱图中构建一个位图,然后将位图用作 gl quad 的纹理?