1
我对AudioQueues有一个基本的疑问,我使用AudioQueue进行记录,并且基本上遵循SpeakHere应用程序。我发现,只要使用AudioQueue对象上的api:AudioQueuePause
暂停录制,录制就不会立即暂停。 AudioQueues中是否有回调,表示录音暂停的代表?为AudioQueue暂停记录回调
或者我错了理解AudioQueuePause
api是异步的?如在文档中描述的API是:
OSStatus AudioQueuePause (
AudioQueueRef inAQ
);
它返回OSStatus
,但他们中的哪一个指示成功通话,他们(OSStatus)是否指示调用是同步的?
感谢, 拉吉
感谢您的回复,您的建议是可行的。但我不明白AudioQueueGetCurrentTime&AudioQueueDeviceGetCurrentTime的目的?你能否详细说明一下? – 2010-09-23 04:49:23
我只是建议你跟踪用户点击暂停(在用户界面上)时的“确切时间”。那时,调用AudioQueue时间函数并存储该值。然后,您可以返回并删除所有时间点“过去”的样本。 具体而言,由于您的样本以X采样率存储在N个样本中(例如44.1kHz的1,000,000个样本约为22.6秒)。如果您的用户点击了暂停按钮,AQ时间功能会告诉您“我的样品数量为999,000,那么您可以在999,001后删除所有样品”。AQ时间函数可以返回样品中的秒数和时间。 – zerojarvis 2010-10-08 20:11:55