On 07/23/2013 10:31 AM, Jay Sorg wrote:
Hi David,

Hi, it's always nice to see new contributors wanting to do great stuff with
PA :-)

But could we have a little overview of the greater picture so we're sure we
choose the best solution here?

First, is this for Linux clients talking to Windows servers, the other way
around, or both?

It's for RDP clients(Linux, Windows, Mac, Andriod) connecting to Linux
xrdp servers.
RDP defines the audio within the protocol so this sink is just used with IPC.
MS opened the protocol, here is the audio part.
http://msdn.microsoft.com/en-us/library/cc240933.aspx
In the case of xrdp, there is no MS code on the server side, all open source.

Second, how is the xrdp sink connected to other applications and libraries?
Does it mean more build dependencies for PA? How is it synchronised with
video?

I use a unix domain socket with a simple message API.  No added dependencies.
This is just audio, can be used with video but this level is unaware.

Here is the sink, it's really simple.
You guys will find this familiar.
https://github.com/FreeRDP/xrdp/blob/master/sesman/chansrv/pulse/module-xrdp-sink.c

Thanks, I had a look. Is this a correct understanding:

- the xrdp server will call something like "pacmd load-module module-xrdp-sink format=x rate=y" and thereby sets up the connection between PulseAudio and xrdp.

- the xrdp sink just talks to the xrdp server over the unix socket. It's the xrdp server that then combines this with video/display output and sends to the client.

Third, we talk about an xrdp sink, will there also be an xrdp source, or is
this not needed, for what reason?

Yes, we need a source too.  Again, no dependency.  Just a domain socket API.

If you don't want to label it xrdp, it could be a generic unix domain
socket sink / source.
Maybe other remote desktop projects can use it.

In short, I don't mind this code going in (after a more detailed review, perhaps). I however suspect that we're going to get bug report about missing A/V synchronisation quite soon, and then we should tell people that this needs to be resolved in xrdp rather than PA. Does that seem reasonable?


--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to