【问题标题】:How do I convert a wav file to mp3 format using sox? [closed]如何使用 sox 将 wav 文件转换为 mp3 格式? [关闭]
【发布时间】:2010-11-05 19:33:15
【问题描述】:

当我直接从命令行运行 sox 作为 ;

sox -r 8000 -c 1 <wavfilename> <mp3filename>

我收到以下错误消息:

sox:未知的输出文件格式 “747a.mp3”:文件类型“mp3”不是 已知

我的机器运行的是 CentOS 操作系统。

【问题讨论】:

  • 所以我想这意味着这个问题与 Perl 无关?
  • 所以我也猜这和编程无关?
  • 这应该转移到超级用户。
  • 我在命令行中遇到了同样的问题。

标签: mp3 centos wav sox


【解决方案1】:

您需要安装合适的 MP3 编码器,例如LAME,或使用 liblame 支持重新编译 Sox。

这与您的 Perl 编程无关 :)

【讨论】:

  • 猜猜一个人需要弄清楚如何做到这一点......
【解决方案2】:

对于 CentOS,您需要重新编译 SOX(基础 repo 有 sox srpm)并安装 libmad 和 lame-devel 库(rpmforge 有这些。)一旦完成,sox -h 将列出支持的格式。安装 mp3 库时,

sox -t wav -r 8000 -c 1 <wavfilename> -t mp3 <mp3filename>

【讨论】:

【解决方案3】:

更多信息在这里-

http://techblog.netwater.com/?p=4

【讨论】:

  • 我读过这篇文章。如果他们已经拥有旧版本怎么办?我使用 dag 存储库安装了它……我是 linux 新手。
  • 死链接。死链接。
【解决方案4】:

作为替代方案(如果您只需要将 Wave 文件编码为 MP3),您可以只使用 LAME 来获得相同的结果,例如:

lame -b 32 --resample 8 -a <wavefilename> <mp3filename>

LAME 可以使用 yum 轻松安装在 CentOS 上。您首先需要 RPMForge 存储库:

rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

然后:

yum install lame

【讨论】:

  • 非常感谢。我试图让 sox 永远工作半年,但这只是开箱即用,没有任何麻烦。可能为我节省了数小时试图弄清楚为什么没有其他人的解决方案对我有用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-02
  • 1970-01-01
相关资源
最近更新 更多