Author Topic: DSD plugin - native DSD  (Read 666 times)

garson

  • Posts: 138
DSD plugin - native DSD
« on: 2 Oct '17 - 12:33 »
Hi Ian.

I have some dsd files, and so far I didn't have DSD capable DAC, so I was using DSD to PCM conversion option in DSD plugin. That worked fine.
But now I have DSD capable dac (up to DSD512), but DoP is not working. If I just check Enable in DSD plugin Config I can hear sound but mixed with a lot of noise. My DAC recognizes input signal so it shows DSD64x for example, which is correct.
If I check AA marker option in  config, I get no sound, and DAC doesn't show DSD as input signal.
I have tried some other music player with DSD, and it works fine.

Also, any plans to have native DSD support in plugin?

Thanks,
Vlad

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #1 on: 2 Oct '17 - 17:12 »
When using the DoP output option, the sample data needs to reach the DAC unmodified. That means you should use either ASIO or exclusive mode WASAPI output, with no DSP applied, eg. EQ and reverb must be disabled, and amplification set to 0 dB (with auto-amp disabled), and volume set to 100% (0 dB) and panning set to centre. Have you already done all of that?

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #2 on: 2 Oct '17 - 20:10 »
When using the DoP output option, the sample data needs to reach the DAC unmodified. That means you should use either ASIO or exclusive mode WASAPI output, with no DSP applied, eg. EQ and reverb must be disabled, and amplification set to 0 dB (with auto-amp disabled), and volume set to 100% (0 dB) and panning set to centre. Have you already done all of that?
Hi Ian.
Thanks for quick reply.

