arecord创建的多个文件

时间:2014-07-08 10:51:23

标签: audio embedded-linux alsa buildroot

我使用buildroot进行自定义分发,使用ARMv7处理器的硬流程。 一切都在工作,除了....

# arecord -D hw:0,0 -fdat -d 5 test.wav

这会生成多个文件。成千上万的人。

-rw-r--r--    1 root     root        958508 Jan  1 00:19 test-01.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-02.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-03.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-04.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-05.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-06.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-07.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-08.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-09.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-10.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-100.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-101.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-102.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-103.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-104.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-105.wav
-rw-r--r--    1 root     root            44 Jan  1 00:19 test-106.wav

等等......

如果我传递-d参数,就会发生这种情况。有什么想法吗?

2 个答案:

答案 0 :(得分:7)

问题似乎出现在ARM体系结构上,从 1.0.28 arecord版本(arecord --version)开始。 在运行Raspbian Jessie的Raspberry Pi 3上,我设法将alsa-utils1.0.28-1降级为1.0.25-4(回滚到Wheezy的回购),以便解决问题:

  • sudo nano /etc/apt/sources.list
  • 将以下行添加到文件deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
  • 的末尾
  • sudo apt-get update
  • sudo aptitude versions alsa-utils(这应显示旧版本可用)
  • sudo apt-get install alsa-utils=1.0.25-4
  • 现在arecord --version应显示降级后的版本1.0.25
  • 您现在可能想删除添加到/etc/apt/sources.list的那一行,这样就不会从wheezy那里获得其他包
  • sudo nano /etc/apt/sources.list
  • 删除第deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
  • 再次运行apt-get update
  • 另外,将alsa-utils置于保持状态,以便不升级
  • sudo apt-mark hold alsa-utils

答案 1 :(得分:5)

另一种解决方案是将alsa-utils从源代码升级到最新版本1.1.3。这就是我在Raspberry Pi 3上的表现

  1. mkdir ~/alsa-utils
  2. cd ~/alsa-utils/
  3. wget ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.1.3.tar.bz2
  4. tar xvjf alsa-utils-1.1.3.tar.bz2
  5. cd ~/alsa-utils/alsa-utils-1.1.3/
  6. sudo apt-get install libncursesw5-dev
  7. ./configure --disable-alsaconf --disable-bat --disable-xmlto --with-curses=ncursesw
  8. make
  9. sudo make install
  10. arecord --version