问题描述
@H_404_0@我的声卡的麦克风输入端上有来自无线电收发器的音频。我要制作的是一个使用
sox
套件和arecord
之类的Linux CLI工具的基于软件的简单鹦鹉转发器。为了使它起作用,我认为必须进行类似于以下的流程:
- 麦克风子设备上的音频正在记录在缓冲区(基于文件或RAM的缓冲区)中
- 当缓冲区停止填充(音频已停止)时,开始在音频输出设备上播放其内容(已连接到收音机的麦克风输入)
- 结束后,清空缓冲区并开始期望步骤1再次发生
arecord
拍摄的麦克风音频传递给{{ 1}}用sox缓冲的输出?
解决方法
尝试看看这个。我前一阵子在树莓派上做的,只有我做了一个变声器。 https://www.instructables.com/Halloween-Voice-Changer-With-Raspberry-Pi/
基本上,play "|rec --buffer 2048 -d"
会获取录制的声音,并将其放入缓冲区中,该缓冲区以4096位(字节?)的块形式传递。 -d
代表持续时间,如果留为空白,则默认为0,并将一直运行直到终止。如果您想使用这些选项,请在链接中找到一些有用的信息。
祝您项目顺利!