Android 无线投屏相关知识介绍
文章目录
- [Android 无线投屏相关知识介绍](#Android 无线投屏相关知识介绍)
-
- 一、前言
-
- 二、具体内容
- 1、核心协议与技术原理
-
- [(1) Miracast(Wi‑Fi Display,WFD)------Android 系统级标准](#(1) Miracast(Wi‑Fi Display,WFD)——Android 系统级标准)
- [(2) Google Cast(Chromecast)](#(2) Google Cast(Chromecast))
- [(3) DLNA(数字生活网络联盟)](#(3) DLNA(数字生活网络联盟))
- (4)其他方案
- 2、投屏方式对比(核心差异)
- [3、使用步骤(以 Miracast 为例)](#3、使用步骤(以 Miracast 为例))
-
- [(1)**准备**:手机与大屏(电视 / 投影)连**同一 Wi‑Fi**(2.4G/5G 需一致,避免双频隔离)。](#(1)准备:手机与大屏(电视 / 投影)连同一 Wi‑Fi(2.4G/5G 需一致,避免双频隔离)。)
- [(2)**大屏端**:设置 → 连接偏好 / 显示 → 开启 **无线显示 / Miracast / Screen Mirroring**。](#(2)大屏端:设置 → 连接偏好 / 显示 → 开启 无线显示 / Miracast / Screen Mirroring。)
- (3)**手机端**:
- (4)**完成**:手机画面实时同步到大屏,音频同步输出。
- 4、常见问题与优化
- 5、开发相关(简要)
- 6、适用场景
- 三、小结
一、前言
最近在看了下Android投屏相关内容,现在简单分享相关内容。
无线 AirPlay 投屏是苹果设备的,这里只介绍Android相关的投屏;
Android设备可以投屏到其他电视机、Window设备,以及某些在Android系统特殊适配的设备。
Android 设备投屏主要是有 Miracast(WFD)、Google Cast、DLNA 等协议。
二、具体内容
Android 无线投屏核心是通过Miracast(WFD)、Google Cast、DLNA 等协议;
将手机屏幕 / 音视频无线投射到电视、投影等大屏设备,主流方案延迟约 100--300ms ,支持 1080P/60fps 与音画同步。
1、核心协议与技术原理
(1) Miracast(Wi‑Fi Display,WFD)------Android 系统级标准
-
定位 :安卓原生投屏基石,Android 4.2+ 系统内置,无需第三方 App。
-
技术基础 :基于 Wi‑Fi Direct(P2P),可设备直连、也可同局域网工作。
-
流程:
- 手机采集屏幕 → H.264/H.265 硬编码
- RTSP 信令协商 + RTP 封装传输
- 大屏解码、渲染、音频输出
-
特点 :全屏幕镜像 、音画同步、延迟 100--200ms;支持 HDCP 加密;跨品牌兼容。
-
常见入口:
- 华为 / 荣耀:多屏互动 / 无线投屏
- 小米 / Redmi:投屏
- OPPO / 一加:屏幕共享 / 投射
- vivo/iQOO:智慧投屏
- 三星:Smart View
(2) Google Cast(Chromecast)
- 定位:Google 生态投屏,多用于视频 App 推送。
- 原理 :手机仅发播放指令,大屏直接从网络拉流(手机可锁屏)。
- 适用:YouTube、Netflix、腾讯视频等内置 Cast 按钮;支持 Chrome 标签页投屏。
- 限制:依赖 Google 服务与网络,国内部分场景不可用。
(3) DLNA(数字生活网络联盟)
- 定位 :媒体推送(非镜像),多用于本地 / 在线视频、音乐、图片投屏。
- 特点:手机仅做控制,大屏直接播放文件 / 流;不支持实时屏幕镜像。
第2个和第3个有点类似,第二个是应用上的推送,第三个是系统媒体应用的推送,都是推送音视频。
(4)其他方案
- 品牌私有协议:华为 Cast+、小米投屏、TCL 多屏互动等,在自家生态内更稳定、低延迟。
- 第三方工具:乐播投屏、幕享、Scrcpy(USB / 无线)等,跨平台、功能增强(如反向控制)。
2、投屏方式对比(核心差异)
表格
| 方式 | 类型 | 延迟 | 内容 | 网络 | 依赖 |
|---|---|---|---|---|---|
| Miracast(WFD) | 屏幕镜像 | 100--200ms | 全屏幕 + 系统音频 | 同局域网 / 直连 | 系统原生 |
| Google Cast | 媒体推送 | 低 | 视频 / 音乐 / 网页 | 联网 + 同局域网 | Google 服务 |
| DLNA | 媒体推送 | 低 | 音视频 / 图片 | 同局域网 | 媒体 App |
| 第三方工具 | 镜像 / 推送 | 中 | 全内容 | 同局域网 | 安装 App |
3、使用步骤(以 Miracast 为例)
(1)准备 :手机与大屏(电视 / 投影)连同一 Wi‑Fi(2.4G/5G 需一致,避免双频隔离)。
(2)大屏端 :设置 → 连接偏好 / 显示 → 开启 无线显示 / Miracast / Screen Mirroring。
(3)手机端:
方式一:下拉通知栏 → 找到「无线投屏 / 多屏互动」→ 搜索并选择大屏 → 确认连接;
方式二:原生设置 → 已连接的设备 → 连接偏好设置 → 投屏 (先打开右上角的"")。
(4)完成:手机画面实时同步到大屏,音频同步输出。
4、常见问题与优化
-
搜不到设备
- 确认同 Wi‑Fi、关闭双频隔离、重启 Wi‑Fi / 设备。
- 大屏开启 Miracast 接收、手机开启投屏权限。
- 两边设备确保热点能用,但是一定不能打开热点,打开热点要关闭热点重启后再搜索。
-
延迟高 / 卡顿
- 切 5GHz Wi‑Fi、减少遮挡、靠近路由器。
- 关闭手机后台、降低分辨率 / 帧率、关闭 VPN / 代理。
-
音画不同步
- 优先硬解码、重启投屏、更新系统 / 固件。
-
无法投屏 DRM 内容
- 受 HDCP 保护(如 Netflix、腾讯视频 VIP),仅支持对应 App 内 Cast/DLNA 推送。
5、开发相关(简要)
-
系统层:
Android 框架提供
WifiDisplayManager、MediaProjection用于屏幕采集与投屏管理;WifiDisplayAdapter(显示适配器)定位**:DisplayManagerService 管理 WiFi Display 的专用适配器 ,是系统显示框架与 WiFi Display 功能之间的桥梁;
WifiDisplayController(协议控制器):WiFi Display 的 底层执行引擎**,封装 WiFi P2P(Wi-Fi Direct) 与 WFD 协议(RTSP/RTP) 的全部逻辑,负责实际的设备发现、连接、会话管理。
-
应用层:
- 镜像:
MediaProjection+ 编码 + RTP 传输(适配 Miracast)。 - 推送:集成 Cast SDK / DLNA 库,实现媒体控制。
- 镜像:
-
关键组件 :
wpa_supplicant(P2P 管理)、SurfaceFlinger(渲染)、OMX 硬编解码。
相关日志关键字:
WifiDisplay
Miracast
Wfd
p2p
WifiP2p
DisplayManager
RemoteDisplay
MediaProjection
6、适用场景
- Miracast:游戏、会议演示、全屏幕分享、教育投屏。
- Cast/DLNA:视频 / 音乐播放、家庭影院、后台播放。
- 第三方工具:跨平台投屏、反向控制、录屏 / 直播。
三、小结
Android设备镜像投屏的主要方式是Miracast投屏;
Miracast可以投送整个手机的镜像画面到另外的设备上,比如window设备,Tv设备,Android设备。
Android 定制化的手机一般是支持在原生设置里面,投屏到其他设备;
但是Android 原生系统和Google 都无法投屏,需要适配一定的代码,设置支持Display;
Android设备默认也是无法接受Miracast投屏的,需要开发投屏应用,比如像Tv设备专门开发一个接收Miracast的应用。
Android 投屏端是Source端,接收画面显示端是Sink端,接收端必须要开发应用进行接收。