[Bug 30639] Audio stuttering and performance drops in Star Wolves 3
wine-bugs at winehq.org
wine-bugs at winehq.org
Sun Jan 15 13:00:09 CST 2017
https://bugs.winehq.org/show_bug.cgi?id=30639
--- Comment #44 from Erich E. Hoover <erich.e.hoover at wine-staging.com> ---
(In reply to winetest from comment #43)
> I could be wrong, but in the staging patch...
>
> float cur_freqAcc = (freqAcc_start + i * dsb->freqAdjustNum) /
> (float)dsb->freqAdjustDen;
>
> should there be also (float)dsb->freqAdjustNum)
> missing (float)?
It doesn't matter, the division operation will be performed in floats since the
denominator is a float. No math in the numerator requires floats.
The staged patch for this is not ideal, what it does is reduce the computation
required inside of the mixing lock. I have been spending some energy trying to
understand the pieces that go together in the mixing code (honestly, it needs
to be reorganized) and I believe that it is possible to reduce the amount of
code that occurs within the lock. If I am successful in this endeavor then the
re-sampling operation can occur outside the lock (only the mixing itself will
occur within the lock) and that will allow multiple streams to be re-sampled
simultaneously, instead of requiring that only one stream be re-sampled at a
time.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list