Windows 7's resampling sucks, How can it be improved? |
Windows 7's resampling sucks, How can it be improved? |
Feb 9 2011, 20:30
Post
#1
|
|
|
Group: Members Posts: 698 Joined: 6-March 10 Member No.: 78779 |
Playback over WASAPI must match the sample rate of the output device. Thus applications must supply their own resampling if the playback rate does not match. Most applications don't do this but just employ MME or DirectSound, which provide transparent resampling for non-matching rates.
Since some of my content is 44.1 kHz and some 48 kHz I used to set the output rate to 192 kHz so that all audio had to be upsampled. With good software resampling and a cheap onboard codec this could, in theory, even improve the overall result. But the opposite was true. Today I couldn't longer ignore the impression that the resampled output sounded somewhat muffled and did some measurements. You can view the result here. The upsampled output (44.1 -> 192 kHz) suffers from quite a HF roll-off in comparison to pure 44.1 kHz output. In Windows XP the SRC quality could be adjusted. I can't find anything comparable in Windows 7. Does anyone know more? This post has been edited by googlebot: Feb 9 2011, 20:33 |
|
|
|
![]() |
Feb 10 2011, 11:28
Post
#2
|
|
![]() Group: Developer Posts: 1317 Joined: 20-March 04 From: Göttingen (DE) Member No.: 12875 |
I also don't think -1 dB at 17 kHz and -3 dB at 18.25 kHz makes a difference in real listening situations. The early and slow rolloff has also advantages in theory (possibly lower delay, computationally cheaper).
|
|
|
|
Feb 10 2011, 16:43
Post
#3
|
|
|
Group: Members Posts: 581 Joined: 17-August 09 Member No.: 72373 |
I also don't think -1 dB at 17 kHz and -3 dB at 18.25 kHz makes a difference in real listening situations. The early and slow rolloff has also advantages in theory (possibly lower delay, computationally cheaper). Such anti-aliasing filtering is necessary in a sample-rate and digital-to-analog conversion. As Sebastian indicates, there are trade offs in filter design. You are comparing Microsoft's software filter to the hardware filter in the DAC. They are implemented differently and it is not surprising that you can measure and hear a difference. Have you done any measurements on XP to confirm that there's a regression in Win 7. I would not assume that removal of user settings implies reduced performance. It could alternatively mean that overall performance was improved to the extent that user settings are no longer necessary. |
|
|
|
Feb 10 2011, 20:46
Post
#4
|
|
|
Group: Members Posts: 698 Joined: 6-March 10 Member No.: 78779 |
I am well familiar with the technical details of resampling. There recently was an interesting discussion about reconstruction filters, where I participated, for example.
Have you done any measurements on XP to confirm that there's a regression in Win 7. I would not assume that removal of user settings implies reduced performance. It could alternatively mean that overall performance was improved to the extent that user settings are no longer necessary. I remembered that Microsoft had claimed for the "best" setting to use a high-end polyphase filter in XP. It took me a while to dig up some reference. And after reading that what Microsoft used to call the "good" setting was simple linear interpolation, I think you have a point and they might just have removed the ultra-low-level options. From the measurements it is pretty clear that Windows 7 does not use linear interpolation anymore and they might have just kept the former "better" or "best" option.* Still, anti-aliasing is not just a trade-off between pass-band quality and filter steepness. Both can be maximized at the cost of a third variable: CPU cycles. Compared to the vast power of even 5 year old commodity CPUs, Windows 7's frequency roll-off really is a little lame (it's not a phone OS). Music playback doesn't need a lot of resources on modern CPU's. Most of the time can be spent in the lower C states and the long pipelines must regularly flush without ever truly filling. In such a low usage scenario a little higher software utilization can often free-ride just by higher pipeline utilization. I certainly wouldn't mind having the option of not 99,9% but 100% transparency, without a limitation to what the majority would call normal music. Not because the difference would be so huge, but because of missing necessity. If a difference with whatever signal, even if can't be considered normal music, can be perceived, and CPU cycles are superabundant, then why be apologetic about it? * I'm not planning to re-install XP just to get confirmation. One more comment shared WASAPI: even shared WASAPI can switch the output sample rate to a rate different from the user-chosen, preferred output sample rate, when there are no conflicting streams. In such a scenario a shared WASAPI implementation can output audio without an application level resampler (you end up with no resampling at all). But such an implementation would be incomplete and throw an error, when you try to playback while a conflicting stream or system sound would occupy the engine with another sample rate. Even if the occupying source would also use shared mode. This post has been edited by googlebot: Feb 10 2011, 20:58 |
|
|
|
googlebot Windows 7's resampling sucks Feb 9 2011, 20:30
[JAZ] A) WASAPI doesn't force any player to resampl... Feb 9 2011, 20:41
googlebot QUOTE ([JAZ] @ Feb 9 2011, 20:41)... Feb 9 2011, 21:14
saratoga QUOTE (googlebot @ Feb 9 2011, 14:30) Sin... Feb 9 2011, 21:56
googlebot It's hard to ABX the different paths directly ... Feb 9 2011, 22:11
Roseval WASAPI in exclusive mode send the output straight ... Feb 9 2011, 23:04
googlebot QUOTE (Roseval @ Feb 9 2011, 23:04) WASAP... Feb 9 2011, 23:11
Cavaille QUOTE ([JAZ] @ Feb 9 2011, 20:41)... Feb 9 2011, 23:43
dv1989 QUOTE (Cavaille @ Feb 9 2011, 22:43) QUOT... Feb 10 2011, 00:10
[JAZ] Are you telling me that when I have set 24bits 96K... Feb 9 2011, 23:49
googlebot QUOTE ([JAZ] @ Feb 9 2011, 23:49)... Feb 10 2011, 00:07
C.R.Helmrich http://www.hydrogenaudio.org/forums/index....st... Feb 9 2011, 23:50
SCOTU Is there any reason the OS' resampling even ma... Feb 9 2011, 23:51
soulsearchingsun Did you take the effects of different recontructio... Feb 9 2011, 23:56
googlebot I'll be away until tomorrow night. If you guys... Feb 10 2011, 00:25
GeSomeone @googlebot , I do not fully understand why you... Feb 10 2011, 00:42
googlebot QUOTE (GeSomeone @ Feb 10 2011, 00:42) I ... Feb 11 2011, 00:00
Cavaille QUOTE (googlebot @ Feb 10 2011, 00:07) Ho... Feb 10 2011, 00:47
googlebot @GeSomeone That's possible. It didn't test... Feb 10 2011, 00:50
Woodinville QUOTE (Notat @ Feb 10 2011, 08:43) Have y... Nov 5 2011, 08:32
soulsearchingsun QUOTE (soulsearchingsun @ Feb 9 2011, 23... Feb 10 2011, 11:45
lvqcl http://blogs.msdn.com/b/matthew_van_eerde/...-pull... Feb 10 2011, 22:17
Greg QUOTE (lvqcl @ Feb 10 2011, 13:17) http:/... Apr 17 2011, 08:51
lvqcl QUOTE (Greg @ Apr 17 2011, 11:51) How exa... Apr 17 2011, 12:34
Greg QUOTE (lvqcl @ Apr 17 2011, 03:34) QUOTE ... Apr 17 2011, 19:30
googlebot Interesting. Looks like it should, just not like w... Feb 10 2011, 23:32
[JAZ] Couple of things...
It looks like foobar2000 impl... Feb 11 2011, 01:05
googlebot Thank you for the update [JAZ] and my apologies fo... Feb 11 2011, 01:53
googlebot The problem is mostly solved. It seems to be a rea... Feb 11 2011, 03:20
soulsearchingsun QUOTE (googlebot @ Feb 11 2011, 03:20) Th... Feb 11 2011, 13:05
googlebot QUOTE (soulsearchingsun @ Feb 11 2011, 13... Feb 11 2011, 13:09
googlebot Maybe we can get an additional confirmation? Perso... Feb 11 2011, 13:13
soulsearchingsun QUOTE (googlebot @ Feb 11 2011, 13:13) Ma... Feb 11 2011, 13:20
googlebot Full stop. It was just RMAA that fucked up. And wi... Feb 11 2011, 14:19
Cavaille QUOTE (googlebot @ Feb 11 2011, 14:19) Fu... Feb 11 2011, 15:15
greynol What about your initial suspicion about muffled so... Feb 11 2011, 19:51
googlebot QUOTE (greynol @ Feb 11 2011, 19:51) What... Feb 11 2011, 20:27
hellokeith Googlebot,
This thread was actually helpful, in t... Feb 13 2011, 04:06
jaro1 This area has also my interest, however the proble... Apr 17 2011, 11:20
lvqcl I don't have it, but it was like the attached ... Apr 17 2011, 19:57
whitejason QUOTE (googlebot @ Feb 9 2011, 20:30) Pla... Jun 27 2011, 18:41
meeky Not sure if this is related, but Microsoft have co... Nov 5 2011, 07:05
lvqcl from the abovementioned thread:
QUOTE Media Founda... Nov 5 2011, 07:36
hellokeith QUOTE (lvqcl @ Nov 5 2011, 00:36) Media F... Nov 5 2011, 10:01
benski QUOTE (lvqcl @ Nov 5 2011, 02:36) from th... Nov 6 2011, 18:24
lvqcl http://blog.szynalski.com/2009/11/17/an-au...-7/#c... Nov 5 2011, 10:47
C.R.Helmrich I just checked the optional updates available for ... Nov 5 2011, 11:28
Batman321 QUOTE (C.R.Helmrich @ Nov 5 2011, 05:28) ... Nov 5 2011, 19:01
Roseval I'm afraid audio has priority zero at Microsof... Nov 5 2011, 13:33
googlebot QUOTE (Roseval @ Nov 5 2011, 14:33) I... Nov 5 2011, 21:09
Roseval There are a couple of media players for OSX doing... Nov 6 2011, 10:59
Juha So, you need dedicated playback software for to do... Nov 6 2011, 11:52

bennetng I have to agree that win7's resampling has som... Nov 6 2011, 13:11
googlebot QUOTE (Roseval @ Nov 6 2011, 11:59) There... Nov 6 2011, 15:19
Roseval Correct.
iTunes doesn't support automatic samp... Nov 6 2011, 13:03
LordWarlock For whoever it may interest, there is now a hotfix... Mar 9 2012, 19:49
C.R.Helmrich Thanks a million, Lord! Trying it right now. E... Mar 9 2012, 21:21
extrabigmehdi QUOTE (LordWarlock @ Mar 9 2012, 18:49) F... Mar 10 2012, 00:07

andy o QUOTE (extrabigmehdi @ Mar 9 2012, 16:07)... Jun 20 2012, 00:34
Woodinville QUOTE (LordWarlock @ Mar 9 2012, 10:49) F... Mar 10 2012, 01:51
markanini QUOTE (Woodinville @ Mar 10 2012, 02:51) ... Jun 20 2012, 06:41
hellokeith Why a hotfix and not an update? Mar 10 2012, 10:17
db1989 Cross-linking for future reference:
“Windows 7/200... Aug 29 2012, 18:22![]() ![]() |
|
Lo-Fi Version | Time is now: 25th May 2013 - 10:21 |