问题标签 [sound-synthesis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
263 浏览

actionscript-3 - 无法创建功能以非常快(以毫秒为单位)在 Tone 上上下调整音量

基本上我使用 AS3 来生成音调。我需要能够向我的函数传递一个数组,该数组看起来像{0,50,100,0,20,500,200,100}每个代表毫秒。它就像“关闭,打开,关闭,打开,关闭”等,我需要将音调精确到毫秒,没有延迟或打嗝。

我尝试用计时器制作一个函数来完成这个......但它真的没有我需要的那么精确。有轻微的延迟,而且很明显没有像他们需要的那样播放真正短的。

我在想我只是播放我的音调,然后使用 SoundTransform 来打开和关闭音量,这可以帮助它更快,因为我没有开始和停止声音,我只是在真实地操纵音量时间。

但也许不是音量放慢了速度,也许只是计时器不够可靠。这是我的代码,该函数只是循环,直到我用另一个函数停止它。关于如何使这个更精确的任何建议?

我使用所有计时器处理数组的函数

这是我正在使用的toneGen类

0 投票
1 回答
377 浏览

android - Android中的多普勒/合成效果?

在 Android 中,SoundPool.playAPI 允许播放音效。我想知道如何更改参数以实现多普勒效应:

0 投票
1 回答
696 浏览

actionscript-3 - 如何为 Sound 对象编写音频包络(启动时间、淡入)?

我做了一个简单的正弦波音调发生器。问题是当播放音调时可以听到强烈的咔嗒声,我需要实现快速淡入(攻击时间)以避免这种情况。

我尝试使用补间(如 tweenmax),但它会导致音频失真(可能是补间中的步骤?)。我发现了一些关于这个主题的模糊教程,但没有关于攻击时间的具体内容。

我怎样才能做到这一点?

0 投票
1 回答
470 浏览

python - 音乐多个同时音调,python

我正在做一个有趣的项目,涉及解决数学问题和音乐。生成特定的音符(或音调)很容易:

我在 python 中工作,并且有代码可以从http://code.google.com/p/scitools/做很多事情。

当然,在真实的音乐中,通常会在同一时间步播放多个音调。我试图通过生成然后将两个音调相加来做到这一点,即:

双音=音符(440, 2)+音符(261.63, 2)

但这只是废话。我如何在数学上编码多个同时音调?

0 投票
0 回答
125 浏览

python - 如何在 Python 中编写吉他弦代码?

可能重复:
Python 中的吉他字符串代码?

我对制作可以模拟吉他弦的代码非常感兴趣。我该怎么做呢?或者至少我将如何开始这样做?

以下是我的想法:

我想看看弹奏不同琴弦、音符等时的声波(分析振幅和频率)。我还对演奏两根不同琴弦时的声波感兴趣,以及当它们不和谐时如何变化和辅音音符。我感兴趣的另一件事是,有时琴弦在不被弹拨时会如何振动(共振)。

我只需要一个可以更改的基本代码,但我不知道如何制作。

谢谢!!

0 投票
1 回答
1987 浏览

audio - 使用 PortAudio 生成正弦波以播放中间 C

我无法在 PortAudio 中生成特定频率,每当我尝试更改频率内部的频率时sin(n * FREQ * 2 * PI / SAMPLE_RATE),频率保持不变,但声音似乎确实在音色上发生了变化,我放在那里的频率值越高,声音就越难看,然而相同的频率。这就是我的patestCallback循环中的内容:

0 投票
1 回答
168 浏览

java - java DSP合成器的奇怪行为

我正在尝试使用 javax.sound.sampled.SourceDataLine 播放保存在字节数组中的信号。我正在尝试开始播放简单的正弦波。对于某些频率(例如 1000Hz、400Hz),它运行良好,但对于其他频率(1001、440),我只会听到几乎无声的嗡嗡声。采样率肯定足够高以防止混叠(16Khz)。有任何想法吗 ?干杯。

}

0 投票
2 回答
694 浏览

performance - 用于实时、低延迟声音合成和快速处理的语言?

我是大学的一名 IT 学生,用 Visual Basic 编程了很长时间。在这里自学了 Java 和 C#(真的类似于 Java)。我也是一名音乐制作人,我想开始做一个大项目,只是为了我自己,为了好玩,为了扩展我的知识。

我想制作像 Cubase、Reaper 或 Fruity Loops 这样的 DAW(数字音频工作站)。从诸如声音音序器之类的小东西开始。我已经制作了一些流程图。

我想尽快开始编码,但 Java 是一种解释语言,如 SuperCollider 和 Python,处理起来很慢。Visual Basic 不是一个选项,我喜欢从它开始,但我不再喜欢它了。我不知道该不该用C#,我作为一个Linux爱好者,不想因为需要用Visual Studio就嫁给Windows。我知道有单声道。

什么是适合我的语言?会不会是什么东西:

  1. 快速处理,尽可能不解释
  2. 能够使我的软件跨平台。不需要重写所有代码,也许只是为不同的系统实现一些方法。
  3. 有良好的文档。

我知道我的问题可能有点复杂,甚至可以被视为不成熟。但我需要帮助选择一门新的语言来学习。

感谢您花时间阅读本文。每一个答案都值得赞赏。

0 投票
1 回答
282 浏览

c++ - stk::SineWave 如何计算正弦波?

我是 C++ 新手,我正在尝试从 Synthesis Toolkit 中理解 SineWave 类。描述

This class computes and saves a static sine "table" that can be shared by multiple instances. It has an interface similar to the WaveLoop class but inherits from the Generator class. Output values are computed using linear interpolation.

所以我猜它根本不计算正弦?如果它在正弦波的高点和低点之间使用线性插值,那不就是三角波吗?有人可以解释计算的作用吗?

0 投票
7 回答
9492 浏览

python - 在 python 中使用超级对撞机

我想做一些实时声音处理,我听说过supercollider

它看起来很棒,但我想坚持使用 python,因为“正常”编程是问题所在。

有没有办法将 python 脚本作为模块加载到 supercollider 或对立面?

意味着将库导入我的 python 代码并使用 supercollider 功能?

我在网上没有找到太多关于它的信息,所以任何帮助都会很棒。