我试图找出如何在节点中调整PCM音频流的音量级别。
我已经查看了npmjs.org所有可以找到的用于处理音频的模块,但是没有找到任何可以接收数据的内容,更改音量,并给我一个流。
是否存在可以执行此操作的任何模块,甚至可能甚至是某些不是专门针对它的模块? 如果没有,那么我可以创建一个模块,如果有人能指出我正确的方向来逐字节修改流。
这是我想要完成的事情: 我正在编写一个程序来接收几个PCM音频流,并将它们混合用于具有不同音量级别的多个输出。例如:
inputs vol output
music 25% output 1
live audio 80% output 1
microphone 0% output 1
music 100% output 2
live audio 0% output 2
microphone 0% output 2
答案 0 :(得分:0)
您使用什么类型的连接? (会更容易提供示例代码)
您基本上想要做的是创建连接。然后在连接或请求对象上添加一个'数据的监听器。事件。如果您未设置编码,则回调上的数据参数应为Buffer。在通过网络传递每个块之后触发数据事件。
缓冲区使用常规的javascript数值为您提供对数据流的字节大小访问。然后,您可以解析该块,使用闭包将它们保存在多个数据事件的内存中(以缓冲多个块)。并在适当时将解析和处理的数据写入套接字(另一个套接字或双向套接字的情况下相同)。不要忘记管理你的关闭以避免内存泄漏!
这只是一个抽象的描述。如果有任何需要澄清,请告诉我。