I have some DTS files that I’d like to embed inside WAV to trick various devices into sending them to my receiver. I know this is possible, but details are hard to come by.

I have several examples of such files created by others. They all have these characteristics in common (output from the mediainfo command):

Format/Info                              : Digital Theater Systems
Mode                                     : 14
Format settings, Endianness              : Little
Codec ID                                 : 1
Bit rate                                 : 1 411.2 Kbps
Sampling rate                            : 44.1 KHz

The data that I want to embed looks like this:

Format/Info                              : Digital Theater Systems
Mode                                     : 16
Format settings, Endianness              : Big
Bit rate                                 : 754 Kbps
Sampling rate                            : 48.0 KHz

Is this possible, or does the data need to be manipulated before it can be embedded?

I've written a Python script that prepends a (probably incorrect) WAV header to the DTS data, but it just results in noise. The most obvious problem is that the duration of the WAV is calculated to be about half the actual duration. I assume this is because it's treating a 754 Kbps stream as 1411 Kbps.


1 Answer 1


Embedding a DTS stream within a WAV file is a clever hack, but a hack nevertheless, not guaranteed to work - only if the entire playback chain passes it through bit perfect will the receiver see a DTS stream. Otherwise you just have white noise.

You may wish to look at the following link.


Hope this helps. - S

  • I’m familiar with the challenges of playing back these files, and I’ve overcome them. My question is about creating them. Thanks for the link, though. It implies that 48 KHz should work. Commented Oct 13, 2015 at 14:02
  • That page has a section at the bottom about spdifconvert.py, which looks like it does what you want.
    – rkjnsn
    Commented Jul 25, 2018 at 22:40

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.