I am using getPosition() to track the position of (potentially) multiple streams and synchronise. However, I am seeing behaviour in the result of getPosition() that looks like it is returning the position on some block boundary.
Is there anyway that I can get the actual (linear) position of the playhead?
- adam7th asked 12 years ago
fmod’s software mixer mixes in blocks, so it is not possible to return a value that increments 1 sample at a time, without using an OS time function to interpolate between. We could do that but it would probably not be satisfactory and wouldnt be perfectly smooth, you could do something like that yourself possibly.
That’s what I thought.
I am already doing something similar in that I am averaging over a nunmber of readings to try to reduce the steps. The problem with me doing the interpolation is that I am getting the position of the audio on video frame boundaries and this time interval is aliasing with the ‘chunking’ of the audio, hence giving me unreliable results.
The advantage with you doing the interpolation is that you can timestamp when a block is updated and then provide an interpolated value in response to getPosition().
Please login first to submit.