In software, a multimedia codec is a type of file that is encoded in a specific format and requires specific interpretation to obtain the information stored inside. A hardware codec performs precisely this task, but in such a way that it is not necessary to use a processor running a program for it. Among these codecs are audio codecs, hidden in part of our PCs as another piece of hardware.
The evolution of hardware audio on PC
As with graphics hardware, that dedicated to audio or sound has also evolved over time. The idea has always been to achieve the highest fidelity of sound on PC, but the initial hardware was limited in two aspects. On the one hand, the computing power of the processors and, on the other hand, the precision of the data. Which is still the same as with graphics hardware, but at some point in terms of audio there was a break with traditional development.
As we know, while GPUs have evolved into very complex processors, audio has on the contrary become more and more integrated, to the point of disappearing completely within the other components. The motive behind this? It’s simple to explain, while the graphics have a noticeable improvement even among the most advanced games. Audio, on the other hand, is good enough for the vast majority.
The reason audio has gotten pretty good, even without the evolution GPUs have gone through, is the concept of mathematical approximation. An approximation is a representation which, although not exact, is considered useful because of its fidelity to the reality it represents. So, as soon as the audio became a true approximation, that’s when the evolutionary step ceased to be in order to achieve the highest fidelity possible.
The emergence of audio and video compression formats
The most famous audio format in history is MP3, an acronym derived from MPEG-1 Layer 3, which is the audio part of the video codec used for VideoCD, known as MPEG. Which was created with the aim of creating a format with which to transmit music over the phone line, at a time when the Internet was a name that very few people knew, since we are talking about the early 90s.
Eventually, MP3 was developed, an audio format that had a compression rate 10 times higher than conventional audio CDs. Which means ten times more audio could be stored. To compress sound, the limits of the human ear were used to achieve a format that was a close approximation, that required less data to function as a basis. But the other half of the equation was to decode the format. Despite the fact that the MP3 format dates from the early 90s, even a PC from the same era had problems reproducing the format, and it was necessary to create special chips capable of decoding files in this format.
The need for hardware audio codecs
The MP3 format not only made portable music players appear where it was no longer necessary to carry discs with us, it also made it possible to distribute it via the network and therefore the telephone line. But it also created a need for PC hardware, which was nothing other than the integration of encoding and decoding mechanisms for the different compression formats that appeared on the commercial circuit.
The network of networks was filled with music files distributed in P2P networks which had to be encoded in this format, the CPUs of the time began to carry SIMD units inside which made this type of task faster. But the emergence of DVD as a video and data format not only made it possible to watch movies on PC, but audio and video codecs were implemented to decode them. An evolution and a need which brought with it the installation of audio codecs to decode these files as quickly as possible.
What is an audio codec and how does it work?
Once the introduction is over, you have to get to the heart of the matter, for that you have to understand that the word codec is a shortening of the term encoding-decoding. It is a processor which from an input data stream, which is encoded, generates another from the execution of certain rules that it follows to decode this data. Said rules can be written in the form of a program in an internal memory of the processor or be micro-wired. So the differences between an audio codec and an out-of-format video codec that they process are non-existent, after all, a data stream is nothing more than an accumulation of bits to process.
So what’s the difference? Well, it’s in how that data becomes something tangible for the user. Video codecs must be transmitted via a video signal and from there to a display. In contrast, in a video codec, the generated file will be transmitted to audio output. Of course, there are GPUs that use their IT pipeline to decode and generate audio. This they do thanks to the fact that the HDMI output carries both audio and video signals.
Audio codecs were designed to save space so that they could transmit data over very slow communication interfaces, but once space and network speed were no longer an issue, their design evolved into a different direction. The possibility of encoding audio systems in 3D or in positional audio, to be able to use multi-speaker systems in multimedia content. Which would require some of the processor power to do so.
Where are the hardware audio codecs today?
It depends, you have to take into account that today the power of processors is so great compared to what it was not so long ago, that many functions that previously depended on dedicated hardware are again returned to the processor. Precisely, the audio codec is usually found on audio cards, being a small chip on the motherboard or inside some other component. But because it’s a part that isn’t often considered anymore, the inclusion of hardware audio codecs is found in high-end hardware.
It is possible that your PC’s CPU itself is handling the audio of your favorite game or series and you may not be aware of it. After all, only a portion of a processor power is needed to decode audio. However, this does not mean that it does not affect the overall performance of the system. But given the tendency to record the audio codec in many PCs, most applications today tend to ignore them and are designed to be able to use the user’s CPU exclusively.
Nowadays, hardware audio codecs are so integrated and miniaturized that we can find them in high-end speakers and headphones, performing positional audio interpretation functions in combination with user motion sensors or of the speaker itself according to their orientation.
Table of Contents