问题标签 [audioqueue]

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

iphone - iphone,objective c,如何从音频文件中读取原始数据(未应用编解码器)

我正在开发一个 iphone 应用程序,它将数据发送/接收到 iphone 的音频/耳机插孔。我假设我们可以向耳机插孔发送/接收数据,但该数据是应用了一些编解码器的音频文件。我想读取音频文件并将原始数据发送到耳机插孔.. 我该怎么做..?任何帮助或代码片段表示赞赏。最好的问候, 阿卜杜勒·卡维

0 投票
2 回答
1917 浏览

iphone - mp3 的 AudioStreamBasicDescription

我有一个音频队列正在录制 PCM,但我无法让它为 mp3 工作。当我将 mFormatID 更改为 kAudioFormatMPEGLayer3 时,我的回调函数永远不会被触发。我正在使用文档中的示例。

0 投票
1 回答
623 浏览

iphone - 如何从缓冲区而不是音频文件中获取耳机插孔音频?

我正在开发一个应用程序,我想在其中将原始数据(文本数据)发送到耳机插孔而不是音频文件。我假设我可以通过使用AudioQueue框架来做到这一点。但是我不知道该怎么做。我的应用程序的功能应该与 squareup.com 应用程序相同。

0 投票
1 回答
801 浏览

pitch - 音频队列 kAudioQueueParam_Pitch

OS 10.6 下的音频队列服务文档现在包含一个音高参数:

kAudioQueueParam_Pitch 音频队列播放音高偏移的音分数,范围为 -2400 到 2400 音分(其中 1200 音分对应于一个音乐八度音阶)。此参数仅在启用时间/音高处理器时可用。

同一文档的其他部分仍然说音量是唯一可用的参数,我找不到上面提到的时间/音高处理器的任何参考。

有谁知道这是指什么?直接将值写入参数对播放没有影响(尽管不会引发错误)。同样,写入音量设置确实有效。

像往常一样令人沮丧,没有Apple的支持。

0 投票
1 回答
2173 浏览

objective-c - AudioQueue 如何从 CallBack 读取缓冲区

我正在使用 AUdioQueue 记录来自内置麦克风的音频并通过套接字发送,我已将 AudioQueue 缓冲区设置为在一次拍摄中记录 30 秒的缓冲区并适当地分配 bufferSize,这是我用来设置的函数音频数据格式。

以下代码计算捕获音频需要分配的bufferSize,

以下代码示例分配缓冲区,

是的,你猜对了,大部分代码来自 SpeakHere 示例,当涉及到 AudioCallback 时,我需要捕获缓冲区并通过套接字将其发送到其他机器,

现在当我看到日志时,数据来了,但它说没有数据包是 256、320 这样的,当我在另一端传递数据时,它听不见,谁能告诉我,我需要做什么packetSize,我对 bufferSize 的印象足以发送数据,但我想,这也与数据包的数量有关。

0 投票
1 回答
528 浏览

cocoa - AudioQueue,回调没有统一播放音频

在我的应用程序中,我将通过线性 PCM 格式的套接字接收音频数据,以统一的时间间隔,大约 50 毫秒,我正在使用 AudioQueue 播放相同的内容,我参考了 AudioQueue SpeakHere 示例中的大部分代码,仅区别我需要在 Mac OS 上运行它吗?

以下是相关的代码,

设置 AudioBufferDescription 格式,

分配缓冲区来保存和播放数据

其中 bufferByteSize 为 640,缓冲区数为 3

要启动队列,

现在,事情是,我期待,当它播放缓冲区时,它应该自动点击回调,但它没有发生,

所以当我得到缓冲区时,我是入队缓冲区,这就是代码

我觉得缓冲区是正确的,但我听不到声音,谁能指导我,我做错了什么。

提前致谢

0 投票
1 回答
570 浏览

objective-c - AudioQueue,当回调将被击中时播放音频,

在我的应用程序中,我将从 Socket 接收缓冲区,并且需要播放它,应用程序将大约每 50 毫秒接收一次缓冲区,

我正在做的方式如下,

1 -- 定义音频格式,如下所示,

2 -- 创建和分配 AudioQueue 缓冲区

3 -- 入队缓冲区

4 -- 启动队列,

现在我的理解是,它应该在播放现有缓冲区时自动点击回调,然后请求新缓冲区,但在我的情况下,它不会自动点击回调,因为当我获得缓冲区时,我正在显式调用回调, 这是正确的方法吗

0 投票
1 回答
2986 浏览

iphone - iOS,音频队列:缓冲区大小不固定

我在我的应用程序中使用音频队列服务。分配缓冲区时,我将缓冲区大小设置为 30000 个样本:

但是回调的后续调用是使用以下inNumberPacketDescriptions 进行的:

它们并不总是等于 30000。为什么?

记录格式配置(使用CAStreamBasicDescription):

使用了3 个缓冲区。

0 投票
0 回答
514 浏览

macos - Mac OS X 将音频流式传输到 Airplay

有人有示例代码来列出 Airplay 设备并使用 AudioQueue API 连接到它们吗?

0 投票
1 回答
1105 浏览

iphone - iphone播放和录音低音量问题

我正在制作一种 voip 应用程序,所以我必须能够同时播放和录制声音。

但是..当我同时播放和录音时,iphone的音量非常低。

我用了

我试着

但是..仍然音量非常低..

请帮忙..!

附言

我正在使用 audioQueue 播放声音并通过 audioUnit 录制声音。