使用 sox 生成方波信号

使用 sox 生成方波信号

我有一个脚本(http://paste.ubuntu.com/24497460/) 使用 sox 从遥控器的 lirc 生成的一系列“脉冲”和“空间”生成波形。该脚本为脉冲创建 19kHz 正弦波,为空间创建“静音”。

我想将生成的波形文件转换为数字数据(其中脉冲(及其长度)标记为 1,空格标记为 0)。由于这是开关键控,因此有多种工具可以为我执行此操作。问题是这些工具要求“最大音量”,而不是正弦波。

我的问题是 - 我可以用 sox 做什么来生成“高音量”时段?像“pad”选项一样,但输出最大音量而不是 0?

答案1

我设法弄明白了。我按照 @dirkt 的建议使用了方波而不是正弦波,但我必须将方波频率降低到足够低,以便“方波”周期大于我最长的位长度。我尝试了 10Hz 方波,以下是差异:

<       SOX_OPT="${SOX_OPT} synth ${LEN}s square 10 0 0" # square wave 10Hz
---
>       SOX_OPT="${SOX_OPT} synth ${LEN}s sine 19k 0 0 sine 19k 0 50" # sine wave 19kHz 2ch phase shift

结果如下:

  • 调制正弦波:

    调制正弦波

  • 方波信号:

    方波信号

相关内容