jjzjj

AVAudioEngine

全部标签

ios - 我可以使用 AVAudioEngine 以比实时更快的速度读取文件、处理音频单元并写入文件吗?

我正在开发一个iOS应用程序,该应用程序将AVAudioEngine用于各种用途,包括将音频录制到文件、使用音频单元向该音频应用效果,以及播放应用了效果的音频。我还使用水龙头将输出写入文件。完成后,它会在播放音频时实时写入文件。是否可以设置一个AVAudioEngine图表,从文件中读取,使用音频单元处理声音,并输出到文件,但比实时更快(即,硬件可以处理它的速度)?这个用例是输出几分钟的音频并应用了效果,我当然不想等待几分钟来处理它。编辑:这是我用来设置AVAudioEngine的图表并播放声音文件的代码:AVAudioEngine*engine=[[AVAudioEngineallo

ios - 插入蓝牙耳机时 AVAudioEngine 使用错误的格式

我有一副带麦克风输入的蓝牙耳机。未使用麦克风,但在使用时,输入和输出都强制为8000kHz。我的AVAudioEngine实例以8000kHz模式连接到耳机,除非我进入系统设置并指定我不想使用耳机进行输入(每次连接耳机时都必须这样做)。我注意到其他应用程序可以毫无问题地以预期的44100kHz播放。我的AVAudioEngine图中没有输入节点。如何让AVAudioEngine更喜欢以合理的采样率连接? 最佳答案 赏金失败后,我写信给AppleDTS,得到了很好的回应(包括下面我从Objective-C翻译的代码示例)。以下函数将以

ios - 向 AVAudioEngine 添加输入回调

我正在尝试向AVAudioEngine的inputNode添加一个输入回调,但它从未被调用。希望我可以使用AVAudioEngine来管理iOS和OSX的基本AUGraph,并且我可以在两者之间运行我自己的代码。我也试过在输入节点上安装一个tap,但我无法更改缓冲区长度。我制作了一个单一ViewiOS应用程序并将此代码放入viewDidLoad:_audioEngine=[AVAudioEnginenew];_inputNode=_audioEngine.inputNode;_outputNode=_audioEngine.outputNode;AURenderCallbackStru

ios - 如何将 AVAudioEngine 连接到 Lightning 端口音频输入?

我想将我的电吉他连接到我的应用程序。我有硬件(Line6SonicPort)可以将吉他的音频传输到我的iPhone。我已经想出如何让我的耳机播放音频,但音频来self的耳机麦克风,而不是Lightning端口输入。如何以编程方式找到闪电端口音频输入,而不是通过耳机麦克风获取音频?这是我到目前为止尝试过的:self.audioEngine=AVAudioEngine()letinput=self.audioEngine.inputNodeletmixer=self.audioEngine.mainMixerNodeletoutput=self.audioEngine.outputNode

swift - AVAudioEngine 下采样问题

我在对从麦克风获取的音频进行下采样时遇到问题。我正在使用AVAudioEngine通过以下代码从麦克风中采集样本:assert(self.engine.inputNode!=nil)letinput=self.engine.inputNode!letaudioFormat=AVAudioFormat(commonFormat:.pcmFormatFloat32,sampleRate:8000,channels:1,interleaved:false)letmixer=AVAudioMixerNode()engine.attach(mixer)engine.connect(input,t

swift - _AVAE_Check : required condition is false: [AVAudioEngine. mm :353:AttachNode: (node ! = nil)] 在创建 AKDelay 时

我有一个最小的MacOS应用程序(一个ViewController+一个按钮),其中包含以下代码(基本上是来自AudioKit'splayground的复制粘贴):publicclassPlayer{staticletplayRate=2.0staticletscale=[0,2,4,5,7,9,11,12]varpluckedString:AKPluckedString!=nilvardelay:AKDelay!=nilvarreverb:AKReverb!=nilvarperformance:AKPeriodicFunction!=nilpublicinit(){pluckedSt

ios - AVAudioEngine 的语音识别在录制后阻止声音

我正在尝试运行来自theirwebsitehere的AppleSpeakToMe:将语音识别与AVAudioEngine结合使用示例.我的问题是,当您停止AVAudioEngine和SpeechRecognizer时,您将无法再使用系统声音。您如何释放AVAudioEngine和SpeechRecognizer,以便声音在录音停止后再次起作用?要复制这个:下载示例代码将UITextField添加到Storyboard。运行项目并在文本字段中键入(您会注意到您可以听到键入事件的声音)。然后开始录音和停止录音再次在文本字段中输入(现在没有声音)更新这只会发生在真实设备上-而不会发生在模拟器

ios - swift AVAudioEngine 崩溃 : player started when in a disconnected state

所以我下面的代码应该以更高的音调一遍又一遍地重播chimes.wav文件,但由于底部的错误而崩溃。谁能找到导致此错误的原因?importUIKitimportAVFoundationclassaboutViewController:UIViewController{varaudioEngine:AVAudioEngine=AVAudioEngine()varaudioFilePlayer:AVAudioPlayerNode=AVAudioPlayerNode()overridefuncviewDidLoad(){super.viewDidLoad()//Doanyadditionals

ios - 带有今天扩展的 AVAudioEngine

您好,我想将Speech框架添加到iOS10TodayExtension。我尝试使用SpeakToMe示例https://developer.apple.com/library/content/samplecode/SpeakToMe/Introduction/Intro.html使用AVAudioEngine录制音频。但是当我尝试启动音频引擎时出现异常tryaudioEngine.start()2016-10-0422:21:24.658964VoiceReco[4225:1230467][aurioc]1316:AUIOClient_StartIOfailed(561145187)

ios - AVAudioMixerNode pan 或 AVAudioUnitSampler stereoPan 属性无法更改 AVAudioEngine 声音输出的左/右平衡

我有以下代码,它播放单个MIDI音符,但我希望能够调整平衡/声像,以便它仅从左扬声器或右扬声器或某些组合中播放。我认为更改“sampler.stereoPan”或“engine.mainMixerNode.pan”可以解决问题,但似乎没有效果。知道我做错了什么吗?engine=AVAudioEngine()sampler=AVAudioUnitSampler()sampler.stereoPan=-1.0//doesn'twork//engine.mainMixerNode.pan=-1.0//doesn'tworkengine.attachNode(sampler)engine.co