Я использую OpenAL для воспроизведения фоновой музыки.В какой-то момент мне нужно получить точное текущее положение на трассе.Я попытался использовать alGetSourcef(_source, AL_SEC_OFFSET, &offset);
, и он отлично работает на iOS 4, но на iOS 3 он возвращает int
(без десятичных разрядов).Это не достаточно точно, так как мне нужна точность как минимум до 3 знаков после запятой (я затем использую эту информацию о смещении, чтобы перейти к другой точке на треке, а округленное значение означает, что она в итоге переходит на неточную позицию).
Можно ли получить AL_SAMPLE_OFFSET
или AL_BYTE_OFFSET
и затем преобразовать это значение в секунды?
Звуковой файл: 16-битный PCM WAV с частотой дискретизации 22050.