This release is a pre-release and may not be stable for production use.
MiXPlay
MiXPlay(隔空妙播)是一个面向局域网的开放式音频中枢,它融合了 AirPlay 隔空播放、MiPlay小米妙播、DLNA、OwnTone、API 等多种音频协议,搭载独家定制的全屋播放引擎,打破生态壁垒:除了米果互通,普通安卓与传统音箱也能解锁新玩法!
✨ 功能特色
- 多协议融合:AirPlay、MiPlay、DLNA、OwnTone、API等
- 音乐串流:普通音箱独立推流,全屋音箱同步播放
- 轻装上阵:Python + Rust 原生桥接,低延迟轻负载
- 操作简单:网页控制台开箱即用,米家扫码一键登录
- 无损音乐:最高支持 7.1 声道、192kHz/24bit 音频流
- 多平台通用:支持 NAS、PC、Mac、Docker 部署服务端
MiXPlay 与苹果、小米公司无关,作为局域网音频中枢必须在 NAS、PC、Mac、Docker 上运行服务端,覆盖多种音频协议和音箱设备,可玩性强但不适合所有人。
📊 音频方案对比
| 对比维度 | MiXPlay | AirPlay 1 | AirPlay 2 | DLNA | 小米妙播 |
|---|---|---|---|---|---|
| 系统级音频投射 | ☑️ 支持 | ✅ 苹果 | ✅ 苹果 | ❌ 部分 App | ✅ 小米 |
| 多房间同步播放 | ✅ 支持 | ☑️ 仅限 iTunes | ✅ 支持 | ❌ 不支持 | ✅ 支持 |
| 音频通信链路 | ☑️ 同步串流 | ☑️ 同步串流 | ✅ 独立协同 | ☑️ 分离遥控 | ✅ 独立协同 |
| 小爱音箱 | ✅ 全系音箱* | ☑️ Sound 系列 | ☑️ Sound 系列 | ☑️ 部分音箱 | ☑️ 部分音箱 |
| OwnTone | ✅ 支持 | ✅ 支持 | ✅ 支持 | ✅ 支持 | ❌ 不支持 |
| 通用安卓* | ✅ 支持 | ❌ 不支持 | ❌ 不支持 | ✅ 支持 | ❌ 不支持 |
| 硬件加密门槛 | ✅ 无门槛 | ☑️ 苹果授权 | ☑️ 苹果授权 | ✅ 无门槛 | 🔒 小米独占 |
🔊 MiXPlay 支持音箱列表 ➡️ 点我跳转查看
🤖 手机平板特殊玩法
- 接收端,安卓使用FusionPlay-Android,支持 AirPlay2、小米妙播、DLNA 接收功能
- 发射端,安卓使用centuryplay,安卓 10+ 支持串流系统音频到 AirPlay 音箱
- 发射端,鸿蒙使用音桥·阿西西,支持串流系统音频到 AirPlay 音箱
🎵 音频格式支持
- 原生直连格式:
.mp3、.m4a、.flac、.wav、.m3u8- 小爱音箱硬件原生解码,音频数据由中枢直接转发,0 额外 CPU 转码开销,无损低延迟。
⚠️ 本项目主要是完善苹果用户的小爱音箱 ✖️ AirPlay 体验,暂不考虑 DLNA 功能。
- DLNA 是一个古早的音频协议,虽然新老设备都能用,但体验不太好、稳定性欠佳
- 小米音箱自带 DLNA 功能不完整,第三方 DLNA 需额外适配,体验依然不完美
- 如果需要第三方 DLNA 功能,推荐使用 MiAir、miair-next 等项目
❤️ 支持项目
|
微信 |
支付宝 |
🚀 安装方式
MiXPlay 目前支持以下主流平台和架构:
| 平台/架构 | x86_64 | arm64 |
|---|---|---|
| Linux/NAS | ✅ | ✅ |
| macOS | ❌ | ✅ |
| Windows | ✅ | ❌ |
1、NAS(飞牛 & Docker)
飞牛商店【🔍MiXPlay - 隔空妙播】,其他 NAS 可使用 Docker 版
2026.10.8 飞牛商店审核中暂未上架,可加群获取内测版 fpk 文件手动安装
services:
mixplay:
image: ghcr.io/juneix/mixplay
# image: docker.1ms.run/juneix/mixplay # 毫秒镜像加速
container_name: mixplay
network_mode: host
restart: unless-stopped
environment:
WEB_PORT: 8820 #访问端口
devices:
- /dev/snd:/dev/snd #设备声卡
volumes:
- ./conf:/app/conf #配置文件
- /sys/class/dmi/id:/host/sys/class/dmi/id:ro #硬件机器码
2、桌面端
a. 安装 uv 环境
🍎 macOS / 🐧 Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
🪟 Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
b. 安装 mixplay
uv tool install --python 3.12 mixplay-hub
打开终端输入 mixplay-desktop,自动后台运行,系统托盘可快速打开控制台、查看日志或退出。
⚠️ Linux 无头环境要求:
Linux 无头服务器 / NAS / Docker 容器若需使用物理声卡输出,必须先安装 ALSA 工具链:sudo apt install alsa-utils(以获得底层aplay支持)。
🎈 版本区别
飞牛 fpk 和桌面端 uv 版本,正常重装系统,唯一机器码不变 (虚拟机、更换主板等除外),Docker 版本请正确挂载 /sys/class/dmi/id。
| 功能 | 普通用户 | 头号玩家 |
|---|---|---|
| Audio Hub 音频中枢 | ☑️ | ✅ |
| 小米音箱➡️AirPlay1 | ☑️ | ✅ |
| 服务端音箱➡️AirPlay1、妙播、DLNA | ☑️ | ✅ |
| AirPlay2 | ❌ | ✅ |
| 全屋播放、串流节点 | ❌ | ✅ |
📢 上游鸣谢与合规说明
本项目的基础协议、桥接能力整合了以下优秀的开源组件:
- 小米云服务:miservice (MIT)
- 小米妙播(MiPlay):FusionPlay-Android (AGPL-3.0)
- 隔空播放(AirPlay 1/2):shairplay-rust (LGPL-3.0)
💡 灵感与思路参考: 本项目在开发与设计过程中,还参考了以下社区项目的思路并进行了重构与自用优化,在此特别致谢:
- MiAir / miair-next / XiaoMusic
📌 功能边界与授权说明:
- 基础免费能力:基于上述上游组件实现的基础功能免费开放使用。
- 自研定制模块:本项目自研的
Audio Hub 音频中枢、MiXPlay 全屋播放、串流节点延迟对齐等组合玩法属于定制扩展包,仅供头号玩家预览体验。 - 第三方开源许可全文:详见项目中的 THIRD-PARTY-NOTICES.md 与 LICENSE。
Metadata
Release files for mixplay-hub 1.4.6b5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mixplay_hub-1.4.6b5-cp312-cp312-win_amd64.whl | CPython 3.12 | CPython 3.12 | Windows x86-64 | Details |
| mixplay_hub-1.4.6b5-cp312-cp312-manylinux_2_34_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.34+ x86-64 | Details |
| mixplay_hub-1.4.6b5-cp312-cp312-macosx_11_0_arm64.whl | CPython 3.12 | CPython 3.12 | macOS 11.0+ ARM64 | Details |
Total release size: 25.2 MB
Release files / mixplay_hub-1.4.6b5-cp312-cp312-win_amd64.whl
| Download URL | mixplay_hub-1.4.6b5-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 8.1 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d1184f95d59c1ec9aa1ba83a95e27c209cca8f45db9da92bd7b479da60304ce5
|
|
BLAKE2b-256 checksum How to use checksums |
8021273fbb27779a6d50031c0077e57e3f1bdac60c0b1cb06f4b9639e5b383fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / mixplay_hub-1.4.6b5-cp312-cp312-manylinux_2_34_x86_64.whl
| Download URL | mixplay_hub-1.4.6b5-cp312-cp312-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 9.3 MB |
| Tags | CPython 3.12 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
f7e5af2ebaf822232910db5d19f5be3096d10ae54597dea80d6ffec37be76283
|
|
BLAKE2b-256 checksum How to use checksums |
717b230d393cf91525341a3d4023d589b628bea789d4561a6b679ca52955482c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / mixplay_hub-1.4.6b5-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | mixplay_hub-1.4.6b5-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 7.8 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b91684d38dadd0edbb4a9b9da17664fc0591c1be1a2083edac0496d859bda377
|
|
BLAKE2b-256 checksum How to use checksums |
4cc6ed3b74ce7f469d5558f42c50019cc0b8a841b0f38f2a1109cfc092000029
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|