Формат DTS. Как воспроизвести DTS, как создать DTS-CD

Дата обновления: 02 Ноября 2013
2013-11-02T13:15
Audiophile's Software

О формате

DTS расшифровывается как Digital Theater System и представляет собой систему lossy кодирования многоканального звука, разработанную одноименной компанией с подачи Стивена Спилберга. Дебют системы состоялся с выходом первой части «Парка юрского периода». DTS является прямым конкурентном во многом схожей системы Dolby Digital.

Сегодня данный формат используется не только в кинопрокате, но также и в сфере бытовой аппаратуры, например для кодирования дорожек DVD-Video.

Кроме того, DTS имеет и другие нестандартные применения. Например, используется для кодирования многоканального аудио и последующей передачи его через S/PDIF (данный интерфейс не поддерживает передачу несжатого многоканального звука).

Другим интересным применением, о котором и пойдет речь, является формат DTS-WAV. Фактически это поток DTS в контейнере WAV, причем полностью соответствующий стандарту PCM 16 bit/44.1 kHz. То есть, это PCM WAV файл, полностью соответствующий спецификации Red Book (Audio CD), который можно даже воспроизвести. Однако при воспроизведении без специального декодирования мы услышим только шум, т.к. в PCM содержатся на самом деле закодированные данные. Эта уловка была придумана затем, чтобы подобное DTS аудио можно было легко записать на обычный CD носитель в формате CD Audio. Далее этот диск можно воспроизвести на устройствах, имеющих специальный декодер DTS. Дабы отличить данные диски от обычных Audio CD, эти устройства предварительно проверяют поток на наличие в нем DTS и решают, использовать декодер DTS или нет.

Как прослушать

На компьютере формат DTS можно воспроизвести с помощью foobar2000 с плагином DTS Decoder. С недавних пор этот плагин работает как постпроцессор (раньше он было опционально включаемым обработчиком DSP), т.е. находится в тракте плеера непосредственно после декодера:

Это позволяет сохранять поток в исходном виде до поступления его на декодеры таких форматов как DTS и HDCD (практически любая обработка повредит данные и сделает их декодирование невозможным).

С вышеописанным плагином foobar2000 поддерживает воспроизведение DTS-CD, DTS-WAV (формат *.wav или *.dtswav) и Coherent Acoustics DTS файлов в собственном контейнере *.dts.

Как кодировать

Существует только один бесплатный консольный кодер DTS, и тот появился относительно недавно. Именно его, т.е. DCAENC, мы и будем использовать. Также нам понадобится foobar2000 с плагинами.

Подробно процесс кодирования описан в статье Принципы настройки конвертера foobar2000, я же опишу только основные моменты.

Параметры кодировщика устанавливаем следующие:

-i - -o %d -b 1411.2 -l

Подразумевается, что кодировать мы будем из 5.1 источника. Я для примера взял DVD-Audio в формате 24 bit/96 kHz/5.1 channels. На выходе нам надо получить частоту дискретизации 44.1 кГц, потому в DSP следует добавить ресемплер:

После кодирования на выходе мы получим набор файлов формата *.dts. Теперь их необходимо инкапсулировать в PCM WAV файлы. Для этого будем использовать утилиту SoX — прямо из foobar2000, через плагин Run Service.

Распакуйте архив и поместите все файлы в папку foobar2000/tools/SoX/ (имеется ввиду папка, куда установлен foobar2000.exe). Затем добавьте новый сервис:

\tools\SoX\dts2wav_dir.bat "$directory_path(%path%)\"

Теперь важно, чтобы все наши DTS файлы находились в одной папке. Добавьте один из них в плейлист foobar2000, нажмите правой кнопкой и выберите Run Service -> dts2wav (folder). Вы увидите консольное окно, в котором отображается процесс последовательного преобразования всех DTS файлов в папке.

После завершения преобразования в папке окажутся файлы *.dts.wav — то самое DTS-WAV аудио. Можете проиграть его в foobar2000: не смотря на то, что в свойствах файла будет указано PCM 2 channels, при воспроизведении foobar2000 отобразит в панели состояния «DTS ... 6ch».

Теперь дело за малым. Надо всего лишь аккуратно записать эти файлы на CD диск (как Audio CD, не диск с данными). Во-первых, это можно сделать через всё тот же foobar2000 с плагином Audio CD Writer. Для этого установите плагин и включите отображение соответствующего пункта в контекстном меню (пункт Convert -> Write audio CD). При записи все обработчики должны быть выключены. Кроме того — очень важный момент — плагин записи пока далек от совершенства, и потому в нем нет опции отключения постпроцессинга. Таким образом fooba2000 декодирует DTS в 5.1 PCM и затем пытается записать это на диск (что конечно же невозможно, потому программа выдает ошибку). Исходя из этого, следует, что перед записью необходимо временно удалить плагин DTS Decoder.

