Skip to content

IP KVM 远程控制与二次开发方案 ​

本方案将 视频采集、USB 键鼠模拟与网络接入 集成在一块控制板上,通过网络查看和操作被控主机。方案强调 开放应用层接口、支持二次开发、高集成度硬件与高性价比,适合在现有远程控制能力上开发自有界面、业务流程和管理工具。

开发者可以复用板端的视频、音频与 USB 功能,将开发重点放在应用层。集成式硬件减少多个独立模块之间的连接与适配工作,有助于控制整机集成成本与开发投入。

1、连接拓扑与硬件集成 ​

IP KVM 连接拓扑:同一被控主机通过 HDMI 和 USB 连接控制板,控制板接入网络并由 5V 电源供电,用户通过浏览器访问

HDMI 与 USB 必须连接到同一台被控主机:HDMI 用于输入视频,USB 用于模拟键盘、鼠标和 U 盘。控制板通过网口连接路由器或交换机,由 5V 电源适配器供电。

连接作用
被控主机 HDMI → 控制板视频输入获取被控主机画面
控制板 HDMI OUT → 本地显示器(可选)环出视频,供本地查看
控制板 USB0 → 被控主机 USB提供 HID 键鼠与 MSC 模拟 U 盘复合设备
控制板网口 → 路由器 / 交换机视频传输与远程控制通信
5V 电源 → 控制板为控制板供电
用户浏览器 → 控制板网页查看画面、操作键鼠、上传文件

HDMI 环出为可选配置,可连接本地显示器查看画面。不需要环出时,可不装相关器件,进一步控制硬件成本。

2、开放应用层接口,支持二次开发 ​

方案提供板端应用控制入口,开发者可通过串口或 shell 调用视频、键盘、鼠标等功能,并据此构建自己的应用流程。以下命令均在 控制板端 执行。

接口能力可扩展方向
WebRTC 启停与视频控制定制连接流程、预览界面与会话管理
8 字节键盘输入快捷键、组合键与自动化操作
4 字节相对坐标鼠标输入相对移动、按键与滚轮控制
6 字节绝对坐标鼠标输入远程画面坐标映射与指针定位
USB 复合设备与文件推送将文件传递流程集成到业务界面
上位机接收与状态显示网络链路调试、接收状态与异常展示

开发前释放 Demo 占用的资源 ​

Demo 默认开机自动启动 IP KVM,并调用视音频等接口。替换为自己的应用前,应关闭默认应用自启动,避免资源冲突:

bash
echo stop > /data/appcfg
sync

恢复默认 IP KVM 自启动:

bash
rm -f /data/appcfg
sync

修改后需重新上电生效。应用层接口开放便于定制开发,具体接口资料与交付范围可在项目对接时确认。

视频控制示例 ​

通过 /tmp/hdmi_udp.cmd 发送应用命令:

bash
# 启动 WebRTC
echo webrtc > /tmp/hdmi_udp.cmd

# 停止 WebRTC
echo webrtc stop > /tmp/hdmi_udp.cmd

# 停止视频
echo stop > /tmp/hdmi_udp.cmd

键盘与鼠标输入示例 ​

键盘采用 8 字节输入:第 1 字节为左右 Ctrl、Shift、Alt、GUI 修饰键位,第 2 字节保留,第 3~8 字节为普通按键扫描码。

bash
# 进入键盘输入模式,发送按键,再释放
echo kbd > /tmp/hdmi_udp.cmd
echo 00 00 04 00 00 00 00 00 > /tmp/hdmi_udp.cmd
echo 00 00 00 00 00 00 00 00 > /tmp/hdmi_udp.cmd

# 相对坐标鼠标输入:状态字节、X 变化量、Y 变化量、滚轮
echo mouse_rel > /tmp/hdmi_udp.cmd
echo 08 14 00 00 > /tmp/hdmi_udp.cmd

# 绝对坐标鼠标输入:按键、X 低位、X 高位、Y 低位、Y 高位、滚轮
echo mouse_abs > /tmp/hdmi_udp.cmd
echo 00 01 00 01 00 00 > /tmp/hdmi_udp.cmd

