Support Head-Fi.org by
starting all of your
Amazon.com shopping by
clicking here.
____________________________________________________________________
Today's Featured Head-Fi Blog: Jude's Blog
____________________________________________________________________
Please help
support Head-Fi by becoming a Contributing Member
CLICK
HERE -- Contributing Members, thank you
for your generous support! --
I don't think that's the case. Maybe I misunderstand what you exactly mean but as far as I understand audio everything regarding frequencies is about sine waves. If you filter frequencies digitally you have to do it in the frequency domain, where everything is represented as sine waves. And even if your digital sample has a perfect square wave in it, your speakers or headphones would not play it as that, because it's impossible for the diaphragm to move in zero time from one position to another.
I may have found a flaw in your assumptions about the linear filtering. Compare it to an image resampler. If you have an image with a square or rectangle in it, you will preserve its sharp edges best with a nearest neighbor filtering algorithm. Therefore you might think that it produces the best quality because a bilinear or bicubic filter produces blurry edges. But take a different shape like a circle or a triangle and you will see distortions that don't occur with more sophisticated filters. So, unless your music only consists of square waves a linear filter will give you the worst overall results.
Yes, theoretically all periodic waves can be represented as sine waves. That doesn't mean everything can be represented by sine waves with a frequency less than 22050Hz.
The square wave can only be represented perfectly with an infinite number of sine waves. 44.1Khz simply does not have anywhere near enough resolution to represent a square wave at any frequency accurately. However, using a NOS DAC (or upsampling to 192Khz using linear filtering), you can get excellent square wave response. While a headphone diaphragm can't move instantly, good ones can move very fast - fast enough that the "blurring" around the edges created by Sinc and similar upsampling algorithms is audible.
Again - I realise and admit that it measures poorly - but I'll be damned if it doesn't sound great to me (except the treble sounds harsh...)
So yes, enough masticating the fat, back to finding a linear resampler, hmm?
__________________
They gave me his photo, threw me in a pizza oven, called it a "pod", and told me to wing it
Why is square wave response so important to you? I just did some tests as mentioned before. Your are right that a linear resampler will give you upsampled square waves that are as sharp as the original ones whereas other resamplers like SSRC or PPHS (or SRC "best sinc") will produce sine waves that only mimic the former square form. But then I did the test with a sine sweep and noticed heavy artifacts in the whole frequency spectrum.
Now I ask you what's more important: Having perfectly sharp square waves or not having artifacts all over? Also take into consideration that no normal music will have these perfect square waves. Only a digital synthesizer can produce these and the record will only retain them in their perfect state if the signal remains digital during the whole mastering process and if no filters are applied to it. Furthermore I'm pretty sure that professional music isn't produced in 44.1 kHz but in higher rates like 96 kHz or even 192 kHz. So at least at the very end of the production a resampler will be used, and guess what, I don't think it's a linear one. So the chance that you have perfect square waves in your material is near zero.
Hancoque, what artifacts are you talking about, and what upsampling rate did you use?
Seidhepriest, I appreciate the response. The bit depth in the "Output" menu is set to 16bit. My card is capable of 192Khz/24bit but Foobar doesn't seem to work in 24/32bit mode (works fine in Winamp).
I've tried DS, KS and ASIO, all with the same problem. I wish I had 24bit FLACs to test. I'm thinking of just writing the plugin myself but it's possible that the bug is in Secret Rabbit Code itself. I don't know :/
__________________
They gave me his photo, threw me in a pizza oven, called it a "pod", and told me to wing it
Well you could try manually upsampling FLACs to 192/16, then attempting to play... A wild-poke guess is F2000's upsampled internal data stream from FLAC resampled overflows the poor app (or the plugin, specifically... it could be timed, maybe a 100+-msec. output latency could fix something...).
Have you tried 24-bit playback without the resampling plugin, just with KS (or some other...) set to 96/24?
Which does bring certain questions... Might depend on the FLAC assembly (custom builds?), but does FLAC even support 192 KHz? Here it rejected 32-bit waves, accepted only 24-bit. As for 192 KHz... Eh... Well... There goes the non-linear resample in a wave editor...
On the subject of linear resampling for Winamp... there doesn't seem to be a dedicated DSP plugin for that, however there was a Directx plugin adapter, Adaptx. Now if there's some kind of a dedicated linear resampler (maybe even with the default set of transformers supplied with Directx itself), it could be hooked to Adaptx.