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.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| mixplay_hub-1.4.6-cp312-cp312-win_amd64.whl | CPython 3.12 | CPython 3.12 | Windows x86-64 | Details |
| mixplay_hub-1.4.6-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.6-cp312-cp312-manylinux_2_34_aarch64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.34+ ARM64 | Details |
| mixplay_hub-1.4.6-cp312-cp312-macosx_11_0_arm64.whl | CPython 3.12 | CPython 3.12 | macOS 11.0+ ARM64 | Details |
Total release size: 34.2 MB
Release files / mixplay_hub-1.4.6-cp312-cp312-win_amd64.whl
| Download URL | mixplay_hub-1.4.6-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 8.1 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
36b9ddec5d9dea220be92fb671b397140c7e4fcd4fddaa0921b0bda3d81c8573
|
|
BLAKE2b-256 checksum How to use checksums |
c82d9bc34e83fcf790ab5be69231f67ac64ae2805444768a6dcd25cbc6e8cb03
|
| 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.6-cp312-cp312-manylinux_2_34_x86_64.whl
| Download URL | mixplay_hub-1.4.6-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 |
7beb96e1e35eacbe2b9e12e4a0a9fc48869f8c3a3eba528e309829e31ae7f367
|
|
BLAKE2b-256 checksum How to use checksums |
886be697b02488b435677280df9e4a6adf8fc438f632ff19515d873013e35059
|
| 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.6-cp312-cp312-manylinux_2_34_aarch64.whl
| Download URL | mixplay_hub-1.4.6-cp312-cp312-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 9.0 MB |
| Tags | CPython 3.12 Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
e3f3df78b4c1ec56da2d8d1aa00dfd6dfcce5051efc20599127f4bc88e5bf50f
|
|
BLAKE2b-256 checksum How to use checksums |
f191eca4cac8c17757e59adbd763ea24113d89efbba02c0f60d3ad528e3220df
|
| 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.6-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | mixplay_hub-1.4.6-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 |
c7b5b896c7f0b1844a6076607d4056d1e7f937680431ed313a937142c6b066eb
|
|
BLAKE2b-256 checksum How to use checksums |
b1d664a54e9dc3d3664e979c9eec460e2df6c1e206fcd9b93481ede8162f377b
|
| 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}
|