很多时候出现这样的场景: PC在书房, 电视在客厅, 想要投屏的时候就比较痛苦了, 很多电视只支持DLNA投屏, 局限性很大(不能投屏在线网课), 有的电视甚至根本没这功能. 看着当旁路由吃灰的树莓派, 突然有了想法, 毕竟它就放电视机旁边, 只要让树莓派和PC同屏, 再用HDMI接电视就可以了, 总不可能没HDMI接口吧! 不过这条路的坑竟如此之多, 在此小结一下.
首先树莓派和PC同屏用到的是moonlight, 他可以把装了N卡的电脑实时串流到其它设备, 不止是游戏, 而是整个桌面. PC服务端是老黄官方的GeForce Experience, moonlight作为客户端安装在树莓派上. 安装步骤在这里https://github.com/irtimmer/moonlight-embedded/wiki/Packages 注意仅支持raspbian和archlinux. 安装的时候可以顺便把源换成国内的, 更新的时候速度会快一点, 方法https://blog.csdn.net/zqxdsy/article/details/102574239.
装好之后, 在GeForce Experience里面设置的SHIELD中打开GAMESTREAM选项. 然后SSH连接树莓派, 输入moonlight pair [PC的ip]
, 电脑上就会弹出窗口, 在里面填上SSH终端里面显示的数字, 就可以成功匹配了. 匹配之后输入moonlight stream [-清晰度] [PC的ip]
, 就可以在树莓派连接的屏幕上看到PC端的实时画面了. NVIDIA牛逼!
几个巨坑:
- 树莓派连接的显示屏(电视机)要在树莓派开机前开启, 不然树莓派识别不到显示器, 也就是说在串流之前电视上就应该已经有了树莓派的命令行界面. 当然, 后续操作在SSH上进行是一样的.
- 树莓派4B的两个microHDMI口只有靠近USB-C的那个接口可以同时输出声音, 感谢https://talk.quwj.com/topic/618指路. 这个真的可以调到死. 其它关于声音的问题见https://www.raspberrypi.org/documentation/configuration/audio-config.md
- 如果输入串流命令后出现552错误, 尝试重启PC可解决.
- 输入串流命令后一般会自动打开你的steam客户端, 不要关掉了, 关掉之后串流会随即中断.
- upd: 开启树莓派ssh的方法是在boot分区(roofs里面我也建了)中创建一个名为
ssh
的空文件 有需求的话安装xrdp即可rdp连接 - 最好别用ext2fsd 要在linux系统下读写 在windows下面我已经写坏两张sd卡了