More than a month ago I was looking for a GStreamer sink that would stream audio player by the GStreamer framework to an Apple Airport Express.
I couldn't find anything, the only thing I found was JustePort by Jon Lech Johansen. And a certain Bash script.
I got it working more or less. What I did was create an ALSA sink, so it would write all data it received to a file (actually a FiFo). The Bash script I found would then be started and in a infinite loop keep reading data from the FiFo and pipe it to JustePort.
It worked, well I got sound on my speakers (which are connected to an amp. which is connected to the Apple Airport Express). The problems and/or limitations I experienced were:
- A crash of the music player the first play you want to start playing a song with this construction. Restarting the music player and trying again always worked.
- An irritating buzz when the FiFo was empty (the player was paused, or the gap in between songs).
- The horrid construction and actions that need to be taken to get it working each time.
- And of course the fact that all sound in Linux that was player over ALSA would be outputted to my speakers.
Now I am not a really great programmer on these kind of systems (too hardware oriented I'm afraid) but maybe I can help you in some way.
I think the best thing to do is to get something small to work first like detect if a Jack is plugged into the Airport's socket. And then from thereon continue implementing more complicated things.
Let me know if I can help you in any way, cause I have two of these babies at home, so I have a testbed.