HogwartsWall互动墙系统 v1.0

树先生昨天59阅读0评论

霍格沃兹墙展厅软件是一套面向展厅互动墙的多媒体播放与触发系统。软件通过多个 Slot 组成互动区域,每个 Slot 可以显示待机媒体或程序化特效,并在触摸、鼠标、TUIO 或 UDP 控制命令触发后播放对应的主媒体内容。

HogwartsWall互动墙系统 v1.0

主要功能如下:

  • 多 Slot 独立展示、独立触发、独立事件配置。
  • 支持待机图片、待机视频、触发主视频,以及程序化待机特效。
  • 支持鼠标调试触发、TUIO 输入、外部 UDP 控制。
  • 支持资源导入、资源扫描、孤立文件和重复文件检查。
  • 支持授权校验、机器码复制和机器码二维码展示。
  • Trial 授权最多允许运行 10 个 Slot,正式授权不限制 Slot 数量。
  • 调试模式内可直接调整 Slot 位置、尺寸、旋转、缩放、触发区域和触发形状。

运行环境与发布包

推荐运行环境

项目建议
操作系统Windows 10 / Windows 11 64 位
运行时.NET 8 Desktop Runtime
显卡支持 DirectX 11 的独立显卡
存储SSD,建议将素材放在本地磁盘
输入设备鼠标、触摸屏、TUIO 兼容触摸设备

多视频同时播放对 CPU、显卡和磁盘性能要求较高。现场部署前建议用最终素材完整压测一次。

Trial 授权限制

当授权类型为 Trial 时,软件最多允许运行 10 个 Slot。

具体表现:

  • 启动时如果 config.json 中配置了超过 10 个 Slot,只加载前 10 个。
  • 调试模式中新建 Slot 达到 10 个后会被阻止。
  • 如果运行期间出现超过限制的 Slot,软件会自动移除超出部分。
  • 调试面板会显示类似 Slot数: 10/10 (Trial) 的数量提示。

正式授权不限制 Slot 数量,但仍建议根据硬件性能合理规划素材分辨率、码率和同时播放数量。

启动、关闭与日常运行

启动软件

  1. 确认 config.jsonFFmpegResources 等文件和目录存在。
  2. 确认 license.lic 已放到程序根目录。
  3. 双击 HogwartsWall.exe
  4. 软件加载配置、授权和媒体资源后进入运行画面。

软件使用向导: https://www.tree666.com/page/hogwartswall/

关闭软件

  • Alt+F4 关闭。

调试模式

M 键可以切换调试模式。调试模式用于现场配置、素材绑定、触发测试和排查问题。

调试模式中会显示调试面板,包含:

  • FPS、内存占用、触点数、Slot 数。
  • 当前分辨率。
  • TUIO 和鼠标输入状态。
  • 当前选中 Slot 的位置、尺寸、旋转、缩放和触发区信息。
  • 快捷键帮助、授权信息、关于窗口入口。

Slot 与媒体内容

Slot 是什么

Slot 是软件中的基本互动单元。一个 Slot 通常包含:

  • 待机内容:图片、视频或程序化特效。
  • 主内容:触发后播放的视频或图片。
  • 显示区域:位置、尺寸、旋转、缩放。
  • 触发区域:触摸或鼠标命中的区域。
  • 事件动作:触发时或播放完成时向外部系统发送 UDP 消息。

Slot 常见状态:

状态说明
Idle待机状态,显示待机内容
FadingIn从待机内容淡入主内容
Playing主内容播放中
FadingOut主内容结束后淡出回待机内容

绑定媒体

进入调试模式后,右键点击 Slot,可在菜单中选择:

  • “绑定 Idle 媒体...”:设置待机图片或待机视频。
  • “绑定 Main 媒体...”:设置触发后播放的主媒体。
  • “设置为程序化特效...”:将待机内容切换为程序化特效。
  • “编辑特效参数...”:编辑当前程序化特效。
  • “切换为视频/图片模式...”:从程序化特效切回普通媒体模式。
  • “事件配置...”:配置触发事件和播放完成事件。
  • “资源管理器...”:打开资源管理器并查看素材。
  • “删除此 Slot...”:删除当前 Slot。

