• These commercial threads are for private transactions. diyAudio.com provides these forums for the convenience of our members, but makes no warranty nor assumes any responsibility. We do not vet any members, use of this facility is at your own risk. Customers can post any issues in those threads as long as it is done in a civil manner. All diyAudio rules about conduct apply and will be enforced.

Amanero Isolator/Reclocker GB

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
....

DSD64 -> DoP -> PCM 176k4
DSD128 -> DoP -> PCM 352k8

Thanks Clivem, much as I thought! I am sure the 9018 DAC will process and report as such.
I was under the impression that the ES9018 DAC chip identified and de-encapsulated DoP? Will check.
Ray
there is no way this adapter board with allow DSD transmission on its output if the DSD led is not ON - so all PCM for DoP as processed by BBB/Botic and this is what the 9018 DAC will see and handle. In any case the de-encapsulation of DoP to DSD should be done at the driver(Botic) side but this is not obviously happening from your test results

Again, I am trying to instigate here with my limited knowledge but I reckon this DoP stuff is mainly to allow DACs without DSD capability to play 'DSD' music. For the average Joe using a lifestyle AV system this does not really matter as it plays everything but for us looking for the ultra pure capabilty of native DSD, DoP will not cut!

The challenge here now is for an end point display to correctly resolve PCM, DSD and DoP music.
 
Last edited:
The challenge here now is for an end point display to correctly resolve PCM, DSD and DoP music.

Like this?
 

Attachments

  • 13-07-04 Screen Shoots01.JPG
    13-07-04 Screen Shoots01.JPG
    592.6 KB · Views: 227
  • 13-07-04 Screen Shoots01_1.JPG
    13-07-04 Screen Shoots01_1.JPG
    597.9 KB · Views: 223
  • 13-07-04 Screen Shoots01_2.JPG
    13-07-04 Screen Shoots01_2.JPG
    593.7 KB · Views: 215
BBB receives a long stream of data from PC using the streaming protocol.

The streaming protocol — TCP/IP has a long stream of data that is transmitted from one end of the connection to the other end, and another long stream of data flowing in the opposite direction. The TCP/IP stack at one end is responsible for breaking the stream of data into packets and sending those packets, while the stack at the other end is responsible for reassembling the packets into a data stream using information in the packet headers.


Network streaming for LAN optimized protocols like DLNA, use UDP (connectionless) as supossed to TCP. TCP (connection oriented) uses things like, handshakes, sliding window mechanisme/error detection to "garantee" delivery, which creates additional latency etc, which is not what you want when streaming media. USB has much less overheads as it's designed for point-2-point & short distance. The BBB will buffer data going from Ethernet to USB, there is inherent latency here in the order of a few ms minimum. MPD and sorts will allow for manually setting bigger play-out buffer sizes to counteract upstream (network) latency and such..

Thanks Cyril and Stijn001, I am getting a better understanding now :)
I keep forgetting that there is a buffer within MPD to assemble the packets and then stream out data much like file transfer first to disk and then playback. So DSD delivery on-the-fly is possible in a networked system!
 
Hi cyrilliu.

The first thing to observe is that your diagram is incorrect; in the case of native DSD the second and third links are not passing I2S data but DSD data. What Acko's new interface does is to arrange for the same connections to be used for I2S (PCM) or DSD data as required.

To answer your specific questions (as best I can....)

How do you know what the data is being transcoded to wav DoP if the data does not transcoded by USB?

By reading the Asset debug file

Why does not stream native DSD files from Asset V5 to Botic if the data is being transcoded to DAC via I2S as the attached file?

You diagram about transporting data between BBB/SO3/DAC is irrelevant to the first part of your question because native DSD never arrives at the BBB in the first place. It appears that the problem is with my UPnP controller, which doesn't recognise that the BBB is DSD capable.

Advanced I2S port of my DAC, North Star Design Excelsio ,supports PCM until 384-32 and native DSD

We know that a BBB/Botic equipped with Acko's new interface card accepts native DSD and outputs correctly to a DSD capable DAC so you just need an infrastructure to get the DSD to the BBB, that's where I'm experimenting and learning at the moment. I know JRiver can send native DSD to Botic.

Hope that helps

Ray
 
Last evening I did some more testing of streaming native DSD files from Asset V5 to Botic and was able to confirm that the data is being transcoded to wav DoP.
Ray

@Ray, could you please check again if this end result of the transcoding by Asset V5 is wav DoP and not wav PCM?

