LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 874|回复: 6

关于录音的问题

[复制链接]
发表于 2005-3-22 18:05:59 | 显示全部楼层 |阅读模式
alsa utilities里面的 arecord 录音格式只有 wav

因此,采用如下方法录音成 mp3

arecord -t wav -f cd | lame -h --preset cbr 192 - tmp.mp3

就是将 arecord 录得的 wav 直接管道给 lame

经过试验,该方法失败。 具体错误看下面的表象说明。

如果分开两个步骤

arecord -t wav -f cd tmp.wav
lame -h --preset cbr 192 tmp.wav tmp.mp3

那最后生成的文件就没有一点问题。

采用管道方式时的表象:
1、mp3文件大小变化很慢,间隔性的上涨,似乎 lame 是缓存到一定程度再写出。
2、CTRL C退出后,file tmp.mp3 输出结果不稳定,多数情况下显示 tmp.mp3: data,少数时候正确辨认为 mp3 。 怀疑arecord中止以后,管道中断,lame 没有做好后续工作,导致mp3文件格式没有写完整。

求助,有什么办法可以解决上面的问题吗?或者有没有命令行下面直录mp3的软件?

:thank  :thank
 楼主| 发表于 2005-3-24 17:53:33 | 显示全部楼层
up up! ;)
回复 支持 反对

使用道具 举报

发表于 2005-3-24 19:01:11 | 显示全部楼层
试试audacity
专业级的声音处理软件
回复 支持 反对

使用道具 举报

发表于 2005-3-24 19:58:39 | 显示全部楼层
试试audacity
专业级的声音处理软件,录音,剪辑,特效....应有尽有
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-25 13:39:08 | 显示全部楼层
I need solutions of 命令行下面直录mp3.

Thanks anyway.
回复 支持 反对

使用道具 举报

发表于 2005-3-25 19:10:04 | 显示全部楼层
我这里可以的说。用的就是你的命令哦。我的是turbolinux 10d.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-26 18:04:18 | 显示全部楼层
嗯,我这里不行。

lame在我这里似乎不太能处理管道中断,不能正确结束mp3文件。

尤其在短时间的录制中,比如5秒左右,得到的根本就是空文件。似乎在管道中断后,lame没有把正在处理的数据写入文件。长时间的录制则相对好一点,也需要看运气,呵呵,不太懂为什么文件格式有时正确有时不正确。

现在我用sox来录,尽管压缩编码率只能在112K,但运行正常。对了,尽管长时间录制正常,但5秒的录制还是不能搞定。

sox和lame第一次写入输出文件都是128K大小。估计是5秒的声音不到128K,直接丢失掉了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表