最近項目中有個需求,要求把silk微信小程序語音轉換成mp3格式,現在Linux中已經實現了,windows的實現方式也很簡單,可在網上搜索其它方式,文章最後也給出了幾個鏈接可以參考。以下是對筆者在實踐過程總結,親測可用。
工具、環境
(1)ffmpeg-3.0.tar.gz 安裝包
(2)lame-3.99.5.tar.gz(ffmpeg依賴包)
(3)silk-v3-decoder: https://github.com/kn007/silk-v3-decoder
(4)環境centos6.8 (Final)、yum安裝gcc、gcc-c++、
注意:本文安裝都在/usr/local
中進行。以上軟件可以網上搜索得到
ffmpeg安裝
(1)上傳ffmpeg-3.0.tar.gz、lame-3.99.5.tar.gz包到/usr/local中,並解壓;
(2)在/usr/local中mkdir ffmpeg命令創建ffmpeg文件夾;
(3)先安裝lame,shell命令如下
tar -xvf lame-3.99.5.tar.gz #解壓後進入到lame文件中
cd lame-3.99.5
./configure --prefix=/usr/local/ --enable-shared ###表示安裝目錄
make
make install
(4)再安裝ffmpeg-3.0,shell命令如下
tar -xvf ffmpeg-3.0.tar.gz #解壓後進入到ffmpeg文件中
cd ffmpeg-3.0
./configure --prefix=/usr/local/ffmpeg --disable-yasm --disable-libspeex --enable-libmp3lame --disable-libvorbis --enable-shared
make ##可能會比較久,大概5分鐘
make install
(5)ffmpeg配置,配置lib.so.conf文件
echo '/usr/local/lib' >> /etc/ld.so.conf
ldconfig
echo '/usr/local/ffmpeg/lib' >> /etc/ld.so.conf
ldconfig
(6)配置系統環境:在/etc/profile
文件中PATH中添加/usr/local/ffmpeg/bin
vi /etc/profile
#在PATH後添加如下
export PATH=$PATH:$JAVA_HOME/bin:/usr/local/ffmpeg/bin
- 測試ffmpeg,輸入ffmpeg命令,出現如下,表示安裝成功
(7)安裝silk-v3包
將github上下載的silk-v3-decoder上傳到/usr/local/
目錄下,並改名爲silk-v3 - 測試命令,首次輸入以下測試時會自動編譯silk-v3
sh /usr/local/silk-v3/converter.sh /usr/local/test/demo.silk mp3
至此,整個安裝過程結束了,是不是很簡單?接下來就可以在Java或者其它程序中通過調用Linux命令實現軟件需求了。
常見問題
ffmpeg配置問題
錯誤示例
解決方法:參考上一節第(5),成功配置後的結果如下圖
環境變量問題
錯誤示例
解決:參考上一節第(6)步silk-v3編譯問題
解決:需要將原生的 silk-v3.tar.gz包上傳到服務器中,並運行一次(自動編譯)文章參考鏈接
http://www.javashuo.com/content/p-6018686.html
https://my.oschina.net/VASKS/blog/656500
http://www.wxapp-union.com/portal.php?mod=view&aid=1633