如何使用sox将wav文件转换为mp3格式?

19 mp3 centos wav sox

当我直接从命令行运行sox时;

sox -r 8000 -c 1 <wavfilename> <mp3filename>
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

sox:'747a.mp3'的输出文件格式未知:文件类型'mp3'未知

我的机器正在运行CentOS操作系统.

Jer*_*yth 10

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

这与您的Perl编程无关:)

  • 猜猜一个人需要弄清楚如何做到这一点...... (2认同)

Jua*_*uan 10

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

lame -b 32 --resample 8 -a <wavefilename> <mp3filename>
Run Code Online (Sandbox Code Playgroud)

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
Run Code Online (Sandbox Code Playgroud)

然后:

yum install lame
Run Code Online (Sandbox Code Playgroud)


小智 5

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

sox -t wav -r 8000 -c 1 <wavfilename> -t mp3 <mp3filename>
Run Code Online (Sandbox Code Playgroud)

  • 启用 RpmForge 的提示(安装 libmad-devel 和 lame-devel):http://wiki.centos.org/AdditionalResources/Repositories/RPMForge 你还需要 alsa-lib-devel 和 libvorbis-devel 以及一些关于 SRPM 的信息: http://wiki.centos.org/HowTos/RebuildSRPM (3认同)