(SOLVED) DSD gets downsampled

Need help with MPD?
wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

(SOLVED) DSD gets downsampled

Post by wayne_woondirts »

Hi,

I've set up mpd and Cantata on OpenSuse Leap. Everything works fine, but all my DSD files get downsampled to 352.8kHz.

Code: Select all

felix@linux-opnj:~> aplay -l
**** Liste der Hardware-Geräte (PLAYBACK) ****
Karte 0: D2 [Xonar D2], Gerät 0: Multichannel [Multichannel]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 0: D2 [Xonar D2], Gerät 1: Digital [Digital]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 1: HDMI [HDA Intel HDMI], Gerät 3: HDMI 0 [HDMI 0]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 1: HDMI [HDA Intel HDMI], Gerät 7: HDMI 1 [HDMI 1]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 1: HDMI [HDA Intel HDMI], Gerät 8: HDMI 2 [HDMI 2]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 2: PCH [HDA Intel PCH], Gerät 0: ALC1150 Analog [ALC1150 Analog]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 2: PCH [HDA Intel PCH], Gerät 1: ALC1150 Digital [ALC1150 Digital]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 3: iDAC6 [Cayin iDAC-6], Gerät 0: USB Audio [USB Audio]
  Sub-Geräte: 0/1
  Sub-Gerät #0: subdevice #0
mpd.conf

Code: Select all

music_directory    "/media/Daten/Musik"
playlist_directory "~/.mpd/playlists"
db_file            "~/.mpd/database"
log_file           "~/.mpd/log"
pid_file           "~/.mpd/pid"
state_file         "~/.mpd/state"


decoder {
      plugin "ffmpeg"
      enabled "yes"
}

audio_output { 
 type              "alsa" 
 name              "Cayin" 
 device            "hw:iDAC6"
 mixer_type        "hardware"
 dop               "yes"
 auto_resample     "no"
 auto_channels     "no"
 auto_format       "no"
}
mpd version 0.19.10
cantata version 2.0.0-20.1
DAC: Cayin - iDAC6

I tried dop "yes" and "no" as well as dsd_usb "yes" or nothing at all, the DAC always shows 352.8kHz PCM

what am I missing?
Last edited by wayne_woondirts on April 21st, 2016, 3:30 pm, edited 1 time in total.

max
Forum team
Posts: 977
Joined: January 15th, 2013, 3:43 pm

Re: DSD gets downsampled

Post by max »


tortuga_Bob
Posts: 8
Joined: December 7th, 2015, 11:26 pm

Re: DSD gets downsampled

Post by tortuga_Bob »

What is the DAC supposed to indicate when playing DSD via DOP? For example, when DOP is active my DAC shows "64" for DSD files. If DOP is "no" then I get "176" displayed which indicates that ALSA is converting the DSD file to 176.4KHz PCM. I assume that your DAC is capable of 384 KHz sample rate which is why your DSD files are being converted to 352 (I am assuming that ALSA converts to highest sample rate possible that is a multiple of 44.1). Are you sure there are no firmware issues with your DAC that affect the DOP feature or whether it needs to be turned on at the DAC first? ALSA does not seem to recognize that you have a DOP-capable DAC.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

tortuga_Bob wrote:What is the DAC supposed to indicate when playing DSD via DOP? For example, when DOP is active my DAC shows "64" for DSD files. If DOP is "no" then I get "176" displayed which indicates that ALSA is converting the DSD file to 176.4KHz PCM. I assume that your DAC is capable of 384 KHz sample rate which is why your DSD files are being converted to 352 (I am assuming that ALSA converts to highest sample rate possible that is a multiple of 44.1). Are you sure there are no firmware issues with your DAC that affect the DOP feature or whether it needs to be turned on at the DAC first? ALSA does not seem to recognize that you have a DOP-capable DAC.
Hi, sorry for the late reply. been very busy.

The DAC is supposed to display 2.8 MHz DSD.
Yes, my DAC (Cayin iDAC-6) is capable of 32/384 playback. It definitely doesn't need to be turned on.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

Any other ideas?
the stream0 file in proc/asound/iDAC6 also only shows samplingrates up to 384000
should I post my asoundrc? could it be that there's something wrong with my alsa.conf file? (I've never edited it, so it's still standard)

I am also in touch with the manufacturer, and there is no firmware upgrade or anything that needs to be turned on on the DAC.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

I have just tried it with a different DAC (ALO Continental Dual Mono) which is also DSD capable.
The files also get downsampled, so it has to be a software issue. Maybe some dependencies? Or some configuration errors? Or do I need an input plugin?

I would really appreciate it if someone could help me here...

Again system: OpenSUSE leap 42.1, Plasma 5, mpd 0.19.10, cantata 2.0.0-20.1, alsa 1.0.29
tried with both dop and dsd_usb set to yes

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

could it be because there is no /src/ folder in my root?
http://git.musicpd.org/cgit/master/mpd.git/tree/src

if so, how can I get it?

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

update: have tried copying the src folder to my root, no success. DSD still gets downsampled... sigh

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

just tried disabling pulseaudio completely with no luck.
could it be that the phonon backend I'm using (phonon-backend-vlc) is causing this issue?

if you need any other information I will do my best to provide it.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

I really hope anyone here has a suggestion...
Here's the stream0 of my DAC:

cat /proc/asound/card0/stream0
Cayin Audio Cayin iDAC-6 at usb-0000:00:14.0-6, high speed : USB Audio

