问题标签 [audiokit]

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 投票
1 回答
135 浏览

ios - AudioKit:根据陀螺数据/摇摆手机改变声音?

这是一个 AudioKit 问题:

总的来说,我对 AudioKit 和音频真的很陌生。

我的问题是:我如何使用 AudioKit 来创建随着我移动手机而变化的声音?我已经知道如何获取陀螺仪信息,所以可以说我可以将陀螺仪值取在 0-10 之间,零表示手机没有移动,10 表示手机有很多移动。我想将其翻译成与手机移动的力度/速度相对应的声音。首先,随着速度的增加,将声音调高,将低调调低至零。听起来很容易是吗?

我只是没有足够的经验知道要使用哪个 AudioKit 类或如何使用它来实现我的结果。

谢谢!迈克尔

0 投票
1 回答
310 浏览

swift - AKAudioPlayer 节点在到达文件/缓冲区末尾之前停止后是否应用 10 ms 淡出?

首先,我只想感谢 AudioKit 的团队通过他们的代码阐明了一些难题。我有几个问题。

1:如果播放器在到达文件/缓冲区末尾之前停止,则不会出现 AKAudioPlayer 类应用现场淡入淡出。AudioKit 库中是否还有其他地方可以处理这个问题?

2:有人知道AVAudioMixer节点的音量可以实时调节吗?EG 我可以每 1/441 毫秒进行一次调整以跟随我的渐变包络曲线吗?还有带有 globalGain 属性的 AVAudioUnitEQ。

3: 是否可以在 AVAudioPCMBuffer 的 floatChannelData 被调度后写入,并且正在播放?

我正在用 AVFoundation 编写一个采样器应用程序。当需要解决在 AVAudioPlayerNodes 中对加载的音频文件应用淡入淡出的问题时,我的第一个计划是实时调整连接到我的播放器节点的混音器节点的音量。这似乎没有任何效果。这样做完全有可能我的时机不对。

当我最终查看 AKAudioPlayer 类时,我意识到可以调整与音频文件关联的实际缓冲区。经过一两天的调试,我能够将 AKAudioPlayer 类中的代码调整到我的 PadModel 类中,但有一些细微差别,而且效果很好。

但是,每当我在文件结束之前停止播放我的一个 Pad 时,我仍然会收到那些讨厌的小点击,因为我应用的淡入淡出仅在文件/缓冲区的开头和结尾处到位。

就我的第一个问题而言,在查看 AKAudioPlayer 类时,似乎唯一应用于缓冲区的淡入淡出发生在缓冲区的开头和结尾。stop() 方法似乎没有对缓冲区应用任何类型的现场淡入淡出。

在我看来,一旦停止事件发生,淡出的唯一方法就是在所述停止事件之后应用它,对吗?

我试过这样做,在我的播放器节点上调用 stop 后立即播放一个 10 毫秒长的淡出缓冲区,该缓冲区由停止位置后 10 毫秒的缓冲区组成。它没有预期的效果。我从一开始就对这个方案没有太大的信心,但似乎值得一试。

需要明确的是,一旦我的 stop() 方法被调用,在实际停止播放器节点之前,我分配了 10 毫秒的淡入淡出缓冲区,在它当前所在的位置读入缓冲区,因为我的淡入淡出缓冲区包含的帧数的。然后我将信封应用到最近分配的淡出缓冲区,就像在 AKAudioPlayer 类的 fadeBuffer() 方法中所做的那样。此时我终于在播放节点上调用了 stop(),然后调度并播放淡出缓冲区。

显然,停止缓冲区和播放淡出缓冲区之间会有不连续性,例如,当我将淡入淡出应用于淡出缓冲区时,我分配给局部变量的停止帧位置将不再有效,等等确实,一旦我放开一个打击垫,播放的声音只能用断断续续来形容。

我能想到的唯一其他解决方案让我觉得这是一项艰巨的任务,那就是在播放缓冲区时,在当前播放位置之前不断地实时将淡入淡出包络应用于样本。我目前不相信我有编码能力来解决这个问题。

无论如何,我查看了所有与 AudioKit 相关的 SO 问题,但似乎没有出现这个特定主题。因此,任何人对此事的想法将不胜感激。提前致谢!

如果有人想查看我的代码,PadModel 类从该文件的第 223 行开始:

https://github.com/mike-normal13/pad/blob/master/Pad.swift

0 投票
2 回答
242 浏览

audiokit - 将幅度调制应用于粉红噪声操作

