What is RaopX
RaopX is a Apple Airport Express client for Os X based on raop_play.
What is the main difference between RaopX and raop_play
The original raop_play lets you stream music files to your Airport Express. RaopX streams any audio that comes in on the default input device of your Mac, and combined with the routing functionality of Soundflower this gives you the ability to stream audio from any application you’ve got on your Mac to the Airport Express.
Requirements
- Xcode Developer Tools – Available from your Os X install DVD, or you can download it from Apple Developer Connection (Only needed if building from source)
- libsamplerate (Secret Rabbit Code) – Get it here (Only needed if building from source)
- Soundflower – Get it here
Install Instructions: Using the installer package
Only for Intel Macs running OS X 10.5 or newer
- Download and install Soundflower – follow instructions
- Enable Soundflower – Set ‘Soundflower (2ch)’ as default input and output device in System Preferences
- Download and install RaopX – Download the RaopX Installer (dmg file) and follow instructions. Installs the RaopX executable and the libsamplerate library into /usr/local/bin and /usr/local/lib
- Start RaopX – Open Terminal.app and enter RaopX at the prompt
Install Instructions: Building from source
- Install Xcode Developer Tools – follow instructions
- Download and install libsamplerate
-
tar zxvf libsamplerate-0.1.7.tar.gz cd libsamplerate-0.1.7 ./configure make sudo make install
- Install RaopX – One of two options
- Option one: Download RaopX_v0.0.4.tar.gz
-
tar zxvf RaopX_v0.0.4.tar.gz cd RaopX_v0.0.4 ./configure make sudo make install
- Option Two: Download and unzip the Xcode project. Open project in Xcode and build it. Copy executable to e.g./usr/local/bin/
- Download and install Soundflower – follow instructions
- Enable Soundflower – Set ‘Soundflower (2ch)’ as default input and output device in System Preferences
- Start RaopX – Open Terminal.app and enter RaopX at the prompt
Know Issues
- 9 seconds delay because of buffering
- No support for ‘iTunes Speaker Password’.
- No Tv support
- Consumes disk space while in use (/tmp/raopxtmpbuffer). Approximately 6-700MB per hour
Downloads
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
- RaopX_v0.0.4.dmg (2.6 MB) *Only for Intel Macs running OS X 10.5 or newer
- RaopX_v0.0.4.tar.gz (88.7 kB)
- RaopX_v0.0.4XCode.zip (57.3 kB)