Piecing together more information, I would think if it were really DoP encapsulation, the BBB/Botic would have de-encapsulated to native DSD and the DSD led would have come ON. Output interface of the adapter board then gets configured for DSD and DAC would have received pure DSD
 
Last edited:
OK, first things first; I set a hare running on a mistaken interpretation so apologies to you guys who have been having a discussion about DoP. In fact the DSD data is being transcoded to 176KHz PCM not DoP. I misread the debug data.

Next, I have a native DSD streaming solution up and running and have been having a good listen. Using JRiver on my laptop, using Asset V5 (on the same laptop) as its library, I am able to choose 'botic' as the player. The DSD led lights up on the interface board and DSD64 and DSD128 both play. The only problem I've had is that occasionally a track will just end and the next one in the playlist will start but I believe this is because I have a sub-optimal network arrangement with this experimental set-up (wireless from the laptop to the router and a Powerline Ethernet connection to the botic) and I'm sure a proper Gb Ethernet connection will improve matters. As has been stated above, native DSD streaming doesn't have the niceties of TCP/IP around guaranteeing packet delivery.

Sound quality wise (assessed entirely subjectively and unscientifically and using good quality headphones) there is not too much between a good hi-res FLAC file and the DSD, both sounding very good. The DSD perhaps shades it with a little more air and detail and sounding a bit more 'relaxed'. I have downloaded some sample tracks of. ostensibly, the same recording at 44/16, 96/24 and 192/24 PCM and DSD64 for comparison. I've also converted some CD rips to DSD64 and DSD128; I much prefer the DSD versions of the CD rips.

Onto the UPnP/DLNA solution that should stream native DSD from Asset V5 to botic using my BubbleUPnP control point. I have established that Asset is offering to stream native DSD but the control point doesn't recognise that botic is DSD capable and tells Asset to send wav PCM data (in fact Asset offers four 'streams' to allow for different renderer capabilities, the original 'as is', wav and a couple of others that I haven't bothered to check out but I guess one will be mp3 as the lowest common denominator). So, if the control point can recognise the DSD capability it should work so I now have to try and understand how that 'recognition' happens so I can follow up.

I'm making some progress and have enough evidence that the rewards are worth some more effort to get the UPnP/DLNA solution working and have a safe fallback position with JRiver.

Cheers

Ray
 
Last edited:
@Ray, could you please check again if this end result of the transcoding by Asset V5 is wav DoP and not wav PCM?

Piecing together more information, I would think if it were really DoP encapsulation, the BBB/Botic would have de-encapsulated to native DSD and the DSD led would have come ON. Output interface of the adapter board then gets configured for DSD and DAC would have received pure DSD
I do not think it is a good idea to let BBB/botic do DoP de-encupsulating. We're creating unnecessary overhead:

DSD file -> DSD to DoP by streamer software -> DoP to DSD by Player software on BBB -> native DSD output via IS2 by botic driver -> DAC chip.

My suggestion would be to look for streamer software which can output DSD as a stream (like squeezeserver).

btw streaming native DSD (non DoP encoded) also save some bandwidth
 
Last edited:
What do you mean here with 'native DSD streaming does not have niceties of TCP/IP ...' ?
If you stream DSD over a network you'll still using the network stack (TCP/IP). Or do you mean streaming using UDP packets?

Yes. Maybe I should have just written 'As has been stated above, native DSD streaming doesn't have the niceties of guaranteed packet delivery'.
 
I do not think it is a good idea to let BBB/botic do DoP de-encupsulating. We're creating unnecessary overhead:

DSD file -> DSD to DoP by streamer software -> DoP to DSD by Player software on BBB -> native DSD output via IS2 by botic driver -> DAC chip.

My suggestion would be to look for streamer software which can output DSD as a stream (like squeezeserver).

btw streaming native DSD (non DoP encoded) also save some bandwidth

Thanks! Getting very interesting:)


The only de-encapsulation I reckon is to strip out the DSD marker in the header and you get native DSD. Not much effort and certainly no decoding required. That is how USB solutions like Amanero for
DoP work for OS that do not support native streaming. e,g. MAC. So MPD I guess would be similar.

BTW, I cannot seem to find any information on native DSD streaming over a network. There is ASIO for Windows that does bitstreaming on USB but how can this be achieved in a network transmission. JRiver mentions DoP when talking about DSD streaming and maybe even Asset?
 
Last edited:
Thanks! Getting very interesting:)


