An Anonymous Coward writes:
MP3 decoding was already free and got recently included in Fedora. But now, encoding is also free according to Fraunhofer Institute for Integrated Circuits IIS: "On April 23, 2017, Technicolor's mp3 licensing program for certain mp3 related patents and software of Technicolor and Fraunhofer IIS has been terminated." The Wikipedia MP3 article confirms that.
So, do you still use an MP3 library or have you switched to another format or means of listening to music such as (spying built-in) streaming services?
You're still missing the fact that no one uses any such devices in 2017. You're talking about ancient circa-2000 MP3 players that use such hardware. No one cares about non-MMU micros any more. No one uses those to play MP3s. There are no devices on sale now like this which have any significant sales volume.
I agree that a general purpose CPU with MMU is useful or even beneficial for playing audio from one or more compressed formats. I also agree that alternatives don't have significant sales volume. However, some of the audiophile equipment currently available is instructive. For example, 7.1 surround sound digital speakers would benefit from the barest and most timing-accurate CPU. This gets particularly important if 22.2 surround sound or Sennheiser's 25 speaker arrangement are considered. This isn't mainstream at present but current assumptions could limit wider adoption.
I'm sorry, I still don't see what you're getting at. No one is going to go back to MP3 decoder ASICs when you can get general-purpose CPUs for so little money that have no trouble running a software decoder. And audiophile stuff is really irrelevant to the larger music market; if it weren't, the Apple store wouldn't exist and no one would be buying 320k MP3s online. Instead, everyone is now either buying MP3s, Apple music, or using a streaming service which is even worse quality than those two. CD sales have gotten rather poor in the face of these newer alternatives.
Digital speakers don't need a lossy codec decoder at all; that's just a good way to introduce more latency into the system, which with a multi-speaker setup is going to sound audibly bad. It'd make much more sense to do the decoding and signal processing in a single unit, then send the decoded audio data (as PCM) to each speaker separately along with a timing signal so all the speakers can be synchronized.
I'm envisioning a semi-hypothetical system which is base on Meridian Audio's digital speakers. Each speaker recieves a serial stream and contains its own amplifier(s). The traditional hi-fi selector/amplifier unit is relegated to a selector/sampler/transcoder/expander/reverb for eight or more speakers. It would be convenient if the intermediate format to the speakers was sigma-delta format rather than PCM because this would provide the best dynamic range for analog sources, such as vinyl records, cassette tape and radio. Sigma-delta format is hugely verbose and uncompressible when used as a music storage format. (See Super Audio Compact Disc.) However, it works very well between "amp" and speakers. Within each speaker, the process is to decode received bits sequentially where zero means decrement by one voltage level and one means increment by one voltage level. This incurs the obvious problem that there is a maximum gradient which can be encoded accurately but this is functionally equivalent to the maximum swing voltage of operational amplifiers or suchlike.
The speaker requires minimal processing power to maintain a running total. The most advanced part of the speaker is dropping the running total into a one bit DAC which is likely to operate above 1GHz and may utilize Chinese Remainder Theorem to count accurately at this speed.
You are correct to be concerned about phasing. When this was first described to me by one of Meridian's engineers, I was concerned that crystals being out of phase would lead to soundstage rotation. This is true but rotation is extremely small and therefore completely inperceptible. Headphones are an entirely different matter and that discussion led to a job offer.
So what does all this have to do with whether it's viable to encode your music library with something other than MP3?
Your position was that the majority of compressed audio is decoded using a CPU with an MMU. I concur. However, if maximum quality is desired and the number of audio channels is large (5.1 surround, 7.1 surround, 22.2 surround) then the use of CPUs without MMU becomes increasingly cost effective.