我有一个长度为5秒的正弦曲线,如下所示:
x=sin(0:.01:2*pi*500*5);
Run Code Online (Sandbox Code Playgroud)
现在我想通过给出类似如下的命令来听到这个波形的音频:
playsound(x,samplingfrequency);
Run Code Online (Sandbox Code Playgroud)
如果我能将这个音频数据写入wav或mp3文件,对我来说会很有用.这个功能需要什么库以及julia中的等效命令?
您可以使用https://github.com/ssfrr/AudioIO.jl播放音频
对于写/读wav https://github.com/JuliaLang/Sound.jl/blob/master/src/Sound.jl
但是,这两个模块目前都处于早期阶段。
您可以使用WAV.jl对 WAV 文件中的数据进行编码。您可以通过 Julia 软件包系统安装软件包:
Pkg.add("WAV")
Run Code Online (Sandbox Code Playgroud)
然后,使用该wavwrite函数创建文件:
wavwrite(data, "example.wav", Fs=8000)
Run Code Online (Sandbox Code Playgroud)
WAV 源代码库中有一个函数 ( wavplay ) 也可以播放音频,但它只适用于 Linux。在我将其作为正式版本的一部分之前,我正在等待有人贡献 windows 和 mac 版本。