20 ms·
An open-source AirPlay mirroring server for the Raspberry Pi
- yannovitch 6y agoVery interesting, if it has indeed the video capabilities that Shairport (& shairport-sync, ...) lacks.
- freewizard 6y agoThanks for sharing. There was an Airplay 2 implementation existed for not very long. Hopefully this one will stay. Looking forward to more open source projects supporting AirPlay 2.
- bluesign 6y agoI think this one is using the legacy protocol
- read_if_gay_ 6y agoWhat is the difference between the two?
- mjlee 6y agoAirplay 2 adds multi-room streaming, and a nifty shared up-next playlist that multiple users can add to.
- deleted 6y ago[deleted]
- danpalmer 6y agoIn addition to the features given by others, I believe AirPlay 2 significantly re-worked the way timing and sync works. Previously I believe AirPlay (1) had a fixed 2 second delay, which was not a great UX and also caused issues in syncing multi-room (or multi-output) audio. AirPlay 2 does this in a much more dynamic way that reduces the latency (anecdotally, maybe 100-200ms is typical) and improves the sync. I have no idea how it achieves this though.
- anamexis 6y agoI believe AirPlay 1 could not do multi-room audio at all. Edit: OP actually has a really nice breakdown. https://github.com/FD-/RPiPlay#airplay-protocol-versions https://github.com/FD-/RPiPlay#airplay-protocol-versions
- funcDropShadow 6y agoAirTunes already had multi-room support. It might have been technically different. But you could select to mulitple AirPort Express at once and they would play the audio synchronized.
- pbronez 6y agoFrom [0]: > Airplay doesn't offer multi-room audio; AirPlay 2 does > AirPlay lets you stream from any Apple device to your speakers or TV > AirPlay 2 lets you play from speakers over Wi-Fi, and it'll stay in sync > AirPlay 2 lets play different songs in different rooms with multiple HomePods Personally I've been very happy using AirPlay 2 with recent iPhones, a collection of HomePod Minis, an AppleTV and Denon Receiver. It makes it pretty easy to set up complex audio routing configurations from your phone. You can send a stream to several devices simultaneously while controlling volume independently and as a group. You can see what's playing on each device. Audio quality is good, battery impact seems fine. I wish I could have strong AirPlay 2 support from non-Apple devices, but I know how the ecosystem works. Still, easy enough to use something like the Emby iOS app [1] to bridge arbitrary content into the system. [0] https://www.pocket-lint.com/speakers/news/apple/144646-apple-airplay-2-vs-airplay-what-s-the-difference https://www.pocket-lint.com/speakers/news/apple/144646-apple... [1] https://apps.apple.com/us/app/emby/id992180193 https://apps.apple.com/us/app/emby/id992180193
- funcDropShadow 6y ago> Airplay doesn't offer multi-room audio; AirPlay 2 does That seems strange. Because I remember buying several used Airport Express base station to build a multi-room audio system. It worked great. That was around 2006/7, if my memory serves me right. At that time the protocol and the feature was called AirTunes.
- 3JPLW 6y agoYeah, you (used to?) be able to do multi-room audio with the original Airplay, but it was only supported from Macs. iOS did not support it.
- pfranz 6y agoDoesn't the original AirPlay have a constant 2 second lag? Like pressing Pause will take 2 seconds to take effect. I remember hearing it was something addressed in AirPlay2.
- 6y ago
- rusk 6y agoOh this is great. Hopefully won’t have to spend €250 on yet another box to function as essentially a wireless HDMI adapter ...
- whizzter 6y agoI can recommend AirServer if you have leftover PC or Xbox, bought it for my Xbox and it's worked fine for my use-cases. Also many "smart-TV"'s seems to have it built in these days.
- stevehawk 6y agoany Roku will serve as a miracast device and as a WiDpi or whatever it's called
- somehnguy 6y agoThey also added Airplay officially pretty recently. All my TVs have Roku built in and I was surprised a few weeks ago to wake up and see that My MacBook & iPhone started offering Airplay audio/video casting to any of my TVs. Pretty slick addition to the already great Roku featureset.
- rusk 6y ago> I was surprised a few weeks ago Oh well that’s cause for hope!
- deleted 6y ago[deleted]
- ArtTimeInvestor 6y agoWould this run on plain Debian on the PI? Raspbian took a turn that makes me think one should not use it anymore: https://www.cyberciti.biz/linux-news/heads-up-microsoft-repo-secretly-installed-on-all-raspberry-pis-linux-os/ https://www.cyberciti.biz/linux-news/heads-up-microsoft-repo... Sweeping in a repo by a third party is a bad thing imo.
- _joel 6y agoI can't see an issue running it on Debian or Ubuntu for that matter
- taneq 6y agoWow that sucks. If they must install VSCode they should use VSCodium which omits the telemetry.
- azinman2 6y ago> Microsoft may collect more info about RPi and Linux users as many try to reduce their digital footprint such as your IP address and build a profile about you. So Microsoft, assuming they want to go the extra effort (these are likely unconnected infrastructure pieces) could build a fingerprint of you to know that.. what, you have a raspberry pi? And they could go to extreme lengths to associate this with your GitHub account to know that yes you, John Smith, have a raspberry pi? What business value is this for them, and how could it be used for “evil”?
- derivagral 6y agoIn the future, coordination across Github, Linkedin, and other properties of theirs could exist (e.g. Facebook & Oculus). The not-that-nefarious-but-annoying one I can come up with immediately is better targeting for recruiter spam on LinkedIn based on hobby projects, code language, and Linkedin/Github connection graphs. I know they have ads on Bing that could benefit as well, but I don't know if they run their own ad network or how those things might tie together. I think others could probably give the "evil" part a better take. Mine is just an unfounded guess around business/market research and future competition.
- darkwater 6y agoSo, with this you can stream from your iDevice using AirPlay to a Raspberry connected to, say, a TV? Is this correct?
- jseven 6y agocorrect
- techstrategist 6y agoI have been using this on my RPi4B and it’s been pretty inconsistent. I haven’t had a chance to troubleshoot it yet though.
- spiderfarmer 6y ago> By using OpenSSL for AES decryption, I was able to speed up the decryption of video packets from up to 0.2 seconds to up to 0.007 seconds for large packets (On the Pi Zero). Average is now more like 0.002 seconds. This is cool.
- ed25519FUUU 6y agoI’ve used this and it was surprisingly easy to setup. It makes the RPI show up just the same as any airplay device, which is convenient.
- toxik 6y agoApple and friends should be _required_ to document their protocols. It would improve competition and benefit everyone in the long run.
- meibo 6y agoAbsolutely. Some smart person at my local school district decided that all rooms be fitted with Apple TVs(a great budget decision, especially since they're used exclusively as cast targets and have no accounts), which now only about 30% of students and about 70% of teachers can use because you need Apple clients to use them. This is in Europe, so Android has a relatively large userbase, especially for students. The same smart person worked out a great deal during Covid that lets "disadvantaged" families buy an iPad for only 500€ so they can participate in online schooling.
- mensetmanusman 6y agoThat is insane. I love my iPad and have used them in research for over 10 years. But I also have kids. It should be illegal to purchase glass tablets for education. If Apple wants the education business, they should release a plastic touch screen version with a plastic backing (kids throw things, they can cut people in fights). It’s sad when wealthy parents with too much time on their hands join these decision making committees and end up fighting for large corporations; and in this case, hurting the poor.
- thebigman433 6y agoSchools almost always have decent cases on the iPads, and the backs are metal, so there isnt any issue with that breaking. With a decent case, there is a pretty low chance of the screens cracking at all. We rolled them out in an elementary school and had zero issues with screens cracking or general durability of the actual iPad. Also, there is almost no other option. If you think there is a competitor with similar usability, support, specs, and is the same price, you should let some school IT people know, because Im sure they'd appreciate it. Also if kids are cutting themselves because they are throwing iPads at each other while fighting, you have serious other issues going on.
- ho_schi 6y agoI've just poked into some source files and decided to compile it on Archlinux with GNOME and Avahi. It seem to work in general :)
- vladvasiliu 6y agoIf anyone stumbles upon this but doesn't run Gnome (or probably any other DE): Avahi daemon needs to be running. If it isn't, RPiPlayer doesn't complain, but the mac doesn't see it.
- wjdp 6y agoGave up on chromecast for audio recently, had too many issues with discovery of the client. Now using shairport (via the excellent hifiberry os and picoreplayer) on RPis and AirMusic on Android. Seems a bit silly to be using an Apple protocol when I own zero Apple devices but works rather well. Had to give up on clientless playback (podcast app via chromecast) but this setup is significantly more reliable.
- pantalaimon 6y agoAirPlay also works well with PulseAudio as a source IIRC, so even streaming from the desktop is pretty seamless.
- wjdp 6y agoHave tried, works well. Does have a weird quirk where it'd detect two devices for each speaker, an IPv4 and v6 address. Only the v4 worked and both had the exact same name, mildly irritating. Did try and find docs on disabling discovery and hard-coding addresses but to no avail.
- thefourthchime 6y agoAirPlay is buggy sometimes well. For audio, my goto is Spotify connected to Echo devices. Spotify has a proprietary protocol for streaming to some devices that works really well.
- jxy 6y agoIt looks great. I only wish it could drop the dependencies on avahi and gstreamer.
- NegativeLatency 6y agoWithout Mdns there’s no way to get it to show up in the airplay list on iOS
- sp1rit 6y agoOut of interest, is there also a AirPlay display sink client for Linux? I'm still looking for a way to share my screen of my Linux laptop to an Apple TV / stuff like this.
- coolspot 6y agoThere is open-airplay[777] doing that. [777] - https://github.com/openairplay/open-airplay https://github.com/openairplay/open-airplay
- Thrymr 6y agoNice to see this! Hoping it can be ported to Kodi soon (which has AirPlay support but is limited to audio only for recent iOS versions, see https://kodi.wiki/view/AirPlay https://kodi.wiki/view/AirPlay).
- Naac 6y agoSo it looks like this is an open source implementation of the airplay server. So Apple devices using airplay can stream to whatever server is running this. Is there a program that does the same thing for the client? Such that I can run the client software on my laptop, and airplay to a raspi connected to my TV running the server software?
- jeroenhd 6y agoFor Linux, pulseaudio (for sound) and Miracast (for video) come to mind. Support isn't as smooth, though. I've seen several attempts at open source Chromecast servers because the client support is excellent, but very few have remained after Google changed their API to be more closed and encrypted. I do wish there was such a tool, though. An open source alternative to Chromecast would be amazing imo.
- RIMR 6y agoThis is excellent. I have a Macbook for work, and a Linux media center, and I just added this as a button on my remote so that I can Airplay. Much better than the previous workarounds I was using.
- starik36 6y agoI tried this last year to cast video and audio from the AppleTV+ app. I spent quite a bit of time trying to make it work, but ultimately it didn't. Has this been fixed at all? Has anyone been able to cast AppleTV+ content?
- adav 6y agoThis maybe an odd workaround but I've found the Airplay support in Zoom screen share to work quite well. Not good enough for video, but very reliable for showing the screen of an iPhone or Mac.
- thomasfl 6y agoFor Spotify users, there is the excellent RaSpotify client. https://github.com/dtcooper/raspotify https://github.com/dtcooper/raspotify
- fudged71 6y agoCould you use this as an “analog hole” to scrape/OCR screen content from iOS apps?
- iamlemec 6y agoThis has been really useful for me when teaching online. Just mirror my iPad to a desktop window, then point OBS at said window (then pipe OBS to Zoom through a virtual camera). I tried to modify the source to output to a v2l loopback device instead, but couldn't quite get it to work.
- llampx 6y agoCan't you share the iPad screen directly in zoom?
- nxc18 6y agoYes but it's apparently a little complicated. https://support.zoom.us/hc/en-us/articles/115005890803-iOS-Screen-Sharing?mobile_site=true https://support.zoom.us/hc/en-us/articles/115005890803-iOS-S... Teams also supports this well. I kind of assumed it wouldn't work well before trying it, perhaps due to the lingering "mobile devices are low powered devices" stigma. In reality my iPhone can run full AR apps (meaning running the camera and a 3D rendering engine) and stream them to a Teams meeting without breaking a sweat. I wasn't even anxious about plugging in.
- iamlemec 6y agoAh yeah, I forgot to mention that I'm on linux, and iPad direct to Zoom doesn't appear to work there. Also, going through OBS lets me do scene switching between full video, slides, and whiteboard, the latter two with video overlay in the corner.
- twinge 6y agoIf you have a Mac, you can connect the iPad to it and share the contents of the screen directly (via QuickTime). The latency is lower. https://appleinsider.com/articles/18/03/26/tip-record-your-ipads-screen-on-your-mac-with-quicktime-player https://appleinsider.com/articles/18/03/26/tip-record-your-i...
- bronco21016 6y agoYou can send the iPad screen directly into OBS using NDI. NDI HX Capture is the app for iOS/iPadOS. You'll need the NDI plugin for OBS. I'm not sure which ends up being more reliable but I've had great success with NDI.
- bronco21016 6y agoDoes anyone have any ideas about how to pass the desktop's keyboard and mouse to the device? Essentially, would a full remote (LAN) desktop solution be possible here? Would love to be able to access iMessage on my Ubuntu desktop without switching hardware.
- 26024316 6y agoWhy not just turn on the macOS built-in "Screen Sharing" feature in System Preferences > Sharing - it's a standard, albeit basic, VNC server. Just run a VNC client. If you want more features, there are tons of other VNC servers for macOS. A solution like you are suggesting sounds dramatically over-complicated to simply access your Mac from Ubuntu.
- bronco21016 6y agoI don’t have macOS. I’m talking about iOS/iPadOS devices. I have contemplated a KVM/qemu VM but, there are issues with iCloud services, including iMessage, when going that route.