[vlc-devel] RAOP/Airtunes

James Laird jhl at mafipulation.org
Fri Apr 8 18:35:01 CEST 2011


On Fri, Apr 08, 2011 at 02:01:24PM +0200, vlc-devel-request at videolan.org wrote:
> From: R?mi Denis-Courmont <remi at remlab.net>
> Subject: Re: [vlc-devel] RAOP/Airtunes
>
> Reception from a "push" protocol does not really fit into VLC. This has
> already proven to be an issue for JACK before RAOP. You need some kind of
> server/daemon running, ready to receive data from a RAOP client. VLC cannot
> practically do that given its playlist and input model.
> 
> However, VLC can hook to the server when the VLC user chooses to, and then
> process the data into the VLC pipeline. Alternatively, the server can use
> LibVLC as its back-end for decoding and output.

This is a push protocol, and as such has to be an on-demand playlist item...
and yes, that almost certainly requires an external daemon, at least for
handling the front-end of the protocol.

The back-end handling, however, consists of the following:
1. RTP packet reception and lost packet handling/resend requests
2. AES decoding (keys from frontend)
3. ALAC decoding
4. slave-clock replay

Items 1, 3 and 4 are already solved problems within VLC, and 1 cannot be
solved using libvlc alone?

I'd be very happy to have a playlist item that accepts any stream from a
running frontend, and either skips if not playing or waits for a stream.

> > I've extracted the Airport Express RSA private key that is necessary to
> > implement this.
> 
> On working around DRM, see
> http://lkml.indiana.edu/hypermail/linux/kernel/0307.1/2019.html

I would actually argue that this is not a case of DRM implementation, but
purely one of vendor lock-in.  Apple RAOP sources stream data solely in ALAC -
which is equivalent to uncompressed data - and not in any original compressed
format.  This is exactly equivalent to the digital recording permitted by
loopback interfaces within both Mac OS and Windows, as far as I'm aware.

In fact, there's even an optical output port on the ApEx I ripped the key
from, which kindly beams out this same PCM stream in visible light.

Cheerio,
James



More information about the vlc-devel mailing list