来自load.wave的不完整的wav文件,由save.wave保存

时间:2016-12-13 17:30:25

标签: r audio wav praat

如果使用音频包在R中录制并保存波形文件,则尝试再次加载时会出错。对象是存储音频文件以供以后检索。

library(audio)
k = 3 # three seconds
x <- rep(NA_real_, 44100*2*k)

# record and save wav file
record(x, 44100, 2) 
wait(k)
play(x)
save.wave(x, "test.wav")

# load file again    
y <- load.wave("test.wav")

在我们得到的最后一个命令之后:

Error in load.wave("test.wav") : incomplete file

之前的帖子已经建议an extra data problem,但为什么文件类型在包内内不一致?

1 个答案:

答案 0 :(得分:1)

看起来CRAN上的版本0.1-5(https://cran.r-project.org/web/packages/audio/index.html)不包括2014年完成的最后一次提交/修复(http://www.rforge.net/audio/git.html)。

当我克隆git项目并重新构建音频包时,我现在可以成功运行以下命令(使用CRAN包破坏了它):

save.wave(audioSample(sin(1:48000/10), 48000), "test.wav")
play(load.wave("test.wav"))

除此之外,CRAN还有另外两个可能有用的软件包声音 tuneR 。它们最近出版了。