Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否可以在Processing.JS中生成正弦音调?_Javascript_Processing_Processing.js - Fatal编程技术网

Javascript 是否可以在Processing.JS中生成正弦音调?

Javascript 是否可以在Processing.JS中生成正弦音调?,javascript,processing,processing.js,Javascript,Processing,Processing.js,我是一名业余音乐家,我教那些以前几乎没有接受过音乐教育的学龄儿童音乐基础知识 我已经将12个西方音阶的音符(A,A,B,C,C,D,D,E,F,F,G,G)编码成一个圆圈,并强调了它们之间的关系,这些音阶/音程是由它们构成的 我希望能够触摸一个特定的音符名称,并生成与该音符相关的正弦音调(非常明显的一个是a=…,220Hz,440Hz,880Hz,…) 因此,要分解它,在Processing.JS中,是否可以在检测到鼠标事件时生成所需频率的正弦音调?如果有人能帮我解决这个问题,我就能解决剩下的问

我是一名业余音乐家,我教那些以前几乎没有接受过音乐教育的学龄儿童音乐基础知识

我已经将12个西方音阶的音符(A,A,B,C,C,D,D,E,F,F,G,G)编码成一个圆圈,并强调了它们之间的关系,这些音阶/音程是由它们构成的

我希望能够触摸一个特定的音符名称,并生成与该音符相关的正弦音调(非常明显的一个是a=…,220Hz,440Hz,880Hz,…)

因此,要分解它,在Processing.JS中,是否可以在检测到鼠标事件时生成所需频率的正弦音调?如果有人能帮我解决这个问题,我就能解决剩下的问题


需要明确的是:我不太擅长Javascript,而且我在处理方面也很中庸。我知道Javascript可以做类似的事情,但我不知道如何在这个webapp中集成这两种语言。

正如你所暗示的,你必须用Javascript来做。乔治的评论恰到好处:你应该从通读开始

但基本上,需要记住的是Processing.js被转换成JavaScript,因此您可以直接从Processing.js调用JavaScript代码

我会先在谷歌上搜索“JavaScript正弦音”之类的东西,以获得大量的结果。似乎是一个图书馆,你想做什么,但我相信还有很多其他的

要使用Tone.js库,首先需要将其导入HTML中,这正是导入Processing.js库的方式:

<script src="https://cdnjs.cloudflare.com/ajax/libs/tone/13.3.10/Tone.js"></script>
请注意,Processing.js在进行转换时不使用JavaScript代码,因此您的最终输出只是一组JavaScript代码。这就是为什么可以像这样混合JavaScript代码和Processing.js代码

也像乔治所说的,你应该考虑切换到P5.JS,因为Purruty.js不再被维护了。


无耻的自我推广:是关于Processing.js的教程,还有一些关于P5.js的教程。

我想你可以使用Web音频API。。。或者类似语气的东西。js@EJTH你能告诉我怎么做吗?我不知道如何集成Javascript和Processing.JS,因为我对Javascript没有太多经验。通常,您使用标记来包含依赖项,如tone.JS。阅读tone.js的参考资料,了解如何使用它。@Boloar了解如何将ProcessingJS与JavaScript集成以使用其他声音库。或者,您可以将处理语法移植到P5.js(非常类似),并使用它的库
var synth ;

void setup(){
  //create a synth and connect it to the master output (your speakers)
  synth = new Tone.Synth().toMaster();
}

void mousePressed(){
  //play a middle 'C' for the duration of an 8th note
  synth.triggerAttackRelease('C4', '8n')
}

void draw(){}