草庐IT

AvaudioEngine

全部标签

ios - Swift 的 AVAudioEngine 类中的 detachNode 做了什么?

我已阅读文档并了解使用detachNode“分离先前连接到音频引擎的音频节点”。但是,我不确定分离音频节点的目的是什么。当我分离音频节点时会发生什么,这意味着什么?为什么需要分离音频节点? 最佳答案 存在三种特定类型的节点:输出节点、混合器节点和播放器节点。我们还有其他节点,但这些是初始构建block节点。因此引擎是一个维护音频节点图的对象。您创建节点并将它们附加到引擎,然后使用引擎在这些不同的音频节点之间建立连接。引擎将分析这些连接并确定将哪些连接添加到事件链中。然后当您启动引擎时,音频流经所有事件链。该引擎的一个强大功能是它允许

swift - AVFoundation:使用 AVAudioEngine 和 AVAudioFile 的格式错误的 .m4a 文件格式

我在使用iOS8beta中新的AVFoundation框架使用AVAudioEngine和AVAudioFile写入数据时遇到问题。我想使用m4a格式在输入节点上使用点击写入数据。但是,输出文件似乎已损坏,但使用完全相同的设置将文件格式更改为.aac,文件格式正确并且可以成功播放:importFoundationimportAVFoundationfunccaptureMicrophoneInput(){varerror:NSError?varaudioFileSettings=Dictionary()audioFileSettings[AVFormatIDKey]=kAudioFor

swift - 插入或拔出耳机时 AVAudioEngine 崩溃

我正在我的iPhone6Plus上测试我的audioApp,它在插入或拔出耳机后崩溃。AVAudioEngine,AVAudioMixer,AVAudioPlayerNode在我的应用中使用。在没有耳机的情况下启动应用程序可以从iPhone扬声器播放声音。用耳机启动应用可以播放耳机的声音。错误发生在以下情况。在没有耳机的情况下启动应用程序并从扬声器播放声音。然后,如果我连接耳机,耳机就没有声音。之后当我拔下耳机时,即使扬声器也没有声音。当我触摸屏幕时,audioApp崩溃了。与使用耳机启动应用程序并拔下耳机相同。如何解决这个错误?非常感谢您的建议。这是我收到的错误信息。Terminat

ios - 播放 AVAudioPlayerNode 时 AVAudioEngine inputNode 的格式发生变化

我将从我创建的一个简单的“Playground”ViewController类开始,该类演示了我的问题:classAudioEnginePlaygroundViewController:UIViewController{privatevaraudioEngine:AVAudioEngine!privatevarmicTapped=falseoverridefuncviewDidLoad(){super.viewDidLoad()configureAudioSession()audioEngine=AVAudioEngine()}@IBActionfunctoggleMicTap(_se

ios - AVAudioEngine 和 AVAudioSession 之间有什么关系吗?

我知道这个问题可能会得到不好的评价,但我一直在寻找询问如何将音频输出重新路由到iOS设备上的扬声器的问题。我看到用户的每个问题都谈到使用您的AVAudioSession来重新路由它。但是,我没有使用AVAudioSession,我使用的是AVAudioEngine。所以基本上我的问题是,即使我使用的是AVAudioEngine,我还应该有AVAudioSession吗?如果是这样,这两个对象之间的关系是什么?或者有没有办法将AVAudioEngine连接到AVAudioSession?如果不是这种情况,并且AVAudioEngine和AVAudioSession之间没有任何关系,那么您

ios - 让 AVAudioEngine 重复一个声音

我一直无法让下面的代码一遍又一遍地重复audioURL上的声音。现在它只在View打开时播放一次,然后停止。importUIKitimportAVFoundationclassaboutViewController:UIViewController{varaudioUrl=NSURL(fileURLWithPath:NSBundle.mainBundle().pathForResource("chimes",ofType:"wav")!)varaudioEngine=AVAudioEngine()varmyPlayer=AVAudioPlayerNode()overridefuncvi

ios - 使用 AVAudioEngine 从 AVAudioPCMBuffer 播放音频

我有两个类,MicrophoneHandler和AudioPlayer。我已经设法使用AVCaptureSession使用已批准的答案来窃听麦克风数据here,并使用此函数将CMSampleBuffer转换为NSData:funcsendDataToDelegate(buffer:CMSampleBuffer!){letblock=CMSampleBufferGetDataBuffer(buffer)varlength=0vardata:UnsafeMutablePointer=nilvarstatus=CMBlockBufferGetDataPointer(block!,0,nil,

ios - 如何指定 AVAudioEngine Mic-Input 的格式?

我想使用AVAudioEngine和用户麦克风录制一些音频。我已经有了一个工作示例,但就是不知道如何指定我想要的输出格式...我的要求是我需要AVAudioPCMBuffer,正如我所说的那样......我是否需要添加一个单独的节点来进行一些转码?我找不到关于该问题的大量文档/示例...而且我也是Audio-Stuff的菜鸟。我知道我想要包含最大采样率为16000的PCM-16位的NSData(8000会更好)这是我的工作示例:privatevaraudioEngine=AVAudioEngine()funcstartRecording(){letformat=audioEngine.

ios - 使用 AVAudioEngine 进行电平测量

我刚刚在AVAudioEngine上观看了WWDC视频(Session502AVAudioEngineinPractice),我非常兴奋能够制作基于该技术的应用。我还没想好如何对麦克风输入或调音台输出进行电平监控。有人可以帮忙吗?明确地说,我说的是监控当前输入信号(并在UI中显示),而不是channel/轨道的输入/输出音量设置。我知道你可以用AVAudioRecorder做到这一点,但这不是AVAudioEngine需要的AVAudioNode。 最佳答案 尝试在主混音器上安装一个水龙头,然后通过设置帧长使其更快,然后读取样本并获

ios - 使用 AVAudioEngine 录制音频文件

我想使用AVAudioEngine录制音频文件。所以它会从麦克风到一个输出文件。稍后我会添加一些效果。但目前,我只想让它发挥作用。任何人都可以向我提供步骤或示例代码以便我可以开始吗? 最佳答案 这是我的简单解决方案。输出文件将在文档目录中。请注意,为简洁起见,我删除了错误处理。varengine=AVAudioEngine()varfile:AVAudioFile?varplayer=AVAudioPlayerNode()//ifyouneedplayrecordlateroverridefuncviewDidLoad(){supe