# 停止 HID 输入
echo hid stop > /tmp/hdmi_udp.cmd

绝对坐标接口的 X/Y 范围为 0–4096,按屏幕分辨率等比例映射。按键字节的 bit0、bit1、bit2 分别对应左键、右键和中键。相对坐标模式使用状态字节携带按键、X/Y 符号与溢出标志,需按该接口格式编码。

3、浏览器访问与 WebRTC 音视频 ​

IP KVM 浏览器界面,包含远程画面、Start / Stop、Ctrl+Alt+Del、全屏、音频和文件上传控制

Demo 开机自动启动网页服务。在同一局域网中,使用控制板的网络地址访问:

text
http://板子IP:8080/

点击 Start 建立连接,出现画面后即可通过网页控制键鼠。界面提供 Ctrl+Alt+Del、Fullscreen、Unmute 等操作入口,以及文件上传和模拟 U 盘控制。

项目当前 Demo 配置
视频编码H.264
视频码率 / 帧率12 Mbps / 60 fps
音频编码Opus
音频采样率 / 声道48 kHz / 双声道
浏览器访问WebRTC 音视频与网页键鼠控制

以上为所提供 Demo 的配置,不代表任意分辨率或网络条件下的性能保证。实际体验取决于视频源、固件配置与网络条件。

4、USB 键鼠与模拟 U 盘 ​

控制板 USB0 接到被控主机后,以复合设备形式同时提供 HID 键盘 / 鼠标 和 MSC 模拟 U 盘。网页操作键鼠的同时,可以向模拟 U 盘推送文件。

  1. 在网页选择文件,点击 Upload,先上传至控制板。
  2. 点击 Send to U-disk,将文件推送到模拟 U 盘;部分流程会在上传完成后自动推送。
  3. 日志显示 u-disk OK: 文件列表 后,表示推送成功。

当前 Demo 的模拟 U 盘容量最大为 4 MB,单文件不能超过模拟 U 盘容量,使用时还需考虑剩余空间。

5、上位机调试 ​

IP KVM 上位机界面,展示实时码率、视频帧、音频帧、丢帧或异常统计,以及网卡、端口和文件输出设置

配套上位机提供接收与调试界面,可选择绑定网卡、接收端口和模式,设置文件输出位置,并查看码率、视频帧、音频帧及丢帧 / 异常等信息。截图中的地址和端口属于示例配置,实际联调时应与板端目标地址保持一致。

该界面可作为定制管理工具的参考,将网络状态、接收统计和业务操作组织在同一应用中。

6、跨网络访问 ​

浏览器与控制板不在同一局域网时,可使用 Demo 内置的 ZeroTier 组网能力。将控制板和访问端加入同一个虚拟网络,并在网络管理端授权后,使用控制板的虚拟网络 IP 访问 8080 端口。

Demo 的网络 ID 配置位于 /etc/init.d/S95zerotier,需调整为自己的网络配置。跨网络访问仍使用相同的网页操作流程;能否直连以及实际延迟取决于两端网络环境。

7、方案价值与项目对接 ​

开放接口让应用可定制,高集成度硬件让产品更易落地。 在一块控制板上整合视频、USB 与网络能力,并复用已有 Demo,可减少外围模块组合与基础功能开发投入,形成兼顾功能与成本的 IP KVM 产品方案。

如需样机评估、应用层接口资料或二次开发支持,请联系 doc@ultrasemi.com。建议提供目标视频规格、网络部署方式、定制功能、产品形态与预计用量,便于确认硬件配置和开发范围。

深圳市优森美科技开发有限公司
欢迎咨询音视频产品方案与芯片选型支持
邮箱:doc@ultrasemi.com · QQ: 2272715136 · 微信/手机: 13342996846

深圳市优森美科技开发有限公司
欢迎咨询音视频产品方案与芯片选型支持
邮箱:doc@ultrasemi.com · QQ: 2272715136 · 微信/手机: 13342996846