Unity插件-适用于画面传输的FMETP STREAM使用方法(一)FMETP STREAM介绍
目录
一、使用介绍
二、插件介绍
1、简述
2、核心功能
3、应用场景
4、技术实现
5、Demo示例
1)打开示例场景
2)场景示例
3)添加示例场景
4)运行场景
5)选择模式
6)连接测试
一、使用介绍
插件来源:Unity AssetStore
(FMETP STREAM 6 | 视频 | Unity Asset Store)
官方网页:FMETP STREAM 6 | 视频 | Unity Asset Store
官方文档:APIs – Frozen Mist
使用版本:Unity 2022.3.53f1c1、FMETP STREAM 1.2
硬件需求(最低配置):
处理器:1.1 GHz
内存:1 GB RAM
支持系统:iOS、Android、Mac、Windows、Linux
使用平台:iOS/Android/Mac/PC/Linux/WebGL/HTML/AR/VR
二、插件介绍
1、简述
Unity的插件FMETP STREAM是一款专注于局域网内实时画面传输的插件,支持多平台(如PC、Android、WebGL等),适用于开发需要实时同步或展示画面的应用场景。
FMETP STREAM 是一款专为Unity3D设计的插件,致力于实现游戏画面共享、远程协作及VR交互应用开发。在局域网环境下,该插件可实现Unity3D应用间的低延迟实时流媒体传输。
其编码模块与网络模块采用完全独立的设计架构:编码模块包含视频编码器和音频编码器,同时提供多种定制化网络系统——FM Network UDP(UDP协议)、FM WebSocket(WebSocket协议)以及FM Network Action(TCP/UDP混合协议)。除自有网络系统外,编码模块还兼容第三方网络解决方案。
由于源代码基于Unity3D C#开发,本插件支持绝大多数Unity构建平台,包括iOS、Android、Mac、Windows、Linux等操作系统。通过FM WebSocket的互联网通信能力,还可实现Unity3D WebGL构建及HTML网页端的流媒体支持。
当前版本在编码模块中集成了原生硬件编码方案,显著提升移动设备性能表现,突破低端设备性能瓶颈。根据实测数据,即使在iPhone 5等老旧设备上,也能流畅运行720P分辨率(24帧/秒)的实时流媒体传输。
2、核心功能
核心逻辑
画面编码→网络管理→画面解码
Game View Encoder -> Network Manager -> Game View Decoder
音频编码→网络管理→音频解码
Audio / Mic Encoder -> Network Manager -> Audio Decoder
-
实时画面传输:通过局域网实现低延迟的画面传输,支持一对一或一对多的传输模式。发送端可将Unity场景中的画面实时编码传输,接收端解码后渲染显示。
-
跨平台兼容:支持PC端、移动端(如Android)及WebGL平台,并可同步到HTML5网页中,方便多终端交互。
-
灵活的编码与解码:提供
GameViewEncoder
(编码端)和GameViewDecoder
(解码端)组件,通过绑定事件实现数据流的发送与接收,支持自定义渲染摄像机(如分屏显示)。
3、应用场景
-
教育与展览:用于多屏幕同步展示内容,例如在展厅中同步多个设备的画面。
-
远程协作:支持将Unity应用画面实时传输到其他设备,适用于远程控制或协同操作。
-
直播与教学:可构建简单的直播系统,例如将游戏画面传输到网页端供观众观看。
4、技术实现
-
网络架构:基于Socket.IO实现通信,插件内置
FMSocketIOManager
组件,通过设置NetworkType
(Server/Client)区分服务端与客户端。服务端负责接收并分发数据,客户端则发送或接收画面流。 -
自动发现与端口配置:默认自动搜索局域网内的设备,无需手动设置IP,仅需指定端口即可建立连接。支持多客户端同时连接到单一服务端。
-
事件驱动机制:通过绑定事件(如
OnDataByteReadyEvent
和OnReceivedByteDataEvent
)实现数据流的处理,开发者可自定义传输逻辑。
5、Demo示例
1)打开示例场景
在FM_ExhibitionToolPack文件夹下找到“Demo_NetworkingMain”场景
2)场景示例
3)添加示例场景
将用到的场景添加到build场景中
4)运行场景
运行示例场景,点击FMNetwork Basic
5)选择模式
选择开启服务端或客户端
6)连接测试
开启新项目或打包启动一个新的场景,选择开启服务端或客户端,保证开启一个服务端一个客户端。可以看到连接数量为1,证明连接成功