Yes, I use (just) ASIO output (never change it), and other thing you mentioned should be there (attachments).

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #3 on: 3 Oct '17 - 13:47 »
The "pan separation" option in your screenshot actually only applies to MOD formats, and won't affect DSD files. The panning/balance option you need to check is the one in XMPlay's main panel. If the skin you're using doesn't include it (some don't), you can switch to the default skin for it; check the volume slider next to it too. Also check the "Output" line in the "General" info window during playback, to make sure there's no resampling.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #4 on: 3 Oct '17 - 22:11 »
The "pan separation" option in your screenshot actually only applies to MOD formats, and won't affect DSD files. The panning/balance option you need to check is the one in XMPlay's main panel. If the skin you're using doesn't include it (some don't), you caBabel (DSD512).dffn switch to the default skin for it; check the volume slider next to it too. Also check the "Output" line in the "General" info window during playback, to make sure there's no resampling.
Hi Ian. I have Balance = Centre. Is that what you ment?

Thanks,
Vlad

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #5 on: 3 Oct '17 - 22:58 »
One more thing. I have 2 DSD capable devices, same thing in XMPlay (noise in the background) for both of them.
And they both work fine with other music player (DSD64x/128/256).


Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #6 on: 4 Oct '17 - 16:46 »
Hi Ian. I have Balance = Centre. Is that what you ment?

Yes, that's the one. Also check that the volume slider is at 100% (0 dB), and check the "Output" line in the "General" info window during playback. If that's all fine and you still have the problem, is it happening with DFF or DSF files, or both?

Please download the BASSASIO package (from the BASSASIO page), run the pre-compiled LIST.EXE example (in the C\BIN folder) in a Command Prompt window, and post the output. You could also try playing a file with the pre-compiled DSDTEST.EXE example (after also downloading the BASSDSD package), with and without DSD-over-PCM enabled ("-p" option).

Another thing you could try is converting the file to 24-bit WAV, by setting the Output Device to "WAV Writer" and the Resolution to 24 bit, and then open the WAV file in a hex file editor and see if you can see the 0x05 and 0xFA markers in the sample data.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #7 on: 8 Oct '17 - 00:41 »
Hi Ian. I have Balance = Centre. Is that what you ment?

Yes, that's the one. Also check that the volume slider is at 100% (0 dB), and check the "Output" line in the "General" info window during playback. If that's all fine and you still have the problem, is it happening with DFF or DSF files, or both?

Please download the BASSASIO package (from the BASSASIO page), run the pre-compiled LIST.EXE example (in the C\BIN folder) in a Command Prompt window, and post the output. You could also try playing a file with the pre-compiled DSDTEST.EXE example (after also downloading the BASSDSD package), with and without DSD-over-PCM enabled ("-p" option).

Another thing you could try is converting the file to 24-bit WAV, by setting the Output Device to "WAV Writer" and the Resolution to 24 bit, and then open the WAV file in a hex file editor and see if you can see the 0x05 and 0xFA markers in the sample data.

Hi Ian.
Yes, volume as at 100%.
As for Output line, with AA marker unchecked, I hear some sound with a lot of noise, for DSD64x I see 176k, my DAC shows DSD64x as input which is good. For DSD128, XMplay show 352k, my DAC shows DSD128 etc.
With AA marker checked, I don't get sound at all, and XMplay output shows the same but my dac shows 176k etc.
Files are DSF and DFF.

But good news, Ian, it that DSDTEST.EXE works great, I can play DSD128/256 and even DSD512!  So must be something with xmplay plugin.
Here's output you've requested:
Quote
G:\bass>list.exe
dev 0: HoloAudio ASIO Driver
driver: c:\program files\holoaudio\usb audio driver\holousbaudioasio.dll
        out 0: Analogue 1/SPDIF 1 (group 0, format 18)
        out 1: Analogue 2/SPDIF 2 (group 0, format 18)
        DSD:
        out 0: Analogue 1/SPDIF 1 (group 0, format 33)
        out 1: Analogue 2/SPDIF 2 (group 0, format 33)
      
      
G:\bass>dsdtest.exe dsd128_2L-111_stereo-5644k-1b_15.dsf
Simple console mode ASIO DSD example : DFF/DSF player
-----------------------------------------------------
DSD rate: 5.6448 MHz
Length: 484850688 samples (1:25)
Output: DSD
^Cs 337305600 - 0:14 - cpu 1.21%
G:\bass>dsdtest.exe dsd256_2L-125_stereo-11289k-1b_04.dsf
Simple console mode ASIO DSD example : DFF/DSF player
-----------------------------------------------------
DSD rate: 11.2896 MHz
Length: 1103671296 samples (1:37)
Output: DSD
^Cs 952449024 - 0:21 - cpu 2.36%
G:\bass>dsdtest.exe "Wechseldominante - Babel (DSD512).dff"
Simple console mode ASIO DSD example : DFF/DSF player
-----------------------------------------------------
DSD rate: 22.5792 MHz
Length: 8510326320 samples (6:16)
Output: DSD
^Cs 2935945216 - 0:32 - cpu 1.68%


Also, will plugin allow native DSD playback not just DoP? I used DSDTEST.EXE without -p so should be native DSD playback.

Thanks,
Vlad




Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #8 on: 9 Oct '17 - 17:06 »
No, I'm afraid the XMPlay DSD plugin doesn't support native DSD output, as XMPlay and all of the available output options are currently expecting PCM.

Did you also try the DSDTEST example with the '-p' option for DoP output? If not, please do so, to compare with the DoP output that you're getting from XMPlay.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #9 on: 13 Oct '17 - 22:53 »
No, I'm afraid the XMPlay DSD plugin doesn't support native DSD output, as XMPlay and all of the available output options are currently expecting PCM.

Did you also try the DSDTEST example with the '-p' option for DoP output? If not, please do so, to compare with the DoP output that you're getting from XMPlay.
Any plans to make some output expecting native DSD since there's all support in BASS?

I just tried -p option. First run had a lot of noise so I thought it was same as with XMplay. But second run (and all after that) was ok, DSD128 and DSD256 .dsf files.

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #10 on: 19 Oct '17 - 14:33 »
I forgot to mention that the recently posted XMPlay update (3.8.2.37) includes a "DSP - Bypass" shortcut option to temporarily disable all DSP. You could see if that helps to get DoP output working via ASIO in XMPlay.

   www.un4seen.com/stuff/xmplay.exe

If it still isn't sounding right, also check the "Output" line in the "General" info window during playback. If the output rate is different to the file's rate (2 lines shown), make sure the "Set hardware sample rate when possible" option is enabled in the ASIO plugin's options page. Also try a 2nd run, if that helped in the BASS test case.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #11 on: 2 Nov '17 - 21:33 »
I forgot to mention that the recently posted XMPlay update (3.8.2.37) includes a "DSP - Bypass" shortcut option to temporarily disable all DSP. You could see if that helps to get DoP output working via ASIO in XMPlay.

   www.un4seen.com/stuff/xmplay.exe

If it still isn't sounding right, also check the "Output" line in the "General" info window during playback. If the output rate is different to the file's rate (2 lines shown), make sure the "Set hardware sample rate when possible" option is enabled in the ASIO plugin's options page. Also try a 2nd run, if that helped in the BASS test case.
Hi Ian.

Target for my xmplay looks like this:
"C:\Program Files (x86)\XMPlay\xmplay.exe" "DSP - Bypass"

Is that what you meant?

If yes, then still the same, a lot of noise, sample rate looks good (dsd64 - 176khz, dsd128 352).

saga

  • Posts: 2183
Re: DSD plugin - native DSD
« Reply #12 on: 3 Nov '17 - 10:49 »
What he meant is a keyboard shortcut, which you can assign in Options & Stuff -> Shortcuts.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #13 on: 3 Nov '17 - 22:32 »
What he meant is a keyboard shortcut, which you can assign in Options & Stuff -> Shortcuts.
Thanks saga, that did the trick.

Ian, this worked. With DSP bypass set to ON DSD now plays well. If during playback I set DSP bypass to off, noise appears.
Not sure why there is a noise since I do not use any DSP option.  ???

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #14 on: 4 Nov '17 - 19:25 »
Bad thing about this workaround, when you restart xmplay, dsp bypass will reset to off.

Ian, maybe to make dsp bypass as an option in Options?

saga

  • Posts: 2183
Re: DSD plugin - native DSD
« Reply #15 on: 4 Nov '17 - 21:18 »
I believe the point of adding this option was just to check if there is still any DSP left enabled even if you don't realize it rather than being a permanent solution to this exact problem. Can you check if there are any DSP plugins enabled in the "Plugins" section of the Options & Stuff dialog? Maybe you're using a plugin like xmp-scrobbler, which in theory should not change the audio stream but maybe it accidentally does so. Do any of the tracks maybe contain ReplayGain information?

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #16 on: 5 Nov '17 - 00:16 »
I believe the point of adding this option was just to check if there is still any DSP left enabled even if you don't realize it rather than being a permanent solution to this exact problem. Can you check if there are any DSP plugins enabled in the "Plugins" section of the Options & Stuff dialog? Maybe you're using a plugin like xmp-scrobbler, which in theory should not change the audio stream but maybe it accidentally does so. Do any of the tracks maybe contain ReplayGain information?
Hi saga.
These screenshots in attachments should be all related to DPS settings in XMPlay.

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #17 on: 6 Nov '17 - 17:10 »
Those settings are fine for bypassing DSP. The other things to check are the volume and balance sliders in the main window. Volume should be set to 0dB/100% (the maximum) and balance should be set to centre. If the skin you're using doesn't have a balance slider, you can switch to the default skin to check that. If they are set correctly and DoP is still not working without enabling the bypass option, then I will probably need to send you a debug version to find out what's going on.

Regarding the "Bypass DSP" setting not being saved, that was intentional as I figured it would only be used to temporarily bypass DSP for specific tracks (eg. DoP or DTS). For permanent DSP bypassing, the other options can be set appropriately.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #18 on: 6 Nov '17 - 21:03 »
Those settings are fine for bypassing DSP. The other things to check are the volume and balance sliders in the main window. Volume should be set to 0dB/100% (the maximum) and balance should be set to centre. If the skin you're using doesn't have a balance slider, you can switch to the default skin to check that. If they are set correctly and DoP is still not working without enabling the bypass option, then I will probably need to send you a debug version to find out what's going on.

Regarding the "Bypass DSP" setting not being saved, that was intentional as I figured it would only be used to temporarily bypass DSP for specific tracks (eg. DoP or DTS). For permanent DSP bypassing, the other options can be set appropriately.
Hi Ian.

Yes, as previously discussed in this topic, I have volume at 100% and balance at center.
I guess I would need to try with debug version. :)

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: DSD plugin - native DSD
« Reply #19 on: 7 Nov '17 - 17:46 »
OK. I have now sent you a debug version for more info on what's happening.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #20 on: 7 Nov '17 - 21:52 »
OK. I have now sent you a debug version for more info on what's happening.
Thanks Ian.
Just sent you xmplay.log file.

garson

  • Posts: 138
Re: DSD plugin - native DSD
« Reply #21 on: 10 Nov '17 - 21:14 »
Latest stuff fixed this issue. :)