DTS: Difference between revisions
No edit summary |
m (doc mirror) |
||
Line 4: | Line 4: | ||
DTS Coherent Acoustics is a perceptual audio codec. The main technique used is a QMF filter together with [[Huffman]], [[PCM#Adaptive DPCM|ADPCM]] and [[Vector Quantization|vector quantization]]. | DTS Coherent Acoustics is a perceptual audio codec. The main technique used is a QMF filter together with [[Huffman]], [[PCM#Adaptive DPCM|ADPCM]] and [[Vector Quantization|vector quantization]]. | ||
Specification can be found through the [http://pda.etsi.org/pda/queryform.asp ETSI], search for DTS. Info | Specification can be found through the [http://pda.etsi.org/pda/queryform.asp ETSI] ([[Mirrored Files|mirrored here]]), search for DTS. Info completing the incomplete specification can be found here: http://webapp.etsi.org/action%5CPU/20021224/ts_102114v010201p.pdf, http://gauss.ffii.org/PatentView/EP864146, and http://ofi.epoline.org/view/GetDossier?dosnum=&pubnum=EP864146&lang=EN# . | ||
The [[VideoLAN]] project has created [http://developers.videolan.org/libdca.html libdts/libdca] an open source implementation of DTS. Unfortunately libdts was pushed underground through patent scare tactics for a while. | The [[VideoLAN]] project has created [http://developers.videolan.org/libdca.html libdts/libdca] an open source implementation of DTS. Unfortunately libdts was pushed underground through patent scare tactics for a while. |
Revision as of 08:34, 25 October 2007
- Codec ID: 0x2001
- Company: DTS Inc.
DTS Coherent Acoustics is a perceptual audio codec. The main technique used is a QMF filter together with Huffman, ADPCM and vector quantization.
Specification can be found through the ETSI (mirrored here), search for DTS. Info completing the incomplete specification can be found here: http://webapp.etsi.org/action%5CPU/20021224/ts_102114v010201p.pdf, http://gauss.ffii.org/PatentView/EP864146, and http://ofi.epoline.org/view/GetDossier?dosnum=&pubnum=EP864146&lang=EN# .
The VideoLAN project has created libdts/libdca an open source implementation of DTS. Unfortunately libdts was pushed underground through patent scare tactics for a while.
Bitstream coding
There are four different bitstream formats -- little- or big-endian and 16 or 14 bits per word.
Raw bitstream coding
Raw bitstream is packed into 16-bit words with possible little- or big-endian.
14-bit words
This kind of bitstream is packed into 16-bit words where high two bits contain some auxiliary information (parity?). This coding is used in many DTS-in-WAV files.
How to distinguish different versions
Every frame in DTS starts with 32-bit syncword which can be used to distinguish current bitstream encoding:
Sequence | Bitstream type |
---|---|
7F FE 80 01 | raw big-endian |
FE 7F 01 80 | raw little-endian |
1F FF E8 00 07 Fx | 14-bit big-endian |
FF 1F 00 E8 Fx 07 | 14-bit little-endian |
Frame format
Size | Explanation | Value |
---|---|---|
32 bits | Sync marker | 0x7FFE8001 |
1 bit | Frame type (or last frame) | 0 - termination frame, 1 - normal frame |
5 bits | Deficit sample count | number of samples in block - 1 (should be 31 for normal frame) |
1 bit | CRC present | |
7 bits | Number of blocks | 5-127 |
14 bits | Frame size in bytes - 1 | 95-16383 |
6 bits | Channel configuration | values 0-15 are standard, 16-63 are user-defined |
4 bits | Sample frequency | See table below |
5 bits | Bitrate | |
TODO |