I tried getting this up and running on my machine, but I keep getting the following when I try to run it from the terminal. Any ideas?
“Searching for RAOP capable devices
ERR: exec_request: request failed, error 401″
Thank for everything.
- Joe
Hi Joe.
Thank you for taking the time to try out RaopX.
The 401 error is ‘unauthorized access’.
I guess you have your Airport Express setup with ‘iTunes Speaker Password’.
This is currently not supported by RaopX.
Remove the password, and everything should be fine.
-Hersson-
Wow! Works just as expected. I’ve never compiled code before so I was a little hesitant, but it was fun learning a few things in the terminal. Streaming music from my browser now – Thanks for this program!!
Hi Ed.
Glad you liked it.
Thank you for your comment.
Cheers,
Hersson
Hi,
when i try to run RaopX on Terminal I get the following message:
Searching for RAOP capable devices
Connected to Hanss-AirPort-Express.local.
Opening AudioQueue
Bus error
Do you have any idea?
Thanks
Hans
Hi Hans.
Have you remembered to set ‘Soundflower (2ch)’ as both default input and output device?
Cheers,
Hersson
Yes I had. I had installed the newest version of Soundflower (1.5.1) and there was only Soundflowerbed.
So i installed an older version of Soundflower (1.2.1). Now it’s working fine.
Thanks, great program
greets from Germany
Thank you, glad you liked it.
The latest version of Soundflower (1.5.1) should work though. I am using it myself. Either way, great that it is working for you now.
Hi Hersson,
Sorry to say that despite my best efforts I couldn’t get RaopX
to run on my MacBook 10.5.5
I’m still getting:
Connected to XXXXX.local.
Opening AudioQueue
Bus error
I’ve tried installing several soundflower versions (1.5.1, 1.4.1, 1.2)
with no success.
AirTunes works fine with iTunes
Thanks very much for your help
regards
bruno
Hersson,
I finally managed to run RaopX as root.
But the only result I can get so far is a copy
of my microphone input.
I will try further
Thanks for your help
bruno
Bruno,
I have tried reproduce the ‘bus error’ problem that you and Hans experienced, but I haven’t had any luck so far. It’s also very strange that you have to run RaopX as root. That should not be necessary.
Now, when you say that you have only managed to get audio from your line in device, was soundflower enabled at the time? Playing audio from the default input is what RaopX does, so if Soundflower is not enabled you will get whatever audio your default input (microphone) pics up.
Sorry for the stupid questions, but I would really like to find out why some people are having theese problems.
Cheers,
Hersson
It seems I’m one of them: I’m also getting the “Bus error” message:
RaopX 0.0.4
Searching for RAOP capable devices
Connected to XXXX.local.
Opening AudioQueue
Bus error
I’m still on Mac OS X 10.5.8, and I’ve compiled libsamplerate-0.1.7 and RaopX_v0.0.4. I have Soundlfower 1.5.1 and it’s configured both as my input and output.
Could it be something related to poor wireless signal? I don’t have the the strongest signal for this particular AirPort, sometimes it fails even with iTunes.
Thanks,
Rubens
Rubens,
I still don’t know why some get this ‘Bus error’.
I am trying my best to get hold of a Mac running 10.5, so I can build a new installer package. I aiming at having a new one tested on 10.5 and 10.6 out by tomorrow evening. I am very curious to know if the same people get the same error on a build which I have tested Ok on my system.
If you haven’t solved it by then, please stop by tomorrow and see if I’ve got the installer out, and if you then later could report back on the result I would really appreciate it. The same applies if you identify the cause.
If you’d like me to I can send you an e-mail when the new installer is ready.
Regards,
Hersson
Rubens,
One other thing just came to mind. Hans, who first reported the ‘Bus error’ problem, he installed an older version of Soundflower and the problem disappeared. See his comment from December 2nd.
Hi Herrson,
Sorry for not replying sooner – speaking of replies, for some reason I can’t reply to your post, so I’m replying to my own…
I’ve downloaded the new .DMG you have provided (thanks!), and while I’m not getting the ‘bus error’ anymore, RaopX is not seeing the AirPort Express – then again, as I told you, the signal is weak, so I’ll hold and fix my wiring before testing things again, and then I’ll post whatever happened here!
Thanks again,
Rubens
P.S.: I didn’t try the older versions of Soundflower, since Bruno’s post seemed to indicate it was no use, but I’ll try it if everything else fails.
Hi Hersson,
I have successfully compiled the Xcode project of RaopX using latest Xcode (10.6 SDK), libsamplerate (0.1.7) from macport, and also installed Soundflower without any problem on 10.6.2.
The sound is well transmitted to my AirportExpress but is slowed down, that is sound plays slowly than on my laptop (macbook air)… As time goes by the delay increases and that’s very annoying. Do you know where it can come from ?
Sincerly,
Arnaud
Hi Arnaud.
Just so I understand: Is the problem that the sound coming from your Airport Express and Macbook Air speakers are not in sync, or is it that the sound is being played back slower. Like e.g in a lower pitch? If it’s the latter of the two I have no idea whats going on. The sync issue however is how RaopX works. RaopX uses a 9 second file buffer, so initially there will be a 9 second delay and it may grow while RaopX is running. You may change the code and decrease or remove this initial delay, but then the first 8-10 seconds will be rather scattered, and they will still not play in sync.
Regards,
Hersson
It’s not a problem of sound sync between the laptop and the airport express one but that the sound is being played back slower on airport express (lower pitch). I have tried several other lower and higher values for the buffer’s size. With lower ones I have clearly noticed that the sound is scattered during the first seconds, but also that these “pauses” in the streaming are not arising since the buffer contains approximately 9 or 10 seconds…
I have looked to several other parameters and it seems to come from the SAMPLE_RATE (44,1kHz while I configured Soundflower to 48kHz). Using 44kHz in Soundflower solved the problem…
I have a more general question: why is it required such a large buffer size ? is it because of PCM streaming rather than a compressed one ? does the airport express only supports PCM ?
Sincerly,
Arnaud
Nice work with the samplerate.
Yes, and no.
The main reason for such a large buffer is that since RaopX is really two programs in one (recorder and player) both working with the same file, and both with it’s own internal buffer (of different sizes), we have to make sure they don’t ‘collide’. Like if the player tries to buffer more than what is allerady written to the buffer file. This is the scattering you hear if the buffer is too small. I am not sure what codecs the AE supports, but iTunes uses Apple Lossless.
Regards,
Hersson
[...] RaopX Tagged:audiomacmusicstreaming media [...]
[...] RaopX is a free download, Mac only. RaopX [...]
Im having troubles with RaopX loading in terminal. When I try to launch it reads…
“dyld: Library not loaded: /usr/local/lib/libsamplerate.0.dylib
Referenced from: /usr/local/bin/RaopX
Reason: no suitable image found. Did find:
/usr/local/lib/libsamplerate.0.dylib: unknown required load command 0×80000022
/usr/local/lib/libsamplerate.0.dylib: unknown required load command 0×80000022″
I using the dmg in 10.5. Tried reinstalling but its still not working
Hi Tyler.
I was afraid of this.
I build the installer on 10.6, but with the 10.5 SDK.
I don’t have a Mac running 10.5 to test on, so I have to admit I just hoped it would work on 10.5 as well.
It really should have, but apparently I have done something wrong.
RaopX itself when build on 10.5 runs just fine.
I’ll have a new installer-dmg out as soon as I can. Tested on 10.5 this time.
I’ve changed the text so it now says ’10.6 only’ until I get it fixed.
Sorry for the inconvenience, and thank you so much for taking the time to report the problem.
Regards,
Hersson
Have you tried porting this to a jailbroken iPhone? Would it be doable? iPhone + air tunes = win
Hi Dale.
No, I have not, and I don’t know if it is possible.
Sam Maffei wrote this as a reply to a similar question earlier (On one of my posts about RaopX):
Would love to stream to an AirPort Express from the iPhone. But, the iPhone SDK won’t let you get direct access to the audio data.
Regards,
Hersson
[...] as well,but it only takes up 586kb, so it’s not a big deal. Lastly, you’ll plugin RaopX with a final installer, which will let you enable the wireless feature when you type [...]
Beautiful! Thanks for the work!
You’re welcome.
Thanks for the comment
You should post your code as a formulae on Homebrew.
http://github.com/mxcl/homebrew
Would make installing this loads easier! Updating it too.
I’ll take a look at it.
Thanks
I ran this with StarPlayr to run my internet satellite radio feed to my stereo. It worked perfectly, thanks!
I get the following error after installation (after installing both soundflower and RaopX) when I try to run the terminal command:
~ myhostname$ RaopX
dyld: Library not loaded: /usr/local/lib/libsamplerate.0.dylib
Referenced from: /usr/local/bin/RaopX
Reason: no suitable image found. Did find:
/usr/local/lib/libsamplerate.0.dylib: unknown required load command 0×80000022
/usr/local/lib/libsamplerate.0.dylib: unknown required load command 0×80000022
Trace/BPT trap
Any ideas?
Thanks!
- Gwydion
ah, read an earlier comment – it seems the issue is that I’m running 10.5 rather than 10.6. Please do let me know when then new dmg is out for 10.5, would you? In the meantime if I get ambitious I may try installing Xcode and compiling it myself (though I’m a pediatrician, not a computer scientist!). Thanks for all the hard work!
Gwydion,
you’ll be the first to know
Hi,
As far as I can tell, I have everything set up correctly, but I keep getting the following error message:
RaopX 0.0.4
Searching for RAOP capable devices
ERR: error:get_tcp_nconnect addr=8.15.7.100, port=5000
Hi Ted.
The host is not responding.
Check that the ip returned is the actual ip address of your airport express, and try to telnet in on the port mentioned.
See if that works. It’s strange if RaopX finds a none valid device, but let’s see what you find out.
Regards,
Hersson
Hi there,
I get this message when I try to run RaopX on Terminal:
Users-iMac-G5:~ benjamin$ RaopX
-bash: /usr/local/bin/RaopX: Bad CPU type in executable
I’m running OSX 10.5.8 on a 1.8 GHz PowerPC G5. Is this the same problem that others mentioned with running 10.5, or is this software only for Intel Macs?
Thanks
Ben,
The installer is only for Intel Macs.
However if you build libsamplerate and RaopX from source I see no reason for it not to work on a Mac with PPC, but I haven’t tried this. There may be some caveats I don’t know about.
Hey this looks awesome and it’s really gonna help me out with the setup I have at my house! Can’t wait for the 10.5 Build! Thanks for your hard work!
The installer is updated. Hope it works as expected with your setup.
awesome, thanks so much.
How did you get raop_play to build on Mac? It keeps saying it cant find certain dependencies. Could you build me version of it on 10.6, or at least show me how to get the dependencies? I would really like this as I plan to port raop_play to other devices.
Email me with the answer:
ckrames1234 [AT] gmail [DOT] com