Something to provoke thought about the demands of audio processing

There has been so much written — on these forums and others — about processing power needed for digital audio. I’ve long suspected that this was culturally interpolated from all the science of audiovisual processing, which is vastly more computationally intensive (not to mention a superset of audio processing!)

Today I can hardly think of an available computing device that isn’t capable of all of the computational hoops required to convert a digital signal to analog. History will help us all see something: the initial CD players had only kilohertz processing power (of course!). These CD players were specialized, dedicated computing devices, of course.

Now, before you get out your popcorn…

For a long time now, when (no pun intended) processing discussions about audio processing power, I recall the following “demo” back from the days of the Commodore 64. It was the first time that I — or any of my friends — had ever heard a general-purpose computing device play back PCM audio. I was overjoyed today to find that someone had made a video of this (14 years ago!) for posterity:

This “demo” consumed all of the RAM available in the ’64. But — just listen to that! Sure, it doesn’t sound amazing to today’s ears, but: The Commodore 64 was an 8-bit 1 MHz machine with a 6510 processor; the 6581 “SID” chip sound processor ran at an undocumented speed but it was a trick described in Wikipedia that was used to produce the PCM:

Due to imperfect manufacturing technologies of the time and poor separation between the analog and digital parts of the chip, the 6581’s output (before the amplifier stage) was always slightly biased from the zero level. Each time the volume register was altered, an audible click was produced. By quickly adjusting the amplifier’s gain through the main 4-bit volume register, this bias could be modulated as PCM, resulting in a “virtual” fourth channel allowing 4-bit digital sample playback. The glitch was known and used from an early point on, first by Electronic Speech Systems to produce sampled speech in games such as Impossible Mission (1984, Epyx) and Ghostbusters (1984, Activision). The first instance of samples being used in actual musical compositions was by Martin Galway in Arkanoid (1987, Imagine), although he had copied the idea from an earlier drum synthesizer package called Digidrums. The length of sampled sound playback was limited first by memory and later technique. Kung Fu Fighting (1986), a popular early sample, has a playback length measured in seconds. c64mp3 (2010) and Cubase64 (2010) demonstrate playback lengths measured in minutes. Also, it was hugely CPU intensive - one had to output the samples very fast (in comparison to the speed of the 6510 CPU).

What we have today is multiple orders of magnitude more powerful.

I hope that this post can be useful to somebody, at some point, when having discussions related to this topic.

5 Likes

Oh, and the code is still available:

Gosh I love the Internet. Sometimes :wink:

2 Likes

Indeed, it’s good to pause once in a while and look at the big picture. Most computers today in any form factor are perfectly capable of processing audio with highest quality. The problem is “this love we have for useless twisting of our new technology”. We seem to always up the ante with ever increasing resolutions, which pushes the limits and maintains the desire to upgrade the hardware.

You mentioned audiovisual processing, which is - or should be - much more demanding. There are devices out there that can handle 1536 kHz PCM and DSD1024, and some people want Roon to support those resolutions. Stereo DSD1024 has a data rate of over 90Mpbs. That easily accommodates 4K@24p HDR H.265 video, i.e. HDR 4K BluRay movies, including lossless 48kHz/32bit 7.1 audio.

I hope that puts this even more into perspective.

2 Likes