SoX 播放音频
play 1.mp3 fade 5 30 10
fade 后面的参数为 Fade in 时长 [播放总时长 [Fade out 时长]]
上面的参数表示前 5 秒淡入,中间 15 秒正常播放,后 10 秒淡出
编译安装
源代码下载
SoX http://sox.sourceforge.net
download: https://nchc.dl.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.gz
Lame MP3 encoder http://lame.sourceforge.net
download: https://nchc.dl.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz
libmad MP3 decoder http://www.underbit.com/products/mad
download: https://nchc.dl.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz
实践证明,libmad 和 lame 两个库都是必须的,如果使用 yum 安装的话,还需要同步安装 libmad-devel 和 lame-devel,才能支持播放mp3。源代码编译安装会直接安装 devel 库。
安装libmad
tar -xzvf libmad-0.15.1b.tar.gz
cd libmad-0.15.1b
./configure
make install
备注A:解压后需要修改一下编译参数,不然会编译报错:
gcc: error: unrecognized command line option '-fforce-mem'
修改configure文件,搜索-fforce-mem,删除这一行即可。
参考:https://stackoverflow.com/questions/16835803/gcc-error-unrecognized-command-line-option-fforce-mem
安装lame
tar -xzvf lame-3.100.tar.gz
cd lame-3.100
./configure
make install
这时候已经可以使用lame命令了,试试lame --help。
安装sox
tar -xzvf sox-14.4.2.tar.gz
cd sox-14.4.2
./configure
基本上就都可以了sox要支持mp3格式在执行./configure后要注意已下的几处是否是yes
gsm........................yes (in-tree)
lpc10......................yes (in-tree)
mp2/mp3....................yes
id3tag....................yes
lame......................yes
lame id3tag...............yes
dlopen lame...............no
mad.......................yes
如果没问题执行 make -s && make install 来安装sox
最后可以用 sox a.mp3 b.mp3 ab.mp3 来验证sox是否成功
这样就安装完成了,可以运行sox --version试试,也有人很不幸,比如博主我,运行sox命令遇到了类似这种报错:
sox: error while loading shared libraries: libsox.so.3: cannot open shared object file: No such file or directory
这是因为使用了共享库文件,动态链接库的原因,运行ldconfig命令刷新一下库缓存就可以了。
参考:https://blog.csdn.net/u011641885/article/details/49071081
跟踪库加载
ldd /usr/local/bin/sox
库文件位置
/usr/local/lib
运行命令刷新库缓存
ldconfig
到此,就可以使用sox进行编码解码操作了,你的sox完全支持mp3了。
Ubuntu22.10 Rust调用rodio库播放音频报错 ALSA lib pcm_dmix.c:999:(snd_pcm_dmix_open) unable to open slave
解决方案:
sudo apt install multimedia-jack
pulseaudio --kill
jack_control start

浙公网安备 33010602011771号