简介
目前主流的投屏方式有以下这些:
- DLNA:基于局域网,需路由器,仅推流(不能镜像整个屏幕)
- AirPlay:苹果私有协议,仅限 Apple 生态
- WFD(Miracast):跨平台、全屏镜像、设备直连
WFD(Wi-Fi Direct Display,通常指 Miracast) 是一种无需网络、点对点的无线投屏技术,允许手机、电脑等设备直接将屏幕内容无线传输到电视、投影仪或显示器上。
- source:WFD发送端
- sink:WFD接收端
投屏前双方会协商支持的音视频格式和支持的分辨率,并选择最优共同支持的配置。
wfd目录
bash
frameworks\av\media\libstagefright\wifi-display
wfd优化
- 优化发送端分辨率
VideoFormats::config_t定义了wfd支持的视频格式

android11发送端设置的最大支持视频格式是1280720 p23格式,如果想改成支持1920 1080 p23,只需要把下图中的15改成16即可。

- 优化发送端编码参数,看文中注释就行了。

备注
Android 4.2(Jelly Bean MR1, API 17)--- 首次引入 WFD 框架,包含source和sink的部分代码,且往后版本又把sink代码移除了。
https://xrefandroid.com/android-4.2.2_r1/xref/frameworks/av/media/libstagefright/wifi-display/