绑定媒体时,程序会将外部文件复制到 Resources 目录,并在 config.json 中保存相对路径。

媒体文件建议

类型建议
待机图片PNG / JPG,优先使用 PNG
待机视频MP4,循环感强,尽量控制码率
主视频MP4 / MOV 等常见格式,分辨率与实际显示尺寸匹配
命名推荐英文、数字、下划线,避免过长文件名
存储使用本机 SSD,不建议直接从网络盘播放

素材分辨率和码率越高,对显卡、CPU 和磁盘压力越大。多个 Slot 同时播放时,应优先优化素材体积和分辨率。

资源管理器

资源管理器用于查看和清理 Resources 目录中的素材文件。

打开方式:

  • Ctrl+R
  • 调试模式中右键 Slot,选择“资源管理器...”。

主要功能:

  • 扫描当前资源目录。
  • 显示资源总数、已使用资源、孤立文件、重复文件。
  • 按状态和文件类型筛选资源。
  • 查看资源被哪些 Slot 使用。
  • 导出资源报告。
  • 归档或清理孤立文件、重复文件。

清理资源前建议先确认 config.json 已保存,并确认当前项目不再需要这些素材。资源管理器可以帮助发现无用文件,但最终删除前仍应由现场维护人员确认。

配置文件说明

配置文件位置

主配置文件位于程序根目录:

HogwartsWall\config.json

调试模式中的大部分修改,需要按 Ctrl+S 保存后才会写入 config.json

UDP 控制与外部集成

外部控制软件

如果 EnableUdpControltrue,软件会监听 UdpControlPort 端口。默认端口为 8976

当前支持命令:

命令说明
TRIGGER:SlotId触发指定 Slot
STOP:SlotId停止指定 Slot,回到待机状态
PLAYALL触发所有 Slot
STOPALL停止所有 Slot

注意命令中使用英文冒号 : 分隔,不是空格。

示例:

TRIGGER:Slot1
STOP:Slot1
PLAYALL
STOPALL

PowerShell 发送示例:

$message = "TRIGGER:Slot1"
$bytes = [System.Text.Encoding]::UTF8.GetBytes($message)
$udp = [System.Net.Sockets.UdpClient]::new()
$udp.Send($bytes, $bytes.Length, "127.0.0.1", 8976) | Out-Null
$udp.Close()

Python 发送示例:

import socket

message = "TRIGGER:Slot1"
sock = socket.socket(socket.AFINET, socket.SOCKDGRAM)
sock.sendto(message.encode("utf-8"), ("127.0.0.1", 8976))
sock.close()

日志与故障排查

日志位置

日志默认写入程序根目录下的 logs 文件夹,例如:

HogwartsWall\logs\log-2026-06-14.txt

排查问题时,建议同时提供:

  • 问题发生时间。
  • config.json
  • 最近的日志文件。
  • 授权状态截图或授权申请信息。
  • 现场操作步骤。

快速操作索引

目标操作
启动软件双击 HogwartsWall.exe
进入调试模式M
打开授权信息调试模式按 L
复制授权申请信息授权窗口点击“复制机器码”
显示授权申请二维码授权窗口点击“显示二维码”
新建 Slot调试模式按 N
在指定位置新建 SlotCtrl + 鼠标右键
保存配置Ctrl+S
重载配置F5
打开资源管理器Ctrl+R
绑定媒体调试模式右键 Slot
编辑特效选中 Slot 后按 P
配置事件调试模式右键 Slot,选择“事件配置...”
退出软件Alt+F4

视频教程

更新日志

v1.0(2026/07/01)

  • 第一个版本

运行库下载

https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/8.0.28/windowsdesktop-runtime-8.0.28-win-x64.exe

资源下载
资源下载

解压密码:更新时间:

文章版权声明:除非注明,否则均为树先生原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
验证码
评论列表 (暂无评论,59人围观)

还没有评论,来说两句吧...

目录[+]

取消
微信二维码
微信二维码
支付宝二维码

侠骨柔肠,恩深义重!感谢诸位江湖友人的鼎力支持,这份情谊我记下了。且看,细数各位侠士的慷慨事迹!