Wav 在netlogo中写入声音文件:或如何调整netlogo

Wav 在netlogo中写入声音文件:或如何调整netlogo,wav,netlogo,synthesizer,Wav,Netlogo,Synthesizer,我正在写一个简单的合成器 这是我的全部代码 turtles-own [f] to setup ca file-close file-open "tune.snd" crt 1 [set f 100] reset-ticks end to go file-write mean [sin(2 * pi * f * ticks)] of turtles tick end 当我跑的时候 Repeat 44100 [go] file-clos

我正在写一个简单的合成器

这是我的全部代码

turtles-own [f]
  to setup
    ca
    file-close
    file-open "tune.snd"
    crt 1 [set f 100]
    reset-ticks
 end

to go
   file-write mean [sin(2 * pi * f * ticks)] of turtles
   tick
 end
当我跑的时候

Repeat 44100 [go] file-close
然后将输出加载到44100赫兹的声音编辑器中,我得到一秒钟的声音。到目前为止一切都很好。不幸的是,它本来是一个100赫兹的音调,但实际上,它是一个相当高的一秒钟[超过16千赫兹]


我做错了什么?

首先,这太棒了


问题很简单。NetLogo中的sin使用度,而不是弧度。

出于好奇,什么声音编辑器会将这样的数字列表作为声音文件?goldwave采用了许多奇特的格式,包括逗号分隔的浮点列表。他们称之为ASCII精确单声道。sin2*pi*f*ticks*0.0174533仍然在1k htz左右。我做错了吗?根据经验发现答案是sinf*ticks/122.5