[Bug 14717] resampled sound is horrible

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Nov 27 04:38:48 CST 2011


http://bugs.winehq.org/show_bug.cgi?id=14717

Alexander E. Patrakov <patrakov at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #37381|0                           |1
        is obsolete|                            |

--- Comment #243 from Alexander E. Patrakov <patrakov at gmail.com> 2011-11-27 04:38:48 CST ---
Created attachment 37659
  --> http://bugs.winehq.org/attachment.cgi?id=37659
Third version of my patchset

The third version of the patchset removes some dead code. It does not address
the performance concerns.

In order to address them, I need to add a buffer so that dsb->get is not called
more than once for the same sample. However, in order to add such buffer, I
must understand the existing buffering scheme. It just takes time.

What I want to do next (in order to simplify buffering) is to clean up the
volume logic. Currently, it is an example of yo-yo code that attempts to handle
all bit depths in a "switch" statement. I will try to put this into
resampled_copy() so that the code only has to deal with 32-bit samples.

One more thing concerning performance: the code does a lot of fixed-point
arithmetics, but fixed-point arithmetics is exactly what prevents me from using
SSE2 optimizations. So, may I refactor the code in such a way that get()
returns and put() accepts a floating-point number instead of a 32-bit integer?
May I convert freqAcc from a 20-bit fixed-point number to a floating-point
number? The only implication is that the code will no longer be bit-exact with
32-bit primary buffers (if such thing exists at all).

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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