As other commenters have pointed out, this is a C64 controlling an MP3 player.
People old enough to remember the late 1990s / early 2000s might recall that back then it was popular, too, to hook up an external MP3 decoder, e.g., to the parallel port; so that the PC's CPU would not be at 100% just for playing MP3 music.
Wait, was that popular? Now, I was mostly into the C64 and later Atari ST, with some insight into other platforms, but I don't think I've ever heard about an external MP3 decoder. On what's platform was this available?
The closest I can think of is the external clock chip for the Atari Falcon that allowed you to decode 44.1 kHz MP2.
I think mp3 playback requires a reasonably fast multiply instruction, and the original 68000's 70 cycles per mul @ 7MHz, or 100000 muls per second doesn't qualify.
Given the likely output quality you'd probably choose something like 32Kbps encoding for the mp3, which should fit 3 mins in 720KB. (Not sure how it'd affect CPU requirements?)
But that machine cannot decompress that at real time. The comment I replied to said that would be solvable by adding a few minutes of buffering, but that requires a buffer to hold uncompressed audio.
I think a stock Atari Falcon is capable of playing mp3 thanks to the DSP (56001), but it still isn't a walk in the park even with that (in combination with a 68030 as the main CPU).
It took many years until MP3 decoding on a stock Falcon was possible. While the machine was generally available, there was no MP3 implementation, and the belief was that it was impossible.
The C64 didn't have any kind of PCM output, so it basically has to be. Early SID chips had a voltage glitch you could use for 1-bit ("speaker-style") output, and a few games used it for some effects. But you couldn't get music out of it in any real sense.
Four-bit (the amplitude of the "click" caused by the SID's voltage leak is proportional to the volume, which is four-bit). There are many demos that used it for digitized music, and Rob Hubbard's Skate or Die! intro tune used it as a practical fourth voice. See also the original Covox Voice Master.
Interesting. My Amiga with a 68030 @42Mhz could just about pull off mono 128Kbps decoding (as long as you didn't multitask too much). That would suggest the 486 was almost clock comparable to a 68030 at least for lossy decompression, perhaps the 486 was around ~110% had their been a 68030 series 80Mhz equivalent.
Yeah, I seem to remember there was that brief time period where my PC could barely play MP3s and I used to treat them like zip archives -- rendering them back out to WAV files to play them back.
I think you're right and that was around the 486 DX2, DX4, Pentium transitional time period.
I wonder if that was also an I/O limitation rather than just a CPU thing. Old floppies probably would not handle 128kbit. Hard drives were slow too, so was memory and bus.
I remember I could play 128kbit MP3s in full quality using mpg123 running under Windows for Workgroups 3.11 ONLY when I overclocked my 486DX4-100 to 120Mhz.
Doubtful. Back in the day when my 'work computer' was a Pentium (Pentium 200MMX to be exact) playing a MP3 consumed 50% CPU. Note, I no longer remember if mpg123 was using MMX instructions or not.
Given how much faster a Pentium 200MMX was than any 386 CPU, I very much doubt a 386 (even a DX) would have had enough power to decode in real time a MP3.
Found this (cubic player on a 386DX at 40MHz) https://www.youtube.com/watch?v=6Jj97NXgHw4 and I'm wondering how much a 32bit ISA is better than a 16bit one for integer decoding.
People old enough to remember the late 1990s / early 2000s might recall that back then it was popular, too, to hook up an external MP3 decoder, e.g., to the parallel port; so that the PC's CPU would not be at 100% just for playing MP3 music.