[pulseaudio-discuss] Selecting Airplay as PiulseAudio Sink
adityar7 at gmail.com
Wed Jun 1 23:23:54 PDT 2011
On 05/25/2011 03:03 PM, Colin Guthrie wrote:
> If you could give more details I can advice more.
> Keep in mind that the Airport support is still rather rubbish in lots of
> ways (I say this as the author!) and does still need work. Timing and
> buffering in particular.
I finally managed to get it working. I was probably not operating the
GUI applet properly. The Airport is now able to play the audio sent to
it via PA. But as you point out, there are issues with timing and
buffering which lead to extremely choppy sound that is basically unusable.
The raop_play tool, however, has no such problems and works perfectly.
In fact, I can have it use a pipe as a source, and have PA use that pipe
as the sink, thus streaming all audio to the Airport. This would be fine
for just playing continuous music, but unfortunately it does not work
well with non-trivial use cases such as pausing and restarting the
audio, multiple sources, etc. due to the fifo nature of the pipe (for
example, it will play remaining data in the pipe before playing new
incoming data leading to unsynchronized audio from video playback).
You mentioned that some work is needed to tidy up the protocol. Should
it not be possible to create a PA raop sink by simply copying the
protocol implementation from raop_play? I looked at the raop_play code
and the functions implemention the actualy sending the receiving of data
are quite simple. Or are there other complications in writing the PA
sink? I'm not familiar with the details of the timing/buffering issues
you mention nor with how PA works, but is this issue something inherent
in PA, or do you think raop_play explicitly solves it?
More information about the pulseaudio-discuss