jqssun/android-airplay-server

▲ 80 stars today★ 463⑂ 71

First open-source AirPlay receiver implementation for Android with mirroring, video and audio support

About jqssun/android-airplay-server

jqssun/android-airplay-server is an open-source project on GitHub, mainly written in Kotlin. First open-source AirPlay receiver implementation for Android with mirroring, video and audio support It currently holds 463 stars and 71 forks with 19 open issues, and was last pushed on 2026-08-23 (repository created 2026-04-08).

Project Overview

Git Homed tracks it on the Today's Trending board, currently at rank #57 with 80 new stars today.

GitHub Repository Details

Repository jqssun/android-airplay-server · default branch main · size 568 KB · watchers 5 · source: GitHub REST API and repository README

README

AirPlay Receiver for Android

Stars GitHub license build release

A fully featured free and open-source implementation of AirPlay for Android that turns your device into an AirPlay-compatible display and speaker, based on UxPlay. It is the first open-source AirPlay 2 receiver for Android and Android TV, and works with iOS/iPadOS, macOS devices as well as other sender implementations.

https://github.com/jqssun/android-airplay-server/blob/HEAD/Get it on Google Play https://github.com/jqssun/android-airplay-server/blob/HEAD/Get it on F-Droid https://github.com/jqssun/android-airplay-server/blob/HEAD/Get it on GitHub

Compatibility

Features

[!WARNING]
DRM content (e.g. from the Apple TV application) is not supported.

Implementation

This application uses the C-based UxPlay library to implement the AirPlay/RAOP protocol, with a JNI bridge to the Android application layer. Audio can be decoded via MediaCodec or a software ALAC decoder, while mirroring video is decoded via MediaCodec and rendered to a SurfaceView. HLS sessions are served through a local playlist proxy.

flowchart LR
    AppleDevice["Apple Device (Sender)"]
    UxPlay["UxPlay (C/JNI)
RAOP + mDNS
FairPlay + HLS"] AndroidApp["Android (Receiver)
MediaCodec + AudioTrack
ExoPlayer (HLS)"]

AppleDevice -- "RAOP / HLS" --> UxPlay UxPlay --> AndroidApp

CMake is used for native C/C++ components under app/src/main/cpp. Submodules must be initialized before building.

git submodule update --init --recursive
./gradlew assembleDebug

Check out the CI for more details on reproducible builds.

Credits

---

Disclaimer: This project is not affiliated with Apple Inc.

GitHub Stars & Activity

463Stars
71Forks
19Open issues
KotlinLanguage

GitHub Popularity

GitHub stars463
Forks71
Open issues19
Primary languageKotlin
LicenseGPL-3.0
Stars gained today80
Created2026-04-08
Last pushed2026-08-23

Trending History

Daily boardrank #57 · ▲ 80 stars

Related GitHub Projects

1

open-ani / animeko

Kotlin★ 20,498⑂ 598▲ 31 stars
→
2

tiann / KernelSU

Kotlin★ 18,899⑂ 4,162▲ 47 stars
→
3

AAswordman / Operit

Kotlin★ 8,415⑂ 692▲ 38 stars
→
4

permissionlesstech / bitchat-android

Kotlin★ 7,720⑂ 1,858▲ 29 stars
→
5

YuKongA / ghostlock-app

Kotlin★ 1,546⑂ 415▲ 59 stars
→
6

obra / superpowers

Shell★ 295,604⑂ 26,396▲ 404 stars
→
7

mattpocock / skills

Shell★ 276,956⑂ 23,203▲ 979 stars
→
8

affaan-m / ECC

JavaScript★ 273,517⑂ 40,814▲ 761 stars
→

More Trending Repositories