Jump to content

the current state of DSD-support


MagicDoubleM

Recommended Posts

MagicDoubleM

So, I did play a little with some DSD-files (DSF-WV to be precise) which I'd like to integrate into my music collection, and they get recognized fine (well, they're WV-files).

- the web-player does actually get some sound out, but Emby decides to transcode to AAC with 384kbit/s
- the android app didn't find a playable stream
- but hey, the androidTV-app seems to decode the files on the client device

These tests were done with 2.0 files, but there is 5.1 too.

So, I'm not sure if this is a bug report or feature request, since I don't think DSD was officially announced as supported, and just came in through the backdoor with wavpacks updates, but I’d love to see that supported properly, which basically means those files should be decoded on the client side to whatever it's audio-device supports as max. Bonus points would be given for more transcoding targets, like flac24/96, flac24/48, flac16/48, for cases when transcoding is needed due to bandwidth reasons or clients not being able to decode DSD. AAC also supports 24bit, so thats an interesting option too, to keep a bit higher quality intact from these sources.

  • Like 2
  • Agree 1
Link to comment
Share on other sites

Quote

the web-player does actually get some sound out, but Emby decides to transcode to AAC with 384kbit/s

Hi, this is expected. Web browsers do not support dsd.

  • Like 1
Link to comment
Share on other sites

Quote

the android app didn't find a playable stream

Hi, yes this is on our to do list to resolve. Thanks.

  • Like 2
Link to comment
Share on other sites

MagicDoubleM
54 minutes ago, Luke said:

Hi, this is expected. Web browsers do not support dsd.

Yes, sure, but Chromium for example natively supports FLAC and PCM (up to 32bit), which would be much better transcoding-targets for HD-audio.

Link to comment
Share on other sites

  • 6 months later...
Richard Branches

I can add something if it's still unreported:

My AV receiver has DSD playback support for up to 2.8 Mhz but the Emby for Android TV app is transcoding the codec to AAC instead of passing it through to the AV receiver, however, given the fact that the app is still not passing through anything beyond 2 channels and with more than 48Khz I imagine this is expected.

Let me know if you need a transcode log.

Link to comment
Share on other sites

17 hours ago, Richard Branches said:

I can add something if it's still unreported:

My AV receiver has DSD playback support for up to 2.8 Mhz but the Emby for Android TV app is transcoding the codec to AAC instead of passing it through to the AV receiver, however, given the fact that the app is still not passing through anything beyond 2 channels and with more than 48Khz I imagine this is expected.

Let me know if you need a transcode log.

Hi.  Can you try sideloading our standard android app on the same device and see how that compares?

https://emby.media/emby-for-android.html

Thanks.

 

Link to comment
Share on other sites

visproduction

Quick look up on DSD, I don't find that TCP can support it.  Doesn't that mean the DSD file transfer has to travel separately over Ethernet and is not compatible for Wifi at all?

https://en.wikipedia.org/wiki/Comparison_of_audio_network_protocols
https://en.wikipedia.org/wiki/AES50
https://en.wikipedia.org/wiki/Ravenna_(networking)
 

How can a completely separate protocol be called and confirmed that a connection has been made to a qualified AV amplifier and then monitored when the streaming is done, from inside a TCP/IP streaming app, like Emby?  How would Emby know if DSD stream does not make a valid connection?  It seems like you would either need a hardware converter box to handle this switching or use software conversion, like it is now. Is there an AV amp that tests and sends a TCP awk packet confirming that a good connection has been made?  I never heard of this happening?  I think AV designers just expect the DSD playback traffic to be directly connected from a hardware player through digital audio or high quality cable line input. Do they even bother offering DSD over Ethernet at all?  DSD appears to be currently incompatible with TCP based media player.  Is there some design option I am missing?

Edited by visproduction
Link to comment
Share on other sites

MagicDoubleM
On 4/14/2023 at 2:35 PM, visproduction said:

Quick look up on DSD, I don't find that TCP can support it.  Doesn't that mean the DSD file transfer has to travel separately over Ethernet and is not compatible for Wifi at all?

https://en.wikipedia.org/wiki/Comparison_of_audio_network_protocols
https://en.wikipedia.org/wiki/AES50
https://en.wikipedia.org/wiki/Ravenna_(networking)
 

How can a completely separate protocol be called and confirmed that a connection has been made to a qualified AV amplifier and then monitored when the streaming is done, from inside a TCP/IP streaming app, like Emby?  How would Emby know if DSD stream does not make a valid connection?  It seems like you would either need a hardware converter box to handle this switching or use software conversion, like it is now. Is there an AV amp that tests and sends a TCP awk packet confirming that a good connection has been made?  I never heard of this happening?  I think AV designers just expect the DSD playback traffic to be directly connected from a hardware player through digital audio or high quality cable line input. Do they even bother offering DSD over Ethernet at all?  DSD appears to be currently incompatible with TCP based media player.  Is there some design option I am missing?

TCP isn't the value here, it's the network-protocol that gets the data from the emby-server to the client/app. That's the easiest part in all this, and this is all happening on levels emby doesn't have to touch. 

