core-audio相关内容

仅录制来自iPhone扬声器(不包括麦克风)的音频输出

我正在尝试从iPhone扬声器录制声音.我能够做到这一点,但是我无法避免在录制的输出中出现麦克风输入.尝试了在其他网站上没有运气的示例代码. 我使用的样本使用音频单元进行录音.我需要知道音频单元是否具有将麦克风输入音量设置为零的任何属性.最重要的是,我来自其他职位,音频队列服务可以为我做这件事.任何人都可以使用示例代码重定向我,以执行音频队列服务.在将数据作为输入发送给扬声器之前,我需要知道 ..
发布时间:2020-06-21 19:43:28 移动开发

停止并快速重播AudioQueue

我有一个正在播放,停止,暂停的音频队列,但是我发现AudioQueueStop()函数需要花费很长时间才能执行. 我想立即停止然后重新开始播放音频队列,并且想知道最快的方法是什么. 在我的项目中,我有多个音频队列,可以反复播放特定的声音.在某些情况下,我必须停止其中的某些声音,然后立即播放它们,并立即播放更多声音.如果我只对几个音频队列执行操作,还不错,但是如果我需要停止并重新启动许多 ..
发布时间:2020-06-21 19:43:09 移动开发

如何在我的iPhone应用程序中实现均衡器?

