草庐IT

AudioKit

全部标签

ios - AudioKit,AKPlayer : How to play from Samples, 不是时间

我目前正在使用FDWaveFormView非常成功地显示代表我从AKMicrophone或AKAudioFile录制的音频的波形。我成功地突出显示了波形中的特定区域,FDwaveForm返回了音频文件中的一系列样本。我现在的问题是我无法在AKPlayer中找到合适的方法来让我从开始样本播放到结束样本。我注意到AKSamplePlayer现在已被弃用,但它确实有一个方法:play(from:Sample,to:Sample)我的猜测是我可以做一些数学运算来将样本位置转换为时间(作为AKPlayer中规定的Double),但是我还没有找到执行此操作的适当数学或函数,有什么提示吗?为了清楚地

swift - 试图了解 AudioKit 中 AKFFTTap 的输出

我正在尝试使用AudioKit构建一个应用程序来分析麦克风的输入并将传入的声音分成3个频率范围(低、中、高)及其振幅。这是我的代码:classViewController:UIViewController{varmic:AKMicrophone!varamplitude:AKAmplitudeTracker!varfftTap:AKFFTTap?vartimer:Timer!overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionalsetupafterloadingtheview,typicallyfromanib.mi

ios - 何时使用 AKNodeRecorder 和 AKClipRecorder

我对声音处理或制作或人们在处理声音处理时使用的工具没有太多经验,这就是我接触AudioKit的原因。有些类没有关于它们的用途的简短描述,为什么它们在这里,我应该什么时候使用它们而不是其他密切相关的类。我的具体问题是关于AKClipRecorder和AKNodeRecorder之间的区别。为什么我们需要将它们两者分开?何时使用它们中的每一个?我个人使用AKClipRecorder只是因为我有一个在录制完成时触发的回调函数,例如通过查看源代码我不明白为什么removeTap函数位于deinit函数中,而不是像常规AKNodeRecorder一样位于stop函数中。

swift - AKOfflineRenderNode - 调度 AKAudioPlayers,只有最后一个播放器渲染

尝试在iOS11.1上使用AudioKit4.0、Swift4渲染一系列AKAudioPlayer时得到一些奇怪的结果我知道开发分支(https://github.com/AudioKit/AudioKit/commit/09aedf7c119a399ab00026ddfb91ae6778570176)上的AudioKit.renderToFile替代方案,但如果可能的话我想涵盖iOS9+预期结果:一个长音频文件,每个文件(URL)按顺序呈现实际结果:仅呈现最后一个预定文件(在生成的wav文件中的正确偏移处)奇怪的是,如果我将它们全部安排在0偏移处,它们都会被渲染。另外,如果我在没有渲

ios - AudioKit iOS - 接收 MIDINoteOn 函数

我正在尝试使用receivedMIDINoteOn函数在音序器播放音符时闪烁UILabel。我尝试使用AKMIDIListener协议(protocol)但没有成功。我还制作了AKMIDISampler的子类,并从音序器向它发送midi。它播放midi但未调用receivedMIDINoteOn。这是我在conductor的init()中的内容:init(){[ahSampler,beeSampler,gooSampler,flasher]>>>samplerMixerAudioKit.output=samplerMixerAudioKit.start()letmidi=AKMIDI(

ios - 体系结构 x86_64 的 undefined symbol &&找不到体系结构 x86_64 的符号

我真的不知道我的程序出了什么问题。我曾经在2017年成功运行它。今天出错了。我尝试更改build设置、构建阶段。它们都不起作用。请帮帮我! 最佳答案 您只需将-lstdc++添加到目标的链接器标志中。这是AudioKit成为静态框架后的新要求。 关于ios-体系结构x86_64的undefinedsymbol&&找不到体系结构x86_64的符号,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/ques

swift - 我如何使用 Audiokit 发送 midi poly pressure 消息?

目前我正在构建一个应用程序,它基本上是我的VirusTI合成器的合成器Controller。该病毒允许使用MIDICC消息设置它的大部分参数。使用Audiokit非常简单:midiOutput.sendEvent(AKMIDIEvent(controllerChange:17,value:SomeValue,channel:1))但是,某些参数需要使用“多压力”消息进行设置。每个音符都映射到一些参数,压力值将用于设置参数。这看起来像是hack,但事实就是如此。我现在的问题是我找不到发送midi多边形压力消息的方法,因为它们在audiokit中似乎不可用。(换句话说:没有多压事件类型)问

ios - 当 MIDI 目标或源更改时收到通知

当找到新的MIDI目的地/来源或现有的断开连接时,有什么方法可以得到通知吗?谢谢。 最佳答案 也许receivedMIDISetupChange()适合您?在符合AKMIDIListener的类中,尝试:funcreceivedMIDISetupChange(){print("MIDISetupChange,midi.inputNames:\(midi.inputNames)")} 关于ios-当MIDI目标或源更改时收到通知,我们在StackOverflow上找到一个类似的问题:

swift - 同步多个 AKPlayer

我已经为此苦苦挣扎了一段时间。我有一系列AKPlayer。varplayers=[AKPlayer]()我在网上搜索了很多关于同一问题的其他问题,他们都建议使用:AKPlayer.play(atTime:AVAudioTime)我已经尝试过(以及其他类似的尝试):varsampleRate=selectedSong!.channels[0].audioFile!.sampleRatevarsampleTime=players[0].audioTime(at:players[0].currentTime)?.sampleTimevarstartTime=AVAudioTime(sampl

swift - AudioKit tap 跳过时间间隔

我正在构建一个使用麦克风输入来检测声音和触发事件的应用。我的代码基于AKAmplitudeTap,但是当我运行它时,我发现我只获取了带有缺失部分的间隔的样本数据。tap代码看起来像这样(去掉了内脏并简单地跟踪将处理了多少样本):openclassMyTap{//internalletbufferSize:UInt32=1_024//8-9kSamples/secinternalletbufferSize:UInt32=4096//39.6kSamples/sec//internalletbufferSize:UInt32=16536//43.3kSamples/secpublicini