MicYou
MicYou-Dev/MicYou加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有过这样的经历:视频会议时同事抱怨"你的声音好闷",游戏连麦时被队友吐槽"麦克风炸麦",或者直播时观众说"主播声音好远"——问题不在你,而在电脑那颗凑数用的内置麦克风。与此同时,全球数十亿人随身携带着一部手机,而手机厂商为语音通话精心调校过的麦克风,音质远胜大多数电脑扬声器。
MicYou 的作者 LanRhyme 正是抓住了这个"结构性矛盾",开发了这款将 Android 手机变身为 PC 高质量无线麦克风的开源工具。项目以 Rust 为核心语言,结合 Kotlin 和 Tauri 2 框架,构建了一套跨平台、端到端的音频采集-传输-处理-输出系统。项目在 GitHub 获得超过 4000 star,被 HelloGitHub 推荐,登上 Trendshift 热门榜单,配套有活跃的 QQ 群、Telegram 频道和中文文档,形成了完整的开发者-用户生态。
MicYou 采用典型的 C/S(客户端-服务器)架构:Android 手机充当音频采集端,桌面端 PC 作为服务端(负责音频处理和虚拟麦克风输出),两者通过 Wi-Fi、USB 或浏览器 Web 模式建立连接。
从代码库组织来看,项目分为两大子项目:
整体技术栈横跨三端:移动端(Kotlin/Android)、桌面端(Rust/Vue 3)、音频处理核心(Rust),体现了作者在多技术栈上的整合能力。
MicYou 技术含量最高的部分位于 tauri-app/crates/micyou-audio/,这里实现了完整的音频 DSP(数字信号处理)流水线:
| 模块 | 文件 | 功能 |
|---|---|---|
| 声学回声消除(AEC) | aec.rs | 基于 a2heng 开源的 AEC7 算法,在 loopback 捕获系统播放音频后从输入信号中消除回声 |
| AI 降噪 | dsp.rs | 调用 PureVox AI 模型进行智能降噪 |
| 混音与放大 | mixer.rs | 多路信号混音、增益控制、AGC(自动增益控制) |
| 去混响 | dsp.rs | 减少房间反射带来的空间感 |
| 均衡器 | dsp.rs | 自定义频响曲线 |
| 语音活动检测 | dsp.rs | VAD,仅在检测到人声时传输,节省带宽 |
engine.rs 负责调度整个 DSP 流水线的生命周期,loopback.rs 负责从系统层面捕获正在播放的音频供 AEC 使用。这套设计将传统 DSP 算法与 AI 神经网络模型有机融合,用户可根据场景灵活开关各项处理。
传输层位于 tauri-app/src-tauri/ 的多个 server 文件中:
这种"三路并发"的连接策略覆盖了所有实际使用场景:在家用 Wi-Fi 场景追求低延迟,在办公室用 USB 追求稳定,在客户现场临时用 Web 模式应急。
Android 客户端代码位于 composeApp/src/main/kotlin/com/lanrhyme/micyou/,按功能模块组织:
AudioEngine.kt 负责麦克风采集,AudioMetrics.kt 上报实时音频指标(音量、比特率、延迟、抖动)DeviceDiscovery.kt 基于 UDP 广播实现局域网设备发现,Protocol.kt 负责与桌面端的协议交互AudioService.kt 是前台 Service,保证应用在后台持续采集不被打断;MicYouTileService.kt 提供 Android Quick Settings 快捷开关MobileHome.kt 和 MobileSettingsContent.kt 分别为主界面和设置页UpdateChecker.kt 对接 GitHub Releases 实现版本更新UI 采用了 Jetpack Compose 的最新 API,包含高级动画(AdvancedAnimations.kt)、音频可视化组件(AudioVisualizers.kt)、颜色选择器(ColorPicker.kt)等,视觉效果现代感强。

桌面端 tauri-app/ 是整个项目中最复杂的部分,提供了三种不同的用户交互模式:
GUI 模式(主界面):src/ 下为 Vue 3 + Vite + Tailwind CSS 构建的响应式界面,支持透明窗口效果(acrylic blur)、系统托盘常驻、窗口吸附等桌面特有体验。Tauri 配置显示产品版本 2.0.3,打包目标包括 dmg/app(macOS)、deb/rpm/appimage(Linux)。
CLI 模式(micyou-cli crate):轻量级命令行工具,适合服务器环境或需要脚本化控制的场景,核心功能通过命令行参数暴露。
TUI 模式(micyou-tui crate):交互式终端用户界面,在终端内提供半图形化的仪表盘面板,适合不喜欢 GUI 但又需要可视化监控的场景。

后端 src-tauri/src/ 下的 Rust 命令层按功能模块划分:audio(音频控制)、mode(连接模式切换)、network(网络管理)、plugins(插件)、system(系统)、theme(主题)等,结构清晰易于维护。
MicYou 的插件系统(位于 micyou-plugin crate)是一大技术亮点,支持两种完全不同的插件形态:
插件基础设施包括:ABI 定义层(abi.rs)、生命周期管理(manager.rs)、事件总线(bus.rs)、DSP 扩展接口(dsp.rs)。示例插件包括 native-soundpad(音效垫,可自定义快捷音效)和 wasm-audioinspector(音频可视化工具)。
插件系统还配套有完整的文档(docs/plugins/),包括开发指南、API 参考、架构说明和插件市场政策,项目鼓励社区贡献插件扩展生态。
MicYou 是一个将"用户体验"与"技术深度"兼顾得很好的精品开源项目。在技术层面,它展现了 Rust 在实时音频处理领域的强大能力:micyou-audio 的 DSP 流水线设计将传统算法与 AI 模型有机融合;Tauri 2 框架使桌面端兼具原生性能和 Web 开发效率;插件系统的双轨架构(Native + WASM)兼顾性能与安全性。在产品层面,三种连接方式覆盖了所有实际使用场景,跨平台支持让几乎所有用户都能受益,Material 3 UI 和完善的多语言支持体现了对用户体验的重视。
部署方面,项目不提供 Docker 支持,但通过 GitHub Releases 提供预编译安装包,Windows/macOS/Linux 用户可直接下载使用。对于需要自定义构建的开发者,需要准备 Rust toolchain、Node.js 和 Android SDK(仅 Android 端需要),构建门槛中等。
综合评级:技术深度 ⭐⭐⭐⭐⭐ | 产品完成度 ⭐⭐⭐⭐⭐ | 社区活跃度 ⭐⭐⭐⭐ | 部署便捷性 ⭐⭐⭐