Jump to content
IGNORED

Diretta Audio Transport Protocol


Recommended Posts

1 hour ago, YU said:

Flattening target process  by small send data size and short between time.

 

Smaller the data block, higher the protocol overhead and CPU load...

 

Quote

Thanks. So what is the theoretical benefit? Less processing on the client side?

 

Smaller the packet, more processing time it takes on the client side because of involved overheads.

 

Quote

Target processing is small.
Load fluctuation to target power supply is small

 

And in worst case you send packets so frequently that the packet rate falls into audio band. Like UAC's 8 kHz... Then it shows up easily in the measurements...

 

 

P.S. Is this yet another protocol that doesn't work over WiFi? (like AES67/Ravenna/Dante/AVB)

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment

That's right.
If the packet size under the MTU size, processing high.
multiple packets can not be processed at once,then  tasklet occur frequently.
but processing per one transaction is short process time.

Diretta is  optimize best MTU size.  
Target do not manage buffer control.
designed to reduce processing, use UDP etc.

case
22Mhz DSD      Send Sycle = 500usec  size = 1494 byte
44.1Khz PCM   Send Sycle = 2000usec(limit) size = 767 byte

Link to comment
6 minutes ago, YU said:

That's right.
If the packet size under the MTU size, processing high.
multiple packets can not be processed at once,then  tasklet occur frequently.

Diretta is  optimize best MTU size.  
Target do not manage buffer control.
designed to reduce processing, use UDP etc.

 

There are good zero-copy TCP offload engines that handle large DMA transmissions without CPU involvement...

 

Just do full speed transmission of a file over 1 Gbps or 10 Gbps ethernet and observe which method has lowest CPU load... ;)

 

This is quite well optimized, since practically entire Internet relies on fast transmission of huge amounts of data over TCP.

 

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment

It has a different purpose.

TCP need send ACK.....
designed to suppress the effect on the target.
Only use of the local network.
It is not aimed at increasing the throughput.

We are planning to implement FPGA and Hardware.
ZeroCopy is a future task

Link to comment
1 hour ago, YU said:

case
22Mhz DSD      Send Sycle = 500usec  size = 1494 byte
44.1Khz PCM   Send Sycle = 2000usec(limit) size = 767 byte

 

Now the challenge with this is similar to USB Audio Class...

 

500 µs = 2 kHz

2000 µs = 500 Hz

 

While USB Audio Class uses 125 µs = 8 kHz

 

These fall into audio band and can be frequently detected from the DAC's analog output.

 

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment

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...