Re: [linux-audio-dev] alsa ethernet streaming?

From: Asbjørn Sæbø <asbjs@email-addr-hidden>
Date: Mon Jun 20 2005 - 11:26:18 EEST

On Fri, Jun 17, 2005 at 11:27:14AM -0600, Garett Shulman wrote:
> Asbjorn, LDAS looks perfect. Can you give more detail about the status?
> -Garett

Did you read the info I linked to?
<URL: http://www.q2s.ntnu.no/~asbjs/ldas/ldas.html >

It is, it must be said, still in early development. But some basic
functionality is present, and it has (almost?) reached a stage where it
will be useful for me.

LDAS consists of a sender and a receiver. It is, currently, capable of
quite reliable one-way transmission of two channels of audio.
(More than two channels should also work, but has not been tested in
this version.)

(I also just did some testing that indiciated that full duplex may be
achieved by running both sender and receiver on both computers. This
may serve as a stopgap until I get around to merge the sender and the
receiver into a full duplex version.)

Audio is taken from the analog input of the sending computer, and
delivered to the the analog output of the receiving computer.

The sender is very simple, it is mainly a loop reading data from the
sound card and writing them to a network socket.

The receiver is a bit more elaborate. It has two threads, one receiving
data from the network and queueing them, the other thread
transferring data from the queue to the sound card. The purpose of the
queue is to deal with lost/late/out of order/duplicate packets. There
is also a very simple mechanism (skip/reuse samples) to deal with
sampling frequency drift. (The sender and the receiver will not have
exactly equal clock frequencies.)

The latency is currently four sound card periods plus queue
length, network transmission time and A/D and D/A conversion time and
some processing time. With a good sound card and a short network
distance, latencies suitable for music playing should be attainable.
(I have measured this version to between 70 and 80 milliseconds, but
that was with 10 ms periods and a queue of three periods.)

It is still a bit early. But if you don't mind trying early code, I'll
send you the sources so you can see if it fits your needs.

Asbjørn
Received on Mon Jun 20 12:15:15 2005

This archive was generated by hypermail 2.1.8 : Mon Jun 20 2005 - 12:15:15 EEST