VOGONS


A List of DOS Games with 16-Bit Sound

Topic actions

Reply 40 of 71, by tpowell.ca

User metadata
Rank Member
Rank
Member
Cloudschatze wrote:
One of the misconceptions I'd tried to address with this thread is the notion that only 16-bit samples benefit from 16-bit playb […]
Show full quote

One of the misconceptions I'd tried to address with this thread is the notion that only 16-bit samples benefit from 16-bit playback. As mentioned early on, it is fairly common for mid/late-90's audio engines to mix several 8-bit mono @ 11kHz (or greater) samples into a stereo stream, while also providing software effects like reverb or spatialization.

Using an example of straight mixing/playback of eight 8-bit samples, theory suggests that if there isn't at least 11-bit mixing resolution, with corresponding 11-bit output, there is a necessary loss of information and subsequent increase in noise. In this example, 16-bit mixing and output is more-than-adequate for full-resolution playback, while 8-bit routines are not.

In other words, and concerning the summation of multiple 8-bit samples, irrespective of frequency:

8-bit mixing, 8-bit output = loss of resolution (Worst)
16-bit mixing, 8-bit output = loss of resolution (Better)
16-bit mixing, 16-bit output = theoretically lossless (Best)

With this in mind, I'm of the (perhaps incorrect) opinion that knowing the rates and bit-depths of individual samples is of lesser importance than knowing the mixing and final output rate and depth.

You're absolutely right.
To maintain quality, it is crucial to mix at a higher bit-depth than the source and output when mixing multiple sources.
Even with 16bit, you should mix at 24+bits if you want to keep the noise floor and dynamics while mixing 16bit material.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 41 of 71, by Scali

User metadata
Rank l33t
Rank
l33t
Cloudschatze wrote:

With this in mind, I'm of the (perhaps incorrect) opinion that knowing the rates and bit-depths of individual samples is of lesser importance than knowing the mixing and final output rate and depth.

I suppose it depends on the exact application.
With a game like DOOM, afaik all sound effects are played at only a single pitch. This would mean that mixing is trivial: all samples can be the sample rate, and be matched to the output rate.
As long as you are only mixing a few channels, mixing can be as simple as adding the samples together. In which case you'll want an accumulator that is large enough to avoid overflow, and then adjust the result to the range of the output depth by dividing with the appropriate constant factor.

With many channels, this linear approach isn't going to work well. If only a single channel is playing, and it is divided by a constant, it will result in very soft audio. Basically the dynamic range of the internal accumulator is too large. So you'll want a more advanced approach, some kind of logarithmic volume curve, acting as a form of compression of dynamic range, to get a more natural response from few to many channels playing at the same time.

When you have different sample rates and samples need to be resampled before mixing, such as with tracker music, then there are more factors that can affect quality.
The resampling problem can be solved with a variety of interpolating/smoothing algorithms of different CPU load and quality. Resampling should also be done at a higher bitdepth than the source data, for best results.

In most cases, 8-bit is enough depth for individual samples. Sample rate depends on the frequency components of the sample, getting us back to Nyquist. Bass samples do not need to have very high sample rates, especially with good interpolation during resampling.
The key for the musician is to optimize the samples for size.

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

Reply 42 of 71, by leileilol

User metadata
Rank l33t++
Rank
l33t++
Scali wrote:
DracoNihil wrote:

I've seen quite a few tracked songs that wont even fit on a 1MB GUS to top it all off...

All the more reason to use a GUS!
Tracking is all about optimizing music.

Indeed it is. I think my faithfulish game transcriptions to .mod only ever exceeded 100kb in size thrice. All of them should be playable on an AWE value through Cubic....

apsosig.png
long live PCem

Reply 43 of 71, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Cloudschatze wrote:

16-bit mixing, 16-bit output = theoretically lossless (Best)

As with the 8 bit -> 8 bit example, this will probably require quantization or higher bit rates to avoid clipping while mixing, so there is potential for the loss of sample information. Digital mixing pipelines run at a higher bit rate (24 bit is common) or even use floating point representation (but not significantly higher sample rate) to minimize this loss and only output lower bit rates when completing mastering.

Cloudschatze is an audio guy, so I'm chuffed that I caught this. 😎 In turn, he'll probably find 10 mistakes in what I wrote.

All hail the Great Capacitor Brand Finder

Reply 44 of 71, by Scali

User metadata
Rank l33t
Rank
l33t
gdjacobs wrote:
Cloudschatze wrote:

16-bit mixing, 16-bit output = theoretically lossless (Best)

As with the 8 bit -> 8 bit example, this will probably require quantization or higher bit rates to avoid clipping while mixing, so there is potential for the loss of sample information. Digital mixing pipelines run at a higher bit rate (24 bit is common) or even use floating point representation (but not significantly higher sample rate) to minimize this loss and only output lower bit rates when completing mastering.

Cloudschatze is an audio guy, so I'm chuffed that I caught this. 😎 In turn, he'll probably find 10 mistakes in what I wrote.

