INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: PCM2DSD x1  (Read 4305 times)

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« on: October 29, 2013, 01:13:45 am »

When I try to do PCM2DSD x1, MC is upsampling everything to 192kHz, then doing DoP at 176. Why not go to 176 directly?

2. When PCM2DSD is set, I can't play any native DSD files DSD64 or DSD128, MC skips over them? (I've also tested PCM2DSDx2 using non-DoP DSD Bitstreaming with same results for DSD64.

3. I would have expected the behavior that just setting DoP on a Zone produces: only DSD files get encoded to DoP, and non-DSD are ignored and played "natively".

Bug?

Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #1 on: October 29, 2013, 01:19:31 am »

Behavior is not consistent, seems like a bug. Sometimes direct to DoP (176kHz?), sometimes not:

Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #2 on: October 29, 2013, 01:40:38 am »

New feature ZoneSwitch works well for switching and killing the last zone played. But I think I see what you mean about a mixed playlist as opposed to manually selecting songs. Too bad.

Obviously I have another Zone added in Zoneswitch do to the inverse.




Try it out see what happens  ;D.

When you add a mixed playlist, some files will go to zone A and others will go to zone B. But playback can't start on both zones so one zone will play and the other will generate an error. Either way, your original playlist order will be screwed and you'll be missing some files that went to the other zone.

Playlists can't play over multiple zones and keep their playback order. The Zones feature wasn't meant for this.
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978
PCM2DSD x1
« Reply #3 on: October 29, 2013, 01:50:24 am »

I think you're right.

Playing 24/88,2 files said its resampling to 44,1 when output is set to DoP or DSD Native.

