Announcement

Collapse
No announcement yet.

Fidelity problem on Windows 7 if sample rates do not match.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Fidelity problem on Windows 7 if sample rates do not match.

    On Windows 7, if I configure SoundCheck to use a sample rate of, say, 44.1kHz, but configure the audio interface to use 48kHz, and then play a test tone, I hear a ringing artifact. If the sample rates match, the sound is pure.
    I am using a low frequency sine wave (circa 100Hz), because the ringing seems most noticable for low, pure tones.

    As far as I can tell, back on Windows XP, Sound Check would AUTOMATICALLY change the sample rate of the hardware to match - that's how XP worked. (unless more than one application had the device open simultaneously).
    So, customers who are unaware of this change in behaviour may not BOTHER to check that their audio interface is configured to match the rate they select in Sound Check, and it could cause erroneous results. I.e, they may assume that their audio interface will be set to match Sound Check automatically.

    This issue seems to have a more serious impact, however, because I am finding that a lot of web content is not playing cleanly, if my audio interface is set to 48kHz. (which is actually the DEFAULT sample rate of my netbook's internal Realtek HD interface).

    I have reported my findings to the Windows Pro Audio Developer's forum:
    http://social.msdn.microsoft.com/Forums/en/windowspro-audiodevelopment/thread/725546ce-57bf-40d0-b7aa-47e51de9c3ae

    Aside from the change in behaviour regarding the sample rate of the audio interface, there seems to be a problem regarding sample rate conversion on Windows 7, if the WaveOut API is used. As far as I can tell, sample rate conversion for WaveOut, on Windows XP, works fine. It's the combination of these two factors that results in the audible artifacts.

    Greg.

  • #2
    I suspect you might be confused.
    If you are just talking about the output of sound (from your PC to your speakers) then there is no sample rate on the audio interface.

    As there is no sample rate there is no possibility of a mismatch on output.

    You set the sample rate in SoundCheck, and this is what you get from the card.

    However on INPUT to your sound card there IS a separate sample rate, which is used recording (e.g. from Line in, or a Microphone). This can be set separately from the output rate used in SoundCheck.

    And I think it makes some sense that if you set the output at a high sample rate, but set the input at a different lower rate you'll get artefacts when you are doing the recording.

    If the input sample rate is impacting on the output quality then I would have to think this is a software bug (e.g. in the device driver).

    Comment


    • #3
      Exactly what I suspected, and feared.

      It is you who is confused, but it's not your fault.

      Please read this blog carefully, and get back to me. (you don't need to read all the stuff about bit depth - concentrate on the information about sample rates)

      http://blog.szynalski.com/2009/11/17/an-audiophiles-look-at-the-audio-stack-in-windows-vista-and-7/

      I don't think you have digested what I said over on MSDN yet, either.

      Changing the sample rate in SoundCheck DOES NOT change the sample rate of the audio interface, on Windows 7 (and, it seems, Vista).

      Thanks,
      Greg.
      Last edited by sullivang; Jan-08-2011, 09:18 PM.

      Comment


      • #4
        If you would like to try to reproduce the problem, here is the procedure for Windows 7:

        1. Close SoundCheck, if it is open

        2. Control Panel | Sound | Playback, click on your audio device that you will use in SoundCheck, Properties | Advanced (this assumes Classic view in Control Panel)

        3. Now select a format that uses a sample rate of 48kHz. (either 16-bit or 24-bit should be fine) Click OK.

        4. Open SoundCheck

        5. Configure it for 44.1kHz, 16-bit

        6. Test Tones | Create Tone, configure for a sine wave, 80% amplitude, 100Hz, duration 20 seconds

        7. Click Play Tone, and you will probably hear the artifact.

        8. Repeat the test, but use a sample rate of 48kHz in SoundCheck. The artifact will have gone.

        This is the procedure I can use on my internal Realtek HD audio interface. For my USB interface, which has it's own control panel, I have to set the sample rate in it's own control panel. (Windows only allows formats that use whatever sample rate that is configured in the USB device's vendor supplied control panel - not sure whether this is correct behaviour or not - it may well be a problem with the driver)

        Greg.

        Comment


        • #5
          I see. You are talking about the "shared mode" sample rate that is used to mix content on output.

          I haven't looked into this much.

          I did some reading on it, and yes, it seems there is a general consensus that the re-sampling done in Windows isn't great. So it makes sense to avoid the re-sampling where possible by setting the rates the same.

          Here is a screen shot for anyone looking for the sound card sample rate setting.

          Comment


          • #6
            Exactly, however I didn't do anything to put my machine into "shared mode" - that's just how it is all the time I think, unless the application is written to open the device in exlusive mode, I assume. (I haven't done any audio programming on Windows at all, so all this is a bit fuzzy for me)

            If you read my very first post over on the MSDN forum, you'll see that when I force XP into some kind of "shared mode" (by running two apps simultaneously), it still performs the sample rate conversion well.

            Greg.

            Comment


            • #7
              Also, note that I have "allow exclusve access" and "give exclusive applications priority" checked in the audio interface properties, but that's obviously not allowing SoundCheck to work properly. Maybe there's a problem there.

              It goes without saying, but I think you should consider looking into improving SoundCheck on Windows 7, even if it's something as simple as popping up a warning that the user should double check that the sample rates match.

              Greg.

              Comment


              • #8
                Incorrect Sample Rate on Playback

                I have been searching all week for an answer to a problem I am experiencing and it seems your thread may have the answer. Can you help further? Here's the issue: I have an Alesis i02 audio interface and am running Cubase LE5 and also like to use audacity, too. Regardless of the program, when I record my voice using a sample rate of 44, upon playback the pitch of the voice is slowed down. When I playback at 48 it is fine, it seems. However (again regardless of the software), it does not adjust automatically. I am running Windows 7. What is "Sound Check"? Is that something in Windows Sound Device? Anyways, any thoughts on what I can do to correct this issue? I am unclear about what I should set the sample rates to in Windows 7. Could Windows 7 be the issue?

                Comment


                • #9
                  Soloing1,
                  It COULD be related to the issue I'm discussing, and if it is, it's obviously a more dramatic example. There are two issues that I have raised:

                  1) Windows 7 will not change the sample rate of the audio interface to match the sample rate of the audio content, in the same way that occurred on older versions of Windows, such as Windows XP.
                  2) When the sample rates do not match, processing needs to be done to convert the sample rate of the audio to the sample rate of the audio interface. It appears that sometimes, this is not occuring with high fidelity.

                  I think you should work out the simplest way to reproduce the problem, document what you do thoroughly, and then report it in a more appropriate place than this forum. If you can reproduce the problem on Windows, without having to use any 3rd party applications, then I think you should contact Alesis first. (no harm in also asking in a general Windows related forum, such as this one: http://www.sevenforums.com/sound-audio/ ) For example, if you use the Windows "Sound Recorder" program to record something, and then play it back using the Windows Media Player, and the problem occurs, that would most likely point to a fundamental problem in Windows or the Alesis driver. (note that Sound Recorder on Windows 7 can't actually play back anything - not even something it has just recorded)

                  If Windows works ok, maybe the next step could be to reproduce it in Cubase, and report it on the Cubase forum: http://www.steinberg.net/forum/viewforum.php?f=8&sid=132aba8b7f77ea532fdc3a50fcc8 2f2f and/or directly to Cubase support.

                  If you post publicly, would you mind giving us the links to your discussions? Thanks.

                  RE: SoundCheck, it's a program to testing the capabilities of your soundcard, microphone and speakers, etc. It might help with your problem, but I think it's best to do the above first.

                  Greg.

                  Comment


                  • #10
                    Thanks. I will look into this and post to another forum you suggest and let you know if there is any reply.

                    Comment


                    • #11
                      Thanks for the help. I rebooted and the device drivers apparently were detected and I thought they already had been? Not sure. But all is fixed. http://www.sevenforums.com/sound-audio/136644-incorrect-sample-rate-playback.html#post1174624

                      Comment


                      • #12
                        What is "Sound Check"? Is that something in Windows Sound Device?
                        Just for the record.
                        In this context it is the Passmark SoundCheck software on this web site.

                        Comment


                        • #13
                          Just as a follow up for this,

                          It seems we already had an FAQ question about the Vista sample rate issue. We added it maybe 4 years ago. But at the time we didn't know the root cause and so the FAQ didn't contain much detail. I'll update the SoundCheck FAQ with a link back to this forum post.

                          I also went back and added a screen shot in case people can't find the setting.

                          Comment


                          • #14
                            Soloing1: That's good news - well done.

                            Passmark: Thanks for updating the FAQ. I really think that the application needs to be updated though, AT LEAST so that it warns the user to check that the sample rate in the Windows audio settings matches that in SoundCheck. The issue here is that it is theoretically possible that the sample rates will not match, yet the program could run smoothly, and everything will sound ok. However, if the user is going to analyse the recordings, the results may reflect the quality (or lack thereof!!) of the Windows sample rate conversion, rather than the capabilities of the audio interface. Another problem is that when the sample rates do not match, this also causes the frequency response to be that of the LOWEST link in the chain. So, if the user enters 96000 into SoundCheck, but the Windows sample rate is 44100, the upper frequency will only be 22050Hz, when it should be 48kHz! The user may be totally unaware of all this. It is a BIG change in behaviour in Windows.

                            It would also be great if you could support different audio APIs, such as DirectSound, ASIO, and there's some new one called "WSAPI". Of course, it would also be good if you could have SoundCheck change the sample rate (and bit depth) of the audio hardware to match the settings that the user enters into SoundCheck, or at least provide the OPTION for this.

                            Greg.

                            Comment


                            • #15
                              We only make about $50 in sales per month for SoundCheck. Which means about $20 in profit before any support costs. So writing this post has blown the development budget on this product for this month

                              A re-write of the software would mean 10 years or more of sales to recover the development costs. More profitable to leave the money in the bank, or invest in a more popular product.

                              While it might not be ideal it is easier to change the setting in Windows as required.

                              Comment

                              Working...
                              X