jjzjj

AVAudioEngine

全部标签

ios - AVAudioPCMBuffer 的频谱图在 Swift 中使用 Accelerate 框架

我正在尝试从AVAudioPCMBuffer生成频谱图在swift。我在AVAudioMixerNode上安装了水龙头并接收带有音频缓冲区的回调。我想将缓冲区中的信号转换为[Float:Float]字典,其中键代表频率,值代表相应频率上的音频幅度。我尝试使用Apple的Accelerate框架,但我得到的结果似乎很可疑。我确定这只是我转换信号的方式。我看了thisblogpost除其他外,供引用。这是我的:self.audioEngine.mainMixerNode.installTapOnBus(0,bufferSize:1024,format:nil,block:{buffer,w

swift - 使用 Swift 使用 AVAudioEngine 实时变调

我正在使用Swift在OSX上开发音频效果应用程序,并且我对集成音高转换效果很感兴趣。我想实时将音调调高或调低一个Octave。目前我只收到干信号。我不确定这是否可能,并且想知道这是否可能,或者任何人可能有任何帮助或建议。目前与问题相关的代码如下:importCocoaimportAVFoundationclassViewController:NSViewController{varengine=AVAudioEngine()vartimePitch=AVAudioUnitTimePitch()overridefuncviewDidLoad(){timePitch.pitch=1200

swift - 使用 Swift 使用 AVAudioEngine 实时变调

我正在使用Swift在OSX上开发音频效果应用程序,并且我对集成音高转换效果很感兴趣。我想实时将音调调高或调低一个Octave。目前我只收到干信号。我不确定这是否可能,并且想知道这是否可能,或者任何人可能有任何帮助或建议。目前与问题相关的代码如下:importCocoaimportAVFoundationclassViewController:NSViewController{varengine=AVAudioEngine()vartimePitch=AVAudioUnitTimePitch()overridefuncviewDidLoad(){timePitch.pitch=1200

ios - 在 AVAudioEngine 中从网络流式传输数据,这可能吗?

我有一个应用程序,我在其中使用AVAudioEngine通过AVAudioPlayerNodes和AVAudioFiles播放本地文件系统中的文件。这工作得很好。现在我想让我的设置也支持从Internet上的服务器流式传输MP3文件。到目前为止我尝试了什么我希望我可以从指向网络地址的NSURL对象创建某种缓冲区,然后我可以将其与我的AVAudioPlayerNode一起使用。我搜索了StackOverflow和internet一般来说,但还没有找到任何关于如何实现这一点的好技巧。我知道AVAudioEngine阵容包括:AVAudioPlayerNode,它可以播放来自AVAudioF

ios - 在 AVAudioEngine 中从网络流式传输数据,这可能吗?

我有一个应用程序,我在其中使用AVAudioEngine通过AVAudioPlayerNodes和AVAudioFiles播放本地文件系统中的文件。这工作得很好。现在我想让我的设置也支持从Internet上的服务器流式传输MP3文件。到目前为止我尝试了什么我希望我可以从指向网络地址的NSURL对象创建某种缓冲区,然后我可以将其与我的AVAudioPlayerNode一起使用。我搜索了StackOverflow和internet一般来说,但还没有找到任何关于如何实现这一点的好技巧。我知道AVAudioEngine阵容包括:AVAudioPlayerNode,它可以播放来自AVAudioF

ios - 添加效果后导出音频文件

我有一个音频文件,我想使用一些效果(如音高效果)进行处理,然后将最终结果写入文件。在我处理文件并将其保存到光盘之前,我让用户播放音高效果并实时收听变化。这就是我做实时事情的方式:letaudioSession=AVAudioSession.sharedInstance()audioSession.setCategory(AVAudioSessionCategoryPlayback,error:nil)audioSession.setActive(true,error:nil)audioEngine=AVAudioEngine()audioFile=AVAudioFile(forRead

ios - 添加效果后导出音频文件

我有一个音频文件,我想使用一些效果(如音高效果)进行处理,然后将最终结果写入文件。在我处理文件并将其保存到光盘之前,我让用户播放音高效果并实时收听变化。这就是我做实时事情的方式:letaudioSession=AVAudioSession.sharedInstance()audioSession.setCategory(AVAudioSessionCategoryPlayback,error:nil)audioSession.setActive(true,error:nil)audioEngine=AVAudioEngine()audioFile=AVAudioFile(forRead

ios - 使用 AudioEngine 的音效

背景-我在Apple最近的WWDC上发布的以下视频列表中看到了一个名为“AVAudioEngineinPractice”的视频,用于将音效应用于音频。https://developer.apple.com/videos/wwdc/2014/之后,我成功地使用以下代码改变了音频的音调://AudioEngineisinitializedinviewDidLoad()audioEngine=AVAudioEngine()//ThefollowingActioniscalledonclickingabutton@IBActionfuncchipmunkPlayback(sender:UIBu

ios - 使用 AudioEngine 的音效

背景-我在Apple最近的WWDC上发布的以下视频列表中看到了一个名为“AVAudioEngineinPractice”的视频,用于将音效应用于音频。https://developer.apple.com/videos/wwdc/2014/之后,我成功地使用以下代码改变了音频的音调://AudioEngineisinitializedinviewDidLoad()audioEngine=AVAudioEngine()//ThefollowingActioniscalledonclickingabutton@IBActionfuncchipmunkPlayback(sender:UIBu

ios - AVAudioEngine中AuAudioBuffer的回调实现

我最近观看了WWDC2014,SessiononAVAudioEngineinpractice,我对使用AVAudioBuffers解释的概念有疑问,在InputNode上安装了NodeTap。Speaker提到,可以使用Callback来通知App模块。所以我的问题不是等待回调直到缓冲区已满,而是可以在以毫秒为单位的一定时间后通知应用程序模块。因此,一旦AVAudioEngine启动,是否可以为每100毫秒的Recording在此缓冲区上配置/注册回调。这样App模块就会得到通知,每100毫秒处理一次该缓冲区。以前有没有人试过这个。让我知道您对如何实现这一点的建议。如果您为此逻辑指出