问题标签 [audiotoolbox]

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 回答
889 浏览

objective-c - 如何将(aiff)文件转换为在 Windows 操作系统上运行的任何格式(.asf、.asx、.avi、.wav、.wax、.wma、.wm、.wmv)?

我正在开发一个 iPhone 项目,并且想要保存 mp3 文件而不是汽车,我编写了这段代码以将记录文件保存在 .caf 扩展名中:

我试过这个:

但它没有保存为 mp3 格式!它是在目标 c 中可用还是有任何第三方代码可以实现,我在 AudioToolbox.framework 中看到了该方法:

欢迎任何帮助,谢谢。

0 投票
1 回答
629 浏览

iphone - iOS:静音模式下无法播放我的声音

所以我已经完成了我能找到的关于 SO 的大部分相关问题,但我仍然无法在静音时播放我的音频。我相信这可能是我犯的一个小错误。

我正在尝试播放一个小的警报声。这是我viewDidLoad方法中的代码:

这是我需要播放音频剪辑时调用的方法

我从 SO 中得到了大部分内容,并在 Apple 编程指南中确认了这一点。我已经尝试将Uint32两者结合使用,但这也没有做任何事情,在锁定/静音模式下仍然没有播放。有任何想法吗?

0 投票
0 回答
193 浏览

iphone - 将音频数据上传到服务器

我正在尝试通过 POST 请求将音频数据从 iphone 发送到服务器。我不想使用文件,而是直接将数据发送到服务器。我使用 AudioToolbox 从麦克风获取数据到缓冲区,然后我将此缓冲区发送到服务器。数据被正确接收,服务器创建了一个波形文件……但是即使这个文件不是空的,也无法播放声音……就像文件的持续时间太短一样……

以下是发送 post 请求的回调函数的代码:

0 投票
2 回答
1325 浏览

iphone - AudioQueue 录制音频示例

我目前正在构建一个应用程序,从我的 iPhone 的麦克风中读取音频,然后进行一些处理和视觉效果。当然,我首先从音频开始,但遇到了一个小问题。

我将我的采样率定义为 44100 Hz,并将我的缓冲区定义为容纳 4096 个样本。确实如此。但是,当我打印出这些数据时,将其复制到 MATLAB 中以再次检查准确性,我必须使用的采样率是我的 iPhone 定义的速率的一半,即 22050 Hz,以确保它是正确的。

我认为它与以下代码以及它如何为每个数据包放置 2 个字节有关,当我循环通过缓冲区时,缓冲区吐出整个数据包,我的代码假定它是一个数字。所以我想知道的是如何拆分这些数据包并将它们作为单独的数字读取。

如果我描述的内容不清楚,请告诉我。谢谢!

编辑

添加我用来打印数据的代码

0 投票
1 回答
712 浏览

objective-c - 如何使用objective-c分割或切割音频文件

我正在做一个录制音频文件的项目,现在我必须使用电子邮件发送这些文件以作为附件,我想剪切音频文件。

0 投票
1 回答
332 浏览

ios - AVAudioSession 的 iOS 错误

我的用户不断收到此错误,我无法在模拟器或我的设备上重现它。我没有实现 AVAudioSessionDelegate (可能命名不同),我总是使用应用程序默认的 AVAudioSession,从不创建一个新的。

关于可能导致它的任何建议?

0 投票
2 回答
2167 浏览

ios - 如何停止音频队列?

我正在使用文本到语音,开始音频工作正常,但我无法停止它。这是我如何开始音频:

在后台合成

合成

音频队列回调

AudioQueuePropertyListener

我尝试停止其他方法(UIAlertView 委托方法):

我正在取消所有操作并调用 AudioQueueDispose,也尝试使用 AudioQueueStop,但这里没有任何效果。

所以我的问题是,我怎样才能在这里停止音频?

0 投票
1 回答
1161 浏览

macos - 如何使用 core-audio/audiotoolbox 从 CAF 文件中读取标题块

我正在尝试使用 AudioToolbox 的扩展音频文件API 在 OSX 上读取 CAF 文件。

打开文件工作正常,但是,我需要访问UUID 块,并且我找不到有关如何执行此操作的任何参考(或​​如何访问文件的任何标头块)

当然,必须有一种方法可以做到这一点,而无需我自己解析文件。

PS:我已经可以使用 libsndfile 做到这一点,但我想找到一种方法来仅使用 OSX 附带的组件来做到这一点。

我已经尝试ExtAudioFileGetProperty()使用ExtAudioFilePropertyID设置为“uuid”进行调用,但这似乎不起作用。

0 投票
1 回答
616 浏览

macos - 如何找出音频文件的文件类型?

我正在使用 Core-Audio/AudioToolbox(扩展音频文件服务)来读取OSX 上的音频文件。

对于我的特定应用程序,我需要找出我成功打开的文件是否ExtAudioFileOpenURL()是 CAF 文件。

不幸的是,我似乎想念如何正确执行此操作,因为我无法AudioFileTypeIDExtAudioFileRef.

(在编写这样的文件时,我可以通过传递AudioFileTypeIDto来定义类型ExtAudioFileCreateWithURL;反过来呢?

0 投票
2 回答
747 浏览

objective-c - 如果我开启了 ARC,是否需要释放 SystemSoundID?

问题在标题中:“如果我开启了 ARC,我是否需要释放 SystemSoundID?” 这是我的代码:

如果是这样,我什么时候发布它?(我没有 dealloc 方法,因为我使用的是静态方法并且无法更改)

另外,这是目前播放音效的最佳方式吗?我听说这个框架现在已弃用。

谢谢!