基本上,我想要做的是,给定一个音频文件作为输入(最有可能是mp3或我可以使用一些音频引擎来处理其他类型),从我的电脑控制一些LED灯,使它们成为类似于winamp中的示波器。
我需要做什么才能实现这个功能?我对自己动手构建、编码、硬件等方面很感兴趣。
我将在Windows上使用C++。
基本上,我想要做的是,给定一个音频文件作为输入(最有可能是mp3或我可以使用一些音频引擎来处理其他类型),从我的电脑控制一些LED灯,使它们成为类似于winamp中的示波器。
我需要做什么才能实现这个功能?我对自己动手构建、编码、硬件等方面很感兴趣。
我将在Windows上使用C++。
听起来这是一个使用Arduino开发套件的好案例。基本上,它是一个可以连接到您的USB端口并驱动外部电子设备的小型外部设备。
在软件方面,您需要捕获音频流,通过带通滤波器进行处理,并对其进行阈值处理。如果频率带中的信号超过了阈值,您可以通过向Arduino发送命令来点亮LED。
所以我猜你想要建立一个类似LED墙的东西。难点在于将视频信号(可以通过Winamp插件或自定义解决方案预先构建)映射到LED墙像素上。我碰巧知道一些在活动业务中使用的商业解决方案。通常,您通过将一组LED条或LED瓷砖捆绑在一起来构建LED矩阵。这些设备通过DMX 512协议进行控制。 DMX 512具有512个通道,每个通道的分辨率为8位。单个LED像素通过3个通道RGB进行控制。
像Madrix这样的LED灯光控制软件需要将图像生成器的信号映射到LED像素上,然后再将其映射到DMX信号上。 DMX并不难实现,它是一种非常简单且非常稳健的协议,可以使用廉价电缆进行布线,并且在微控制器、DMX / USB适配器等方面也有许多商业解决方案可用。
使用并口直接驱动LED灯。如果您的需求简单,那么并口非常容易使用。请查看这个资源以获取布线示例。
当我在Roskilde大学时,我们将整个计算机科学楼变成了一台巨大的VU表,用于校园年度派对。
基本上,一台旧电脑被用来采样声音级别,作为0-255之间的值直接输出到“经典”的PC并口。
并口驱动一系列220V继电器,连接到不同的计算机科学办公室中放置的绿色和红色灯泡。
效果很棒!最后的点睛之笔是突然出现的日本游客拍摄建筑物的照片...