2

在我们的应用程序中,我们允许用户上传音频文件。目前我们支持 . wav格式,我们使用“ sox ”将 .wav 文件转换为 gsm 的星号。我们也希望有mp3支持。关于如何完成这项工作的任何建议?

非常感谢您的帮助。谢谢。

4

4 回答 4

1

当然,您仍然可以使用sox将 mp3 转换为 gsm/sln/alaw/ulaw 格式的文件

查看http://sox.sourceforge.net/soxformat.html有关格式 sox 支持的更多信息

于 2012-09-04T03:50:54.617 回答
1

这里有很多关于星号文件转换的信息。

http://www.voip-info.org/wiki/view/Asterisk+sound+files

当然你可以使用星号(如果它编译时支持 mp3)

asterisk -rx "file convert filename.mp3 filename.gsm"

如果您想使用 sox 进行转换,您可以使用 libmad 支持重新编译 sox。这是脚本:

cd /usr/src/

wget -c "http://downloads.sourceforge.net/mad/libmad-0.15.1b.tar.gz?modtime=1076976000&big_mirror=0"
wget -c 'http://downloads.sourceforge.net/mad/libid3tag-0.15.1b.tar.gz?modtime=1076976000&big_mirror=0'
wget -c "http://sourceforge.net/projects/sox/files/sox/14.3.2/sox-14.3.2.tar.gz/download"
wget -c http://downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz
wget -c "http://downloads.sourceforge.net/mad/madplay-0.15.2b.tar.gz?modtime=1077580800&big_mirror=0"
CPU=4

for i in libid3tag libmad madplay lame sox 
do
cd /usr/src/
tar -xzf $i-*.gz

cd /usr/src/$i*
./configure;
make -j $CPU
make install
done;
echo /usr/local/lib/ >>/etc/ld.so.conf
ldconfig
sox
ln -s /usr/local/bin/sox /usr/bin/sox
于 2012-09-08T20:41:25.230 回答
1

我使用了 NCH Software 的一款名为“switch”的软件,它可以很好地用于 GSM 转换和 Elastix PBX。唯一的问题是在 Elastix GUI 上的上传在系统记录上不起作用,所以我不得不使用 SCP aka SFTP over SSH 上传。

http://www.nch.com.au/switch/

于 2013-10-04T18:26:26.400 回答
-1

解决方案1:-

本地主机*CLI>help file convert

用法:file convert 从file_in 转换为file_out。如果没有给出绝对路径,将使用默认的 Asterisk 声音目录。

例子: file convert tt-monkeys.gsm tt-monkeys.ulaw

解决方案 2:- 有一些在线工具可以为您工作。 https://convertio.co/ 它可以将您的文件转换为近 20 种格式。例如 gsm、wav、cdma、wma 等。

于 2020-01-22T17:35:28.477 回答