I think he is actually correct though. He is talking about using 8-bit samples.
And if you use 8-bit samples, you can accumulate 256 of them before they start to clip (worst-case, all samples maximum amplitude) in a 16-bit mixing routine.
I don't think any game or tracker ever used anywhere near 256 channels.

If you were using 16-bit samples, then yes, you are right, the accumulator needs to be larger.

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

Reply 45 of 71, by krcroft

User metadata
Rank Oldbie
Rank
Oldbie

Based on the work put into this table, is it possible to prescribe (or derive) best-in-game-settings to achieve the highest retention of audio fidelity from the game through to the sound device?

Reply 46 of 71, by tpowell.ca

User metadata
Rank Member
Rank
Member
krcroft wrote:

Based on the work put into this table, is it possible to prescribe (or derive) best-in-game-settings to achieve the highest retention of audio fidelity from the game through to the sound device?

Easy. The card that outputs with the highest bit depth and sampling rate possible. As for the game itself, you have no control over what methods are used for internal mixing unfortunately.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 47 of 71, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Scali wrote:
I think he is actually correct though. He is talking about using 8-bit samples. And if you use 8-bit samples, you can accumulate […]
Show full quote
gdjacobs wrote:
Cloudschatze wrote:

16-bit mixing, 16-bit output = theoretically lossless (Best)

As with the 8 bit -> 8 bit example, this will probably require quantization or higher bit rates to avoid clipping while mixing, so there is potential for the loss of sample information. Digital mixing pipelines run at a higher bit rate (24 bit is common) or even use floating point representation (but not significantly higher sample rate) to minimize this loss and only output lower bit rates when completing mastering.

Cloudschatze is an audio guy, so I'm chuffed that I caught this. 😎 In turn, he'll probably find 10 mistakes in what I wrote.

I think he is actually correct though. He is talking about using 8-bit samples.
And if you use 8-bit samples, you can accumulate 256 of them before they start to clip (worst-case, all samples maximum amplitude) in a 16-bit mixing routine.
I don't think any game or tracker ever used anywhere near 256 channels.

If you were using 16-bit samples, then yes, you are right, the accumulator needs to be larger.

Alrighty, this can be in addition. Pertaining to this issue, I was actually wondering how Crusader: No Regret handles mixing

All hail the Great Capacitor Brand Finder

Reply 48 of 71, by krcroft

User metadata
Rank Oldbie
Rank
Oldbie
tpowell.ca wrote:
krcroft wrote:

Based on the work put into this table, is it possible to prescribe (or derive) best-in-game-settings to achieve the highest retention of audio fidelity from the game through to the sound device?

Easy. The card that outputs with the highest bit depth and sampling rate possible. As for the game itself, you have no control over what methods are used for internal mixing unfortunately.

I suppose the equivalent in dosbox is always emulating with latest generation of Sound Blaster or GUS, considering game compatibility and nuances, and always mixing at ~49kHz.

But what about those games that do provide control over their internal mixing details, such as 22kHz vs 44kHz or stereo vs mono. Is the larger value always the best choice regardless of the game? (assuming sufficient CPU cycles are available).

Reply 49 of 71, by tpowell.ca

User metadata
Rank Member
Rank
Member

To answer your last paragraph, it depends.
Ideally you want an integer multiple of the source sampling rate.
So, if your source was 22kHz (22050), you'd want 44.1kHz rather than 48kHz to minimize aliasing.
This was a major issue with the first PCI soundcard that used 48kHz internally.
This caused problems when used with material at the typical 44100Hz such as CDs.

That said, once you hit 96kHz processing/output, the problem is dramatically reduced.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 50 of 71, by aquishix

User metadata
Rank Member
Rank
Member
tpowell.ca wrote:

To answer your last paragraph, it depends.
Ideally you want an integer multiple of the source sampling rate.
So, if your source was 22kHz (22050), you'd want 44.1kHz rather than 48kHz to minimize aliasing.

!!!

I have been assuming that this was the case for DECADES, and only just now seen anyone concur.

God, I love VOGONS.

Reply 51 of 71, by swaaye

User metadata
Rank l33t++
Rank
l33t++
gdjacobs wrote:

Alrighty, this can be in addition. Pertaining to this issue, I was actually wondering how Crusader: No Regret handles mixing

I don't think anyone mentioned it but those games have a config file with adjustable mixing rate.

Reply 52 of 71, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
tpowell.ca wrote:

This was a major issue with the first PCI soundcard that used 48kHz internally.
This caused problems when used with material at the typical 44100Hz such as CDs.

The issue you're referring to is related to asynchronous sample rate conversion, resulting in purported "intermodulation distortion." I find it to be much ado about nothing. There's a resampling example in this thread, if you're interested in trying to find audible differences:
44.1 KHz VS 48 KHz

swaaye wrote:

I don't think anyone mentioned it but those games have a config file with adjustable mixing rate.

