问题标签 [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.
spotify - AudioKit 访问底层 CoreAudio 节点(Spotify 集成)
我正在尝试连接到 Spotify 流并使用自定义合成器修改输出。使用很棒的AudioKit会很棒。为了改变输出 Spotify 流,我必须实现这个方法,它可以让我访问 Spotify 的 AUGraph。然后,我可以添加将连接到 Spotify 图形的输入和输出的 AUNode(此处描述得非常好)。
我知道 AudioKit 在内部使用 CoreAudio,但我还没有找到任何方法访问 AKNode 的底层 AUNode(如果有这样的事情)。或者是否有另一种方法可以将 AudioKit AKNode 连接到现有的 AUGraph。
现在我看到 AudioKit 使用了 AVAudioEngine(而不是 EZAudio 中使用的 AUGraph),我可以轻松获取输出和输入节点。所以真正的问题是我是否可以将 AVAudioNode 连接到 AUGraph,或者是否有其他方法可以将 AVAudioNode 转换为 AUNode。
编辑:我试图用这样的简单设置来实现Dmitrii建议,试图修改播放速度:
但它对音频输出没有任何影响。不过,它仍然在通过。
结合 AUGraph 和 AVAudioEngine 时,我应该遵循一些特定的生命周期吗?还是我忘记了什么重要的事情?
编辑2:所以我没有按照建议添加节点,我什至不确定是否可以工作。使用 kAudioUnitProperty_MakeConnection 属性连接节点时我更幸运一些:
这会将 AVAudioEngine 的输出节点与 Spotify 的输出连接起来。但是,如果我添加任何中间节点,它就无法播放任何东西。这就像 AVAudioNodes 根本不会连接:
知道为什么会这样吗?我希望引擎输出单元连接到主混合器,主混合器连接到变速,然后连接到 spotify 的输出。任何帮助将不胜感激。
非常感谢
托马斯
audiokit - AKSamplePlayer 的奇怪播放
我从 wav 文件的 AKSamplePlayer 中得到了非常奇怪的播放(尝试了各种)。它会播放一段时间,然后总是在同一点加速播放。这是一个已知问题吗,我正在考虑可能与文件的长度有关。任何指针表示赞赏。
ios - AudioKit 问题,麦克风不够灵敏
我有一个问题,如果我就在麦克风前面,我的 6s 上的麦克风只会给我一个输出。我想改变灵敏度,以便它甚至可以从几英尺的距离读取频率。
这就是我初始化 AKMicrophone 的方式:
swift - 有没有办法使用 AudioKit/AKPlayer 改变播放位置?
一直在用这个挠头,无济于事。
我只是想了解如何在使用 AudioKit 提供的 AKAudioPlayer 时立即更改当前播放位置。
player.playhead 是只读的,因此无法更改。
在播放器已经播放时更改 player.startTime 似乎会根据报告的 .playhead 位置更改播放位置,但正在播放的实际音频不会改变位置 - 我在这里遗漏了什么吗?
显然我可以停止音频并在新位置重新启动,但是对于一个简单的 mp3 / wav 文件播放器来说,几秒钟的昂贵 CPU 间隙是不可取的!
有任何想法吗?
ios - 允许使用 Swift 的背景音频不起作用
我想在应用程序不在焦点时允许背景音频。我目前有这个代码,它应该允许:
我还在功能设置中启用了“音频、Airplay 和画中画”设置。但是,当我按下设备上的主页按钮时,音频不会继续播放。我究竟做错了什么?如果这很重要,我正在使用AudioKit来产生声音。
我正在使用一个单例来容纳我命名为 AudioPlayer.swift 的所有 AudioKit 组件。这是我的 AudioPlayer.swift 单例文件中的内容:
这是我的一个音效视图控制器的示例,它引用了 AudioKit 单例以向其发送一定的频率(我有大约十几个这样的视图控制器,每个都有自己的频率设置):
我在 ViewController.swift 文件中实例化了 AudioPlayer 单例。
ios - iOS 测试中未启用后台模式
我正在编写一个 Swift 库,该库又使用 AudioKit 库作为依赖项。在 iOS 中使用 AudioKit 时,您必须在项目设置的功能部分中启用“背景模式”。但是在运行 iOS 测试时,没有地方进行此类配置,因此您会遇到以下错误:
CheckError 错误:kMIDINotPermitted:您是否在您的 ios 应用程序中启用了音频背景模式>?
我尝试将相应的“必需的背景模式”条目添加到库和测试文件的 plist 文件中,但无济于事。也许 AudioKit 的测试代码可以提供一些启示?谢谢。
audiokit - 为什么运行 build_frameworks.sh 失败?
运行build_frameworks.sh
脚本有时会导致这个神秘的错误。为什么会这样,我该如何解决
ios - 在 AudioKit 中使用 AVAudioRecorder
有没有一种已知的方法可以将 AVAudioRecorder 对象转换为 AKNode 对象?
我的用例是我有一个应用程序从定制的蓝牙硬件中提取音频流。我已经为此编写了所有处理程序,并且硬件的输出最终成为 AVAudioRecorder。
我想利用 AK 提供的所有更好的音频可视化 - 特别是在记录时在我的视图中的图表上绘制振幅,但要让它工作,我似乎需要打开 AVAudioRecorder进入一个AKNode。
有没有一种简单的方法可以做到这一点,而无需返回与硬件接口的所有代码并从一开始就将其替换为使用 AKNode?
我浏览了 AK 的文档,目前似乎无法使用现有的 AVAudioRecorder 作为源节点。
谢谢!
ios - 使用 AudioKit 裁剪 MIDI 文件
我正在尝试使用AudioKit
.
我正在使用音序器,发现一些东西接近我需要的东西,但不完全是。
我在AKSequencer
调用中找到了一个方法clearRange
。使用这种方法,我可以将不需要的 MIDI 部分静音,但我还没有找到修剪音序器的方法,只保留我感兴趣的部分。现在只有我想要的部分有声音但我仍然得到沉默的部分。
有没有办法修剪音序器或创建一个新的音序器,只包含我想从原始音序器中保留的部分?
谢谢!
ios - 将多个 AKSequencer 实例的结果保存到磁盘
我AudioKit
用来允许用户选择 MIDI 和 WAV 文件的多种组合。对于用户选择的每个组合,我使用AKSequencer
和AKMIDISampler
为每对文件播放 MIDI 和 WAV。
结果是所有曲目都按照我想要的方式一起播放。
问题是我想将该混合保存为文件。
我试过使用AKOfflineRenderNode
,但我只得到第一个音符,之后它只会发出哔哔声,直到指定的持续时间结束。
这是我到目前为止的示例代码:
非常感谢任何帮助!
谢谢