К сожалению, запись Audio CD в foobar2000 на некоторых оптических приводах не работает. В таком случае можно воспользоваться еще более надежным методом — функцией записи в Exact Audio Copy. Эта программа позволяет установить коррекцию смещения записи, и таким образом избежать потери семплов в начале или конце диска. Алгоритм записи через EAC изложен мною в тесте «Страдает ли качество звука при записи/чтении Audio CD». Подробно почитать о настройках EAC можно на этом сайте.

В общем-то, можно использовать и другие программы записи. Главное, чтобы они не выполняли декодирование DTS потока, и вообще какую-либо обработку.

Итак, мы записали наш диск— DTS-CD готов. Можем проиграть его в foobar2000 (обратно установив декодер DTS, если вы конечно его удаляли):

Кстати, тут есть одно замечание. Поначалу, когда я пытался воспроизвести записанный DTS-CD, плеер почему-то вдруг вылетал. К счастью, я додумался, что дело в проверке DTS формата, т.е. плагин не может прочитать какую-то сигнатуру и выдает критическую ошибку. Так и есть — оказалось, что плеер теряет начальные семплы из-за смещения (read offset) дисковода. После установки коррекции смещения (File -> Open Audio CD -> Drive Settings) в foobar2000 диск воспроизвелся успешно.

Впрочем, разработчик декодера обещал это неприятное падение исправить.

О компрессии DTS-WAV

Как известно, постпроцессор DTS также поддерживает декодирование потока из сжатых без потерь источников — FLAC, Wavpack и TAK. Однако, надо заметить, что сжатие DTS потока lossless аудио кодеками крайне неэффективно. Дело в том, что указанные кодеки заточены исключительно под сжатие аудио данных, относительная избыточность которых в среднем составляет около 30%, т.е. в среднем lossless кодеки уменьшают размер аудио относительно несжатого формата на 30%. Поток DTS, напротив, является вовсе не аудио данными, а кодом сжатого по lossy алгоритму аудио, избыточность которого в идеале стремится к нулю. С точки зрения аудио данный код является шумовым сигналом, предсказать который практически невозможно, т.е. предикторы lossless кодеков оказываются бесполезны. В итоге мы получаем очень низкую степень сжатия.

Таким образом, например, созданные по описанной выше методике DTS-WAV lossless сжатию не подлежат вообще. FLAC даёт на выходе идентичный битрейт (1411 кбит/с), а кодеры TAK и WavPack даже повышают (!) его. Это говорит о хорошем алгоритме сжатия DTS и отсутствии нулевых битов, неиспользованных для кодирования полезной информации.

Теперь возьмем образ реального DTS-CD диска Marvin Gaye — Forever Yours. При сжатии треков все три кодера выдали битрейт в районе 1250 кбит/с (сжатие на 12% — всё равно очень мало). А вот если сжать DTS-WAV, извлеченные с диска, тем же 7-Zip упаковщиком, мы получим сжатие уже 15%. В то же время 7-Zip проигрывает lossless кодекам по сжатию реальных аудио данных чуть ли не в два раза. Это еще раз подтверждает, что lossless аудио кодеки совершенно непригодны для сжатия DTS-WAV.

Кстати, архиватору 7-Zip таки удалось выручить 8% сжатия для закодированных с помощью DCENC DTS-WAV файлов. Это я к тому, что использовать lossless кодеки, например, для раздачи рипов DTS-CD не имеет смысла. Лучше воспользоваться тем же архиватором 7-Zip с алгоритмом LZMA2.


Информация от спонсора

Мир ККМ: полный спектр услуг, касающихся контрольно-кассовой техники. Здесь Вы можете приобрести, зарегистрировать ККМ, кассовые аппараты, заказать обслуживание кассовой техники и прочие сопутствующие услуги.

 
   
Категория: Авторские статьи | Автор: | Добавил: Audiophile
Просмотров: 49525| Рейтинг: 5.0/5, голосов: 1
Комментариев: 2
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
0   Спам
[2] sergejholod (04 Ноября 2013 15:36)
Audiophile, огромное Спасибо! я твой фанат! worship :D
0   Спам
[1] Rollinnn (03 Ноября 2013 18:31)
Rollinnn
Цитата
Как известно, постпроцессор DTS также поддерживает декодирование потока из сжатых без потерь источников — FLAC, Wavpack и TAK

Ещё ALAC и Monkey's Audio.