12

我正在尝试在 OS X 上将文件转换为MIDI文件。WAV

到目前为止,我有这个:

fluidsynth -F output_sound soundfont.sf2 note.mid

这会创建一个文件,但是,该文件不是 WAV,鉴于我得到此输出output_sound,它似乎是格式:sint16

~ $ fluidsynth -O help
FluidSynth version 1.1.6
Copyright (C) 2000-2012 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

-O options (audio file format):
   's16'

有没有一种简单的方法可以将终端转换output_soundWAV文件(或任何可编写脚本的方式)?

4

3 回答 3

9

有一个比使用 SoX 更简单的方法:当 FluidSynth 安装了 libsndfile 支持时,它默认输出 WAV。这是 Homebrew 默认安装 FluidSynth 的方式:

$ brew install fluid-synth
...
$ fluidsynth -T help
FluidSynth runtime version 2.0.8
Copyright (C) 2000-2019 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

-T options (audio file type):
   'aiff','au','auto','avr','caf','flac','htk','iff','mat','mpc','oga','paf','pvf','raw','rf64','sd2','sds','sf','voc','w64','wav','wve','xi'

auto: Determine type from file name extension, defaults to "wav"
于 2015-08-02T21:22:46.693 回答
7

我发现最简单的解决办法是胆怯:

timidity input.mid -Ow -o out.wav

如果您使用自制软件,安装也很简单:

brew install timidity
于 2016-01-28T23:16:46.860 回答
4

感谢 CL. 的评论,我想出了这个:

sox -t raw -r 44100 -e signed -b 16 -c 1 raw_audio audio.wav
于 2013-11-05T00:57:05.347 回答