VOGONS


First post, by silikone

User metadata
Rank Member
Rank
Member

What are some potential problems to watch out for when dealing with the choice between these two audio sampling rates? How does one make sure that software does not go through any unnecessary resampling on each sound card?

Do not refrain from refusing to stop hindering yourself from the opposite of watching nothing other than that which is by no means porn.

Reply 1 of 12, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

Forced resampling can be a problem to a greater or lesser extent (depending on the quality of the resampling algorithm). The best cards have either multiple crystals or a PLL capable of clocking the converters synchronous with the sampling rate. Decent cards use a resampling algorithm which introduces negligible artifacts in the audio data. SB Live cards (and Realtek ALC6xx chips) are not in either one of these groups.
http://www.mainly.me.uk/resampling/

My test case is always Duende by Delerium. Bad resampling is immediately apparent.

All hail the Great Capacitor Brand Finder

Reply 2 of 12, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
gdjacobs wrote:

Bad resampling is immediately apparent.

Generally speaking, I don't know that it is. The SB Live! has some notoriety for its resampling method, but if it's supposed to be some sort of litmus for "bad resampling," I don't find it to be a very good one.

Since I happen to own that Delerium CD, here's a completely digital capture of Duende, as resampled from 44.1kHz to 48kHz through an SB Live! model CT4760:

http://www.symphoniae.com/misc/duende_sb.wav

I'm not zeroing in on any meaningful differences through ABX testing against a rip of the CD track. Perhaps you can point out where the Live's supposedly inferior resampling method is immediately apparent.

Reply 3 of 12, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

Chears, Schatze! I'll do a test with my Live 5.1 using digital capture and we can compare notes.

All hail the Great Capacitor Brand Finder

Reply 5 of 12, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

No, I've been more pleased with the ALC882 chip on my mainboard. I specifically had this problem with the codec on my KT4V-L board, years back. IIRC, it was an ALC650 chipset.

All hail the Great Capacitor Brand Finder

Reply 6 of 12, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

I just pulled a digital feed from my SB0220 and have been quite pleased by the results. I have to agree with Cloudschatze that the hardware resampling method in the SB Live (at least the version I have) seems to be okay, although perhaps someone with a more discerning ear can tell the difference. I have another two AudioPCI cards that I might test to see how the earlier Creative PCI cards perform. I'm thinking I let my experience with earlier cards color my judgement, so my apologies Creative (although I still think the Live DOS drivers suck).

I've included the raw SB Live output (*_hwresample.flac) and a version which is first software resampled (*_rateconvert.flac) if anyone wants to pick at it with a PCM editor.

https://drive.google.com/file/d/0B5dmWIv5YEQz … iew?usp=sharing
https://drive.google.com/open?id=0B5dmWIv5YEQ … bWlYcWVtNmdWZjA

All hail the Great Capacitor Brand Finder

Reply 7 of 12, by Stretch

User metadata
Rank Member
Rank
Member

IIRC the artifacts are present if you have the sound card resampler set all the way to the left in the playback tab of the sound card control panel applet. I'll connect my computer with the SBLive SB0100 this weekend to see if I can reproduce the problem.

Win 11 - Intel i7-1360p - 32 GB - Intel Iris Xe - Sound BlasterX G5

Reply 8 of 12, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
Stretch wrote:

IIRC the artifacts are present if you have the sound card resampler set all the way to the left in the playback tab of the sound card control panel applet. I'll connect my computer with the SBLive SB0100 this weekend to see if I can reproduce the problem.

The slider I believe you're referring to relates to the software-based SRC method performed by Windows' KMixer. Artifacts related to its position would be similarly present with any soundcard or chipset, I would think.

Reply 9 of 12, by Tiido

User metadata
Rank l33t
Rank
l33t

Every since AC97 became a thing, most sound cards no longer have any hardware based support for 44KHz sample rates. Things rely on software (pretty much best option) or hardware (usually subpar) to do the resampling. There's also the question of what happens when multiple sound streams are playing, hardware usually can only play back one stream and even if there's support for more you get hardware based resampling from an arbitary rate to 48KHz for the final mix and result is often not that good.

Cards that can definitely do either natively have two crystals, one is typically 24.576000MHz for 6/12/24/48/96/192KHz and other is 16.934400/22.579200/33.868800MHz for 5.5/11/22/44/88/172KHz. PLL options also exist from what I have seen it isn't all that common and I don't have any hardware that uses such a method.
Some single crystal things can do 44KHz by utilising a divider that results in something near 44100Hz from 48KHz based clock but this has a huge drawback that there are no longer 256/384/512 cycles per sample and the oversampling filters in the DACs and ADCs really really really don't work properly anymore and you get excess artifacts still. There are some AC97 things that do it and I have seen it in HDAUDIO codec datasheets too. Rates being slightly off is not a problem, unless they're very off (several % rather than 0.0something%) you aren't gonna hear anything. PLL methods aren't going to give exact rates either but they will not have the problem of differing cycles per sample from the DAC/ADC.