我正在开发具有均衡器功能的iPad应用程序,这意味着可以在三种属性(低,高,中)上播放声音.我在Google上进行了搜索,并找到了以下链接: iPhoneMixerEQGraphTest 它基本上可以混合声音,但是我想对声音应用均衡器效果. 请帮忙. 解决方案 看看 kAudioUnitType_Effect = 'aufx', 和效果音频单元的子类型: enum { ..
发布时间:2020-06-13 20:15:50 移动开发

我的iOS应用使用采样率为8000赫兹的音频单元返回了失真的声音

在这个问题上,我真的需要帮助.我正在开发带有音频单元的iOS应用程序,所记录的音频需要使用alaw格式以8bit/8000赫兹的采样率进行采样.我怎么会听到扬声器发出失真的声音. 我在线上看到了这个示例: http://www.stefanpopp.de/2011/capture-iphone-microphone/comment-page-1/ 在尝试调试我的应用程序时,我在他 ..
发布时间:2020-06-11 19:46:31 移动开发

加速框架vDSP,FFT成帧

我正在尝试使用Apple的vDSP在记录的音频文件上实现FFT计算(假设它是单声道PCM)。 在这里进行研究,发现以下主题非常有用: 使用苹果FFT并加速 框架 在 之间使用相变 从FFT Bin中提取精确频率框架 使用扩展音频文件服务 (ExtAudioFileRead)读取音频 例如,我们将FFT配置为frame_size N = 1024个样本,log2n = ..

AudioConverterFillComplexBuffer返回-50(paramErr)

我正在尝试将PCM 32位浮点音频流转换为ALAC.我找到了一些可用的工作示例,但我自己的代码不断从AudioConverterFillComplexBuffer获得-50(paramErr).我的目光从看这段代码而错了.我看不到与示例有什么不同. 我设置了输入和输出格式并创建了转换器: UInt32 numChannels = 2; // Describe the input st ..
发布时间:2020-05-19 02:10:39 移动开发

AVAssetReader到AudioQueueBuffer

目前,我正在做一个小测试项目,以查看是否可以从AVAssetReader获取样本以在iOS上使用AudioQueue进行播放. 我已阅读以下内容: (​​使用AudioQueue播放未压缩的原始声音,没有声音) 以及:(如何正确阅读使用AVAssetReader在iOS上解码的PCM样本-当前解码不正确), 两者实际上都起到了帮助作用.在阅读之前,我什么都没听到.现在,我正在获取声音, ..

如何使用avassetreader在音轨中进行搜索?

我熟悉如何使用AVAssetReader从ipod库中流式传输音频数据,但是我对如何在音轨中进行搜索一无所知.例如从中点开始播放,等等.从头开始,然后依次获取连续的样本很容易,但是肯定有一种可以随机访问的方法吗? 解决方案 AVAssetReader具有timeRange属性,该属性确定将从中读取媒体数据的资产的时间范围. @property(nonatomic) CMTimeRan ..
发布时间:2020-05-19 00:50:02 移动开发

iOS UI导致​​我的音频流出现故障

我正在为iPhone编写一个基于VOIP的应用程序.我遇到了一个奇怪的问题,即当用户按下屏幕时,音频中会有一个小故障,当您按下手机本身上的提高/降低音量按钮时,也会发生这种情况.经过几天的调试,我发现它与循环缓冲区有关.我在这里换了我的: http://atastypixel.com /blog/一个用于音频处理的简单快速循环缓冲区实现/ 这不会引起故障,但是延迟是我的延迟的四倍,我必 ..

带有OSX AudioComponent使用者线程和C中回调的音频生产者线程

这个问题与插件无关,它与独立的应用程序设计有关,并且与我之前问过的几个问题有关. 我必须编写一个多线程音频合成函数,其数据处理量远远超过,在 CoreAudio 渲染线程上可以容纳的数量:数千实时独立的幅度和相位内插精确样本正弦波振荡器.借助所有可用的优化功能,这需要任何单个处理器内核都无法承受的CPU能力. 我正在竭尽全力地学习它,但这似乎是一堵墙,而不是曲线.使用者线程可以是一个简 ..
发布时间:2020-05-14 01:16:47 其他开发

核心音频渲染线程和线程信令

iOS是否具有不包含锁定的任何一种非常低级的条件锁定? 我正在寻找一种方法来从Core Audio渲染线程中发信号通知正在等待的线程,而无需使用锁.我想知道是否可能存在低级的Mach系统调用. 现在,我有一个Core Audio线程,该线程使用非阻塞线程安全消息队列将消息发送到另一个线程.然后另一个线程每100ms拉一次,以查看队列中是否有消息. 但是,这是非常基本的,时机也很糟 ..
发布时间:2020-05-13 23:54:59 移动开发

OSX Core MIDI-从NSTimer调用MIDIPacketListAdd

我正在使用MIDIPacketListAdd发送一串MIDI数据包.我想在播放过程中动态更改数据包,因此我正在使用NSTimer在数据包应排定的时间之前添加每个数据包. 代码运行正常,当前数据包的地址已正确更新,我已验证所有数据均正确.但是,从计时器调用MIDIPacketListAdd时,没有发送MIDI数据.我在启动计时器之前添加了前两个数据包,以确保在需要播放之前将数据包发送到MIDI ..
发布时间:2020-05-09 21:12:09 其他开发

如何正确处理UnsafeMutablePointer

我有点困惑.什么时候我必须拨打免费电话,什么时候销毁/取消分配电话?我正在研究一个简短的代码片段,以学习核心音频.我以为如果我呼叫UnsafeMutablePointer.alloc(size),那我应该呼叫destroy& dealloc. 但是,如果我使用malloc()或calloc(),我应该打电话给free(). 在学习核心音频的此示例中,以下代码片段使我感到奇怪: ..
发布时间:2020-05-08 19:13:37 移动开发

音频单元动态注册

我们已经开发了一个定制的音频单元和音频单元托管应用程序.我们正在尝试从应用程序动态注册自定义音频单元. 下面的代码段用于动态注册音频单元. (此代码段在Apple技术说明TN2247中提到) #include extern AudioComponentPlugInInterface* MyExample ..
发布时间:2020-05-05 09:18:05 其他开发

使用无代码kext隐藏音频设备

我正在开发一个音频驱动程序,以使用Apple的音频反射器驱动程序示例代码来进行一些自定义音频处理.使用核心音频应用程序将来自音频反射器驱动程序的输出传递到真实的USB音频硬件设备.现在,我想从系统偏好设置中隐藏USB音频硬件设备,以使用户无法选择USB音频硬件输出设备作为默认输出设备.使用"SampleUSBAudioOverrideDriver"无代码的kext,我可以更改输出接口的名称,但不能 ..
发布时间:2020-04-25 11:27:13 其他开发