Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lmcgartland/airplay2-rs
https://github.com/lmcgartland/airplay2-rs
Last synced: 5 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/lmcgartland/airplay2-rs
- Owner: lmcgartland
- Created: 2021-04-02T22:04:43.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-05-18T04:47:20.000Z (over 2 years ago)
- Last Synced: 2024-11-02T18:26:02.312Z (about 2 months ago)
- Language: Rust
- Size: 7.81 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
**WARNING** This repo is in early stages of development, and nowhere near close to release!
## Goals
This crate should be able to act as a general purpose AirPlay 2 sender/reciever, so other audio applications can interface with AirPlay devices. Initial functionality should focus on acting as the sender, in order to be able to stream audio sources to HomePod devices.- Sender
- [ ] Pairing
- [ ] Multi-room support
- Receiver?## Getting Started
Uses Avahi daemon for Zeroconf networking on Linux.```bash
# This daemon will need to be running at run-time.
sudo apt-get install avahi-daemon# Install Linux dependencies
sudo apt install xorg-dev libxcb-shape0-dev libxcb-xfixes0-dev libavahi-client-dev clang# Run the crate:
cargo run
```## References
- [https://9to5mac.com/2019/12/05/airplay-2-cracked/](https://9to5mac.com/2019/12/05/airplay-2-cracked/)
- [https://openairplay.github.io/airplay-spec/](https://openairplay.github.io/airplay-spec/)
- [https://emanuelecozzi.net/docs/airplay2](https://emanuelecozzi.net/docs/airplay2)
- [https://github.com/openairplay/airplay2-receiver](https://github.com/openairplay/airplay2-receiver)### Notes
- Docker image not working on M1 Mac
- Must be built for x86 arch `docker buildx build --platform linux/amd64 -t airplay:latest .`
- Run docker image using host network `docker run --platform linux/amd64 -it --network host airplay:latest /bin/bash`