CW-DTS-WAV 1.0.1.0
Cole Williams DTS-in-WAV / DTS-CD Converter
Cole Williams Software Limited

PROJECT IDENTITY
================

CW-DTS-WAV is the DTS-in-WAV / DTS-CD conversion project.

It is separate from CW-DTS, which is the DTS Core encoder.

OVERVIEW
========

CW-DTS-WAV is a Windows command-line DTS converter designed primarily for
DTS-in-WAV / DTS-CD material, including DTS audio CDs ripped with Exact Audio
Copy.

CW-DTS-WAV can:

  - Detect DTS carried inside a PCM WAV/RF64 file
  - Decode DTS-in-WAV directly to multichannel 24-bit FLAC
  - Decode DTS-in-WAV directly to multichannel 24-bit WAV
  - Extract the DTS elementary stream to .dts
  - Decode ordinary raw .dts elementary streams
  - Scan an input without converting it
  - Write Vorbis-comment metadata to FLAC output
  - Integrate directly with Exact Audio Copy using --eac

The Windows releases use shared FFmpeg runtime libraries supplied beside
cw-dts-wav.exe.

BASIC USAGE
===========

Scan:

  cw-dts-wav.exe --scan input.wav

Decode DTS-in-WAV to FLAC:

  cw-dts-wav.exe input.wav output.flac

Decode DTS-in-WAV to WAV:

  cw-dts-wav.exe input.wav output.wav

Extract DTS:

  cw-dts-wav.exe input.wav output.dts

Decode a raw DTS stream:

  cw-dts-wav.exe input.dts output.flac

Overwrite an existing output:

  cw-dts-wav.exe input.wav output.flac --overwrite

Tagged FLAC output:

  cw-dts-wav.exe input.wav output.flac --title "Track Title" --artist "Artist" --album "Album" --track 1

INPUT
=====

Primary input:

  .wav      DTS-in-WAV / DTS-CD carrier
  .dtswav   DTS-in-WAV carrier

Additional compatible input:

  .dts      Raw DTS elementary stream

Content detection is authoritative; another extension can also work when a
recognised DTS sync word is found.

Supported packing includes:

  - 16-bit big-endian DTS
  - 16-bit little-endian / word-swapped DTS-in-WAV
  - 14-bit big-endian DTS
  - 14-bit little-endian DTS

For raw .dts extraction, 14-bit DTS is packetised with FFmpeg's DTS parser and
normalised frame-by-frame to canonical 16-bit big-endian DTS.

OUTPUT
======

Output format is selected by extension:

  .flac   Decode DTS to multichannel 24-bit FLAC
  .wav    Decode DTS to multichannel 24-bit PCM WAV
  .dts    Extract / normalise the DTS elementary stream

DTS-IN-WAV SAFETY
=================

A DTS-in-WAV file can appear to ordinary software as 44.1 kHz, 16-bit stereo
PCM even though its sample words contain an encoded DTS bitstream.

Do not normalise, resample, apply DSP, change volume, add fades or otherwise
alter a DTS-CD carrier before decoding or extraction.

Playing DTS-in-WAV as ordinary PCM can produce loud digital noise.

Use --scan first if the contents are uncertain.

CD-SECTOR PADDING
=================

When extracting raw DTS from a WAV carrier, CW-DTS-WAV identifies the end of
the last complete DTS frame and excludes trailing zero bytes used only to align
the carrier to complete 2352-byte audio-CD sectors.

FLAC METADATA
=============

FLAC output supports command-line metadata including title, artist, album,
album artist, genre, date/year, track/disc numbering, comment, composer and
copyright.

WAV and raw DTS outputs remain intentionally untagged.

EXACT AUDIO COPY
================

CW-DTS-WAV includes an --eac integration mode.

For DTS-CD material, keep the EAC rip bit-perfect. Do not enable normalisation,
DSP, resampling, fades or other processing before CW-DTS-WAV receives the WAV.

See EAC.txt for the field-by-field EAC setup and DTS-CD workflow.

RUNTIME FILES
=============

Keep cw-dts-wav.exe with the supplied FFmpeg/runtime DLLs.

See the included FFmpeg notice/build files for third-party runtime information.

PROJECT
=======

Product: CW-DTS-WAV
Version: 1.0.1.0
Release: Final
Company: Cole Williams Software Limited
Copyright: Copyright (c) 2026 Cole Williams. All rights reserved.
