Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: AM distortion from soundcard at frequencies above 12kHz (Read 5243 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

AM distortion from soundcard at frequencies above 12kHz

When I play pure sine waves above 12kHz on my PC, the output of my sound card is amplitude modulated at about 5kHz.

Can anyone explain what could be the cause of this distortion?
I suspect that most sound cards have this problem. At least the 2 that I have tested do.

Sound card: creative soundblaster live.
sampling rate: 44kHz

AM distortion from soundcard at frequencies above 12kHz

Reply #1
When I play pure sine waves above 12kHz on my PC, the output of my sound card is amplitude modulated at about 5kHz.

Can anyone explain what could be the cause of this distortion?
I suspect that most sound cards have this problem. At least the 2 that I have tested do.

Sound card: creative soundblaster live.
sampling rate: 44kHz


  • Is the modulation always 5 khz, or is it related (like a subharmonic) to the higher frequency?
  • Did you notice this by ear, or looking at a waveform?

AM distortion from soundcard at frequencies above 12kHz

Reply #2
1. The modulation is constant in frequency, about 5kHz, not varying with signal frequency.
2. I first noticed it by ear as an unknown distortion, but today I checked with the oscilloscope. The original signal is clearly seen within a 5kHz envelope. (unfortunately i couldn't get a clear photo).

Of course, the audible distortion is related to signal frequency because the output contains the original frequency (f) as well as f+5kHz and f-5kHz.

The photo shows a 17kHz sine wave modulated at 5kHz.



AM distortion from soundcard at frequencies above 12kHz

Reply #3
If I recall, Sounblaster Live had some issues from the DSP chip working on a fixed 48 khz sample frequency and some artifacts in converting to 44.1

From wikipedia article Sound Blaster Live!

Quote
"This rate-conversion step introduced IM distortion into the downsampled output. The SB/Live had great difficulty with resampling audio-CD source material (44.1 kHz) without introducing audible distortion. Creative addressed this concern by recommending audio-recording be performed exclusively at 48 kHz, and use third-party software to handle the desired sample-rate conversion, to avoid using the EMU10K1's sample-rate conversion."

AM distortion from soundcard at frequencies above 12kHz

Reply #4
Thanks. If I understand correctly I just need to use an external DAC.

Wiki article states: "Despite these problems, the original SB Live! can still be used well as a S/P-DIF input/output....."

Perhaps I can use the SPDIF output and build something like this.

AM distortion from soundcard at frequencies above 12kHz

Reply #5
Thanks. If I understand correctly I just need to use an external DAC.


Not necessarily. With older SBs (and many older onboard chips that could not properly upsample from 44.1 to their native 48) you may work around the problem using quality software resampling from 44.1 to 48, so that the card receives 48 and does not have to change it. E.g., foobar2000 has in-built resampler that will do the job.

Next, you can get a new soundcard, whether internal or external, that can resample to 48 properly, or (better!) can play at 44.1 and 48 (and other sampling frequencies) without resampling. Many can.

An external DAC connected to the SB's digital output is also an option.
Ceterum censeo, there should be an "%is_stop_after_current%".

AM distortion from soundcard at frequencies above 12kHz

Reply #6
When I play pure sine waves above 12kHz on my PC, the output of my sound card is amplitude modulated at about 5kHz.

Can anyone explain what could be the cause of this distortion?
I suspect that most sound cards have this problem. At least the 2 that I have tested do.

Sound card: creative soundblaster live.
sampling rate: 44kHz


Sounds like a really bad antialiasing filter.
-----
J. D. (jj) Johnston

AM distortion from soundcard at frequencies above 12kHz

Reply #7
If you do a simple "Catmull-Rom spline" interpolation (or something equally bad) from 44 kHz to 48 kHz and reconstruct the 48 kHz signal (properly), the result will look just like that. That's your soundcard's bad internal resampling.

AM distortion from soundcard at frequencies above 12kHz

Reply #8
Does the Windows Vista/7 mixer get around this? Doesn't Windows do the resampling then in software, or is it still the card?

AM distortion from soundcard at frequencies above 12kHz

Reply #9
If you do a simple "Catmull-Rom spline" interpolation (or something equally bad) from 44 kHz to 48 kHz and reconstruct the 48 kHz signal (properly), the result will look just like that. That's your soundcard's bad internal resampling.


This is not my field but I think you hit the nail on the head. Thank you all for enlightening me.

I'm very disappointed that products like this are still being sold today. And fraudulently advertising distortion figures of 0.00001%.

Anyway, this is a fantastic excuse to build a SPDIF receiver and DAC.
Thinking of using the CS8416 which I can get for the equivalent of $10 US.
I want to decide what happens to the analog signal from the start of its existence.
But I have a lot of reading to do because I don't normally dabble in digital electronics.

AM distortion from soundcard at frequencies above 12kHz

Reply #10
Sound card: creative soundblaster live.


I'm very disappointed that products like this are still being sold today. And fraudulently advertising distortion figures of 0.00001%.


Eerrrm... Sorry???  Should I check my clock? I had the impression we were in year 2010, not in year 2000.

SoundBlaster Live could have been better in many regards (and there were different models of the "Live!" card), but it was an improvement over the older card anyway.

AM distortion from soundcard at frequencies above 12kHz

Reply #11
True, I have a Creative Soundblaster Live albeit more "creative" than I had hoped.
By saying "I'm very disappointed that products like this are still being sold today" I was not talking about a specific sound card or company.
I strongly suspect that products with this particular flaw are still being manufactured and sold. I did buy a computer in 2008 with onboard sound that is even worse but also with the same resampling problem.

Re: AM distortion from soundcard at frequencies above 12kHz

Reply #12
I figured out a way to solve this problem. My FM radiostation gets very distorted when an instrument plays above 12 khz on a couple of songs. I was running it through the sound blaster 3, just fresh from the store. I have linux, and I use the qmmp player. After playing with it for while, I installed all of the ladspa plugins I could find. so I found this Mag’s Notch Filter, i enabled it and set it to 12 khz and It fixed the problem for me. check out the screen shots. I hope this helps.
regards, KRUSS FM & K9RUS AM
Shortwave radio rocks!

 

Re: AM distortion from soundcard at frequencies above 12kHz

Reply #13
@radio pushka : Given that you are on linux, another solution would be that you configure ALSA for a virtual soundcard named Dmix and configure it to use the soundcard at 48Khz .  Then, use the virtual soundcard as the default soundcard and/or in the player application.

Some more information on this page: https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture#Dmix
(I haven't changed any thing ALSA related for some years, so I just know that it can be done, not the exact way of doing it)

Re: AM distortion from soundcard at frequencies above 12kHz

Reply #14
@radio pushka : Given that you are on linux, another solution would be that you configure ALSA for a virtual soundcard named Dmix and configure it to use the soundcard at 48Khz .  Then, use the virtual soundcard as the default soundcard and/or in the player application.

Some more information on this page: https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture#Dmix
(I haven't changed any thing ALSA related for some years, so I just know that it can be done, not the exact way of doing it)

That worked for normal headphones, however when I connected the audio to my FM radio transmitter, the problem came back. I did some research and turns out I had to mute frequencies above 15 khz to fix the distortion. The problem, now unrelated to sound blaster, turned out to be that the audio above 15 khz was causing problems at the encoding stage of the transmitter: http://www.audiomisc.co.uk/HFN/BandwidthBlues/page.html Basically, the distortion is due to the lack of bandwidth on the playing device, it may not support high frequency audio. If you experience the problem of distortion at high frequencies, cutting off everything above 15 khz fixes it.  I tried  putting the 0-15 khz audio directly through sound blaster, the distortion was gone. Its not 12 khz that is causing these problems.
regards, KRUSS FM & K9RUS AM
Shortwave radio rocks!

Re: AM distortion from soundcard at frequencies above 12kHz

Reply #15
FM broadcasting transmits a low level 19 KHz "pilot tone" that the receiver uses when decoding the stereo signal. The input to the transmitter's modulator is cut off around 15 to 16 KHz to prevent the HF from interfering with the pilot tone in the receiver, thus causing the distortion you were hearing.
https://en.wikipedia.org/wiki/FM_broadcasting
Regards,
   Don Hills
"People hear what they see." - Doris Day