Now with the data having arrived in the memory of an emby-client there are two options. Emby has somehow pass the data to the player's hardware, so this can pass it through it's output to your receiver. And for that the makers of streaming devices have prepared software connections and APIs that allow bitstreaming of AC3/E-AC3/DTS for example. An app like emby does not access the hardware directly, those days are mostly over, it just passes the data through to another higher software-level. If, for example, amazon decides to not support DSD, because they don't want to pay for licenses, then that's basically game over.

But, here is option two, what an app like emby can do, is handling the DSD-decoding by itself and output as PCM, much like things are done with FLAC and other formats that can't be bitstreamed.

Edited by MagicDoubleM
Link to comment
Share on other sites

Richard Branches
16 hours ago, MagicDoubleM said:

what an app like emby can do, is handling the DSD-decoding by itself and output as PCM, much like things are done with FLAC and other formats that can't be bitstreamed.

I would accept that as a solution, as far as the Emby for Android TV app fixes the current state where audio equal or higher than 88.2Khz gets resampled to 48Khz.

Edited by Richard Branches
Link to comment
Share on other sites

MagicDoubleM
23 hours ago, Richard Branches said:

I would accept that as a solution, as far as the Emby for Android TV app fixes the current state where audio equal or higher than 88.2Khz gets resampled to 48Khz.

Thing is, some devices, like Amazon firesticks, natively support flac. I guess that's how emby handles this right now. Unfortunately, mentioned firesticks support flac only up to 24/48. So this might be the limiting factor here. However, the same devices support PCM up to 24/96. So decoding inside the app would be a good way. Of course the transcoding could happen on the emby-server too, even though this would be a bit heavier on the network.

Edited by MagicDoubleM
Link to comment
Share on other sites

Richard Branches

I bought a FiiO KA1 USB-C DAC for my phone and I thought DSD playback was going to work but it didn't, the DAC has an RGB indicator light that changes depending on the format and audio quality, if DSD playback was possible, a green light would have appeared.

Link to comment
Share on other sites

Richard Branches

I want to clarify something:

If the Emby for Android app is going to provide DSD playback support as it should, then it must:

- Implement the "Exclusive USB Audio Access Mode" option which is now in the Feature Requests section, this is necessary to output the DSD stream directly to a DAC with DSD playback support, otherwise, if the Android driver is used, then only PCM decoding is possible.

- Implement the three audio options for DSD decoding: PCM, DoP (DSD over PCM) and DSD native, otherwise, if the Android driver is used, then only PCM decoding is possible.

In my case with the FiiO KA1, PCM and DoP are supported by the DAC, but DoP is only possible with the "Exclusive USB Audio Access Mode" option.

Edited by Richard Branches
  • Like 2
  • Thanks 1
Link to comment
Share on other sites

  • 5 months later...
Music100

Hi,

I'm using a Chord Qutest DAC with an emby server on Windows 10.   Is there still no way to play DSD files natively without transcoding?

Are there plans to implement this feature request?

Cheers

Link to comment
Share on other sites

Richard Branches

Not yet, I recommend to buy the USB Audio Player PRO app which it has full support in that regard while the Emby devs implement proper support.

  • Agree 1
  • Thanks 1
Link to comment
Share on other sites

3 hours ago, Music100 said:

Hi,

I'm using a Chord Qutest DAC with an emby server on Windows 10.   Is there still no way to play DSD files natively without transcoding?

Are there plans to implement this feature request?

Cheers

Hi, what device and Emby app are you playing on?

Link to comment
Share on other sites

23 hours ago, Music100 said:

It's a Chord Qutest DAC.  I am using Emby with Google Chrome on Windows 10.
https://chordelectronics.co.uk/product/qutest

 

OK, there is currently no web browser can that can play DSD directly without the use of server transcoding. Why not try our Emby Theater app for windows?

https://emby.media/emby-theater.html

Link to comment
Share on other sites

  • 4 months later...
MagicDoubleM

Revisited this for a short little test, and for a change, my current FireCube (3rd gen) running the AndroidTV app gets an AAC 96khz transcode with high bitrates, 2.0 and 5.1 variants work both the same way. When I started the thread things worked differently, but I was on a different device too, so who knows.

Nothing new in regard to playback in browsers and the Android-client on my phone, which still refuses to play those files at all. I'm at the latest betas. Fun sidenote, Symfonium does get an OGG/192kbit/s stream.

So, yeah, DSD via Emby is still not a thing.

Link to comment
Share on other sites

1 hour ago, MagicDoubleM said:

Revisited this for a short little test, and for a change, my current FireCube (3rd gen) running the AndroidTV app gets an AAC 96khz transcode with high bitrates, 2.0 and 5.1 variants work both the same way. When I started the thread things worked differently, but I was on a different device too, so who knows.

Nothing new in regard to playback in browsers and the Android-client on my phone, which still refuses to play those files at all. I'm at the latest betas. Fun sidenote, Symfonium does get an OGG/192kbit/s stream.

So, yeah, DSD via Emby is still not a thing.

Hi, we'll take another look at it. Thanks.

  • Like 1
Link to comment
Share on other sites

Richard Branches
15 hours ago, MagicDoubleM said:

the AndroidTV app gets an AAC 96khz transcode

At least you are getting 96Khz, on Android TV things are worst.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...