Давно меня разочаровывала ситуация с поддержкой формата DTS-HD в Linux: инструментов для его декодирования попросту не было. Существующие open source декодеры (а их два: библиотека libdca и основанный на ее коде встроенный декодер FFmpeg) умеют декодировать только обратно совместимое DTS ядро с потерями в качестве. Для перевода треков без потерь (т.е. декодирования расширения XLL, маркетинговое название которого DTS-HD Master Audio) во FLAC приходилось ставить винду и проприетарные кодеки. Поэтому решил покурить стандарт ETSI TS 102114 и написать свой собственный декодер XLLDEC.
Ввиду отсутствия нормальной документации на формат DTS (стандарт не в счет, там много пробелов, недоговорок и неточностей) возможности декодера сильно ограничены. Пока он умеет декодировать без потерь только наиболее базовую конфигурацию потока DTS-HD MA: не более 5.1 каналов, 48 кГц, 16/24 бит. Если обратно совместимое ядро содержит какие-либо расширения (более 5.1 каналов, удвоенная частота дискретизации, DTS-ES мастеринг), декодирование без потерь становится невозможно. Но практика показывает, что аудио треки большого числа Blu-Ray ремуксов, которые можно найти в сети, имеют именно такую конфигурацию. Поэтому декодер не совсем бесполезен.
В общем, желающие приглашаются собрать декодер и попробовать им что-нибудь декодировать. Описание процедуры с примерами есть в README.
P.S. За качество кода просьба сильно не пинать, это моя первая программа на D.