当前位置: 首页 > article >正文

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,仅需指定端口即可建立连接。支持多客户端同时连接到单一服务端。

  • 事件驱动机制:通过绑定事件(如OnDataByteReadyEventOnReceivedByteDataEvent)实现数据流的处理,开发者可自定义传输逻辑。


5、Demo示例

1)打开示例场景

在FM_ExhibitionToolPack文件夹下找到“Demo_NetworkingMain”场景

2)场景示例

3)添加示例场景

将用到的场景添加到build场景中

4)运行场景

运行示例场景,点击FMNetwork Basic

5)选择模式

选择开启服务端或客户端

6)连接测试

开启新项目或打包启动一个新的场景,选择开启服务端或客户端,保证开启一个服务端一个客户端。可以看到连接数量为1,证明连接成功


http://www.kler.cn/a/585545.html

相关文章:

  • 大数据学习(67)- Flume、Sqoop、Kafka、DataX对比
  • 基于SSM的线上视频学习系统
  • Tomcat Session 反序列化漏洞(CVE-2025-24813)
  • 京鲁医疗健康专家委员会聊城专家团成立
  • 万字长文详解嵌入式电机软件开发
  • 问deepseek: 如何处理CGNS网格文件里,多个zone之间的链接数据
  • 802.11标准
  • ImGui 学习笔记(四)—— 实现每窗口背景色
  • Compose 实践与探索八 —— LayoutModifier 解析
  • 批量删除或替换 Excel 的 Sheet 工作表
  • Cesium零基础速成教程:一小时入门Cesium
  • 图注意力循环神经网络(AGCRN):基于图嵌入的时间序列预测
  • 【C++】每日一练(链表的中间结点)
  • 数据库系统导论 15-445 2023Fall part1
  • 深度学习有哪些算法?
  • IP风险度自检,互联网的安全“指南针”
  • 网络安全态势感知产品设计原则
  • 《灵珠觉醒:从零到算法金仙的C++修炼》卷三·天劫试炼(50)六魂幡控流量 - 最大网络流(Ford-Fulkerson)
  • 浅谈Linux中的Shell及其原理
  • 使用 Python 爬取微店关键词搜索接口(micro.item_search)的完整指南