我目前正在与 Asterisk 和 PHP Web 界面进行一些电话集成。我想让用户选择在 wav 文件中上传他们自己的自定义问候语,然后在服务器上将 wav 转换为 8000hz 的 gsm 文件。目前,我正在尝试使用 sox 来完成此操作。
但是,似乎当我在 8khz sav 和 gsm 以外的任何内容之间进行转换时,gsm 文件严重失真。这几乎就像它使文件减慢了 10 倍(wav 格式的 3 秒介绍变成了 30 秒 gsm 文件)我尝试了几种速度和重采样的组合都无济于事。理想情况下,我想获取任何上传的 wav 文件并对其进行转换,而不会让用户承担太多责任来正确编码。我绝对不是发烧友,所以如果有人能指出我正确的方向,我将不胜感激。
我正在尝试使用sox将星号语音邮件转换为原始音频。原始wav的编码信息是PCM S16 LE,所以我认为我可以做到,sox msg0000.wav msg0001.raw但是其中的原始文件是乱码,根据VLC的说法,它的长度为4分钟,而源文件为6秒。
我不确定我要去哪里错,有人怎么将wav转换成raw?最好使用sox,但是任何命令行解决方案都可以。
我正在尝试从java执行SOX命令,但不幸的是它每次都返回一个错误.其他每个SOX命令都运行得很好!! 这是代码:
class Simple {
public static void main(String args[]) throws IOException, Exception {
Process p;
BufferedReader br;
String co = "sox speech_16.wav -p pad 0 2.5 | sox - -m speech_16.wav speech_output.wav";
p = Runtime.getRuntime().exec(co);
br = new BufferedReader(new InputStreamReader(p.getInputStream()));
int returnCode = p.waitFor();
System.out.println("reurn code : "+returnCode);
}
}
Run Code Online (Sandbox Code Playgroud)
当我在终端中执行相同的sox命令时,它工作正常.我真的无法理解问题是什么!是因为'|' 符号??
我想从上传到服务器的音频文件中删除某个频率范围。我了解到 SoX 命令具有这样的功能。
我找不到实现此目的的确切方法。任何帮助都是最受欢迎的。
我正在尝试在 AWS lambda 函数中使用 sox 将 FLAC 文件转换为 MP3,但我似乎无法构建支持 FLAC 的 sox 版本。
我找到了我一直在使用的这个很棒的解决方案,但它不支持 FLAC。
我在网上搜索了替代品,但似乎没有任何效果。我还读到,在某个阶段 FLAC 支持丢失了,但应该已修复。我仍在寻找答案,但任何帮助表示赞赏。
我已经添加sox到我的 PATH 中,它似乎做得很好。如果我打开终端并输入C:\Users\[EXAMPLE USERNAME]>sox,程序将运行所有选项和效果。问题是我似乎play无法上班。我已经试过C:\Users\[EXAMPLE USERNAME]>play file.ogg这给产生错误:'play' is not recognized as an internal or external command, operable program or batch file。我不完全确定这里发生了什么。
我通常会考虑创建一个 PATH 变量,play但正如在这个问题的答案的评论中提到的那样,没有可执行文件,它的sox名称不同。
另外,作为参考,我在 Windows 10 上使用 sox-14-4-2。
我的目标是通过使用SoX获取包含非噪声声音的音频文件部分.我已阅读SOX法案的影响,发现noisered与silence我认为有帮助的.问题是我没有找到可以根据其中的静音暂停修剪音频文件的命令.
我正在尝试修剪 30+ 分钟文件的前 .010 毫秒。修剪命令会修剪它,但我得到的输出是 0.010 毫秒。我想要的是保留音频文件的结尾部分并去掉文件开头的 0.010 毫秒。
我尝试使用以下命令:
sox input.wav output.wav trim 0 .010
Run Code Online (Sandbox Code Playgroud) 我使用 SoX 来生成这个声音:
\n\n$ play -n synth 1 pluck E3 repeat 2\nRun Code Online (Sandbox Code Playgroud)\n\n我设法在新的终端选项卡上同时播放另一种模式,让 \xe2\x80\x99s 说$ play -n synth 1.5 pluck C3 repeat 2。有没有办法在同一个 bash 脚本中同时播放这两种模式?
我正在使用谷歌语音库,如下所示:
from google_speech import Speech
# say "Hello World"
text = "Hello World"
lang = "en"
speech = Speech(text, lang)
speech.play()
Run Code Online (Sandbox Code Playgroud)
收到此错误:
RuntimeError
Traceback (most recent call last)
<ipython-input-2-4daa3294f636> in <module>()
----> 1 from google_speech import Speech
2
3 # say "Hello World"
4 text = "Hello World"
5 lang = "en"
D:\soft\Ins\anac\lib\site-packages\google_speech\__init__.py in <module>()
321
322 # check deps
--> 323 bin_dep.check_bin_dependency(("sox",))
324
325
D:\soft\Ins\anac\lib\site-packages\google_speech\bin_dep.py in check_bin_dependency(bins)
5 for bin in bins:
6 if shutil.which(bin) is None:
----> 7 …Run Code Online (Sandbox Code Playgroud)