Dr.*_*ius 7 wolfram-mathematica
我从来没有在Mma中用过多的声音.
我有
t = Sound[List["Violin",SoundNote[-6]]]
Run Code Online (Sandbox Code Playgroud)
我怎么能导出t为.WAV文件?
当我尝试显而易见的时候
Export["c:\\test.wav",t]
Run Code Online (Sandbox Code Playgroud)
我明白了

在这个老线程 Szabolcs说,它无法做到.也许自2007年以来情况有所改善!
我认为还是做不到。Mathematica 支持创建和修改MIDI对象,但将声音的生成从 MIDI 留给底层操作系统。目前,您必须导出到 midi,然后使用系统上的 midi 界面或在线服务转换为采样声音格式。
例如(来自文档)
t = Sound[SoundNote[DeleteCases[3 Range[31] Reverse[#], 0] - 48, .1] & /@
Transpose[CellularAutomaton[90, {{1}, 0}, 30]]]
Export["test.mid", t]
Run Code Online (Sandbox Code Playgroud)
上传到http://free-midi-converter.com/Midi/Create给出了链接。
它还可以使用TiMidity进行转换,TiMidity可通过以下命令在所有主要操作系统上使用(假设您已运行上述命令)
Run["timidity test.mid -Ow -o test.wav"]
Run Code Online (Sandbox Code Playgroud)
可以使用 导入回 Mathematica Import["test.wav"]。
如果需要的话,这种转换可以自动化......
显然,VLC 还可以将 midi 转换为 wav,这对于某些专有操作系统来说可能是一个更简单的选择!另请参阅此处给出的选项。