0
\$\begingroup\$

I am planning to create a S/PDIF output stream for a digital audio device, but there is some ambiguity on the standard and how it is used. I would like to have the confusion cleared up.

To start, there are two similar standards the AES3 and S/PDIF. The standards are specified by IEC 60958, however I have not found a publicly available documentation. From other sources such as wiipedia, the communication protocol is the same except for one bit, the channel status bit.

The channel status bit specifies among other things the sample rate. In the S/PDIF standard only sample rates up to 48 kHz can be specified from what I understand. In AES3 a much higher rate is available. Yet, there are S/PDIF interfaces with much higher sample rate than 48kHz commercially available.

The question, should I set the channel status bit according to the S/PDIF or the AES3 standard? In addition, if the answer is S/PDIF how to deal with the higher sample rates? Do commercial audio interfaces even care about the channel bits? Are the electronic characteristics at least according to the S/PDIF standard (0.6vpp)?

\$\endgroup\$

1 Answer 1

0
\$\begingroup\$

How to set the channel status bits depend on which type of output you will have.

One bit determines if the used channel status protocol is AES3 or S/PDIF. The rest of the bits are then specific to the selected protocol.

S/PDIF support is not limited to 48 kHz, you can buy chips which go up to at least 192 kHz, and just set the sampling rate bits according to chip datasheets. Or let the chip set it for you automatically if they have such a feature.

Yes, consumer and all other equipment does care about channel status bits, because they describe what is sent and in which way. If consumer device sees AES3 protocol, it likely does not receive it because it does not understand it.

S/PDIF is just the serial data stream format. The interface can vary. If you mean the standard coaxial interface, it's not 0.6Vpp but 0.5Vpp.

\$\endgroup\$
6
  • \$\begingroup\$ So if I have a high sample rate audio device and want it to work properly with a commercial interface... How to set the channel status? \$\endgroup\$
    – techmann
    Dec 14, 2022 at 17:02
  • \$\begingroup\$ According to S/PDIF consumer protocol. If you are asking what exact values to use for each bit, you need to refer to the chip data sheet you will be using, because the chip will likely set most of them for you, or allow just few different settings, set with IO pins, and will help you how to set them. \$\endgroup\$
    – Justme
    Dec 14, 2022 at 17:12
  • \$\begingroup\$ I am coding the output "chip" from scratch. Are there standard good practices? (I hope I understood correctly) \$\endgroup\$
    – techmann
    Dec 14, 2022 at 17:15
  • \$\begingroup\$ It depends how you intend to code it. You can still look for information about channel status bits from S/PDIF transmitter and receiver data sheets, which are the best source of information without buying the standard. \$\endgroup\$
    – Justme
    Dec 14, 2022 at 17:42
  • \$\begingroup\$ Looking at WM8805 datasheet "Refer to S/PDIF specification (IEC 60958-3) for full details". 0001 = Sampling Frequency not indicated (DEFAULT) So I suppose that will have to do. Better description of the standard would be helpful. \$\endgroup\$
    – techmann
    Dec 14, 2022 at 17:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.