AudioKit 提供了有关通过平移创建白噪声的文档,如下所示:

但是,我希望使用以下参数(来自 SoundForge Pro)来更改幅度,而不是平移:

这可以使用 AudioKit 吗?

0 投票
2 回答
173 浏览

swift - Audiokit 似乎只接收前三个 sysex MIDI 消息

我正在尝试使用 audiokit 从 mac 上的应用程序中的硬件合成器接收系统消息。这些合成器消息由 11 个数字组成,例如:

在当前发布的 audiokit (4.5.5) 版本中,这样的消息是在函数中的 AKMIDIListener 类中接收的:receivedMIDISystemCommand(data). 她的“数据”对象收到如下“混乱”消息:[240, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

一些观察 - 似乎如此大量的数字是由 256 个数字的 6 个部分组成的。它们以取自真实消息的三个数字开头,然后是 253 个零。- 大多数部分都是重复的。

有了这一切,我可以重新创建原始消息。当我这样做时,我发现每条消息都被多次接收。而且很多消息似乎都丢失了。

长话短说,我真的很喜欢 Audiokit 有很多原因,但我不能用它来接收 sysex。

0 投票
1 回答
124 浏览

audiokit - AKAudioPlayer 循环不起作用

我在 iOS 上使用 AudioKit 4.01。使用 AKAudioPlayer.replace(file:) 后,AKAudioPlayer 不再正确循环:它不再考虑值“endTime”,文件一直播放到结束。这是一个错误还是我错过了什么?

0 投票
1 回答
399 浏览

decibel - 为什么这个分贝计算是 /10 而不是 /20?

AudioKit 支持将音频文件标准化为给定的最大分贝 (dB) 级别。

我的理解是,这些将是场量而不是功率量。

因此,这不应该/ 20.0代替/ 10.0吗?

这不应该20 *代替10 *吗?

有问题的代码:

https://github.com/AudioKit/AudioKit/blob/9ae8641551bc5f7b4c9b4c887aa327155fac83b5/AudioKit/Common/Internals/Audio%20File/AKAudioFile%2BProcessing.swift#L42

https://github.com/AudioKit/AudioKit/blob/9ae8641551bc5f7b4c9b4c887aa327155fac83b5/AudioKit/Common/Internals/Audio%20File/AKAudioFile.swift#L294

参考:

http://www.sengpieaudio.com/calculator-db.htm

https://en.wikipedia.org/wiki/Field,_power,_and_root-power_quantities

谢谢!

0 投票
1 回答
188 浏览

audiokit - AudioKit 4.0 AKPeriodicFunctions 未启动

无法在 XCode 9 中启动 AK4 AKPeriodic 函数。在“Plucked String”游乐场的以下摘录中,我插入了两条日志消息以帮助识别处理事件。我从未在控制台日志中看到“定期功能启动”消息。我只听到很短的咔哒声。

0 投票
1 回答
202 浏览

audio - 如何在 Audiokit 中正确设置多带通滤波器?

我想在 AudioKit 中设置许多带通滤波器,将声源分成多个频段,每个频段都用于进一步处理总线/链。

AudioKit 在序列或总线中有节点。每个节点都有输入、做某事和输出。对于图形均衡器[1],该示例将每个频段的节点传递到均衡器的下一个频段的节点。但是,对于带通滤波器,我会假设每个带通滤波器节点都有相同的输入。否则,只有通带会通过下一个带通滤波器,然后它会找不到任何东西让自己通过......

假设我有 1000 Hz 的带通滤波器 1,带宽为 1000,带通滤波器 2 的频率为 2000 Hz,带宽为 1000,等等。如果滤波器 2 的输入是滤波器 1 的输出,则滤波器 2 的输出将一无所有。

我相信这就是我想要的:

对比

正确的?

0 投票
1 回答
455 浏览

swift - AudioKit:从 AKOperationGenerator 淡入

有没有办法淡入 AKOperationGenerator 的声音?

例如,在下面的代码中,.start() 通过单击以全幅度开始。

0 投票
0 回答
348 浏览

ios - 将 AKSequencer 输出保存到本地文件

我在使用音序器将 midi 保存到本地文件时遇到问题。正在创建和保存音频,但音频输出与应有的完全不同。

这是我正在使用的代码:

我附上了 mixloop.wav、melody.mid 和输出 render11.caf。文件

如果我改变这一行:

声音应有尽有,有 16 秒的声音,而不仅仅是前几秒。

上面的代码有问题吗?

提前致谢