The sound quality slider in Windows will not have any effect on hardware based resampling from my experience, only software mixing and does make a dramatic difference.

If you really want uncomditional best possible output from 48KHz based thing (AC97, vast majority of PCI(-E) sound cards and most/all USB sound cards) you'll use a nice media player such as XMplay and make it output 48KHz (or a multiple) on all formats unless you're absolutely sure the hardware has real support for 44KHz and driver isn't going to do any unnecessary resampling. For windows Vista+ you can choose what all sources get resampled to (in software) in the audio control panel and there end your troubles when you choose the native rate of the hardware. Hardware acceleration in games doesn't exist either anymore from what I know so you do get consistent results regardless of hardware if that setting is chosen right.
On my ESI Juli@ control panel you can see what clock the driver chooses in automatic mode and driver there resamples everything to 44KHz for all non standard rates. On my Yamaha DS2416 I can choose the internal sample rate which can vary from 40 to 50KHz, all sources are then treated at that rate with hardware based resampling which isn't the cleanest there is even though the card is a pro piece of great and my Yamaha SW1000XG is completely locked to 44KHz with no option to chance the rates. Hardware does resampling there too with WDM drivers and you get same sort of artifacts as most other hardware gives and result isn't all that great. With WDM drivers hardware mixing is no longer used and if sound quality slider is set to max in the control panel you get distortionless output. Creative cards (Live and newer) have given me pretty much same results though there seem to be excess artifacts on the spectrograms in ultrasonic range even if you feed 48KHz to them. Yamaha 71x cards (ISA) have support for 44 and 48KHz and the VXD driver chooses right one as needed and throws MMSYSTEM error on unsupported rates, windows sound quality slider has no effect there either. YMF7xx PCI cards don't have any 44KHz support whatsoever similar to Creative cards, resampler is not all that great either but there seem to be some workarounds with some driver versions that produce acceptable results.

For games you're out of luck, all older stuff is 44KHz based while newer stuff is 48KHz based and you'll not have any control over how their sound gets output for the most part. Cards supporting both 44 and 48 don't support things like EAX and A3D but games using those should also use 48 so there shouldn't be problems but I haven't looked at games in detail, only general sound/music stuff.

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 10 of 12, by Scali

User metadata
Rank l33t
Rank
l33t

What's funny is that older sound cards/chips were more flexible in sample rate.
For example, the Commodore Amiga's Paula chip uses a 16-bit divisor-counter on the base clock of 3.57 MHz. This is how it implements a crude form of wavetable synthesis: It can play samples at any rate up to 28 kHz by just setting the correct divisor.
The Sound Blaster does basically the same thing with its DSP: you set a divisor-counter in the DSP to set a sample rate between 2 kHz and 44.1 kHz.

This means that there is no resampling at all in the digital domain.
I suppose the reason for 'fixed' sample rates on modern hardware is that they can implement sample-rate specific optimizations such as oversampling and low-pass filtering.
The Amiga and Sound Blasters only had a fixed output filter. The SB16 had a more advanced output filter that adjusted to the chosen sample rate.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 11 of 12, by Tiido

User metadata
Rank l33t
Rank
l33t

Oversampling filters in the ADCs and DACs are the main reason for limited sample rates support, it just is whole lot cheaper to do things that way. You can use a non-oversampling measurement grade DAC where there's no limits, but those chips cost 10x more than audio DACs while not having 10x the performance and requiring lot more external components (tens of components even) to produce great result.

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 12 of 12, by silikone

User metadata
Rank Member
Rank
Member
Tiido wrote:

For games you're out of luck, all older stuff is 44KHz based while newer stuff is 48KHz based and you'll not have any control over how their sound gets output for the most part. Cards supporting both 44 and 48 don't support things like EAX and A3D but games using those should also use 48 so there shouldn't be problems but I haven't looked at games in detail, only general sound/music stuff.

Seeing as it was popular to store audio in divisions of 44KHz in the early days where EAX was prominent, it would appear that some resampling is unfortunately necessary.
Any clue on whether this occurs in software or hardware when dealing with 3D sound APIs?

Do not refrain from refusing to stop hindering yourself from the opposite of watching nothing other than that which is by no means porn.