关闭

使用Ubuntu录制声音(兼容Debian)

525人阅读 评论(0) 收藏 举报
分类:

安装软件包

sudo apt-get update   #更新软件源,最好使用国内的软件源,如何配置源参考百度。
sudo apt-get upgrade  #升级软件包
sudo apt-get install alsa-utils alsa-tools alsa-tools-gui alsamixergui #安装所需软件包

查看音频设备
在安装完软件包之后,就可以使用相应的命令来查看相应的设备了:

arecord -l

将会列出系统中可用的设备:

card 0: PCH [HDA Intel PCH], device 0: CS4206 Analog [CS4206 Analog] Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: CS4206 Digital [CS4206 Digital] Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: Device_1 [USB PnP Sound Device], device 0: USB Audio [USB Audio] Subdevices: 1/1
Subdevice #0: subdevice #0

在我的电脑中存在四个设备,他分分别是card0,0、card0,1、card1,0、card2,0。其中card0是电脑中内置一块声卡,其中他的两个设备是左右两个声道。card1和card2是我买来的两块USB外置声卡。

开始录音
使用外置声卡录音:

arecord -D "plughw:1,0" -f S16_LE -r 16000 -d 5 -t wav file.wav

命令解释:

指令 含义 本指令含义
-D 选择设备名称 使用外置USB声卡1 plughw:1,0
-f 录音格式 S16_LE代表有符号16位小端序
-r 采样率 16000是16KHz采样
-d 录音时长 录音5
-t 录音格式 wav格式
file.wav 文件名,可以包含路径 文件名字叫 file.wav


一个需要注意的事:一开始我录音的时候没有添加plug这个词,直接使用了hw:1,0来表示录音设备,的到了这样的提示:

Warning: rate is not accurate (requested = 16000Hz, got = 44100Hz)  please, try the plug plugin 

从字面意思来看意思是我使用的采样率不准确,希望得到16K采样,结果却的到了44.1K采样,其实问题不是我们的采样率不准确,而是我们的声卡是USB外置声卡,需要使用plughw:1,0这样的方法来标识。更改之后就正常了。

验证录音
播放录音的指令:

aplay file.wav 

使用aplay软件播放名字叫file.wav的文件,它会向我们提供一些提示信息:

Playing WAVE 'file.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono

正在播放file.wav文件,有符号16位整形,小端序,16K采样率,单声道

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4714次
    • 积分:136
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    最新评论