DSD Native support DAC`S

Последнее ядро, которое используется в плеере, поддерживает все современные ЦАП-ы, что имеют поддержку DSD  в режиме DoP (DSD over PCM) на уровне прошивки.  Это практически все устройства на базе USB приемника XMOS, или Amanero Combo384. В момент тестирования были так же замечены ЦАП-ы, которые в системе Windows имели проблемы с работоспособностью с DSD, но с использованием V.A.M.P. воспроизведение было успешным. Поддержка DSD производится на низком уровне (в ядре) и не требует дополнительной установки дополнительных драйверов, о чем собственно и пишут производители в своих мануалах:


Apple MAC OSX and Linux support USB audio class 2 natively, hence no driver is needed.

Существует два способа передачи потока DSD:

  • DoP (DSD over PCM)
  • NativeDSD

На качество звучания, режим DoP, или NativeDSD не влияет, что уже много раз доказывалось на различных форумах, включая на сайте компании  PS Audio, самими разработчиками:


Отсюда следует весьма разумная мысль, которую реализовали создатели DoP. Они просто разбили DSD-поток на отдельные 16-битовые группы, и каждый 16-битовый блок был выделен из общего потока. Затем они объединили правую 16-битовую группу с левой 16-битовой группой, добавили идентификационную информацию и «приодели» ее так, чтобы компьютеры и ЦАП-ы думали, что это PCM. Так как для любых компьютеров или ЦАП-ов на USB-входе такой поток не отличим от PCM, он свободно проходит на ЦАП через USB, S/PDIF или AES/EBU. Очень умный ход.
Когда такой сигнал поступает на ЦАП, он конвертируется обратно в исходный поток за счет простого последовательного соединения всех битов. Тут нет никаких манипуляций с данными, биты не повреждаются и, если ваш ЦАП способен воспроизводить DSD, у вас все хорошо. Если же ваш ЦАП не поддерживает DSD, вы получите на выходе тишину.

Передается поток DSD судя по спецификации, которую сложно было найти, таким образом:

post-cgi

DSD table XMOS

 

Так как DoP на основных конвертерах XMOS не имеет возможность передавать данные в 705,6 kHz, которое нужно для передачи потока dsd256, появляется ограничение для передачи dsd128.

dsd128 (5.6448Mbit/s) dsd256(11.2896Mbit/s)
DoP 352.8kHz X 16bit 705.6kHx X 16bit
Native DSD 176.4kHz X 32bit 352.8kHz X 32bit

Поэтому было создана поддержка режима DSD Native под Linux, используя 32-х битный режим передачи данных DSD_U32_LE, или DSD_U32_BE.



Только в последней версии V.A.M.P. добавлена поддержка обоих режимов.

Следующий список ЦАП-ов по отзывам пользователей поддерживает режим DSD_Native и уже включен в поддержку последнего ядра плеера:

  • (0x20b1, 0x3008):  iFi Audio micro/nano iDSD
  • (0x20b1, 0x2008):  Matrix Audio X-Sabre
  • (0x20b1, 0x300a):  Matrix Audio Mini-i Pro
  • (0x20b1, 0x302a):  Matrix Audio Quattro II
  • (0x22d9, 0x0416):  OPPO HA-1
  • (0x22d9, 0x0436):  OPPO Sonica
  • (0x2522, 0x0009):  LH Labs Geek Pulse X Inifinity 2V0
  • (0x20b1, 0x2012):  ULTRAS DAC
  • (0x20b1, 0x0002):  Wyred 4 Sound DAC-2 DSD
  • (0x2522, 0x0012):  LH Labs VI DAC Infinity
  • (0x20a0, 0x4143):  WaveIO USB Audio 2.0
  • (0x16d0, 0x06b4):  NuPrime Audio HD-AVP/AVA
  • (0x1db5, 0x0003):  Bryston BDA3
  • (0x20b1, 0x000a):  Gustard DAC-X20U
  • (0x20b1, 0x2009):  DIYINHK DSD DXD 384kHz USB to I2S/DSD
  • (0x20b1, 0x2023):  JLsounds I2SoverUSB
  • (0x20b1, 0x3021):  Eastern El. MiniMax Tube DAC Supreme
  • (0x20b1, 0x300f):  Engineered Electronics Stereo Playback Interface
  • (0x20b1, 0x3023):  Aune X1S 32BIT/384 DSD DAC
  • (0x22d9, 0x0426):  OPPO HA-2
  • (0x16d0, 0x09d8):  NuPrime IDA-8
  • (0x20b1, 0x3036):  Holo Springs Level 3 R2R DAC
  • (0x20b1, 0x307b):  CH Precision C1 DAC
  • (0x20b1, 0x3086):  Singxer F-1 converter board
  • (0x2616, 0x0106):  PS Audio NuWave DAC
  • (0x6b42, 0x0042):  MSB Technology
  • (0x2622, 0x0041):  Audiolab M-DAC+
  • (0x22e1, 0xca01):  HDTA Serenade DSD
  • (0x29a2, 0x0086):  Mutec MC3+ USB
  • (0x20b1, 0x2005):  Denafrips DAC
  • (0x27f7, 0x3002):  W4S DAC-2v2SE
  • (0x27f7, 0x1301):  Wyred DSD Inrerface
  • (0x16d0, 0x071a) Amanero Combo384 USB interface with native DSD support

На этом сайте можно отследить пополняемый список устройств. 


После добавлением производителем поддержки DSD_U32_LE & DSD_U32_BE,  нужно лишь дописать USB_ID в ядро и его пересобрать! Пользователям V.A.M.P. не нужно это делать самостоятельно и «закачивать» новые прошивки вручную! После пополнения списка выше, вам нужно только выполнить обновление через web-интерфейс и поддержка новых DSD Native ЦАП-ов произойдёт автоматически!


В ядрах, начиная с 4.18.** добавлено по умолчанию множество DSD_Native ЦАП-ов для Linux

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/sound/usb/quirks.c?h=v4.18.7