UE4像素流(PixelStreaming)应用场景演示和分析
UE4像素流(PixelStreaming)应⽤场景演⽰和分析
内容索引:
⼀.⽤到的知识
⼆.局域⽹(内⽹)单实例
三.局域⽹多实例
四.⼴域⽹(外⽹)单实例
五.⼴域⽹多实例
六.GPU云服务器/普通云服务器部署
七.虚拟⽹络与像素流
⼋.优化的解决⽅案
九.已知问题汇总(持续更新)
⼀.⽤到的知识
1.基础⽹络知识
需要了解TCP/UDP/IP/NAT/STUN/TURN
IPv4地址类型:
公有地址
公有地址(Public address)通过它直接访问互联⽹,彼此在公⽹上都能互相到的IP地址。
私有地址
私有地址(Private address)也是常说的内⽹地址,在内⽹使⽤,传⼊到公⽹会被丢弃。
以下列出、的内部私有地址:
A类 10.0.0.0--10.255.255.255
B类 172.16.0.0--172.31.255.255
C类 192.168.0.0--192.168.255.255
C类的地址也就是我们最常⽤的局域⽹地址。
怎么知道两个IP地址是在⼀个局域⽹?
⼀句话简易概况:
192.168.0.1 到 192.168.0.254 ,掩码是255.255.255.0 是在⼀个局域⽹中,总共有2^8-2个地址可使⽤。⽐如192.168.0.20 与192.168.0.66 就是在⼀个局域⽹中,可以通过win+R ,ping 对⽅地址测试。
192.168.1.1 到 192.168.1.254 ,⼀般掩码是255.255.255.0 是在⼀个局域⽹中。
以此类推,因为这个⽹段是很多路由器默认的内⽹地址段。
2.NAT
NAT(Network Address Translation),⽹络地址转换,因为IPv4地址不够,2^32个地址, NAT解决IP地址不⾜的问题。具体看这个
3.stun/turn
NAT技术的出现是为了解决遇到的问题,⼀旦实现后,NAT本⾝也成为问题,故⽽需要穿透技术。⽬前常⽤的针对UDP的NAT 穿透(NAT Traversal)⽅法主要有:STUN、TURN、ICE、uPnP等。其中ICE⽅式由于其结合了STUN和TURN的特点,所以使⽤最为⼴泛。
访问外⽹需要⽤到NAT技术,为了解决NAT技术,⽤到了stun/turn穿透技术。
官⽅⽂档:
建议把官⽅这⽅⾯内容⾃⼰研究⼀遍,后⾯的就好理解了。
⼆.局域⽹(内⽹)单实例
图⼀
这个官⽅⽂档有很详细的操作流程,具体原理如下:
组件
1. 像素流送插件 - 此插件在虚幻引擎中运⾏。其使⽤H.264视频压缩对每个渲染帧的最终结果进⾏编码,将这些视频帧随游戏⾳频⼀同
打包到媒体流送中,并通过直接点对点连接将该流送发送到⼀个或多个连线的浏览器上。
2. 信令和Web服务器- 信令和Web服务器负责交涉浏览器和像素流送插件之间的连接,将播放媒体流送的HTML和JavaScript环境提供
怎么查自己的ip给浏览器。
连接进程,参考图⼀:
1. 启动所有像素流送组件时,在虚幻引擎中运⾏的像素流送插件⾸先将建⽴到信令和Web服务器的链接。
2. 客户端会连接到信令服务器,服务器将对客户端提供⼀个HTML页⾯,其中包含播放器控件和以JavaScript编写的控制代码。
3. ⽤户开始流送时,信令服务器将进⾏交涉,在客户端浏览器和虚幻引擎之间建⽴直接连接。
4. 客户端和虚幻引擎之间的连接建⽴后,像素流送插件便会直接开始将媒体流送到浏览器。来⾃客户端的输⼊由播放器页⾯的
JavaScript环境直接发送回虚幻引擎中。
5. 即使媒体流送已经开始播放,信令和Web服务器仍会维持其与浏览器和虚幻引擎的连接,以便在必要时将⽤户从流送中移除,并处理
浏览器造成的连接断开。
操作步骤:
注意点:
1.为了保障测试顺通,双⽅防⽕墙都关闭。若有打开防⽕墙需求,可以等测试通过后,在针对性设置防⽕墙。
2.客户端与UE4端在⼀个局域⽹中,可通过win+R ,输⼊ipconfig 查看,
3.win10使⽤基于chromium的浏览器,chrome、edge、firefox、360极速模式都可以。mac端。。。,没有mac。
4.⼿机端IOS safari ;android 链接打开。暂时不⽤纠结为何有的⼿机端浏览器打不开。
三.局域⽹多实例
估计看不清,知乎图⽚压缩了
相⽐单实例多⼈共享同⼀个程序画⾯,多实例,每个⽤户拥有独⽴的程序,需要多开UE4程序,⽤户访问同⼀个地址,由matchmaker server依次分配没有被占⽤的UE程序。
如希望在同⼀电脑上使⽤像素流送来运⾏多个虚幻引擎实例,须注意NVIDIA GeForce系列等诸多应⽤级显卡⼀次最多只能运⾏2个编码器。Quadro和Tesla等专业级显卡则⽆此类限制。
步骤:
在单实例的基础上,从根路径复制出⼀个UE4程序,我这⾥分别命名4.25.ps1与4.25.ps2
下⾯按照图⽚的左右顺序依次操作。
UE4程序---信令服务器---matchmaker服务器---⽹页访问
1. UE4程序
ps1上配置: -AudioMixer -PixelStreamingIP=192.168.1.10 -PixelStreamingPort=7777
ps2上配置: -AudioMixer -PixelStreamingIP=192.168.1.10 -PixelStreamingPort=9999
2.信令服务器ps1:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。