Note about this article
A pdf version of this text, which includes detailed sources is available here [PDF 153.9KiB]
Delving into the world audio reproduction brings up an age old inclination towards obsessive, placebo fueled fantasies, but nonetheless occasional theoretical truths.
As I find headphones very suitable and sometimes preferable over speakers in their ability to direct focus due to an acute, binaural sound localization and noise dampening, I have been in need of a solution which allows for simultaneous headphone listeners of the same source, since the dawn of my understanding of technology and interest in film and music.
The obvious quick fix, a seemingly simple way to resolve this need, as one quickly discovers, is simply using an arrangement of 3.5mm Y-shaped audio splitters. However there are severe drawbacks to this approach, especially when paired directly with motherboard audio. Even with the inclusion of a powerful amplifier, the increased resistance of the cables becomes a problem.
The solution is mostly digital in nature. By design, having to provide for various analog outputs, the more resistance-driven staging is applied, the larger cutoff of the original signal occurs. By ensuring a digital, practically, more on that later, lossless data communication, for the majority of one's system, the end analog output impedance can be strongly minimized as an effect.
Sound, oscillating frequencies, traveling through an electrical circuit in the form of voltage fluctuations, for conversion into vibration in an effort to move atmosphere, to an analog measure, is in fact the essential method in every audio playback mechanism that reproduces sounds for human hearing. To that end, analog sound reproduction is always subject to interference and electrical resistance.
When examining a system which makes use of motherboard analog audio, in order to split up this connection into multiple pairs of headphones, there are several stages of possible quality degradation.
Firstly, while most current motherboards offer a relatively low output impedance of around 2 Ω, maintaining a large portion of the frequency range, they almost certainly aren't supplied with sufficient amplification for a desirable playback volume. This, coupled with the fact, that splitting this signal via formerly mentioned 3.5mm splitters, will only increase it's output impedance, reducing the overall sound quality and volume for each of it's participants, by the increased resistance in the added cable and the addition of multiple headphones. It is worth mentioning that the quality of cables and splitters used, which come designed on differing levels of insulation and with varying conductive materials utilized, effects it's resistance, and thus has a consequence on the observable sound quality.
However this effect is usually minimal, in comparison to the larger order detractors, mainly the lack of a powerful amplifier, and the high use of analog for connectivity in this scenario.
Another reason for eliminating analog from the equation as much as possible, is the removal of the possibility for the development of a psychological neurosis for perfecting a low output impedance, in an effort to improve audio fidelity. There are much more effective methods, namely using as little analog as possible.
The DACs deployed in most modern motherboards, usually boast quite impressive sound quality, and often even support sample rates upwards of 48kHz, allowing for limited studio production. However due to the constraints of electromagnetic-distortion caused inside of the PC enclosure, and the lack of a dedicated or powerful amplifier, many audio enthusiasts, opt for an external solution. When looking at modern digital audio, there are predominantly two interfaces in use today: USB and S/PDIF, which comes in both a copper coaxial or fiber optic cable variation.
Independent USB powered audio equipment has the great benefit of being isolated from the electromagnetically noisy environment found in the internals of a PC enclosure, where the traditional DAC/AMP constituting motherboard audio resides. This ensures that the digitally converted analog signal is amplified most quietly and, due to it's small size and materials used, is conducted with an extraordinarily low output impedance.
Nonetheless there are a few difficulties when attempting to use multiple external USB devices for simultaneous output, namely regarding individual differentiating latency and software problems.
In software one will soon discover the frustration of simultaneously using multiple audio outputs.
As of Windows 10, independent, proprietary software is required to make this work. Once this software is acquired, the setup is not entirely straightforward.
On GNU/Linux systems, which make use of the JACK or pulseaudio audio subsystems respectively, the situation is different, but also requires some attention. Through some minor tweaking, on Ubuntu Linux, one can quite easily setup a virtual audio device for pulseaudio, which allows output to all enabled sound devices simultaneously.
Once configured one might encounter a serious problem which presents itself in varying, sporadic urgency depending on the session: The individual USB devices will output at slightly different times, with an apparent delay of above 10-20ms, allowing the human brain to pick it up.
This latency is likely the result of too large de-jitter buffers, which vary from device to device, due to the imprecise reference clock used from USB. Another factor may be the effect of multiple different USB controllers by separate vendors, on a single motherboard. These may have varying latencies when reporting to the DAC and operating system.
Likewise unpredictable sound degradation and popping, so-called jitter, may occur randomly. This distortion is the result of the USB protocol's reference clock and how the DAC manages clock recovery to remain synchronized. With varying motherboard USB controllers, come varying levels of precision reference clocks and bit-perfect communication. This results in a staggering level of variation between USB controllers and their associated performance.
Operating system specific configurations and automatic hardware detection also come into play. For example, if the size of de-jitter buffers isn't detected and configured correctly, jitter will occur. Many open source operating systems allow for the manual configuration and adjustment of these parameters.
pulseaudio daemon configuration
;default-fragments = 64
;default-fragment-size-msec = 8
These configurations allow for the rudimentary manual adjustment of buffers on a pulseaudio system for GNU/Linux, enabling one to bypass jitter issues at the possible cost of latency, if initially adjusted incorrectly.
S/PDIF has established itself as a standard audio interface geared towards high fidelity, multichannel audio, mainly used in high end sound production and multi-channel surround home theater scenarios. However with the advent of the increasingly popular audiophile movement, a wide-range of personal, inexpensive and high fidelity pieces of equipment utilizing this standard are available for home use. Most mid range to high end motherboards come equipped with an optical S/PDIF interface, making it very accessible to end users.
Similar to external USB audio devices, S/PDIF interfaces will have a very similar, near identical DAC/AMP build with some devices supporting both USB and S/PDIF input options. Nonetheless today modern S/PIDF optical transmission, which has undergone major innovation since it's inception in 1997, allows for a much more predictable experience. This is in part due to a simpler interface, when attempting to serve multiple DACs simultaneously: Only one optical output is used, while splitting this connection provides for all other DACs, no data loss or additional latency is added during this procedure.
This makes troubleshooting possible jitter as well as the active number of effects to manage, much simpler. Major topics to keep in mind when using such a distributed S/PDIF system are:
How is the motherboard outputting the S/PDIF signal? There are various reports of motherboards needlessly re-sampling the audio to 48kHz
Does your DAC/AMP support this possibly altered sampling rate?
Is there Jitter? If so, various configurations can be done in software when implementing a buffer
(see /etc/pulse/daemon.conf for pulseaudio)
Consider purchasing a cheap PCI sound card with S/PDIF support, very likely eliminating any problems you may have experienced prior
For the most part such a system is plug and play, and relatively cheap, in comparison with extensive specialized audio equipment for such a task.
Having been annoyed by the need to constantly over-amplify, that is cranking up VLC's volume gauge to 170%, a foolish move, in order to receive a satisfying volume level for me and my compatriots, whilst sharing a motherboard analog connection over a splitter contraption, I eventually got annoyed by the persistent extreme quality degradation and lack of volume. Needless to say I began learning about audio more intensely, as it had been a field I was disproportionately unknowledgeable in.
Having tried various configurations over the years, I eventually ended up with the S/PDIF to multi-DAC configuration.
For the DAC/AMP I went with the Chinese S.M.S.L M3, which comes with both USB and optical/coaxial S/PDIF inputs. I bundled those with various Superlux HD681 32 Ω headphones providing quite a cheap setup, which still sounds comparatively amazing.
I decided to pick out thicker, more stylish looking optical cables, as they seem to be quite similar price-wise, but offer better protection form over-bending, while also looking more professional.
Since both the M3s as well as the optical splitter need external USB power, I went with a 4-port 35W external power brick. This should provide sufficient power.