題 如何向sox添加mp3處理程序?


我想在終端播放音樂 sox

# install sox/lame
sudo apt-get install sox
sudo apt-get install lame

# play music
play music.mp3
# play FAIL formats: no handler for file extension `mp3'

# mp3 -> wav
lame --decode music.mp3 music.wav

# play music
play music.wav

~ $ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04 LTS"

~ $ sox --version
sox: SoX v14.3.2

的大小 music.wav 比...大+10倍 music.mp3
我不想轉換所有 *.mp3 至 *.wav
可以在sox中添加mp3處理程序嗎?


79
2018-05-06 07:42


起源


你正在使用什麼Linux發行版......你正在運行什麼版本的發行版和sox ...也正在運行 sox -h 報告程序支持的編解碼器...請檢查其中是否支持mp3 ... - user1055604
而不是當前接受的答案(跛腳/管道),正確/最簡單的答案是安裝 libsox-fmt-all  superuser.com/a/421168/73961 - michael


答案:


管?

lame --decode music.mp3 - | play -

不會留下任何痕跡。


8
2018-05-06 08:51



問題是關於一個sox處理程序。這絕對不是sox :) - Elektordi
你也可以管道進入sox - Scott


安裝libsox-fmt-mp3:

sudo apt-get install libsox-fmt-mp3

188
2018-05-06 09:15



我發現之後我還需要升級sox;所以將“sox”添加到上面的命令並沒有什麼壞處。 - jcomeau_ictx
這對我不起作用。即使 aptitude reinstall sox 我還是得到了 SoX was compiled without MP3 encoding support 當我試圖跑 sox 然後。 (雖然我承認我還在運行Lucid,但在更現代的Ubuntu上這可能會更好。) - zrajm
@kev,你應該選擇這個作為接受的答案。還有一個 libsox-fmt-all 安裝mp3格式的軟件包,以及所有其他可用格式。 - naught101
+1,這應該是接受的答案,因為它允許除了播放之外的其他事情,例如轉換(例如 sox input.wav output.mp3 沒有這個包就行了 - pascalhein
安裝libsox-fmt-mp3並運行後我得到一個:sox WARN mp3-util:MAD丟失同步 - kroe