The only de-encapsulation I reckon is to strip out the DSD marker in the header and you get native DSD. Not much effort and certainly no decoding required. That is how USB solutions like Amanero for
DoP work for OS that do not support native streaming. e,g. MAC. So MPD I guess would be similar.

DoP de-encapsulation is indeed normally done by Audio interfaces (USB->I2S) like Amanero. DoP was indeed introduced for OS platforms without ASIO like support.
Linux can now do ASIO like native DSD output.

MPD as player software, is currently only able to encode DSD->DoP. As intended for the normal DSD DoP chain:

DSD to DoP with MPD -> DoP to DSD by Amanero/XMOS -> I2S out -> DAC.

We're now trying to let MPD do DoP->DSD so the botic driver can output native DSD.

Possible solution for MPD would be to make the MPD FLAC module (*) recognize FLACs with DoP and output DSD .

(*) in case of using WAV with DoP compressed to FLAC
 
Isn't DoP a bit of a blind alley here, we have a native DSD capable renderer so shouldn't we be focussing on how to get said data to the renderer?

I have a working solution with JRiver. Squeezeserver is being suggested as another possible solution.

For the sake of domestic harmony I'm going to try and resolve the issue with my UPnP infrastructure to maintain the minimum number of UIs required to operate all of my 'gadgets'!

Ray
 
DoP de-encapsulation is indeed normally done by Audio interfaces (USB->I2S) like Amanero. DoP was indeed introduced for OS platforms without ASIO like support.
Linux can now do ASIO like native DSD output.

MPD as player software, is currently only able to encode DSD->DoP. As intended for the normal DSD DoP chain:

DSD to DoP with MPD -> DoP to DSD by Amanero/XMOS -> I2S out -> DAC.

We're now trying to let MPD do DoP->DSD so the botic driver can output native DSD.

Possible solution for MPD would be to make the MPD FLAC module (*) recognize FLACs with DoP and output DSD .

(*) in case of using WAV with DoP compressed to FLAC

Thanks again! Looks like we are getting into the bottom of this :)

But please educate me:
How does the 'chain' looks like when MPD plays a locally stored native DSD file on BBB?
I was thinking it will be like: DSD to DoP with MPD -> DoP to DSD by Botic
 
Isn't DoP a bit of a blind alley here, we have a native DSD capable renderer so shouldn't we be focussing on how to get said data to the renderer?
Yes!

I have a working solution with JRiver. Squeezeserver is being suggested as another possible solution.
For completeness sake, wrt squeezeserver. Currently squeezelite (as player for squeezeserver) is not capable of doing native DSD output, it only outputs PCM (for DSD it does DSD->DoP).

It is still on my TODO list to investigate the possibility for squeezelite to output native DSD.
 
Thanks again! Looks like we are getting into the bottom of this :)

But please educate me:
How does the 'chain' looks like when MPD plays a locally stored native DSD file on BBB?
I was thinking it will be like: DSD to DoP with MPD -> DoP to DSD by Botic
MPD reading DSD (.DSF/.DFF) files locally or from a network share (SMB/NFS) and outputting native DSD to the botic driver the chain is simple:

DSD file -> MPD native DSD output -> botic driver DSD output via I2S -> DAC chip

No DoP insight :)
The botic driver can only output PCM or DSD.
 
Isn't DoP a bit of a blind alley here, we have a native DSD capable renderer so shouldn't we be focussing on how to get said data to the renderer?

I have a working solution with JRiver. Squeezeserver is being suggested as another possible solution.

For the sake of domestic harmony I'm going to try and resolve the issue with my UPnP infrastructure to maintain the minimum number of UIs required to operate all of my 'gadgets'!

Ray

As they say a family that fights together stays together, otherwise life gets very boring :D

Now, correct me if I am wrong but I do not think there is a network bit streaming solution as yet. JRiver, Asset, Squeezeseerver included. Everyone is jumping on the DoP bandwagon that is standardized, afaik
 
Now, correct me if I am wrong but I do not think there is a network bit streaming solution as yet. JRiver, Asset, Squeezeseerver included. Everyone is jumping on the DoP bandwagon that is standardized, afaik

If Botic has no capability to 'decode' DoP why does the DSD led come on when I play a native DSD file from JRiver. If it were being transcoded to DoP Botic would see it as PCM wouldn't it?

And, circumstantially, why am I getting 'dropouts' when playing DSD that I don't get with the FLAC versions - it kinda ofsuggests streaming?

Ray
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.