Try this:
Set output mode to none and change 88,2 to something else (doesn't matter) and set it back to No Change.
Set output mode back to DoP.
Try playing a 88,2 file.

The above procedure fixed it for me, and I am now unable to reproduce the issue as my zones now all output as DSD or DoP without resampling first.
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #4 on: October 29, 2013, 02:07:05 am »

I was able to "reset" by stopping and starting. Seems to crop up when switching between sample rates.

I'll try.

I think you're right.

Playing 24/88,2 files said its resampling to 44,1 when output is set to DoP or DSD Native.

Try this:
Set output mode to none and change 88,2 to something else (doesn't matter) and set it back to No Change.
Set output mode back to DoP.
Try playing a 88,2 file.

The above procedure fixed it for me, and I am now unable to reproduce the issue as my zones now all output as DSD or DoP without resampling first.
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978
PCM2DSD x1
« Reply #5 on: October 29, 2013, 02:26:37 am »

Seems to crop up when switching between sample rates.

Yup, that's it. I see it too after adding several different sampling rates and switch between them.

Good find.
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #6 on: October 29, 2013, 02:47:31 am »

I'm not planning on too much PCM2DSD really, especially if ZoneSwitch stays as is. However, I do tend to roll around and just play songs so I guess it could be fine for some.

JRMC19 is snappy, and my Vega DAC seems to have found the right settings to mesh with MC, so I can't complain.
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978
PCM2DSD x1
« Reply #7 on: October 29, 2013, 04:33:08 am »

I think Zone switch is meant to provide for different media types, not different file types.
Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #8 on: October 30, 2013, 01:19:20 am »

I'm not planning on too much PCM2DSD really...

Absolutely no disrespect to HiFiTubes, but I am hoping to use PCM2DSD 100% of the time.

This is a new feature with a quite a few variables and I'm confused about its implementation. Furthermore, I have the disadvantage of not being able to simply try things out to see how they work because I haven't purchased a DSD compatible DAC yet. I'm deciding on a DAC now and the way that JRiver performs this function will have an impact on my purchasing decision.

  • I'd hoped that I could set the output format to DSD128, and then all PCM and DSD content would be processed and output as DSD128. Apparently, it's not that simple, since there's talk of setting up ZoneSwitches for different file formats, etc.

  • I'm not sure if using DoP vs ASIO has any impact on how real-time conversion works. Not every DAC can accept both DoP and ASIO and I believe that JRiver at the moment insists that you choose DoP for DSD64 upsampling and ASIO for DSD128 upsampling.

  • The Auralic Vega is on my short list of DACs.
  • I'm not sure if these various setup parameters apply differently to playing DSD files natively vs Real-Time DSD conversion.

I understand that it isn't simple to make this complex process work for everybody with varying equipment and needs. But I'm wondering if the current Real-Time DSD output behavior is intended and I just need to understand it better, or if any updates to the functionality are being contemplated.
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #9 on: October 30, 2013, 01:34:12 am »

None taken! I myself don't have a 100% grasp of this myself. I've been mainly focused on getting a stable setup woth Vega on Exact for Femto clock.

IIRC, using Foo_ASIO proxy with DSD bitstreaming would mean the Vega would getting 768kHz stream which it cannot do.

DSD64 would be fine.

I'm sure JRiver team will dial it all in.

*There's so much talk about how DSD is over-hyped, euphonic, etc... who cares, it's fun to see an "old" format breath a little life into the hobby.
Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #10 on: October 30, 2013, 01:49:53 am »

*There's so much talk about how DSD is over-hyped, euphonic, etc... who cares, it's fun to see an "old" format breath a little life into the hobby.

I agree completely!

Since you have the setup I'm considering, could you answer a question?

I've seen from your posts that you've tried Real-Time DSD output, with the Vega, with a couple of workarounds. How close has that gotten you to the experience I was hoping for?

I'd hoped that I could set the output format to DSD128, and then all PCM and DSD content would be processed and output as DSD128. Apparently, it's not that simple, since there's talk of setting up ZoneSwitches for different file formats, etc.

Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10939
PCM2DSD x1
« Reply #11 on: October 30, 2013, 02:04:03 am »

I'd hoped that I could set the output format to DSD128, and then all PCM and DSD content would be processed and output as DSD128. Apparently, it's not that simple, since there's talk of setting up ZoneSwitches for different file formats, etc

Keep in mind that any processing JRiver performs is in PCM, so if you want to convert existing DSD files to DSD128, it will go through PCM in between.
Of course this also means that if you want volume leveling and other DSP, you'll need to go to PCM anyway, so you might've expected this already.
Logged
~ nevcairiel
~ Author of LAV Filters

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #12 on: October 30, 2013, 02:05:32 am »

I agree completely!

Since you have the setup I'm considering, could you answer a question?

I've seen from your posts that you've tried Real-Time DSD output, with the Vega, with a couple of workarounds. How close has that gotten you to the experience I was hoping for?



will pm
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978
PCM2DSD x1
« Reply #13 on: October 30, 2013, 02:08:14 am »

I'd hoped that I could set the output format to DSD128, and then all PCM and DSD content would be processed and output as DSD128. Apparently, it's not that simple, since there's talk of setting up ZoneSwitches for different file formats, etc.

It is that simple. Zones and Zone Switch are used for other purposes.


I'm not sure if using DoP vs ASIO has any impact on how real-time conversion works. Not every DAC can accept both DoP and ASIO and I believe that JRiver at the moment insists that you choose DoP for DSD64 upsampling and ASIO for DSD128 upsampling.

I don't think it matters. It's simply a matter of encoding but the process is lossless. DoP basically stores the 1-bit stream in 32-bit PCM packets.

Bitstreaming DSD with JRiver disables all DSP processing from MC including the excellent volume leveling, which IMHO is the last thing you'd want. Again, IMO, the advantage of DSD lies in how the DAC processes DSD and not in the fact that your source is DSD (which are often different masterings or even PCM upsamples), which I believe is the reason that you want to use PCM2DSD in the first place.

I understand that it isn't simple to make this complex process work for everybody with varying equipment and needs. But I'm wondering if the current Real-Time DSD output behavior is intended and I just need to understand it better, or if any updates to the functionality are being contemplated.

I'm not sure I understand what you mean by whether the current behavior is intended. It's really not that complex. It's basically a matter of installing the DAC's driver including ASIO and setting output format in MC to DoP or native DSD. That is really all there is to it. That's not to say that its all without problems but I think that has more to do with how manufacturers have implemented it than with MC lacking functionality.

If I had to buy a new DAC I would make sure that it comes with an ASIO driver which is proven to be stable. For example, my current DAC's ASIO driver can be run (on my HTPC at least :P) on hardware minimum buffer size, use large buffers unticked, 2 seconds prebuffering and I can't make it skip or stutter, even when running processes on 100% CPU on all cores.

I would make sure it supports the widest range of formats, from PCM 32-bit including 384/352.8/176.4/88.2 & 48 kHz to at least 2xDSD native and DoP. Not all DAC's support all sample frequencies but I think its important they do because if you want to upsample in multiples of 2/4/8, you'll need them.

Last but not least, I'd search and ask around (here in the DAC section would be a good start) whether the DAC works with JRiver and find out if there are any issues with it, like skips, stutters, distortion, etc.
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #14 on: October 30, 2013, 02:35:26 am »

edited pending verification
Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #15 on: October 30, 2013, 02:52:04 am »

Thanks InflatableMouse for your prompt and thorough response.

I'm really glad to hear that ZoneSwitch and other workarounds are not required for real-time DSD128 output of all PCM & DSD content.

I've narrowed down my question. I **think** the following is correct:

There are some premium DACs (I believe the Auralic Vega is one - I don't know how many others there are) that have a USB input board that requires DoP. At present, I believe that JRiver only supports DoP v1.0 which is limited to DSD64.

So, for DACs that do not support DSD via ASIO, is it possible that JRiver could be updated to support DoP v1.1 in the future?

http://dsd-guide.com/dop-open-standard

Again, I may not be right about all of that, but it's the best of my understanding.
Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #16 on: October 30, 2013, 03:01:05 am »

Great post IM.

To recap my experience and my objectives:

1. Play DSD64, DSD128 native files over DoP
2. Play PCM upsampled to DSD128 over DoP

Currently, JRMC19 doesn't allow DSD128 upsampling (PCM2DSD) over DoP.

IIRC, the Vega doesn't do DSD128 natively, it needs DoP.

http://archimago.blogspot.com/2013/09/howto-getting-jriver-mc19-2xdsd.html

So, you might be able to use FooASIOproxy but set to DoP to do DSD128 upsampling in JRMC19; I will verify tonight. I think I posted it does work, but then when you play back native DSD64/128 files, MC doesn't process them correctly because the Output Format is "overriding".


Funny, HiFiTubes and I posted about the exact same complicated topic at the same time. His objectives and mine are exactly the same but he stated it better.

InflatableMouse & HiFiTubes, isn't it true that if JRiver added support for DoP v1.1, it would be compatible with all devices (ASIO and DoP) at all resolutions, native and upsampling, without any extensions or other applications as workarounds?

Whew... that was a mouthful...
Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #17 on: October 30, 2013, 03:08:16 am »

...when you play back native DSD64/128 files, MC doesn't process them correctly because the Output Format is "overriding".

This concerns me...

I could happily live with an optional, essentially lossless conversion of DSD to PCM and back for the purposes of volume leveling & other DSP, as long as it worked, but it seems that maybe it doesn't work.

Is that the case? Do native DSD files not play "correctly" when Output Format is set to DSD128... perhaps only with certain DACs (like the Vega) due to the complexities of ASIO vs DoP?
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10939
PCM2DSD x1
« Reply #18 on: October 30, 2013, 03:17:36 am »

Again, IMO, the advantage of DSD lies in how the DAC processes DSD

To be honest thats not really an "advantage" in the DAC processing itself, its just a difference of how the DSD format works in general.
The post explains that the difference in perception comes from distortions in the signal caused by the ultrasonic frequencies in the DSD format, and the added noise gives it a bit of a more "analog" feeling (and the conclusion is not necessarily thats its simply flat out better to do it this way - its a subjective perception thing afterall).
Logged
~ nevcairiel
~ Author of LAV Filters

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #19 on: October 30, 2013, 04:33:15 am »

To recap my experience and my objectives:

1. Play DSD64, DSD128 native files over DoP
2. Play PCM upsampled to DSD128 over DoP

JRMC19 allows DSD128 DoP.

JRMC19 allows PCM2DSDx1 over DoP.

JRMC19 does not allow PCM2DSDx2 upsampling (PCM2DSDx2) over DoP. Stated in Output Format section:

FooASIO proxy probably does not.

Using FooASIO proxy you can leave DoP on.

Curiously - SACD ISO are not played back properly with PCM2DSDx2 on.

CORRECTION - it seems JRMC19 IS ignoring native DSD64 and DSD128 when Output Format is set to aforementioned PCM2DSD workaround settings! It was SACD ISO causing the issues. SACD ISO will show no reported sample rate, and will show file size for each file which is equivalent of entire ISO.

I will try to test the FooASIO later. So it looks like when MC supports DoPx2 upsampling we'll be good to go! Well, unless you are depending on SACD ISO!
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #20 on: October 30, 2013, 04:41:57 am »

When you enable output format in JRiver it will process audio and therefore, it will have to convert to PCM internally. So native DSD files will be converted to PCM and then back to DSD for output.

I'm not seeing this, which is good. MC should just ignore DSD64/128 when processing PCM for PCM2DSD. This is with DSDx2 set in Output Format.

It seems stable but we did both see that bug where sample rates where dipping to 44kHz then up to 176kHz before going to DSD encoding.

Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #21 on: October 30, 2013, 05:04:04 am »

I'm not seeing this, which is good. MC should just ignore DSD64/128 when processing PCM for PCM2DSD. This is with DSDx2 set in Output Format.

Your image shows 64bit @ 176.4kHz. That's PCM. But I gather that internal conversion to PCM is necessary for DSP such as volume leveling.

Also, HiFiTubes, you stated both of the following:

and...
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #22 on: October 30, 2013, 05:11:54 am »

Your image shows 64bit @ 176.4kHz. That's PCM. But I gather that internal conversion to PCM is necessary for DSP such as volume leveling.

Also, HiFiTubes, you stated both of the following:
and...

I was eyeballing the 64bit; I'm not sure why that happens - maybe someone can chime in.

We need a way for MC to bypass DSD64/128 when doing to PCM2DSDx1/2 of course.

As to your last question, I'm not sure. I think so. It's not clear to me why I can't use the Vega ASIO but I know Kernel Streaming is sometimes an option in MC so assuming you could set to KS and try PCM2DSD in MC directly if the native ASIO driver wasn't working.

Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #23 on: October 30, 2013, 05:18:35 am »

I don't think that works at all. Wouldn't that send 768kHz to the Vega for DSD128? Or maybe therein lies my mistake i.e. 64bit shown as input
Logged

thediscman

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 51
  • Change this by choosing profile
PCM2DSD x1
« Reply #24 on: October 30, 2013, 05:45:33 am »

Very confusing

I couldn't agree more.

Here's a (crudely drawn) table with all four DSD output possibilities.

DSD64    DSD128
ASIO        x     x
DoP    x     x

It seems to me that the problem is JRiver does not yet support them all. And it's not always immediately clear which of the four are supported by the DACs themselves. Everyone just says they "support DSD & DSDx2", but that doesn't always mean that things will work as you'd want them to.

I'd like to see JRiver support all four of these alternatives. That way, it would be compatible with everything out there.

I believe that JRiver already supports ASIO DSD128. If it added DoP v1.1, JRiver would also support DoP DSD128.
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #25 on: October 30, 2013, 06:01:40 am »

Heck, maybe we are about to OD on DSD via DOA!

I just figured, inside my pea-sized brain, that DSD Bitstreaming DSD128 required 768kHz.

Quote
Sanctuary audio processor, the heart of VEGA, is based on multi-core ARM9 architecture
with the calculating capability at 1000MIPS (millions of instructions per second),
ideal for handling multi-channel high resolution music. VEGA supports DXD
format (352.8KS/s and 384KS/s PCM signals in 32bit) as well as DSD stream at
2.8224MHz and 5.6448MHz in native through 'DoP V1.1' transmission protocol.

So indeed only things like the Antelope Platinum or the Phasure do 768.

I don't see how DSD Bitstreaming would work for DSD128 with Vega. I've tried it and seen it fail, loading 768kHz which Vega can't support.



Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978
PCM2DSD x1
« Reply #26 on: October 30, 2013, 06:27:19 am »

To be honest thats not really an "advantage" in the DAC processing itself, its just a difference of how the DSD format works in general.
The post explains that the difference in perception comes from distortions in the signal caused by the ultrasonic frequencies in the DSD format, and the added noise gives it a bit of a more "analog" feeling (and the conclusion is not necessarily thats its simply flat out better to do it this way - its a subjective perception thing afterall).


Yes, thanks for clarifying. I linked the article so people could read it for themselves so I didn't have to spend so many words to explain it ;).

I apologize if my opinion (IMO) came across as anything other than my personal opinion on how I experience DSD.
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978
PCM2DSD x1
« Reply #27 on: October 30, 2013, 06:28:13 am »

I'm not seeing this, which is good. MC should just ignore DSD64/128 when processing PCM for PCM2DSD. This is with DSDx2 set in Output Format.

It seems stable but we did both see that bug where sample rates where dipping to 44kHz then up to 176kHz before going to DSD encoding.



I think that's because you're bitstreaming DSD ;).

Before when it was resampling, you were not.
Logged

HiFiTubes

  • Citizen of the Universe
  • *****
  • Posts: 1123
PCM2DSD x1
« Reply #28 on: October 30, 2013, 08:59:18 am »

Ok plot thickens.

I've switched on DSD Bitstreaming as opposed to DoP.

Everything works. The only catch is switch from PCM tracks which are doing PCM2DSD to native DSD files causing static. If you skip forward to another DSD64 or from DSD64>DSD128 track, it's ok. Restarting same DSD64 or DSD128 track is fine.

So, PCM>DSD64/128 = static (even with 10 second pre-buffer and 5 second silence for hardware sync)

DSD64>DSD128>PCM (being upsampled  PCM2DSDx2) = OK!

    I'm guessing FoobarASIO would behave the same way. Maybe try later.
    Logged

    HiFiTubes

    • Citizen of the Universe
    • *****
    • Posts: 1123
    PCM2DSD x1
    « Reply #29 on: October 30, 2013, 09:17:13 am »

    I think that's because you're bitstreaming DSD ;).

    Before when it was resampling, you were not.

    Every single output method I try will report 64bit input for DoP, so I think that is normal.

    Vega Kernal
    Vega ASIO


    all DoP working properly report the same 64bit input.
    Logged

    thediscman

    • Regular Member
    • Junior Woodchuck
    • **
    • Posts: 51
    • Change this by choosing profile
    PCM2DSD x1
    « Reply #30 on: October 30, 2013, 08:12:51 pm »

    Ok plot thickens.

    I've switched on DSD Bitstreaming as opposed to DoP

    Many thanks to you HiFiTubes for researching & testing this out for those of us who cannot and posting your results!

    I expect the that static issue will be resolved (hopefully soon) with a software update - either a DAC driver update or some modifications to JRiver.
    Logged

    InflatableMouse

    • MC Beta Team
    • Citizen of the Universe
    • *****
    • Posts: 3978
    Re: PCM2DSD x1
    « Reply #31 on: October 31, 2013, 03:52:04 am »

    Every single output method I try will report 64bit input for DoP, so I think that is normal.

    Vega Kernal
    Vega ASIO


    all DoP working properly report the same 64bit input.

    Yes, correct. I meant the "no changes are being made", its because you're bitstreaming (mentioned on the Output line) and therefore the resampling message won't appear either.

    When you disable bitstreaming and switch between different sample rates, eventually the message will reappear. I've reported it in the beta section (hidden for you) and its been acknowledged. I'll be watching the release notes for a fix ;).
    Logged

    InflatableMouse

    • MC Beta Team
    • Citizen of the Universe
    • *****
    • Posts: 3978
    Re: PCM2DSD x1
    « Reply #32 on: October 31, 2013, 03:56:28 am »

    Ah look at this:

    1. Changed: When doing real-time DSD output, changes of input sample rate will restart the hardware (otherwise an undesired resampler can end up in the audio chain).

     8)

    Currently available in 19.0.66. Next public version will have this fix included too.
    Logged

    HiFiTubes

    • Citizen of the Universe
    • *****
    • Posts: 1123
    Re: PCM2DSD x1
    « Reply #33 on: October 31, 2013, 05:46:33 am »

    Wish I could get on the Beta team, should have tried to back in the day.

    Anyway, many thanks IM and DaDiscman for keeping the discussion going; it's much easier to test and troubleshoot when you have some "ears".

    cheers
    Logged

    JimH

    • Administrator
    • Citizen of the Universe
    • *****
    • Posts: 72443
    • Where did I put my teeth?
    Re: PCM2DSD x1
    « Reply #34 on: October 31, 2013, 08:41:32 am »

    Please use the jplay forum for discussion of their "product".
    Logged
    Pages: [1]   Go Up