Skip to content

Commit 10d55e1

Browse files
committed
1.提交初始版本,基于https://github.com/jiangban/AirplayServer
1 parent c3691ec commit 10d55e1

File tree

1,691 files changed

+549733
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,691 files changed

+549733
-2
lines changed

.gitignore

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
*.iml
2+
.gradle
3+
/local.properties
4+
/.idea/caches/build_file_checksums.ser
5+
/.idea/libraries
6+
/.idea/modules.xml
7+
/.idea/workspace.xml
8+
.DS_Store
9+
/build
10+
/captures
11+
.externalNativeBuild

.idea/.gitignore

Whitespace-only changes.

.idea/vcs.xml

+6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

LICENSE

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
License description:
2+
3+
src/main/cpp/lib/crypto/* - New BSD License
4+
src/main/cpp/lib/curve25519/* - New BSD License (http://code.google.com/p/curve25519-donna/)
5+
src/main/cpp/lib/ed25519/* - MIT License (https://github.com/orlp/ed25519)
6+
src/main/cpp/lib/fdk-aac/* - https://github.com/mstorsjo/fdk-aac/blob/master/NOTICE
7+
src/main/cpp/lib/playfair/* - GPL License
8+
src/main/cpp/lib/plist/* - LGPLv2.1+ License
9+
src/main/cpp/lib/http_parser.* - MIT License
10+
src/main/cpp/lib/* - LGPLv2.1+ License
11+
src/main/cpp/mDNSResponder/* - Apache License 2.0
12+
src/main/java/com/apple/dnssd/* - Apache License 2.0
13+
src/main/java/* - MIT License

README.md

+40-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,40 @@
1-
# Android_AirPlay
2-
底层代码是基于RPiPlay,但是mDNS服务是基于安卓系统自带的,使用/dev/socket/mdnsd通信
1+
[中文版](https://github.com/dsafa22/AirplayServer/blob/master/README_CN.md)
2+
# Introduction
3+
4+
`Airplay` screen mirror server based on `Android` and provide `WIN32` build. 99% written in C, easy to transplant, welcome to PR and ISSUE.
5+
6+
# Supported delivery devices
7+
8+
Support iPhone and Mac device screen delivery and music playback
9+
10+
Support iOS system: iOS9~iOS13
11+
12+
Support for MacOS system: 10.14 (low version not tested)
13+
14+
# Protocols and algorithms involved
15+
16+
If you understand the relevant protocols and algorithms, you will have a better understanding of the code.
17+
18+
1. Protocol: RTSP, RTCP, RTP, DNS, DNS-SD, mDNS, NTP
19+
20+
2. Encryption and decryption algorithm: AES (cbc & ctr)
21+
22+
3. Signature algorithm: curve25519, ed25519
23+
24+
3. Audio and video basics: H264 encoding, AAC encoding
25+
26+
# Third-party open source module
27+
28+
- MDNS:third_party/mDNSResponder
29+
30+
     Apple open source mDNS function for device discovery, added CMake support
31+
32+
- fdk-aac:third_party/fdk-aac
33+
34+
     For AAC audio decoding, added CMake support
35+
36+
# Screenshot
37+
38+
The following picture is a presentation of screen data and music, where the system of `iPhone` is `iOS12`
39+
40+
![](https://ww1.sinaimg.cn/large/007rAy9hgy1g0l65hwvg7j30u01o0juj.jpg)

README_CN.md

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# 简介
2+
3+
基于`Android``Airplay`屏幕镜像服务器,并提供`WIN32`的构建,99%使用C编写,方便移植,欢迎提PR和ISSUE
4+
5+
# 支持的投放设备
6+
7+
支持iPhone和Mac设备屏幕投放和音乐播放
8+
9+
支持iOS系统:iOS9~iOS13
10+
11+
支持MacOS系统:10.14(低版本未测试)
12+
13+
# 涉及到的协议和算法
14+
15+
如果了解了相关协议和算法会更好的理解代码
16+
17+
1. 协议:RTSP,RTCP、RTP、DNS,DNS-SD,mDNS,NTP
18+
19+
2. 加解密算法:AES(cbc&ctr)
20+
21+
3. 签名算法:curve25519,ed25519
22+
23+
3. 音视频基础:H264编码,AAC编码
24+
25+
# 第三方开源模块
26+
27+
- MDNS:third_party/mDNSResponder
28+
29+
Apple开源mDNS功能,用于设备发现,添加了CMake支持
30+
31+
- fdk-aac音频解码:third_party/fdk-aac
32+
33+
用于AAC音频解码,添加了CMake支持
34+
35+
# 演示截图
36+
37+
下图是一次屏幕数据和音乐的投放演示,其中`iPhone`的系统是`iOS12`
38+
39+
![](https://ww1.sinaimg.cn/large/007rAy9hgy1g0l65hwvg7j30u01o0juj.jpg)

android/example/.gitignore

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
*.iml
2+
.gradle
3+
/local.properties
4+
/.idea/caches/build_file_checksums.ser
5+
/.idea/libraries
6+
/.idea/modules.xml
7+
/.idea/workspace.xml
8+
.DS_Store
9+
/build
10+
/captures
11+
.externalNativeBuild
12+

android/example/.idea/.gitignore

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/example/.idea/compiler.xml

+6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/example/.idea/gradle.xml

+19
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/example/.idea/jarRepositories.xml

+25
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/example/.idea/misc.xml

+10
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/example/.idea/vcs.xml

+6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

android/example/app/.cxx/Debug/43172k4g/arm64-v8a/.cmake/api/v1/query/client-agp/cache-v2

Whitespace-only changes.

android/example/app/.cxx/Debug/43172k4g/arm64-v8a/.cmake/api/v1/query/client-agp/cmakeFiles-v1

Whitespace-only changes.

android/example/app/.cxx/Debug/43172k4g/arm64-v8a/.cmake/api/v1/query/client-agp/codemodel-v2

Whitespace-only changes.

0 commit comments

Comments
 (0)