Increased accuracy when getting current audio time using OpenAL SOFT on native #1759
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
First time writing some bindings stuff! so feel free to tell me where I might need to clean up things. (i will clean up random whitespace / imports changes in the morning, bwah!)
wrote some bindings for
al_get_sourcedv_soft
and broadly followed along side theget_sourcefv
stuff.Using openal soft extension, can get a more precise time of the current playing audio.
Using ninjamuffin99/Lime-Time as sample / benchmark.
(the graphs here are sorta "right to left", and loop back to the bottom every 1000ms.)
stats.update(FlxG.sound.music.time % 1000);
Before (60FPS)
The timing of the audio 'plateaus' a bit for at least a frame, which may not seem like much, however this is an issue if you were to attempt to get the current playing time from BETWEEN a frame (say, on a keyboard input via an event listener) or on higher framerates (my demo is at 60fps)
After (60FPS)
The values here are ALWAYS being incremented, due to higher precision. No 'plateau' effect.