问题标签 [the-amazing-audio-engine]

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.

0 投票
1 回答
307 浏览

ios - 无法使用惊人的音频引擎播放来自在线链接的音频

我正在尝试使用此代码在惊人的音频引擎的帮助下实现在线流/缓冲,但它引发了以下错误:

AEAudioFilePlayer.m:148: AudioFileOpenURL: 'wht?' (2003334207)

这是代码:

0 投票
0 回答
425 浏览

ios - 惊人的音频引擎和 AVSpeechSynthesizer

我使用 The Amazing Audio Engine 录制我的应用程序的输出音频,由 AVSpeechSyntehsizer 的 speakUtterance 方法播放。我使用了此处提供的代码:将我的应用程序生成的所有声音记录在音频文件中(不是来自麦克风)

我得到了输出文件,但无法播放(无论我录制多长时间,文件大小始终为 4kb,我尝试使用 aiff 和 m4a 扩展名,但 iTunes 无法打开它们)。可能是什么问题呢?

相关问题:我能够使用 AVAudioSessionCategoryPlayAndRecord 激活的 AVAudioRecorder 记录应用程序输出,但它包括来自麦克风的输入。有没有办法只记录应用程序输出?也许改变会话?

最终目标:

我需要将 AVSpeechSynthesizer 录制到音频文件中,并且由于没有用于此的 API,唯一的方法是在播放时录制音频输出。我打算让我的用户在播放/录制时使用耳机(并警告他在录制时不应播放其他声音)。我发现我应该使用 Audio Units,但找不到任何关于这件事的教程,Apple 的手册很差。

0 投票
1 回答
182 浏览

ios - 构建时的 Segfault 代码 11 可能是由 Swift 项目中的 Objective-C Singleton 引起的

我正在制作一个播放音频文件的 Swift iOS 应用程序,并且为此使用了 The Amazing Audio Engine 2 库。

我决定使用单例模式来管理这个任务。在他的 Swift 示例项目中,lib 的创建者 Michael Tyson 在 Objective-C 中完成了他的音频部分(如果我理解的话,用于具有 C 函数的内存管理内容)。你可以在这里找到他的解释视频:https ://www.youtube.com/watch?v=OZQT4IGS8mA 所以我跟随他的脚步,用 Objective-C 编写了我的 Singleton。

这是我的代码:

音频管理器.h

音频管理器.m

AppDelegate.Swift

try AudioManager.defaultAudioManager().startAudioController()如果我在文件中注释该行AppDelegate.swift,显然一切正常,否则,当我尝试编译时,Xcode 会打印出这个非常有用的错误:

Command failed due to signal: Segmentation fault: 11

我认为我在 Objective-C 部分中遗漏了一些我不理解的东西,我对这种语言不是很熟悉,但我不知道是什么。任何想法 ?

0 投票
0 回答
198 浏览

ios - The Amazing audio engine 2 - 交叉淡入淡出循环

我正在为我的音序器应用程序使用令人惊叹的音频引擎 2库,并且我想实现 Crossfade 循环音频。

这是解释:

当用户按下音序器钢琴中的任何键时,它将播放一些音频文件,并且该音频文件将继续循环播放,直到用户释放键。但该循环将交叉淡入淡出。

我正在使用AEAudioFilePlayerModule进行循环,但不确定如何使用此类交叉淡入淡出音频文件。

交叉淡入淡出的解释:

在此处输入图像描述

开始/结束:此设置允许我选择我希望应用程序在音频文件中不断循环的位置,以便如果用户长时间点击并按住音符,音频将持续响起,直到用户松开手指。

XFade:这个功能(交叉淡入淡出)允许我选择如何在音频循环的结束和开始之间淡入淡出。这很好,这样声音就可以流畅地循环播放。此处设置为 9999。因此,在 200k 结束点之前的大约 5k 样本处,此音符的音频将开始淡出,同时,从 50k 样本开始的音频循环将淡入约 5k 样本的持续时间(XFade 的 1/2数量)。

请帮忙。

谢谢你。

0 投票
1 回答
365 浏览

ios - iOS 多声道输出的正确音频格式是什么?

我有一个 iOS 应用程序,我想在其中发送两个以上的音频输出通道。我正在使用神奇的音频引擎。

我通过简单地设置我初始化 AEAudioController 的 ASBD 的 mChannelsPerFrame 来使用 Apogee Duet 完成此操作。但是,这不适用于 Presonus 1818VSL 接口。我只在通道 1 和 2 中获得音频输出,在任何通道 3 和更高的通道中都保持静音。我观察到其他应用程序在这个界面上运行良好,所以显然这不是硬件问题。

接口是否有可能在不同的“总线”(即输出元素)中期待音频?

0 投票
1 回答
57 浏览

ios - 归档时的编译错误

我已经集成了 TheAmazingAudioEngine。该应用程序在模拟器和设备上成功运行。但是,当我尝试存档它时,出现以下编译错误。

找不到“TheAmazingAudioEngine/AEBufferStack.h”文件

此文件存在并且应用程序正在调试模式下运行。

有谁知道如何解决这个问题?提前致谢。

0 投票
1 回答
95 浏览

c++ - 在 C++ 类中实现 TPCircularBuffer

我正在尝试在我的班级中实现一个循环缓冲区。

如果我在 init 方法中启动它,它可以工作,但我想在私有下声明缓冲区变量,所以我可以从类内的任何地方访问它:

这样做会导致以下编译错误: 调用“MyClass”的隐式删除的复制构造函数

我不明白?