# dsh-we-wallpaper — Development Summary / 开发总结 > [!IMPORTANT] > 本节是 **v0.3.0 当前实现摘要**。下方“旧版开发记录”保留 v0.1.x 阶段的调查 > 过程,仅供追溯,不再代表新版行为。 ## v0.3.0 当前实现 本插件把用户本机 Wallpaper Engine 壁纸库接入 DeepSeek Harness 背景层: | 壁纸类型 | 新版处理方式 | | --- | --- | | 视频 | 原分辨率静音循环播放 | | 网页 | 沙箱化、穿透点击的 iframe | | 图片 | 直接显示原文件 | | 场景 | 默认由 Wallpaper Engine 原生渲染并生成一次性高清 H.264 动画缓存 | | 场景故障降级 | 精确高清 TEX → 可选 RePKG → 启发式 TEX → 普通预览 | ### 高清动画方案 旧版把约 150–256px 的 Workshop 动态预览放大到全屏,动画存在但画面明显模糊。 v0.3.0 改为: 1. 调用本机 Wallpaper Engine 打开真实场景窗口。 2. 使用随插件附带、公共领域许可的 `wcap`,通过 Windows Graphics Capture 捕获窗口。 3. 生成约 12 秒、1080p、30 FPS、16 Mbps 的 H.264 MP4。 4. 保存到 `~/.dsh/we-wallpaper-cache/hd-video/`,后续由 Harness 直接循环播放。 5. 依据 Wallpaper Engine 项目修改时间、录制器版本和参数判断缓存是否失效。 这不是每次启动都持续录屏,而是“首次生成、长期缓存、必要时重建”。它保留最终 画面的动画与清晰度,但交互、音频响应和实时随机变化会被固定为录制循环。 ### 高清静态与 `.pkg` 解析 内置解析器支持 PKG/TEX、LZ4、DXT1/3/5、RGBA、内嵌 PNG/JPEG 等资源。背景选择 优先沿 `scene.json → model → material → TEX` 依赖链定位可见、全屏、低渲染层级 背景,无法确定时才使用尺寸与宽高比启发式。样本 `3409595232` 可正确选择 `materials/背景.tex`(3840×2160),不会误选前景人物纹理。 可选 `repkgPath` 只调用用户已经安装的本地 RePKG,不会自动下载。插件以参数数组 启动外部程序,限制输出目录、设置超时并捕获错误。 ### 接口、安全与稳定性 - 保留 `/list`、`/state`、`/preview`、`/pkg`、`/media`、`/web`。 - 新增动画生成、状态、Range 流媒体和只读诊断接口。 - 壁纸 ID 必须来自扫描表;文件路径有穿越防护;路由拒绝跨站读取。 - 录制和解析异常均安全降级,不让 Harness 因单张壁纸失败而崩溃。 - 视频媒体元素在设置变化时复用,避免拖动滑杆重复创建解码管线。 ### 已知边界 - 本阶段没有在浏览器内实现完整 Wallpaper Engine 场景渲染器。 - 首次动画生成会让场景窗口置前约 15 秒。 - 固定时长循环可能在随机/非周期动画上出现接缝。 - 真正未知或受保护的包不会被强制解密;所有提取器失败后使用普通预览。 - 动画静音;第三方不透明 Harness 皮肤可能遮住背景。 ### 验证状态 - v0.3.0:类型检查通过,5 个测试文件、47 项测试通过,构建成功。 - CI 同时验证仓库根目录旧版与 `new/` 新版。 - 详细安装与操作见 [INSTALL.md](INSTALL.md) 和 [USAGE.md](USAGE.md)。 --- ## 旧版开发记录(v0.1.x,仅供追溯) > Status: working, iteratively improved. Known limitations are listed below — > the plugin is released as-is and refined over time. > > 状态:可用,持续迭代。已知限制见文末——插件按现状发布,后续逐步优化。 ## What this plugin does / 功能 Bridges a local **Wallpaper Engine** library into the **DeepSeek Harness** Web GUI as the app background, hot-pluggable via `cordis.patch.yml` + profile — no dsh source changes, no cloud, no external binaries. 把本地 Wallpaper Engine 壁纸库接入 DeepSeek Harness Web GUI 作为应用背景。 热插拔(cordis.patch.yml + profile),不改 dsh 源码、无云端、无外部二进制。 | Wallpaper type | Rendering | | --- | --- | | video | muted looping `