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: Resampling down to 44.1KHz (Read 74264 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Resampling down to 44.1KHz

Reply #25
I localized the problem to my old analog mixer that I have used between the sound card and the powered speakers.

I tested this with a difference signal of the reference and the #4 (invert mix paste). When the mixer is in the chain the difference signal sounds like a rather loud "pop".
So that's one positive ABX result traced to faulty/poor equipment. I just need to convince MLXXX to look in the same direction, and we might get a sane conclusion to this discussion.

I should probably mention (to try to avoid sounding like I've chosen to disbelieve people for the heck of it) that I ran similar experiments at university, using a variety of signals, and a variety of DACs, amps, and transducers. It is near-impossible to get the most extreme samples to play back at high levels without introduction audible distortion below 10kHz (for example). This distortion is generated by signals above 20kHz (for example) intermodulating, and so disappears when the content above 20kHz is removed. The audible difference between the original and low pass filtered version is due only to this distortion - so on really high quality equipment which minimises the distortion, the audible difference goes away.

It also means that, on standard equipment, with extreme samples where a difference is heard, the version with content above 20kHz removed actually gives the correct sound. When you listen to the version with the content above 20kHz present, you are hearing extra distortion which is not present in the recording itself, and is therefore incorrect. If you prefer this version, it's simply due to the common and well known human bias to perceive louder sounds, and sounds with slightly more distortion, as being "better".


You can get similar problems where there is significant content near the Nyquist limit. Typical D>A filtering leaves significant aliases in the first few kHz above the Nyquist limit; if there is nothing there, fine; if there are strong spectral components there, you have a classic intermodulation distortion test signal, and it's no surprise that you often get audible intermodulation distortion as a result.

Cheers,
David.

P.S. Of course bad resampling in itself can introduce audible differences.

Resampling down to 44.1KHz

Reply #26
My guess is, if you meet all the "perfection" requirements (best resampling algorithms, avoid clipping due to filtering etc.), you will not be able to discern between the samples. At least this is what theory says (unless you can hear sounds above 22 kHz, which I think you can not).
Any practical failures will be due to factors other than the limitations of the 44 kHz waveform itself (e.g. lame software/hardware).

Resampling down to 44.1KHz

Reply #27
It isn't unusual for the signal level to go above 0dB with all samples under 0dB. I don't have a ready reference to what I've read, I don't recall if the theoretical maximum is +8dB, +12dB, +14dB, but anyway, way above 0. Such extremes are rare in real music, but a couple of dB or so isn't. Good DACs handle this without working up a sweat. Clipping somewhere further along in the analogue chain is certainly a possibility if headroom is too little or if the volume control is set too high.

Resampling down to 44.1KHz

Reply #28
Cabbagerat, thanks for the first set of uploads.  [The file wiith the added noise is very noisy indeed when played back on my systems. The noise gives the impression, on my equipment, of being well within the audible range.]

  • triangleMod_lp1.flac - This is the triangleMod sample with a lowpass filter nominally at 22kHz - the transition band is quite wide, but the filter has very high stopband attenuation.
  • triangleMod_lp2.flac - This is the triangleMod sample with a lowpass filter nominally at 20kHz - the transition band is quite wide, but the filter has very high stopband attenuation.


Quite interesting. The second file does sound duller but only if my ears are fresh.

So my experience when ABXing the two files goes something like this (and assuming the first unknown X is actually B):
[blockquote]Action ............  Result
Play A - solid energetic sound
Play B - not quite as intense an attack; a slightly 'plainer' sound as the triangle rings
Play X - aha! dull, just like B
Play Y - er, brighter than X but not as bright as A sounded
Select 'Y is A, X is B' answer.  Foobar says Correct.
Play X - dull
Play Y - er, dull
Take a break from the test, as ears can no longer distinguish between A and B.
Resume, get answer right but straight away be obliged to take another break.[/blockquote]

I conclude from this, that if I were listening  to loud music with lots of high frequency content my ears would rapidly lose their sensitivity to the highest frequency sounds that I can normally hear.

For your ABXing pleasure - versions reduced by 3dB and 6dB.



I wonder whether there was some real clipping when the recording was made (and not just occasional  intersample excesses).

Resampling down to 44.1KHz

Reply #29
Cabbagerat, thanks for the first set of uploads.  [The file wiith the added noise is very noisy indeed when played back on my systems. The noise gives the impression, on my equipment, of being well within the audible range.]
This, to me, seems to confirm what 2Bdecided said about intermodulation distortion. For the noise to sound as if it's in the audible range in this sample, something non-linear must be going on. Either your machines are resampling, or the soundcard is introducing IMD, or the amp is, or something else is going on. The noise energy in this sample is all about 21kHz, so if you could hear it, it would sound very, very high pitched.

On my machine (no resampling), the sample with added noise sounds exactly like the original. Oddly, if I fiddle with the bias of the amp attached to my PC*, and bias it into class B operation, the noise added sample gets a lot of hiss. From measurements done in the past, this amplifier exhibits lots of IMD in class B operation, so I am guessing it's that. 2Bdecided, or anybody else, what do you think?

* I'm not even going to try and explain why I would build an amp with a panel mounted bias adjustment.

Resampling down to 44.1KHz

Reply #30
Well that noise sample of yours cabbagerat is very useful indeed.

It prompted me to try my XP computer driving my Audigy 4 hub into headphones, and guess what? - no noise!

I've also tried another AVR, an older unit (Denon AVR-1802) by sending SPDIF from the XP computer.  This time when playing the sample including noise above 22KHz:  no noise.

So it's my more modern setups that are currently causing problems.

N.B. With the old AVR and with the Audigy 4, comparing your two lowpass files, the 20KHz one still sounds a little duller.

EDITS:
1. With SPDIF on my XP computer set to 96KHz, I compared KikeG's version_1 (lowpass set to 45Khz, with cabbagerat's version_1 (lowpass set to 22KHz), and cabbagerat's version did sound duller.  This difference was easier for me to hear than the difference between cabbagerat's version_2 (lowpass set to 20KHz) and version_1.  That doesn't make a lot of sense unless perhaps the beginning of the rolloff of cabbagerat's 22KHz version is within an audible part of the spectrum.

2. KikeG's version_4, which from its spectrum looks like a 22KHz lowpass filter does appear to sound very slightly duller than his version_1, but I will try to get my Vista HTPC SPDIF operating at 96KHz, before making a more specific comment.

Resampling down to 44.1KHz

Reply #31
Here is the difference signal sample that I used in my test.

It should be dead silent or if you have truly exceptional high frequency hearing you might be able to hear some ultra high pitched sound.

If you hear anything that appears to be in the usual audible range (up to 20 kHz) it is caused by problems in the playback chain.


EDIT

It might not be a good idea to increase the volume level over what you would normally use. You might ruin your tweeters.

Resampling down to 44.1KHz

Reply #32
I have identified the lowpasses of the files I posted at the original post (here)

Resampling down to 44.1KHz

Reply #33
Edit: the applied lowpasses are:

triangleMod_2_2496_l1.flac : 46 KHz lowpass
triangleMod_2_2496_l2.flac : 30 KHz lowpass
triangleMod_2_2496_l3.flac : 26 KHz lowpass
triangleMod_2_2496_l4.flac : 21 KHz lowpass

The lowpass takes 2.5 KHz approx. For example, in case of the 21 KHz lowpass, it is -0.1 dB at 19950 Hz and -90 dB at 22600 Hz.

Would it be useful to ABX the |4 version against the |3 version?  If, when tested, |4 sounded duller, or different in some other way, would that be a basis for concluding that if |3 were downconverted from 96KHz to 44.1KHz, its perceptible sound quality would change to a similar degree?  (I am not across the details of current good practice for such conversions.)

Resampling down to 44.1KHz

Reply #34
Quote
would that be a basis for concluding that if |3 were downconverted from 96KHz to 44.1KHz, its perceptible sound quality would change to a similar degree?


Yes.

Resampling down to 44.1KHz

Reply #35
Some CD players and stand-alone DACs "upsample" everything to 96kHz, 176.4kHz, 192kHz, or perhaps some other figure. Gaming soundcards and many multi-media soundcards resample everything to 48kHz. Whether these all then oversample by a large factor like most delta-sigma converters (64x and 128x are common) I am not sure, but by whatever labels, that and oversampling are two different processes. I have never seen nor heard of any soundcard that resamples everything to 96kHz or 192kHz, or any other such figure. The oversampling factor is applied to the data so the result it is not a constant, it depends on the audio's sample rate.

Resampling down to 44.1KHz

Reply #36

A.  If a low pass filter has been identified with exceptionally good performance as a prefilter for a conversion to 44.1KHz, is it available as a plug-in, or as standalone software? [Or is the digital filter in Audition 3 about as good as it gets?]


A comparison of some SRCs (96 -> 44.1) is available on http://src.infinitewave.ca/. But there's only Audition 2, not 3. Anyway, "Adobe Audition 2 Pre/Post Filter" graphs look good enough.


There is an Audition 3. I found my Athlon XP will not work with it (or the Orban loudness meter) because both require SSE2 instructions not present in Athlon XP. Anyway, here's a link to Audition 3

http://www.adobe.com/products/audition/


Resampling down to 44.1KHz

Reply #37
I think what he meant was there is no comparison data for Audition 3 on the SRC site.

Resampling down to 44.1KHz

Reply #38
2. KikeG's version_4, which from its spectrum looks like a 22KHz lowpass filter does appear to sound very slightly duller than his version_1, but I will try to get my Vista HTPC SPDIF operating at 96KHz, before making a more specific comment.

I have now been able to get the SPDIF out on my home theatre pc (which uses an Intel DG965WH motherboard) to work at up to 192KHz.  [I did this by rolling back to a SIGMATEL driver. SIGMATEL have been supplanted by IDT but the IDT driver for some reason on my mobo limits the SPDIF out to a maximum of 48KHz.]

I will have to ask others to attempt an ABX on KykeG's samples, as my own high frequency hearing is not quite up to the task.  When I ABX test I like to know that I have the correct answer; such that foobar merely confirms it.  However these samples are so close for my ears, that when comparing |3 and |4, I merely get impressions with varying degrees of conviction.

I find there is more of a difference between |1 and |4 and I suspect that on a good day I could probably get a long series of correct answers using ABX software.  When I do hear differences between |3 and |4 they are:
* The beginning of |1 has more brilliance
* |1 sounds sharper (in the sense of an overall impression of musical pitch) than |4
* The beginning of |4 is slightly 'hollow' sounding.

40 years ago when I was in my early teens I would have heard these two versions differently, than I hear them now.

I imagine that the young first time poster in the Emperor's New Sample Rate thread, gantrithor, could easily ABX even |3 and |4, using headphones that had a reasonably decent treble response.  His post in that thread is at #96.

If an individual  who can hear these sorts of differences when the bitrate is kept at 96KHz can then be asked to listen to the same 96KHz sample downconverted to 44.1KHz and if they then report that they hear similar differences, this might point towards 44.1KHz being an inadequate sample rate, for that individual, within the hardware and software constraints of current technology.

I have a disquiet about 44.1KHz, but I have not so far been able to prove that, for my own middle-aged hearing, it is an inadequate sample rate.

Resampling down to 44.1KHz

Reply #39
I have a disquiet about 44.1KHz, but I have not so far been able to prove that, for my own middle-aged hearing, it is an inadequate sample rate.


Attenuation of ultrahigh frequencies in air is such that it has to be very energetic to make a significant contribution to the sound.  THat means listening very close, or very loud, or both, to material that generates UHF content.  Most of use don't encounter loud triangle concertos up close  (I'm imagining some  'more cowbell' scenario here); and if you are routinely listening to content loud enough for this to matter, your high-end hear will degrade anyway (as it has for most of us who attended rock concerts regularly in our youths)

Your concern should  not be with the sample rate, it should be with the playback circuit architecture.  When the upper limit of the baseband is close to the limit of hearing, the output (anti-imaging) filtering tolerances become critical. An oversampling playback chain, common today, takes care of that.

Resampling down to 44.1KHz

Reply #40
Your concern should  not be with the sample rate, it should be with the playback circuit architecture.

krabapple, I was leaving that to last.

At this stage (by comparing the |4 and |1 samples), I am trying to establish whether digital filters exist that can be placed in a 96KHz digital path so as to reduce the response in the digital domain at 22050Hz to a negligible level, but not affect the perceived played back sound using a 96KHz rate DAC.

By keeping the playback at 96KHz I am removing one set of variables from the analysis; though it appears creating another complexity in the analysis; as per my next paragraph.

What I have not read up on, is how current sample rate converters handle the pre-filtering necessary to avoid aliases. They appear to sidestep (or postpone) the issue somewhat by oversampling in the first instance such that pre-filtering requirements would be much laxer.  But still as part of the processing, any part of the source signal that was in the zone just under 22050Hz must be strongly attennuated if not eliminated.  Is there reason to suppose that the postponed pre-filtering would be more effective at not disturbing source frequencies in the zone below 22050Hz, than the digital filtering used for upload |4, provided to us by KikeG?

I come to this forum with a dated general knowledge of electronics, and a curiousity to understand why 96/24 is being so strongly promoted if 44.1/24 (or even 44.1/16) are really quite adequate, even in extreme circumstances such as a cowbell concerto!

Resampling down to 44.1KHz

Reply #41
I think what he meant was there is no comparison data for Audition 3 on the SRC site.

Yes. (To all: sorry if my english isn't good enough.  )

Resampling down to 44.1KHz

Reply #42
krabapple, I was leaving that to last.

At this stage (by comparing the |4 and |1 samples), I am trying to establish whether digital filters exist that can be placed in a 96KHz digital path so as to reduce the response in the digital domain at 22050Hz to a negligible level, but not affect the perceived played back sound using a 96KHz rate DAC.

By keeping the playback at 96KHz I am removing one set of variables from the analysis; though it appears creating another complexity in the analysis; as per my next paragraph.

What I have not read up on, is how current sample rate converters handle the pre-filtering necessary to avoid aliases. They appear to sidestep (or postpone) the issue somewhat by oversampling in the first instance such that pre-filtering requirements would be much laxer.  But still as part of the processing, any part of the source signal that was in the zone just under 22050Hz must be strongly attennuated if not eliminated.  Is there reason to suppose that the postponed pre-filtering would be more effective at not disturbing source frequencies in the zone below 22050Hz, than the digital filtering used for upload |4, provided to us by KikeG?

I come to this forum with a dated general knowledge of electronics, and a curiousity to understand why 96/24 is being so strongly promoted if 44.1/24 (or even 44.1/16) are really quite adequate, even in extreme circumstances such as a cowbell concerto!

http://martel.ic.cz/bordel/filtering.gif
Applying a 21-22kHz lowpass filter on your original sample, you get this
http://martel.ic.cz/bordel/filtering2.gif
http://martel.ic.cz/bordel/triangle-2_2496...kHz-lowpass.wav
Inverting the filtered waveform and subtracting it from the original one, you get this
http://martel.ic.cz/bordel/filtering3.gif
http://martel.ic.cz/bordel/triangle-2_2496-difference.wav

If you can get the difference sample through your audio chain without aliasing artifacts introduced into audible spectrum, you may test if you actually hear above 21kHz. If you do not hear anything on the difference sample, then 44kHz is good enough for you and/or your equipment.

Resampling down to 44.1KHz

Reply #43
My results were:
  • Audigy 4 module: a click was audible [insufficient filtering around 48KHz to avoid aliases]
  • DAC of newer audio video receiver: click audible [insufficient filtering around 48KHz to avoid aliases]
  • DAC of old audio video receiver:  nothing audible unless volume above a particular setting (presumably non-linearity commenced in the amplifier at that point)
  • DAC of motherboard of HTPC: nothing audible, even when played through speakers at high volume
As my hearing extends only to 19.5KHz at best, it is not surprising I could not hear anything with this difference file, which commences at about 21KHz. If I did hear anyhing it had to be caused by aliasing or other distortion effects.

The reason I tried ABXing against KikeG's files |1 or |3 rather than the original unfiltered file, was that |1 and |3 had already filtered out frequencies near 48KHz, thus removing the complication of potential alisasing on playback.  The differences I heard would have been for other reasons such as phase changes within the audible part of the spectrum or, conceivably, intermodulation or other effects from the high amplitude high frequency audio, these types of effects being mentioned above by 2Bdecided.

But if nobody with extended high frequency hearing listens to some of these files, this thread may remain inconclusive.

Resampling down to 44.1KHz

Reply #44
My results were:

  • DAC of old audio video receiver:  nothing audible unless volume above a particular setting (presumably non-linearity commenced in the amplifier at that point)

As far as I know, static nonlinearity (found in amplifiers) spawns only higher harmonics (integral multiples of base frequency), not frequencies lower than the base one. Perhaps the device has poorly designed power supply and you hear some interference from power grid or air.

Resampling down to 44.1KHz

Reply #45
As far as I know, static nonlinearity (found in amplifiers) spawns only higher harmonics (integral multiples of base frequency), not frequencies lower than the base one. Perhaps the device has poorly designed power supply and you hear some interference from power grid or air.
There are lots of distortion mechanisms in an amplifier that can introduce lower frequencies from higher ones. These effects are generally smaller than harmonic distortion, but are still common. Intermod products, for one example, exist on both sides of the "carrier". Other nonlinear transfer functions (like the one sided exponential of a diode) also have this effect.

Resampling down to 44.1KHz

Reply #46
MLXXX, can you record this 'click' with, say, soundcard of your HTPC? It would be interesting to look at its spectrum.

Resampling down to 44.1KHz

Reply #47
As we do not appear to have any posters with extended high-frequency hearing, I created a simulation for myself.  I changed the sample rate of KikeG's |2 and |4 files to 88.2KHz.  Note there was no resampling: merely the header of the wave file was altered. [This can be done in cooledit when viewing a file: select edit > adjust sample rate.]

This meant that KikeG's file |4 instead of lowpassing up to a nominal 21KHz, lowpassed up to a nominal 91.875% of 21KHz, or 19294Hz.

Kike described the characteristics as follows:
[blockquote]The lowpass takes 2.5 KHz approx. For example, in case of the 21 KHz lowpass, it is -0.1 dB at 19950 Hz and -90 dB at 22600 Hz.[/blockquote]

In view of the reduction in playback speed to 88.2KHz, the lowpass would be 0.1dB down at 18330Hz and 90dB down at 20764Hz.

I was able to ABX KikeG's |2 and |4 (with difficulty), at this lower playback speed.  Seeing as how my upper limit of hearing is about 19.5KHz, this exercise might have been roughly equivalent to a person listening at original speed, whose upper limit of hearing was 21.25Khz  (19.5KHz x 96/88.2).

MLXXX, can you record this 'click' with, say, soundcard of your HTPC? It would be interesting to look at its spectrum.

I have looked into this a bit more and I've found the amplfier was being driven to clipping.  The spectrum is not all that interesting.  It's spread across the whole range 0 to 48KHz with peaks around 22KHz.  I made this recording with the Audigy 4 module both sending the difference file as 96KHz SPDIF to the AVR, and recording the audio output of the AVR appearing at the headphone socket:- [attachment now deleted to increase upload capacity]

Indeed, if I cannot find a high quality downsampling algorithm for converting the 96/24 recording to 44.1Khz, without introducing audible diminishment or artifacts as a result of the digital filtering settings, I cannot proceed further.


According to infinitewave, SSRC which is freely available as a plugin for Foobar2000 seems pretty much perfect to me. In most graphs it comes pretty close to the white 'ideal' line. I use it to convert 5.1 channel 24bit/96kHz DVD-A rips. Why not give it a try?


SoleBastard,
Sorry I overlooked your post until now.  SSRC indeed has an enviably steep cut-off.  However, I see that in the the infinitewave sweep graph for it,  there are some artifacts.

R8brain free is probably at the other extreme: wonderfully free of artifacts, but with a  mild rolloff (commencing at just over 18KHz).

This illustrates the tension in digital filtering between quantity (a wide passband bandwith) and quality (minimal spurious responses).

Resampling down to 44.1KHz

Reply #48
This illustrates the tension in digital filtering between quantity (a wide passband bandwith) and quality (minimal spurious responses).[/color]
In truth, it illustrates the nature of the universe we inhabit. You can only know the frequency perfectly with infinite time. You can only know the time perfectly with infinite frequency.

Limiting the time spreads the data in the frequency domain; limiting the frequency spreads the data in the time domain.


"Digital" or "analogue" has nothing to do with it. It's the uncertainty principle (well, not the uncertainty principle, but something like it).

Cheers,
David.

Resampling down to 44.1KHz

Reply #49
SoleBastard,
Sorry I overlooked your post until now.  SSRC indeed has an enviably steep cut-off.  However, I see that in the the infinitewave sweep graph for it,  there are some artifacts.

R8brain free is probably at the other extreme: wonderfully free of artifacts, but with a  mild rolloff (commencing at just over 18KHz).

This illustrates the tension in digital filtering between quantity (a wide passband bandwith) and quality (minimal spurious responses).

SSRC seems to do an excellent job at downsampling, the aliasing artifacts are at -120 to -130 dB which is perfectly suitable for 16-bit target depth. The stopband attenuation may be a little insufficient for 24-bit targets, however (read http://en.wikipedia.org/wiki/Sample_rate_conversion for explanation on the "higher than the quantization noise" required attenuation).
EDIT: Well, perhaps the stopband attenuation is also a variable in SSRC and if a 24-bit target was chosen, the algorithm would attenuate even more... Someone needs to check.