我的服务器抛出此错误
Sox::Error (sox FAIL formats: no handler for file extension `mp3'
)
这个人(https://superuser.com/questions/421153/how-to-add-a-mp3-handler-to-sox)有类似的问题。列出的解决方案是
sudo apt-get install libsox-fmt-mp3
运行后我仍然遇到同样的错误,所以我卸载了sox(sudo apt-get remove sox)然后重新安装它。在这一点上,我相信它们都安装了最新版本,因为任何安装它们的尝试都会产生这个
libsox-fmt-mp3 is already the newest version.
sox is already the newest version.
但是,我仍然收到同样的错误。
知道我缺少什么吗?
编辑:
我正在使用ruby-sox gem(https://github.com/TMXCredit/ruby-sox),它说下面应该足够了。
apt-get install libsox-fmt-all sox libchromaprint-dev
但所有这些都已安装,但仍然没有骰子。
编辑:
我能想到这一点的唯一方法是,如果sox正在寻找错误位置的lib文件。考虑到这一点,这些细节可能会有所帮助,
sudo find / -name sox
/usr/bin/sox
/usr/lib/x86_64-linux-gnu/sox
/usr/lib/mime/packages/sox
/usr/share/doc/sox
/home/deployer/apps/eko/shared/bundle/ruby/2.1.0/gems/ruby-sox-0.0.1/lib/sox
sudo find / -name libsox-fmt-mp3
/usr/share/doc/libsox-fmt-mp3
当我卸载sox(apt-get remove sox)时,我在搜索sox时得到了这个
ubuntu@ip-10-0-0-9:~$ sudo find / -name sox
/usr/lib/x86_64-linux-gnu/sox
/home/deployer/apps/eko/shared/bundle/ruby/2.1.0/gems/ruby-sox-0.0.1/lib/sox
为了摆脱这个袜子,希望除了宝石体验之外的任何地方都能回到没有sox,我试过
sudo apt-get remove libsox-dev
告诉我a)没有安装libsox-dev而b)我需要
sudo apt-get autoremove
删除不再需要的与sox相关的大量文件。此时,除了gem之外,还没有sox文件。然后我
apt-get install libsox-fmt-all sox libchromaprint-dev
正如宝石建议的那样。
没有骰子。同样的错误。
答案 0 :(得分:2)
Ult决定只使用wavs。几个月后(又名现在)需求发生变化,为了支持IE,我必须启动并运行mp3支持。所有上述问题仍然适用。
使用跛脚结束。
system "lame -b 32 --resample 8 -a #{Rails.root.join("tmp",@filename)} #{Rails.root.join("tmp",@output_file_name)}"
答案 1 :(得分:0)
我也遇到了这个问题。对我来说,问题是我收到了我认为是mp3
但实际上是aac
的音频流。 Sox没有用于aac的处理程序,但是切换到ffmpeg
就像一个魅力:
ffmpeg -i input.aac output.wav