Playback:
Status: Running
Interface = 1
Altset = 2
Packet Size = 31
Momentary freq = 44100 Hz (0x5.8330)
Feedback Format = 16.16
Interface 1
Altset 1
Format: S32_LE
Channels: 2
Endpoint: 1 OUT (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
Data packet interval: 125 us
Interface 1
Altset 2
Format: S16_LE
Channels: 2
Endpoint: 1 OUT (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
Data packet interval: 125 us
Interface 1
Altset 3
Format: SPECIAL
Channels: 2
Endpoint: 1 OUT (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
Data packet interval: 125 us

Is the format: SPECIAL normal? I also see this when I connect the ALO Continental Dual Mono... Might this be causing ALSA to downsample? If so, how can I "repair" it?

Ran
Posts: 144
Joined: February 25th, 2013, 3:47 am

Re: DSD gets downsampled

Post by Ran »

1. Use the latest version of MPD.
2. Set log to "verbose"
3. Run a DSD file (dsf or dff)
4. Capture the log and paste it here.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

Code: Select all

mpd --verbose
config_file: loading file /home/felix/.mpd/mpd.conf
Apr 05 21:59 : server_socket: bind to '0.0.0.0:6600' failed: Address already in use (continuing anyway, because binding to '[::]:6600' succeeded)
Apr 05 21:59 : path: SetFSCharset: fs charset is: UTF-8
Apr 05 21:59 : libsamplerate: libsamplerate converter 'Fastest Sinc Interpolator'
Apr 05 21:59 : vorbis: Xiph.Org libVorbis 1.3.3
Apr 05 21:59 : sndfile: libsndfile-1.0.25-exp
Apr 05 21:59 : db: Database corrupted
Apr 05 21:59 : curl: version 7.37.0
Apr 05 21:59 : curl: with OpenSSL/1.0.1i
how can I set libsamplerate converter to highest setting? (system ressources isn't an issue)
Anything else that might be of help here?
why could my database be corrupted?

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

by the way, I have recreated the database, state, log and pid file. now I only get this message in mpd --verbose:

server_socket: bind to '0.0.0.0:6600' failed: Address already in use (continuing anyway, because binding to '[::]:6600' succeeded)

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

I have now installed Manjaro on my laptop to see if it would be better with this system... still no.

the log output with mpd set to verbose and a dsd file playing:

Apr 16 23:20 : avahi: Initializing interface
Apr 16 23:20 : avahi: Client changed to state 2
Apr 16 23:20 : avahi: Client is RUNNING
Apr 16 23:20 : avahi: Registering service _mpd._tcp/Music Player
Apr 16 23:20 : avahi: Service group changed to state 0
Apr 16 23:20 : avahi: Service group is UNCOMMITED
Apr 16 23:20 : state_file: Loading state file /home/felix/.mpd/state
Apr 16 23:20 : config: option 'samplerate_converter' on line 18 was not recognized
Apr 16 23:20 : avahi: Service group changed to state 1
Apr 16 23:20 : avahi: Service group is REGISTERING
Apr 16 23:20 : avahi: Service group changed to state 2
Apr 16 23:20 : avahi: Service 'Music Player' successfully established.

does it help anyhow?

still wondering how I can set the resampler to best quality. have tried:
resampler {
plugin "libsamplerate"
type "0"
}
as well as
samplerate_converter "0" under audio output.

any help appreciated.
thanks

Ran
Posts: 144
Joined: February 25th, 2013, 3:47 am

Re: DSD gets downsampled

Post by Ran »

1. Use the latest version of MPD.
2. Set log to "verbose"
3. Run a DSD file (dsf or dff)
4. Capture the log and paste it here.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

that is what I have done.

Ran
Posts: 144
Joined: February 25th, 2013, 3:47 am

Re: DSD gets downsampled

Post by Ran »

wayne_woondirts wrote:that is what I have done.
There is nothing in your log that shows a file is being played.

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

weird.
What exactly should I do?

I have run the command mpd --verbose and then copied the last few lines from the log file (stored in ~/.mpd/) when playing a DSD file...
But it doesn't update the file it seems. last entry still is from april 16th.

Ran
Posts: 144
Joined: February 25th, 2013, 3:47 am

Re: DSD gets downsampled

Post by Ran »

1. Open a terminal
2. Type "tail -f /path/to/logfile"
3. Play a DSF file

wayne_woondirts
Posts: 26
Joined: July 16th, 2015, 7:55 am

Re: DSD gets downsampled

Post by wayne_woondirts »

it doens't update, even if I switch between tracks (I'm playing a Pink Floyd DSD64 (dsf files) album)...

Code: Select all

tail -f ~/.mpd/log
Apr 18 22:40 : avahi: Client changed to state 2
Apr 18 22:40 : avahi: Client is RUNNING
Apr 18 22:40 : avahi: Registering service _mpd._tcp/Music Player
Apr 18 22:40 : avahi: Service group changed to state 0
Apr 18 22:40 : avahi: Service group is UNCOMMITED
Apr 18 22:40 : state_file: Loading state file /home/felix/.mpd/state
Apr 18 22:40 : avahi: Service group changed to state 1
Apr 18 22:40 : avahi: Service group is REGISTERING
Apr 18 22:40 : avahi: Service group changed to state 2
Apr 18 22:40 : avahi: Service 'Music Player' successfully established.

Post Reply