0

大家好,我想知道是否有人可以指出正确的方向,在我的 openAL 单例类中创建一个返回当前声音时间的函数。

有任何想法吗?谢谢!

(当前时间“正在播放声音”)

4

1 回答 1

1

嗨,你能详细说明一下声音的当前时间是什么意思吗?

您的意思是播放声音的实际时间或音频剪辑的实际时间长度是多少?请明确说明。

  1. 如果您的意思是实际播放声音的时间,那么您可以使用

    CFAbsoluteTimeGetCurrent()

    将当前时间表示为自 2001 年 1 月 1 日 00:00:00 GMT 以来的秒数(作为双精度值,因此会有小数秒)。所以基本上你会得到的是调用函数的那一刻的当前时间。

  2. 如果您想知道应用程序中何时发生事件,那么您可以使用

    -[UIEvent 时间戳]

    属性,这将是声音播放时间的最准确表示。

要放置您决定选择的任何一个功能(如果它实际上是您正在谈论的),那么您可以像这样返回它:

(double)returnTime{
    double *timeValue = CFAbsoluteTimeGetCurrent();
    return timeValue;
}

然后你可以调用这个函数并像这样存储时间

double *storeValue = [self returnTime];

一气呵成。然后,您可以使用此变量将其打印到控制台或您喜欢的任何内容。

希望这可以帮助。再次请指定声音的当前时间是什么意思。

PK

于 2010-09-19T09:38:58.767 回答