构建一个树莓派驱动的Barkometer,第3部分

在树莓派上用麦克风捕捉声音不是一件简单的事情,你使用的麦克风对质量有很大的影响

Barkometer是一个物联网项目,目的是证明我的狗不是barkoholic,在最后两部分中,我讨论了硬件和获取干净记录的问题。结果是,让我非常恼火的是,那个Sabrent USB 2.0外部2.1环绕立体声适配器一直都是问题所在。但b在讨论硬件问题之前,让我先解释一下如何在树莓派上录制声音…

Raspbian系统中处理声音的子系统叫做The高级Linux声音架构(ALSA)。ALSA是一个庞大复杂的项目,支持数量惊人的声卡,基本上是死亡的功能。它可以处理从单通道录音(我正在尝试做的)到产生音调、白噪声和各种测试信号,再到多通道音频的回放。这确实是一个巨大的工程壮举。

下面是录制声音的命令行:

arecord- d plughw: 1、0 \
- f dat \
- c 1 \
- t wav \
——max-file-time 60 \
——use-strftime $ HOME /皮/ Y % - % - % d % H - % - % S.wav

让我们来分解一下:

  • arecord……这是……”用于ALSA声卡驱动程序的命令行声音文件记录器。它支持多种文件格式和多种声卡与多种设备。”
  • - d plughw: 1、0这就是事情复杂的地方。- d是选择哪个脉冲码调制(PCM,一种用于数字表示取样模拟信号的方法plugin to use和pluginhw是允许您忽略声音硬件的接口(它会自动执行采样率转换)。的参数1, 0指定我们想要的声源为声卡1和声卡上的设备号码。如何确定这些值?这是一个复杂的问题,但如果你插入一个USB音频输入设备到香草覆盆子设置,它将被识别为1,0…我们将在未来的文章中切切这个。
  • - f dat- fswitch指定记录和的格式dat设置格式为16位,小尾端,每秒48000个样本,立体声。
  • - c 1…将录音设置为单声道并覆盖由- f开关。
  • - t wav指定输出为WAV格式
  • ——max-file-time 60指定当输出文件捕获声音60秒时,应该关闭它并打开一个新的输出文件。保持低值有两个好处;首先,它更容易处理28 mb文件(也就是60秒每秒48000个样本的音频生成)的倍数,其次,更长的记录时间似乎导致缓冲区溢出(输入数据的条件比可以塞进输出缓冲区导致样品损失)。
  • ——use-strftime $ HOME /皮/ Y % - % - % d % H - % - % S.wav在记录时,每当打开输出文件时,使用strftime工具解释文件名参数中的%-code。在这种情况下,输出文件将保存在子目录中$ HOME /树皮并命名为2016 - 09 - 07 - 04 - 42 - 27. wav

使用这个命令,每60秒将在子目录$HOME/bark中记录一个WAV格式的新声音文件。这个命令在启动时启动(我将在后续文章中解释如何设置这个命令),除非被中断,否则它将永远运行,将文件保存在该子目录中。

那么,回到音频:在使用上述命令积累了大量测试文件之后,我试图通过后处理来减少60个周期的哼唱无畏这是一款“免费、开源、跨平台的多音轨录音和编辑音频软件”,但在去除嗡嗡声的过程中,整体音量和清晰度都下降了,使得录音质量不如人意。所以,如果你还没有检查Audacity,你正在做任何与音频有关的事情,你真的需要看看。Audacity是一个真正的珍宝,它提供了大量复杂的特性,您可能想要用于清理、添加效果和混合音频,但遗憾的是,Audacity无法将我的音频母猪的耳朵变成一个数字丝绸钱包。

回到硬件:下面的发布第2部分,读者迈克尔说:

我在树莓派上使用USB麦克风时,也遇到过60/50赫兹电源嗡嗡声的问题。我在这里发布是因为我肯定已经花了10个小时来追踪这个问题,所以这可能对其他人有用。

我的RPI靠近另一个设备的电源,麦克风增益设置为最大,记录显示仅嗡嗡噪声的音量水平就达到40%左右。在电池上运行Pi并没有解决这个问题,但断开其他电源可以,所以Pi的电源不是问题。这也是有道理的,因为开关电源会产生10秒或100千赫的噪音,而不是60赫兹的交流声。

问题实际上是麦克风和麦克风和USB声卡之间的线路从附近的设备和干线线路接收了60赫兹的嗡嗡声。然后声卡内的前置放大器放大嗡嗡声。缩短麦克风线到声卡只有很小的影响,但屏蔽它麦克风完全消除了嗡嗡声。

我还使用了一个未屏蔽的USB扩展,但这不应该是一个问题,因为a /D转换发生在声卡内部。只有在麦克风胶囊和声卡之间发生的事情才是相关的。在我的例子中,我把声卡和麦克风用铝箔包起来(一层就足够了),并留下一个洞,这样麦克风仍然可以拾音。这里是重要的部分:铝箔需要连接到USB连接器的外部。在你的情况下,女性连接器过度成型,所以这有点棘手,但如果你有一个延伸与暴露的女性连接器,你可以简单地使用一个小磁铁或一些电子磁带压铝箔对外部的金属连接器。

在我的例子中,地板的噪音从40%的60赫兹的嗡嗡声降到3%的静电。巨大的差异。麦克风现在足够干净,我可以录下自己在8英尺外的低语。

genius20webcam

天才摄像头

有趣。从来没有人坚持使用劣质的解决方案,我找到了一个老的天才摄像头插上电源,瞧!干净的声音。要么是我的吸附剂适配器有问题,要么是它有严重的问题。不管怎样,我尝试了网络摄像头和a罗技USB桌面麦克风。罗技麦克风的声音可能是最好的,但它也非常方向性与陡峭下降的两侧mic。这个天才的摄像头并不是方向性很强的,所以这就是我所坚持的。

因此,我现在有声音样本文件的WAV格式的树莓Pi在子目录$HOME/bark。我需要将这些文件转到我的网络附加存储器进行处理,这是我们将在下一期中讨论的内容。

评论?想法吗?写信给我或者在下面评论,然后跟随我推特脸谱网

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。
相关:

版权©2016Raybet2

工资调查:结果在