SPDIF optical/digital sound outputs are not constant. They first sync when audio starts then disconintue once audio playback ends. This has an effect of causing repeated sync/desync when using computer audio. The start of sounds get cut off and Digital to Analog Converters (DAC) repeatedly sync/desync, sometimes causing relays to emit click noises.
JSilencePlayer triggers the default sound output on the system to open. This has the effect of initiating a sync on SPDIF optical/coaxial digital audio outputs and never releasing the datastream. This enables continuous audio playback without cutouts or relay clicks.
JSilencePlayer is written in Java and will run on any operating system on which there exists a Java Runtime Environment (JRE). Every effort has been made to reduce overhead of running JSilencePlayer in the backround, however it is still non-zero.
- When the default playback output is changed, you will need to relaunch JSilencePlayer. This is due to many JRE's not completely implementing the audio playback enumeration API, for example on MacOSX.