I'd alluded to this in the initial post, but yes, the "mixrate" parameter in CRUSADER.CFG is user-adjustable. Another parameter affecting sound is "filter." With No Remorse, this can be toggled in-game, but with No Regret, it has to be set via the configuration file. There's some subjectivity involved, but I have it set to "false."

It's also worth mentioning that No Regret lacks the surround/spatialization effect provided by the earlier Asylum engine used in No Remorse. The removal of this feature seems to help from a CPU perspective, but where I find the effect to be pretty worthwhile with my setup, the omission means that the No Remorse tracks, when played in No Regret, are lacking. Also, starting No Remorse with the "-asylum" flag seems to widen the spatialization effect, for whatever that's worth.

Reply 53 of 71, by tpowell.ca

User metadata
Rank Member
Rank
Member
Cloudschatze wrote:
tpowell.ca wrote:

This was a major issue with the first PCI soundcard that used 48kHz internally.
This caused problems when used with material at the typical 44100Hz such as CDs.

The issue you're referring to is related to asynchronous sample rate conversion, resulting in purported "intermodulation distortion." I find it to be much ado about nothing. There's a resampling example in this thread, if you're interested in trying to find audible differences:
44.1 KHz VS 48 KHz

What is the point in a purely digital path if due to undefeatable internal hardware algorithms, the data is altered unnecessarely.
And in the process of reasmpling some frequencies are attenuated while others are introduced in the form of IMD as you stated.

It may be audibly transparent to most, but knowing that this can be entirely avoided using a different soundrcard, or later model of SoundBlaster, why bother?

See the following:
cl_retro_08.JPG
http://washington-mnemonic.com/reviews/cl_retro_review.html

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 54 of 71, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
tpowell.ca wrote:

It may be audibly transparent to most, but knowing that this can be entirely avoided using a different soundrcard, or later model of SoundBlaster, why bother?

From a modern-day perspective, certainly better options abound, but looking at this from a 1998-1999 viewpoint, the angst leveled at Creative/E-mu over an inaudible red herring was over-the-top ridiculous. You had folks expecting/demanding the ability to make bit-perfect digital copies of CDs and MiniDiscs from a cheap, consumer-grade gaming card. Absolutely insane.

Yep, and the reviewer concludes with, "This "problem", while present on the graphs, didn't seem to make a difference to my ears when listening to music." 😀

Reply 55 of 71, by tpowell.ca

User metadata
Rank Member
Rank
Member

I'd be curious to see if something like a pure sine or triangular wave at higher frequencies could make this IMD audible.
I agree though, that the human ear would most likely not pick up any of this listening to music or even less while playing games.

Also, ignoring that problem, I too used a Live card a long time ago and loved it. It worked VERY well (in Windows 9x and 2k) and played nice with all the games of the day.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 56 of 71, by dizzydevil

User metadata
Rank Newbie
Rank
Newbie

Hi all, where is The Need for Speed Road & Track and The Need for Speed Special Edition with 16-bit sound?
Or 16-bit sound in the menu is a fake?

Reply 57 of 71, by auron

User metadata
Rank Oldbie
Rank
Oldbie

there's been a few topics on this here, but still it should be noted that duke3d (and probably other apogee sound system games) have serious stuttering issues on creative cards when sound effects with >11 khz and MIDI are used on the same card. i forgot if 8/16-bit mixing makes any difference though.

Re: Duke Nukem 3D - General Midi Problem.

Reply 58 of 71, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
dizzydevil wrote:

Hi all, where is The Need for Speed Road & Track and The Need for Speed Special Edition with 16-bit sound?

These are not titles that I'd tested. You are welcome to add them to the shared document in the original post, or I can test and add them later.

auron wrote:

there's been a few topics on this here, but still it should be noted that duke3d (and probably other apogee sound system games) have serious stuttering issues on creative cards when sound effects with >11 khz and MIDI are used on the same card.

This behavior is the result of the shared MCU architecture of the SB16 and variants, whereby "DSP" operations relating to PCM playback affect the readiness of the MPU. The resulting conflict commonly manifests as gameplay slowdown, and higher-bit/rate PCM playback exacerbates this behavior, as applies to Duke Nukem 3D.

One workaround is to play affected games from Windows, where software-based, circular buffering is employed for MIDI playback. Another option is to install and use a secondary card (another SB16 even) for dedicated MIDI playback.

Reply 59 of 71, by BinaryDemon

User metadata
Rank Oldbie
Rank
Oldbie

I'm not an audiophile at all, and only have a basic understanding of the terminology being used here but I'm confused with your obsession with 16bits. Like I see the spreadsheet contains a lot of 16bit 11hz mono games - for example wouldnt 8bit 22hz stereo be a preferable experience?

Check out DOSBox Distro:

https://sites.google.com/site/dosboxdistro/ [*]

a lightweight Linux distro (tinycore) which boots off a usb flash drive and goes straight to DOSBox.

Make your dos retrogaming experience portable!