Skip to content

Releases

🔄 VRization 0.5.1 SteamVR preview · Refresh recovery / 刷新恢复

Choose a tag to compare

@LexZeon LexZeon released this 11 Oct 04:59

🧪 VRization v0.5.1 SteamVR preview / SteamVR实验版

English · 简体中文

English

UTC 2026-10-11. Windows 0.5.1-steamvr-preview, Android 0.5.1-steamvr-preview/build 3, iOS 0.5.1/build 3. Ordinary 0.4.0/build 8, the 0.5.0 preview and all historical downloads are preserved. iOS source/Simulator outputs are unsigned.

🔄 What changed

  • Corrected authorized Android preview USB bootstrap/video port 18775 and the driver's valid empty hmd_presence. Strict Host/Origin/session checks remain; no wildcard, forced driver or existing DPVR/global configuration change.
  • Either end's explicit Refresh rebuilds video and can recover an older enabled Phone HMD pause after worker-owned old-video cleanup. Active tracking keeps its baseline. New F8/editor pause, disable, Stop or session replacement wins; Stop revokes tracking atomically. Repeated requests coalesce; reconnect intent is one-shot. Ordinary Connect/Save and direct-phone mouse behavior do not gain recovery rights.
  • Keep settings/fit, invalidate stale decodes, wait safely for the first legal shared frame header, and refresh only invalid paused presence without fabricated tracking.
  • HMD Balanced 1280 total stereo width/Q75/60 target FPS, Sharper 1920/Q80/60, Low latency 640/Q45/60; saved/direct defaults remain separate. Owned QPC/waitable-timer pacing and coherent-publication dedup improve delivery. GPU eye packing still feeds CPU JPEG.
  • Android-containing packaging verifies the canonical public signer with official --apksigner, protecting upgrades from CI debug keys; Windows/source-only stays Android-SDK-independent.

🛠️ Install and find Refresh

  1. Fully extract the Windows ZIP, keeping native, drivers and licenses together; open Start-SteamVR-Preview.bat. Install the matching SteamVR Android APK build 3 alongside the ordinary app.
  2. Choose Phone as SteamVR HMD. Register only this package's driver through the launcher and open SteamVR. USB is default: unlock/authorize the phone, keep the experimental app in front, then start/connect.
  3. Windows Refresh / Rebuild connection is in the connection card. On the phone, show settings and use Refresh at the top. Save alone keeps tracking paused; explicit Refresh can recover the older enabled pause, while newer F8/Stop still wins. Static SteamVR Standby may require real movement.
  4. Balanced width is shared by both source eyes. Fit scaling changes placement, not source resolution. iPhone requires the source/Simulator downloads, a Mac and your Apple signing.

✅ Evidence and limits

Local checks passed 520 actual Python/script tests +443 subtests and 204 Android unit tests, with canonical APK signing. The EXE audit matched 29 modules plus launcher, 38 native runtimes and 47 notices. All three jobs of CI 38111616376 passed on production source 586bd74; follow-up source changes cover documentation and the canonical packaging gate. The extra packaging-helper regression ran locally; CI used its earlier 46-script scope.

The final six assets and SHA256SUMS.txt passed independent integrity review. The complete Windows ZIP also passed extracted executable diagnostics, first-header waiting, real owned IPC and Stop-event checks with no GUI, capture, mouse, ADB or SteamVR actions. Its EXE and Mirror helper match the bytes used in the final phone checks, which kept the already loaded same-source driver.

Independent iOS review verified 95 stable/35 preview Swift, four helpers, two native UI cases, nine original PNGs, 70 pixels and 12 checkpoints, with zero mouse output and no fabricated sensor quaternion. Both unsigned arm64 SDK26.2 builds are build3/minimum iOS15; source/Simulator files match. This uses synthetic SBS and simulated USB, not physical iPhone/OpenVR acceptance.

One Huawei HBP-AL00/API31 accepted both Refresh buttons without separate Resume. F8→PC Refresh and editor/Save→phone Refresh returned valid poses. Actual reboot/unlock followed by another explicit Refresh restored the route; the first post-unlock trace was disconnected, so automatic/uninterrupted recovery is not claimed. Final fresh-native both-end/repeated Refresh retained valid poses and the current preferences. Manual profile changes between earlier stages are not treated as an unchanged-hash sequence.

Earlier bounded probes measured 53.917158 decoded FPS and 60.005127 native publications/sec; these are not unique scene/display FPS or end-to-end latency. Complete physical axes, VR games, PCVR, sustained stability, other phones and physical iPhone remain unverified.

Read the illustrated tutorial, exact evidence and earlier failures and source/license credits.


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

UTC 2026-10-11;Windows 0.5.1-steamvr-preview、Android 0.5.1-steamvr-preview/build 3、iOS 0.5.1/build 3。普通 0.4.0/build 8、0.5.0实验版及所有历史下载保留;iOS源码/模拟器输出未签名。

🔄 改动

  • 修正已授权Android实验USB bootstrap/视频端口 18775及驱动合法空 hmd_presence;Host/Origin/会话检查仍严格,不加通配符、不强制驱动、不改已有DPVR/全局配置。
  • 任一端显式“刷新”重建视频,在所属工作线程完成旧视频清理后可恢复已有启用手机头显暂停;活动追踪保持基准。新F8/编辑暂停、禁用、停止或会话替换优先,停止原子撤销追踪;重复请求合并,重连意图仅一次。普通连接/保存及直连鼠标不获得恢复权限。
  • 保留设置/适配、丢弃旧解码,安全等待首个合法共享帧头;仅刷新无效暂停存在信息,不伪造追踪。
  • 头显均衡 双眼总宽1280/Q75/目标60 FPS、更清晰 1920/Q80/60、低延迟 640/Q45/60,保存/直连默认独立。自有QPC/可等待定时器节奏及一致性发布去重改善交付;GPU分眼拼接后仍经CPU JPEG。
  • 含Android打包使用官方 --apksigner 核验标准公开签名,防止CI调试密钥影响升级;Windows/仅源码不依赖Android SDK。

🛠️ 安装与找到刷新

  1. 完整解压Windows ZIP,将 native、drivers及许可保持在一起,打开 Start-SteamVR-Preview.bat;安装对应 SteamVR Android APK build 3,保留普通应用。
  2. 选择“手机作为SteamVR头显”,通过启动器仅注册本包驱动并打开SteamVR;默认USB,解锁/授权手机,实验应用保持前台后开始/连接。
  3. 电脑连接卡有“刷新/重建连接”;手机显示设置后最上方有“刷新”。单独保存仍暂停,显式刷新可恢复旧启用暂停,新F8/停止仍优先;静止SteamVR待机可能需要真实移动。
  4. 均衡宽度由两只源眼共享,适配缩放只改摆放、不提升源分辨率;iPhone需源码/模拟器下载、Mac及自己的Apple签名。

✅ 证据与边界

本地通过 520实际Python/脚本测试+443子检查、204 Android单元及标准APK签名核验;EXE审计匹配 29模块及入口、38原生运行时、47通知。生产源码 586bd74 的 CI 38111616376 三项均通过,后续源码变化为文档及标准打包门控;新增打包工具回归在本地执行,CI使用先前46项脚本范围。

最终六个资产及 SHA256SUMS.txt 通过独立完整性审查。完整Windows ZIP解压后还通过可执行文件诊断、初始帧头等待、真实自有IPC和停止信号检查,界面、采集、鼠标、ADB和SteamVR动作均为零;EXE与Mirror工具逐字节匹配最后真机检查所用文件,真机检查保留当时已加载的同源码驱动。

iOS独立核验 95正式/35实验Swift、四辅助、两原生UI、九原PNG、70像素和12检查点,零鼠标且没有假传感器四元数;双未签名arm64 SDK26.2为build3/最低iOS15,源码/模拟器文件匹配。使用合成SBS/模拟USB,不代表实体iPhone/OpenVR验收。

单台华为HBP-AL00/API31接受两端刷新而无需另点恢复,F8→电脑刷新、编辑/保存→手机刷新重新出现有效姿态。实际重启/解锁后再显式刷新恢复路线,但首次解锁后追踪仍断联,因此不声称自动/连续恢复;最后新原生包双端/重复刷新保留有效姿态及当前偏好,早先阶段之间手动修改配置不当作贯穿始终的哈希不变证据。

早先有限工具测得 53.917158解码FPS、60.005127原生发布/秒,不是场景/显示不同帧或端到端延迟;完整物理坐标、VR游戏、PCVR、持续稳定、其它手机及实体iPhone仍未验收。

详见图文教程、准确证据和早先失败及来源/许可鸣谢。

联系

咨询或合作:lexzeonstudio@gmail.com。

🧪 VRization 0.5.0 SteamVR preview / SteamVR 测试版

Choose a tag to compare

@LexZeon LexZeon released this 10 Oct 23:28

🧪 SteamVR preview / SteamVR 测试版

English · 简体中文

English

Separate v0.5.0-steamvr-preview, based on preserved v0.4.0-alpha. Use the new Windows launcher and matching preview phone app; ordinary installs, settings and all historical downloads remain available. English is the default; English and Simplified Chinese are selectable.

Entry Behavior
📱 Original direct phone Desktop/display-region streaming with Full screen, Big screen, First person and Enhanced first person; existing locally controlled gyro mouse behavior.
🥽 Phone SteamVR HMD Original virtual HMD driver, full quaternion orientation and independent compositor eye images. Rotation-only 3DOF; fixed position, no tracked controllers. This route never moves the Windows mouse.
🎮 Existing SteamVR headset Desktop overlay for a PCVR/standalone headset already connected through its existing SteamVR-compatible transport; native games/controllers/tracking remain on that existing path.

Phone fit scale, mirrored eye spacing, proportional corner editing, Save/Discard and local synchronized profiles remain usable. SBS samples separate source eyes and keeps native projection/aspect; the saved direct-phone Cinema/Enhanced mode is retained. F8/editor/Stop latches HMD tracking paused until local PC Resume. Stop closes current sessions, clears old frames and cleans this preview's owned helpers/overlay.

Install: Extract the complete Windows ZIP and run Start-SteamVR-Preview.bat. Install VRization-SteamVR-Android-debug.apk for the separate Android preview (org.vrization.steamvr, build 1), rather than replacing ordinary VRization. Phone HMD driver registration and opening SteamVR are explicit launcher actions; only this package's driver path is added/removed. Existing DPVR/vendor drivers and global SteamVR settings are preserved. Keep the registered folder at the same path. iOS 0.5.0/build 1 source and unsigned Simulator downloads are provided; physical iPhone installation requires the user's Apple signing, and no installable signed IPA is included.

Verified scope: 387 Windows/Python cases plus 312 subtests; 40 script cases; 176 Android cases; four native targets and 365 software IPC/WARP/ABI fixtures; iOS 95+21 Swift cases, two native UI cases, 7 original screenshots/50 pixel samples/6 connection checkpoints and both SDK builds. The original direct-phone regression also passed 95 Swift/seven UI cases. Final frozen source/runtime/license checks and actual full Windows ZIP fresh-profile diagnostics/owned IPC passed. Future preview CI performs the same complete ZIP gate. A failed short Simulator drag attempt is preserved in the verification record; the strengthened native test checks the actual draft before Save.

Final code CI 38094239121 passed all three jobs at a20ba07. Its actual iOS artifacts were independently checked: a held native corner drag reduced the draft, Save synchronized scale 0.85 → 0.7530, and simulated USB reconnection restored that saved value. The download uses this run's original Simulator app. The publication commit only updates verification documentation; Android, iOS, Windows and native code remain identical to the checked code.

Hardware boundary: Huawei and PCVR testing is explicitly deferred to the next chat. Real SteamVR virtual-display/compositor availability, physical USB, phone axes/optics, sustained FPS and motion-to-photon latency are not claimed to pass. A standalone headset needs an existing compatible PC transport; this preview does not provide universal standalone networking, position tracking or controllers. Native Windows components require a current Microsoft Visual C++ v14 x64 runtime compatible with the build toolset. Windows preview visual GUI automation could not be confirmed; diagnostics and fixture results keep their stated scope.

Reuse and credit: Android core AAR and complete cross-platform source are included. Modules separate session negotiation, orientation gating, IPC, capture, driver/runtime actions and phone rendering. Valve OpenVR v2.15.6 is pinned to 0924064316de3effbcd1acf1e309182a2deb1c05, with exact hashes and its unmodified BSD-3-Clause license. HMD/overlay lifecycle ideas, original rewrites and authors/contributions are credited; no Qt sample, historical virtual-display transport or user reference photograph is redistributed. All six assets have SHA256 checksums.

See the 📖 illustrated tutorial, 🔬 precise verification, 🧩 architecture, 🤖 AI handoff and 📜 attribution.


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

独立 v0.5.0-steamvr-preview,基于保留的 v0.4.0-alpha。使用新电脑启动器和对应实验版手机应用,保留普通安装、设置及全部历史下载;默认英文,可切换英文/简体中文。

入口 功能
📱 原版手机直连 桌面/显示器选区串流,保留全屏、大屏幕、第一人称和加强第一人称,以及既有本地授权陀螺仪鼠标控制。
🥽 手机 SteamVR 头显 原创虚拟头显驱动、完整四元数方向、合成器独立双眼;只有旋转的 3DOF,位置固定、没有追踪控制器,此路线不移动 Windows 鼠标。
🎮 已有 SteamVR 头显 为已通过兼容方式连接 SteamVR 的 PCVR/一体机添加桌面覆盖层;原生游戏、控制器和追踪沿用既有通路。

手机画面缩放、镜像眼间距、等比顶点编辑、保存/弃用及本地同步配置继续可用。SBS 采样独立源眼、保留原生投影/比例,用户的直连大屏幕/加强模式仍保存。F8/编辑器/停止锁定头显暂停,直到电脑本地恢复;停止关闭当前会话、清掉旧帧并清理本版子进程/覆盖层。

安装: 完整解压 Windows ZIP,运行 Start-SteamVR-Preview.bat。安装 VRization-SteamVR-Android-debug.apk,独立 Android 标识为 org.vrization.steamvr、build 1,保留普通 VRization。手机头显注册和打开 SteamVR 都是启动器显式操作,仅增删本包驱动路径,保留已有 DPVR/厂商驱动及 SteamVR 全局设置;注册后保持目录位置。提供 iOS 0.5.0/build 1 源码和未签名模拟器下载,iPhone 真机需自己的 Apple 签名,没有直接安装的已签名 IPA。

已验证范围: Windows/Python 387 项加 312 子检查、40 脚本、176 Android、四个原生目标/365 软件 IPC/WARP/ABI;iOS 95+21 Swift、2 原生 UI、7 原始截图/50 像素采样/6 连接检查点及双 SDK 通过。原版直连回归另通过 95 Swift/7 UI。最终冻结源码/运行库/许可核对、完整 Windows ZIP 全新设置目录诊断和真实自有 IPC 通过;未来实验 CI 保留相同完整包检查。一次过短模拟器拖动失败的证据保存在验证记录,加强后的原生测试在保存前检查实际草稿变化。

最终代码 CI 38094239121 的三个任务在 a20ba07 全部通过。实际 iOS 产物经过独立核对:保持原生顶点拖动后草稿缩小,保存同步比例 0.85 → 0.7530,模拟 USB 重连恢复该已存值;下载采用此次构建的原始模拟器应用。发布 commit 仅更新验证文档,Android、iOS、Windows 与原生代码均与已检查代码一致。

硬件范围: 华为与 PCVR 按约定留到下个聊天。未声称真实 SteamVR 虚拟显示/合成帧、实体 USB、手机轴向/光学、持续帧率或运动到显示延迟通过。一体机需要已有兼容电脑连接方式,本版没有通用一体机网络协议、位置追踪或控制器。原生 Windows 组件需要与构建工具兼容的新版 Microsoft Visual C++ v14 x64 运行库。Windows 实验版 GUI 自动化未能确认可视界面,诊断和测试保留各自范围。

复用与鸣谢: 提供 Android 核心 AAR 和完整跨平台源码,按会话协商、方向门控、IPC、采集、驱动/运行环境操作和手机渲染分模块。Valve OpenVR v2.15.6 固定 0924064316de3effbcd1acf1e309182a2deb1c05,保留准确哈希及未修改的 BSD-3-Clause 许可;记录头显/覆盖层生命周期思路、原创重写、作者与贡献。不再分发 Qt 示例、历史虚拟显示传输实现或用户参考照片。六个资产均提供 SHA256。

见 📖 图文教程、🔬 准确验证、🧩 架构、🤖 AI 接手及 📜 来源鸣谢。

联系

咨询或合作:lexzeonstudio@gmail.com。

🌀 VRization v0.4.0-alpha · Enhanced first person / 加强第一人称

Choose a tag to compare

@LexZeon LexZeon released this 10 Oct 22:10

🌀 VRization v0.4.0-alpha — release notes / 发布说明

English · 简体中文

English

Windows, Android and iOS applications are 0.4.0, mobile build 8, release v0.4.0-alpha — 2026-10-10 UTC. The reusable Android core AAR is updated. The release page supplies the publication timestamp and verified downloads. The v0.3.4 notes and all historical downloads/checksums remain preserved. Protocol v1 and the eleven-field settings schema 2 remain; enhanced-mode support is negotiated separately.

Fourth mode: Enhanced first person

  • Every eye has a fixed 1:1 physical square. The same 2D desktop texture is resampled into it and given a curved wide-angle appearance by original GPU inverse equidistant sampling on Android GLES and iOS Metal.
  • Existing scale, offsets and mirrored eye spacing remain adjustable. Corner resizing preserves the square; Save/Discard, local committed preferences and connected PC/phone synchronization retain their existing boundaries.
  • The enhanced editor keeps the square and warp visible. Windows uses an approximate mesh over the existing latest frame at up to 10 preview updates/second; phone rendering uses the actual GPU projection. Older Cinema fitting retains its flat preview.
  • Existing FOV 50–110° (default 80°) changes the warp span. Out-of-source samples are black, producing curved/black corners. No new setting field or OpenCV runtime dependency is added. Projection details and tutorial.
  • Full screen, Cinema and ordinary First person retain their existing presentations. Enhanced viewing can work without a rotation sensor; that device cannot drive the gyro mouse. Both first-person modes use the same default-enabled Windows policy, sensitivity/stabilization and latched F8 / PC Resume. Mode changes, Save and reconnect do not clear a pause latch.

Mixed-version negotiation

fps_enhanced is sent only after enhanced support is negotiated. LAN clients opt in with enhancedFirstPerson=1; client hello can send capabilities:["enhanced-first-person"]. Host hello advertises support, and hello/every settings snapshot explicitly confirm the negotiated enhancedFirstPerson boolean. After a legacy USB hello, the new phone waits for a true full snapshot before restoring an enhanced profile. A new host maps enhanced settings to ordinary fps for an old client; a new phone sends fps to an old host while retaining its own enhanced profile/rendering. Schema 2 alone does not grant the new mode. See Protocol.

Provenance, validation and future work

The user reference image informed the style only and is not redistributed. The OpenCV 4.12.0 mathematical reference records authors, exact tag, document/source links and the root Apache/source BSD distinction; no upstream code or binaries are incorporated. VRization's mapping and square-fit implementation are original MIT code.

Completed checks: 334 local Windows tests plus 204 subtests, 22 separate script unit cases, 133 Android unit cases (75 app + 58 core), APK/release AAR builds and canonical Android signature verification. Android instrumentation compiled but was not executed. All four jobs passed in Actions 38088502161. Independent iOS review confirmed 95 Swift core tests, seven genuine native UI cases with zero failures/skips, both SDK builds and 38 enhanced pixel checks, plus 16 older-mode color/orientation and two seam checks; all 15 host checkpoints had zero mouse output. The final Windows EXE passed its source/native/notice audit, and the complete prepublication ZIP passed clean-profile runtime/link checks without SDK variables or capture/input. Optional developer packages stay excluded while original DXGI GPU capture remains. See exact validation and artifact identities.

The real isolated Windows preview editor on ASUS passed enhanced-mode selection, square resizing, inward mirrored contact, Save/reopen and draft Discard. An unmodified saved-editor screenshot illustrates the approximate desktop mesh over an original synthetic grid; no capture, phone, pose or OS mouse output ran in this check.

The unaltered native Metal screenshot shows actual iOS Simulator rendering of the original calibration card. Native simulated USB and LAN checks are software evidence, not physical phone/cable validation.

The user deferred Huawei and PCVR hardware tests to the next chat. Earlier performance and physical results do not establish this mode's GPU output, real-phone frame rate, game feel or latency. iOS source/Simulator outputs are not signed iPhone installers. All existing files and historical releases are retained. A separate SteamVR experimental version is planned, with original direct-phone, phone-as-SteamVR-HMD and already-connected SteamVR-headset entries; none is implemented by this fourth viewing mode. See Roadmap.

Quick start · Editor · AI handoff · Changelog


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

Windows、Android 与 iOS 应用 0.4.0、手机构建号 8,发布 v0.4.0-alpha — 2026-10-10 UTC,可复用 Android 核心 AAR 已更新。版本页面 提供发布时间和已校验下载;v0.3.4 说明 与全部历史下载/哈希保留。协议仍 v1,十一字段配置 schema 仍 2,新模式能力单独协商。

第四模式:加强第一人称

  • 每眼固定 1:1 物理正方形,把同一张二维桌面纹理重采样后呈现弯曲广角效果;Android GLES 与 iOS Metal 通过原创 GPU 逆等距采样实现。
  • 仍可调缩放、偏移与镜像眼间距,角点缩放保持正方形;保存/放弃、本地已提交偏好和连接时电脑/手机同步沿用原边界。
  • 加强模式编辑器保留正方形及变形预览;Windows 在已有最新帧上用网格近似,预览最高每秒十次,手机使用实际 GPU 投影。旧大屏幕适配继续使用平面预览。
  • 已有 **视场角 50–110°(默认 80°)**改变变形范围;超出源图的采样为黑色,形成弯曲/黑角。不新增设置字段或 OpenCV 运行依赖,见 投影与教程。
  • 全屏、大屏幕、普通第一人称保留原有显示;加强模式在无旋转传感器时仍可观看,但该设备无法进行陀螺仪鼠标控制。两种第一人称共用 Windows 默认启用策略、灵敏度/防抖及锁定的 F8/电脑恢复;切模式、保存和重连不能解除暂停锁。

混合版本协商

fps_enhanced 仅在新模式能力协商完成后发送。局域网客户端以 enhancedFirstPerson=1 主动启用,也可在 hello 发送 capabilities:["enhanced-first-person"];主机 hello 声明支持,hello/每条设置快照都以 enhancedFirstPerson 布尔值明确确认协商。旧格式 USB hello 后,新手机等待 true 完整快照再恢复加强配置。新版电脑向旧客户端把加强模式映射成普通 fps;新版手机对旧电脑发送 fps,自身仍保留加强配置/渲染。schema 2 本身不授予新模式,见 协议。

来源、验证与后续方向

用户参考图仅用于理解风格,不再发布。OpenCV 4.12.0 数学参考记录 写明作者、准确标签、文档/源码地址及根 Apache/文件 BSD 区别,没有采用上游代码或二进制;VRization 的映射与正方形适配为 MIT 原创实现。

已完成:334 项本地 Windows 及 204 个子测试、22 项独立脚本单元用例、133 项 Android 单元(75 app+58 core)、APK/release AAR 构建与权威 Android 签名校验。Android instrumentation 只编译未执行;Actions 38088502161 四项任务全部通过。iOS 独立审核确认 95 项 Swift 核心、七项真实原生界面零失败/跳过、两种 SDK 构建及 38 项加强像素,另通过 16 项旧模式颜色/方向与两项接缝,15 个主机检查点鼠标输出均为零。最终 Windows EXE 通过源码/原生/通知审计,完整预发布 ZIP 在无 SDK 变量、新配置下通过运行/链接检查,未进行采集/输入;继续排除可选开发包并保留原创 DXGI GPU 采集,准确范围与产物身份见 验证。

ASUS 上实际隔离配置 Windows 预览编辑器通过加强选择、正方形缩放、镜像向内接触、保存/重开及草稿放弃;未经修改的保存后编辑器截图 展示原创合成网格上的电脑近似网格,本次没有采集、手机、姿态或操作系统鼠标输出。

未修改的原生 Metal 截图 展示 iOS 模拟器实际渲染原创校准卡;原生模拟 USB/局域网属于软件证据,不是真实手机/数据线验证。

用户将 华为和 PCVR 真机测试留到下次聊天;旧性能与真机结果不能证明此模式的 GPU 输出、真机帧率、游戏手感或延迟。iOS 源码/模拟器不是签名 iPhone 安装包。全部已有文件与历史发布保留;另行 计划 SteamVR 实验版本,入口分别为原有手机直连、手机作为 SteamVR HMD、已连接的 SteamVR 头显,第四种观看模式不实现这些入口,见 路线。

快速开始 · 编辑器 · AI 接手 · 版本日志

联系

咨询或合作:lexzeonstudio@gmail.com。

🎯 VRization v0.3.4-alpha · Continuous gyro mouse / 持续陀螺仪鼠标

Choose a tag to compare

@LexZeon LexZeon released this 10 Oct 20:12

🎯 VRization v0.3.4-alpha — release notes / 发布说明

English · 简体中文

English

Windows, Android and iOS applications are 0.3.4, mobile build 7; the reusable Android core AAR is unchanged. Published 2026-10-10 UTC as v0.3.4-alpha. Protocol v1/settings schema 2 are unchanged. The v0.3.3 notes preserve the connection repair's earlier checks.

Default-enabled continuous gyro mouse control

Windows enables First-person gyro mouse control by default. A validated connection, First-person mode, available capture and fresh valid rotation data are required; the first pose sets a baseline before movement. Control works on the desktop, ordinary applications, games and VRization's own window regardless of foreground-window changes, with no five-second target-window deadline. A temporary sensor gap stops output and rebaselines on fresh poses before continuing. F8, the PC emergency stop, editor entry, PC Reset all settings, capture-region selection, capture/input failure and stream Stop latch a pause: late poses, settings and reconnecting cannot clear it. Click Resume gyro control on the PC, or explicitly turn the control checkbox off and on, to resume. Full screen and Cinema stop mouse output. The PC saves only the enabled preference, never the live armed state or pause latch.

The PC checkbox is Gyro mouse control in First-person (default on). Turning it off disables automatic input; turning it on is an explicit local resume. The saved gyro_control_enabled boolean lives in input.json, separate from VR settings and phone profiles. Existing valid saved off preferences remain off. PC Reset all settings latches input paused and restores the enabled preference and Full screen, without starting capture. Selecting a capture region also latches a pause. Use PC Resume when ready.

Stopping and compatibility

  • Cable detection alone does not start capture/control. Explicit Connect on either USB endpoint still coordinates streaming; Disconnect closes its owned transport and stops video/pose output.
  • Full screen/Cinema do not drive the mouse. A reconnect must not clear an existing F8/editor/failure/Stop pause.
  • Reusable HostServer/PoseController constructors retain auto_control=False; the GUI opts into the saved default-enabled policy. Integrations use host-local policy/resume APIs, without a new remote arm/resume message.
  • Android/iOS notices explain the Windows default and F8/PC Resume. Existing phone 0.3.3 remains protocol-compatible. Stabilization stays at 0% by default and its slider cannot clear a pause latch.
  • Games may reject ordinary injected mouse input; this release does not bypass game protections or add native game stereo.

Verification and update scope

Source 101174317613520c7d98375332c2a3bd9032cb2d passed 318 Windows tests and 116 clean Android tests (67 app + 49 core), with no failures/ignored cases. Android APK/AAR/instrumentation builds and lint passed: zero lint errors, nine CI warnings (eight existing local warnings plus OldTargetApi from the CI SDK inventory), with no warning suppression. The frozen EXE source/native/license audit and clean-profile Windows ZIP runtime smoke check passed. Huawei installed 0.3.4 / build 7 with the existing public certificate; its pulled installed APK matches the release APK hash. All four CI jobs passed; iOS passed 80 Swift core tests with zero failures, five genuine native UI cases with zero failures/skips, and both Simulator/unsigned device-target SDK builds. Independent screenshot decoding passed 12 color pixel checks and two seam checks; all 12 host checkpoints recorded no mouse moves. The tested app is 0.3.4/build 7/arm64/minimum iOS 15 on an iPhone 17 Pro Max Simulator running iOS 26.2 (Xcode 26.3/macOS 15.7.9); USB was simulated. See the complete versioned record.

The advanced Windows GUI check stopped after the user physically pressed Escape; actual GUI Resume/F8 is not claimed. New-version physical gyro control, game feel, video delivery, physical iPhone USB and latency were not tested. Historical performance results retain their own versions and configurations.

Close the old host, extract the complete Windows archive and retain separately installed USB tools. Android matching-signer updates preserve application data; verify with the official public certificate gate and release manifest. iOS source requires Xcode and the owner's Apple signing; the Mac Simulator archive cannot install on an iPhone. Existing published binaries and historical checksums remain immutable.

Quick start · Security · Stabilization · AI handoff · Changelog


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

Windows、Android 与 iOS 应用为 0.3.4、手机构建号 7;可复用 Android 核心 AAR 不变。按 UTC 2026-10-10 发布为 v0.3.4-alpha。协议 v1/配置 schema 2 不变,v0.3.3 说明 保留此前连接修复的检查。

默认开启且持续响应的陀螺仪鼠标

Windows 默认开启第一人称陀螺仪鼠标控制。必须有通过校验的连接、第一人称模式、可用采集与新的合法旋转姿态;首条姿态先建立基准,再产生移动。桌面、普通应用、游戏和 VRization 自身窗口均可控制,不受前台窗口切换影响,也不要求五秒内切到目标窗口。传感器短暂间断时停止输出,新姿态先重建基准再继续。F8、电脑紧急停止、进入编辑器、电脑重置全部设置、选择采集区域、采集/输入故障和停止串流会锁定暂停;迟到姿态、设置与重连都不能解除。需要在电脑点“恢复陀螺仪控制”,或主动关闭再开启控制复选框。全屏和大屏幕停止鼠标输出。电脑只保存启用偏好,不保存实时授权状态或暂停锁。

电脑复选框为“第一人称陀螺仪鼠标控制(默认开启)”。关闭停用自动输入,主动开启相当于电脑明确恢复;gyro_control_enabled 布尔值单独保存在 input.json,与 VR 设置和手机配置分开。已有合法的关闭偏好仍保持关闭;电脑一键重置锁定输入暂停,恢复启用偏好并选择全屏,不开始采集;选择采集区域也锁定暂停,准备好后在电脑点恢复。

停止与兼容性

  • 单纯插线/发现设备不启动采集或控制;任一 USB 端主动连接仍协调开始串流,断开关闭自有传输并停止视频/姿态输出。
  • 全屏/大屏幕不控制鼠标;重连不能解除已有 F8/编辑器/故障/Stop 暂停锁。
  • 可复用 HostServer/PoseController 构造器保留 auto_control=False,界面采用保存的默认启用策略;集成通过电脑本地策略/恢复 API 操作,不增加远程授权/恢复消息。
  • Android/iOS 提示解释电脑默认启用及 F8/电脑恢复;已有手机 0.3.3 协议仍兼容。防抖默认仍为 0%,滑块不能解除暂停锁。
  • 游戏可能拒绝普通模拟鼠标,本版不绕过游戏保护,也不新增原生游戏立体画面。

验证与更新范围

源码 101174317613520c7d98375332c2a3bd9032cb2d 通过 318 项 Windows 和 116 项干净 Android 测试(应用 67+核心 49),无失败/忽略。Android APK/AAR/测试工具构建及 lint 通过:零 lint 错误、九项 CI 警告(八项既有本地警告,加 CI SDK 清单产生的 OldTargetApi),未抑制警告。冻结 EXE 源码/原生/许可审计与新偏好 Windows ZIP 运行 smoke 通过;华为使用原公开证书安装 0.3.4/构建 7,拉取的已安装 APK 与发布哈希一致。四项 CI 任务 通过,iOS 通过 80 项 Swift 核心(零失败)、五项真实原生界面(零失败/跳过)及模拟器/未签名真机目标两种 SDK 构建;独立解码截图通过 12 项颜色像素及两项接缝检查,12 个电脑检查点均无鼠标移动。测试应用为 0.3.4/构建 7/arm64/最低 iOS 15,环境为 iPhone 17 Pro Max 模拟器 iOS 26.2(Xcode 26.3/macOS 15.7.9),USB 为模拟。完整按版本证据见 验证记录。

高级 Windows 界面检查因用户实际按 Escape 而停止,不宣称实际界面 Resume/F8 已验收。新版真机陀螺仪控制、游戏手感、视频传输、真实 iPhone USB 和延迟未测试;历史性能结果仍对应原版本与配置。

关闭旧主机,完整解压 Windows 包并保留另行安装的 USB 工具;同签名 Android 覆盖升级保留应用数据,按官方公开证书门槛及清单验证。iOS 源码需 Xcode 与自己的 Apple 签名,Mac 模拟器包不能安装到 iPhone;已发布二进制和历史校验值保持不变。

快速开始 · 安全 · 防抖 · AI 接手 · 版本日志

联系

咨询或合作:lexzeonstudio@gmail.com。

VRization v0.3.3-alpha · Alpha / 预览版

Choose a tag to compare

@LexZeon LexZeon released this 10 Oct 08:20

🔌 VRization v0.3.3-alpha — release notes / 发布说明

English · 简体中文

English

Windows, Android and iOS application labels are 0.3.3 (mobile build 6). Protocol v1, saved profiles, viewer fitting, all-mode bounds and default-off stabilization remain compatible.

Connection and stopping

  • Explicit USB Connect on the phone can request PC streaming; PC Connect / Start streaming can notify the selected authorized phone. Automatic detection alone never starts capture or mouse input. iOS requires the app in the foreground and existing Apple pairing.
  • Control is separate from video: Android control 18764 and video 18765; iOS foreground control 18767 and video 18766. The PC video listener still stops when Stop is pressed. These ports are local USB endpoints, not additional public LAN listeners.
  • ADB cold startup and recovery receive an eight-second budget, with bounded failure backoff; successful normal queries retain the shorter budget. A failed reverse-map query keeps the instance's ownership claim until cleanup is conclusively known. Foreign mappings are never overwritten or removed.
  • Android owns and cancels every actual socket. Connection-attempt and socket generations reject late callbacks, retries and decoded frames; explicit Disconnect clears output and stops pose transmission. USB requests bypass HTTP proxies without changing LAN behavior.
  • iOS LAN connection has its own 15-second pre-open deadline, followed by the bounded protocol handshake. A cancelled or timed-out upgrade cannot restore an old session or picture.
  • PC Stop immediately disables sending and input, closes the viewer, and waits for capture/network cleanup. Restart remains unavailable while cleanup is incomplete. Disconnection clears displayed statistics; late events from older sessions cannot restore them.
  • A repeated PC Connect must preserve an already connected phone's session and pose center. A queued or failed connection request cannot revive a later explicit stop.

Masked desktop capture and phone version

Windows already blacks out protected regions in the DXGI surface. The earlier host incorrectly treated its ProtectedContentMaskedOut flag as a fatal whole-stream error. The new capture uses exactly that OS-masked surface, leaves protected regions black, and reports masking without switching APIs or reopening protected content. Layout changes, output access loss and actual resource failures still stop the session. Both phone UIs show the installed version/build from package metadata.

Reuse and AI handoff

The AI handoff explains each module, ownership, entry points, transport flow, commands and a copyable continuation prompt in both languages. The host connection coordinator is separate from capture/video. Android vr-core exposes pure connection-attempt, socket-ownership, endpoint and request-policy helpers alongside the existing renderer and pose/fit core. See architecture and protocol.

Verified causes and limits

The observed ADB log repeatedly showed startup-handshake failure after approximately three seconds, matching the old command timeout. Reverse-map ownership loss is also a reproducible code path. These explain specific recovery failures; they do not prove a single cause for every historical USB incident.

At the inspected old PC Stop, port 8765 was closed even though old FPS/bitrate text remained. A separate synthetic slow-capture-close test reproduced the old host returning Stopped while its capture worker still existed. Button text, stale statistics and a successful build alone are insufficient acceptance evidence.

The final Windows executable and installed Android 0.3.3 / build 6 passed six real USB Connect / Disconnect cycles on the HUAWEI Pura 70 Ultra without unplugging or restarting ADB. Each connection decoded at least five desktop frames; each Disconnect stopped new frames for one second, cleared both-eye output and changed the host to waiting for a phone. PC Stop also cleared phone output; explicit phone Connect restarted the stopped host. Closing and reopening the ordinary BAT launcher passed two of those cycles, and application preferences were preserved. The Windows suite passed 287 tests plus 135 subcases; Android passed 116 unit tests, builds and lint. Final Mac checks passed 80 Swift core tests, five genuine native UI cases with zero failures / skips, both SDK builds and Metal color / seam checks. Native cases covered LAN upgrade cancellation / timeout and simulated USB Stop acknowledgment, disconnection and reconnection.

Physical iPhone USB and real game input are not established by Simulator or synthetic tests. No new end-to-end latency/FPS guarantee follows from these lifecycle changes. See validation, compatibility and performance.

Updating and publication

Update both host and phone to 0.3.3 for the new bidirectional USB control and iOS readiness handshake. Close the earlier host, extract the complete Windows ZIP and use its launcher. Update Android in place with the same public certificate; keep application data. The publication gate uses official apksigner and rejects a different/random CI debug signer. Only the public fingerprint is stored in source; private signing keys are never published. Keep verified checksums, historical releases and separately installed USB tools. iOS source requires Xcode/Apple signing; the Mac Simulator archive is not an iPhone installer.

USB guide · iOS guide · v0.3.2 archived notes · Changelog


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

Windows、Android 与 iOS 应用版本均为 0.3.3,手机构建号 6。协议 v1、保存的配置、画面编辑、所有模式的显示范围和默认关闭的防抖继续兼容。

连接与停止

  • 手机主动点击 USB“连接”可请求电脑开始串流;电脑“连接 / 开始串流”可通知已选中且授权的手机。自动检测本身不会启动采集或鼠标控制。iOS 需要应用在前台并已有 Apple 配对。
  • 控制与视频分离:Android 控制 18764、视频 18765;iOS 前台控制 18767、视频 18766。电脑 Stop 仍关闭视频监听。这些是本地 USB 端点,不是新增局域网公开监听。
  • ADB 冷启动 / 恢复最多等待八秒,失败采用有限退避,正常成功查询保留较短等待。映射查询失败时保留本实例的归属记录,直到确定清理结果;不会覆盖或删除其他程序的映射。
  • Android 持有并取消每个真实 socket;连接尝试和 socket 两层代际校验拒绝迟到回调、重试与解码帧。主动断开清空画面并停止姿态发送;仅 USB 请求绕过 HTTP 代理,局域网策略保留。
  • iOS 局域网连接在 WebSocket 打开前有独立的 15 秒等待上限,之后继续使用有限等待的协议握手;取消或超时的旧升级请求不能恢复旧会话和画面。
  • 电脑 Stop 即时停止发送 / 输入并关闭观看会话,等待采集与网络清理完成后才能重开。断线清空统计,旧会话迟到事件不能重新填回。
  • 重复电脑连接请求应保留手机已连接的会话与姿态中心。排队或失败的旧连接请求不能复活之后的主动停止。

系统遮罩画面与手机版本号

Windows 已在 DXGI 画面中把受保护区域遮黑,旧电脑端却把 ProtectedContentMaskedOut 标志当成整次串流的致命故障。新版直接使用系统已经遮罩的画面,受保护区域保持黑色,提示遮罩但不换接口或重读受保护内容。显示布局变化、输出访问丢失及真实资源故障仍停止会话;两个手机界面也从安装包信息显示版本 / 构建号。

复用与 AI 接手

AI 接手指南 以中英双语解释每个模块、资源归属、入口、连接流程、命令,并提供可复制的继续开发提示词。电脑连接协调器独立于采集 / 视频;Android vr-core 除原有渲染、姿态和画面几何外,还提供纯连接尝试、socket 归属、端点与请求策略辅助类。见 架构 与 协议。

已确认原因与限制

现场 ADB 日志多次在约三秒后出现启动握手失败,与旧命令超时吻合;映射归属丢失也有可复现代码路径。这解释了具体恢复故障,不能断言全部历史 USB 问题都来自同一个原因。

检查旧电脑 Stop 时,8765 已关闭,但旧帧率 / 码率文字仍在。独立的合成慢采集清理测试复现旧版宣布停止时采集线程仍未结束。按钮文字、旧统计和构建通过都不足以证明验收成功。

最终 Windows EXE 与已安装的 Android 0.3.3 / 构建 6 在 HUAWEI Pura 70 Ultra 上通过六轮真实 USB 连接 / 断开,没有拔插线或重启 ADB。每轮连接至少解码五帧电脑画面;每次断开后检查一秒无新帧、双眼画面清空、电脑变为等待手机。电脑 Stop 也清空手机画面,手机主动连接可重开已停止的电脑串流;六轮中包括关闭电脑端后通过普通 BAT 重开再测的两轮,应用偏好保持不变。Windows 通过 287 项及 135 个子用例,Android 通过 116 项单元测试、构建和 lint。最终 Mac 检查通过 80 项 Swift 核心、五项真实原生界面(零失败 / 跳过)、两种 SDK 构建及 Metal 颜色 / 接缝检查。原生用例覆盖局域网升级取消 / 超时、模拟 USB 停止确认、断开和重新连接。

模拟器与合成测试不代表真实 iPhone USB 或实际游戏输入,本次生命周期修复没有新增端到端延迟 / 帧率保证。见 验证、兼容性 与 性能。

更新与发布

新版双端 USB 控制与 iOS 就绪握手需要电脑和手机都更新至 0.3.3。关闭旧电脑端,完整解压 Windows ZIP 后运行启动器。Android 使用相同公开证书覆盖升级,保留应用数据;发布门槛调用官方 apksigner,拒绝不同 / 随机 CI 调试签名。仓库仅保存公开指纹,不公开私有签名密钥。保留校验值、历史版与独立 USB 工具。iOS 源码需要 Xcode / Apple 签名,Mac 模拟器包不能作为 iPhone 安装器。

USB 教程 · iOS 教程 · v0.3.2 历史说明 · 版本日志

联系

咨询或合作:lexzeonstudio@gmail.com。

VRization v0.3.2-alpha · USB reliability & First-person stabilization / USB连接与第一人称防抖

Choose a tag to compare

@LexZeon LexZeon released this 09 Oct 21:30

🎯 VRization v0.3.2-alpha — release notes / 发布说明

English · 简体中文

English

This version updates the Windows host, Android app / library and iOS app to 0.3.2, retaining protocol v1. It adds adjustable First-person gyro stabilization with 0% as the default, preserving the previous unfiltered behavior, and improves USB tools setup for an ordinary downloaded Windows application. Windows / Android build and test jobs, clean-environment packaged USB discovery and physical Huawei settings acceptance passed. The iOS test / build job also passed; the version-specific evidence and remaining limits are below.

First-person stabilization

  • PC and phone settings add a 0–100% stabilization slider. Only the Windows host filters phone rotation before mouse output; the phone does not filter twice. Sensitivity remains separate.
  • Committed values synchronize through normal settings / acknowledgment / broadcasts and persist locally. Reset returns stabilization to zero. Earlier ten-field profiles migrate by adding zero without discarding other values.
  • Settings schema 2 negotiates eleven fields inside protocol v1. New clients omit the new field for older hosts while preserving it locally and explaining that a new PC host is required. Legacy acknowledgments do not erase it.
  • An initial USB ten-field hello advertising support is followed by a complete eleven-field snapshot before profile adoption / no-sensor fallback. An omitted initial field is not treated as a remote zero.
  • Explicit PC arming, F8, focus / disconnect / capture checks and the pose watchdog remain. Filtering creates no timer-driven mouse output. Stronger smoothing can add following lag; see the tuning guide.

The original filter acknowledges One Euro Filter by Géry Casiez, Nicolas Roussel and Daniel Vogel, plus the pinned BSD-3-Clause Python reference. No upstream implementation or runtime dependency is bundled. The unchanged license and provenance are preserved; third-party notices distinguish references from dependencies.

Display naming and range

The visible FPS mode is renamed First person / 第一人称; the stored / wire identifier remains fps for compatibility. All phone viewing modes honor the resolved physical per-eye display rectangle, including cinema / distortion; perspective content need not fill the masked rectangle. Existing flat editor, seam contact and saved profiles remain available. A physical-device custom GLES runner passed 288 offscreen mask cases across both eyes; this is shader / pixel evidence, not headset optics or physical display-latency validation.

USB tools and ordinary Windows launch

The complete Windows ZIP includes Start-Windows.bat and runs without Python or a development environment. Official Android Platform Tools and USB drivers remain separately installed. PC USB controls provide Google's download page, manual downloaded-tools ZIP import and an explicit adb.exe selector. Import does not accept Google's terms automatically or bundle its SDK in the release.

Tool lookup includes fixed portable locations relative to the application / managed archive, alongside explicit and environment paths. Archive launchers set SDK variables only for the child app when a separate tools/android-sdk exists, preserving that installation across archive updates. This avoids depending on an SDK visible only inside a packaged application's virtualized AppData. See USB setup and archive layout.

Android USB detection uses a bounded attempt of up to 30 seconds, covering bootstrap discovery and the connection handshake. Success, cancellation, disconnect or backgrounding ends it; it is not permanent background reconnection. iOS retains foreground listening and explicit reconnection.

Verification and limits

  • Final archived v0.3.2 ordinary-launch acceptance: the user confirmed the stream was visible and repeated application close / reopen continued to connect.
  • The final packaged Windows EXE was tested with SDK variables cleared and fresh application preferences. It selected the separate portable tools beside the executable, found one authorized physical USB device and completed diagnostics without errors; no developer-SDK fallback was found. Its static audit matched 19 project modules, 47 notice files and 38 recorded native components. The public Windows ZIP also passed CI's run-without-a-developer-SDK check. Official tools remain separately installed.
  • On the physical HUAWEI Pura 70 Ultra, the phone slider saved 50% and synchronized to the host. A host update to 65% persisted on the phone, survived restart and restored to the host. The earlier viewing profile was retained; no OS mouse moves were recorded. The installed APK matched the candidate's SHA-256.
  • Phone-first USB retry passed: the phone started first, the test host started 6.08 seconds later, and connection succeeded at 7.67 seconds from phone startup (1.59 seconds after the host). The profile stayed unchanged and mouse output remained zero. This is one bounded startup result, not a long-duration connection guarantee.
  • Actions 37991498159 passed Windows, Android, iOS and documentation jobs, including 220 Windows tests, 77 Swift core tests and five native iOS Simulator UI cases. Simulator / unsigned device builds, both-eye LAN / simulated-USB Metal color / row-direction checks and exact seam-boundary checks passed; these are not physical-iPhone USB results. The exact official tools ZIP was imported into a separate test folder with the complete NOTICE retained; actual importer-GUI interaction is not claimed.

An earlier ordinary double-click launch with the previous builds also showed the stream after portable SDK configuration. SDK visibility across packaged-app storage was one verified discovery issue, not a proven explanation of every historical USB failure. Shared ADB-session / phone-authorization drops were observed separately; recovery required the user's USB-debugging toggle after one authorized restart. No old-host GUI or port collision was found. A Windows USB interface alone does not establish an online, authorized debugging channel.

Synthetic filter traces test an algorithm, not a real game or end-to-end latency. No new FPS / latency claim follows from the USB lookup fix. Earlier v0.3.0 measurements and v0.3.1 visible connection results remain in archived notes. Physical iPhone USB, viewer optics, real first-person input and end-to-end latency remain unverified; no new Windows visual-editor GUI acceptance is claimed. See validation, performance and compatibility.

Update and assets

  1. Preserve the earlier verified archive. Close the old host, extract the complete new Windows ZIP and use its launcher or EXE.
  2. Update Android for the new slider. An in-place update requires the same signing certificate; retain saved profiles rather than clearing application data. Use the matching AAR for integration.
  3. Use updated iOS source / arm64 Mac Simulator output. A physical iPhone still needs your Apple signing; no signed IPA is supplied.
  4. Check this release's SHA256SUMS.txt. Application labels are 0.3.2, Android code 5 and iOS build 5. Source / license ZIPs and exact hashes belong to this release.
  5. Connect through USB or explicitly selected LAN, then tune stabilization from 0%. Connection, slider changes and profile restoration never authorize PC mouse input.

For an older host, stabilization stays a local preference until a capable host is used. Both current endpoints are recommended. The earlier Windows-only v0.3.1 patch intentionally retained mobile apps 0.3.0; that policy is historical, not this update's scope.

v0.3.1-alpha · v0.3.0-alpha · v0.2.0-alpha · Release history


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

本版将 Windows 电脑端、Android 应用 / 库及 iOS 应用都更新至 0.3.2,保留 协议 v1。新增可调第一人称陀螺仪防抖,默认 0% 保留此前无滤波行为,并改进普通下载 Windows 应用的 USB 工具设置。Windows / Android 构建与测试、独立环境的打包 USB 发现及华为真机设置验收通过,iOS 测试 / 构建任务也通过;下方按版本记录证据与剩余限制。

第一人称防抖

  • 电脑与手机设置新增 0–100% 滑块,仅 Windows 主机在鼠标输出前滤波,手机不重复处理;灵敏度独立调整。
  • 已提交值经普通设置 / 确认 / 广播同步并本地保存,重置归零;旧十字段配置迁移时添加零,不丢其他值。
  • 在协议 v1 内协商十一字段的 schema 2。新客户端向旧主机发送时去掉新字段,本地保留并提示需要新版电脑端,旧确认不会清空它。
  • USB 初始十字段 hello 若声明支持,先取得完整十一字段快照再接纳配置 / 缺传感器回退,尚未发送的字段不误当成主机设置为零。
  • 电脑主动授权、F8、焦点 / 断线 / 采集检查和姿态看门狗继续保留,不新增定时鼠标输出;更强平滑可能增加跟随迟滞,见 调节教程。

原创滤波鸣谢 Géry Casiez、Nicolas Roussel、Daniel Vogel 的 One Euro Filter 与固定版本 BSD-3-Clause Python 参考,没有引入上游实现或运行依赖。完整许可原文与来源 随项目保留,[第三方声明](https://github.com/Le...

Read more

VRization v0.3.1-alpha · USB connection repair / USB 连接修复

Choose a tag to compare

@LexZeon LexZeon released this 09 Oct 20:14

🔌 VRization v0.3.1-alpha — release notes / 发布说明

English · 简体中文

English

This is a Windows USB connection patch. The Windows host is 0.3.1; Android and iOS applications remain 0.3.0 and use the unchanged protocol v1. An existing v0.3.0 phone installation does not need reinstalling or upgrading for this patch. Visual headset editing, saved profiles, capture defaults and the PC-only FPS authorization boundary are retained. The original v0.3.0-alpha notes preserve that release's completed checks and measurements.

Changes

  • Background ADB commands use an independent null standard input, avoiding reliance on a missing or invalid input handle inherited from the Windows launcher.
  • Official ADB discovery includes the already managed SDK installation. An explicitly selected official adb.exe remains supported; Platform Tools and USB drivers are not bundled.
  • The PC's top connection card offers USB connection…, opening the Stream tab at its USB controls. USB status changes also appear in the bottom activity log. The USB guide shows where to find the automatic-detection checkbox, official ADB selector and readiness status.

Verification and limits

The Windows candidate passed 157 tests plus 36 subcases, and its source check matched 15 project modules. A controlled native experiment with an invalid standard-input handle failed with the former ADB launch behavior and detected the authorized USB phone with the new behavior. This is evidence for the robustness fix, not proof of the precise original GUI failure. The local machine already had a configured SDK; the additional discovery path is not established as the cause of that failure.

The candidate launched through the ordinary Windows GUI, automatically established the phone's 18765 → host 8765 reverse mapping, and returned USB bootstrap HTTP 200. After the user selected Start streaming and connected on the Huawei, host health reported connected=true. The user confirmed that the phone showed the stream and the experience was good. This establishes the observed connection / visible-image result; no new quantitative FPS or latency measurement was made for this patch.

Historical v0.3.0 hardware / Simulator results remain scoped to that release. Physical iPhone USB, headset optics, real FPS game input and end-to-end latency remain unverified. This patch does not claim a complete Windows editor GUI acceptance. See historical validation, performance boundaries and compatibility.

Assets and update steps

Asset Version / update scope
VRization-Windows-x64.zip Updated Windows host 0.3.1 and documentation. Extract the complete archive and run its VRization-Host.exe.
VRization-Android-debug.apk, VRization-vr-core-alpha.aar The verified 0.3.0 assets are reused byte for byte with the same SHA-256 values. Existing phone installs can stay in place.
VRization-iOS-Simulator.zip The verified 0.3.0 / build 4 arm64 Simulator asset is reused unchanged. It is not an iPhone installer.
VRization-iOS-source.zip Regenerated source bundle includes the updated desktop / documentation; the iOS application's version remains 0.3.0 / build 4. Physical installation still needs your Apple signing.
VRization-Licenses.zip, SHA256SUMS.txt License notices and the manifest for this release's exact assets. Check the manifest when downloading.

Close the old Windows host before using the new one. Keep the complete extracted folder and the separately installed Microsoft Visual C++ v14 x64 runtime. Leave the existing Android app and its saved profiles installed. Open USB connection…, keep automatic USB detection enabled, and check for Android USB ready: … before retrying Detect USB and connect on the phone. Follow the USB prerequisites and download / archive instructions; preserve the old verified release archive.

USB connection never authorizes PC mouse input. FPS still requires explicit PC arming, and F8 stops it. LAN remains optional and uses unencrypted ws:// on trusted networks.

v0.3.0-alpha · v0.2.0-alpha · Release history


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

本版是 Windows USB 连接补丁。电脑端为 0.3.1,Android 与 iOS 应用仍为 0.3.0,使用不变的协议 v1。手机已经安装 v0.3.0 时,本补丁无需重装或升级手机软件。 可视盒子编辑、配置保存、采集默认与电脑主动授权 FPS 的边界继续保留。v0.3.0-alpha 原说明 保留该版已完成的检查和测量。

修改内容

  • 后台 ADB 命令使用独立的空标准输入,不依赖 Windows 启动环境传入的缺失或无效输入句柄。
  • 官方 ADB 发现包含已管理的 SDK 安装位置,仍支持手动选择官方 adb.exe;不附带 Platform Tools 或 USB 驱动。
  • 电脑顶部连接卡片新增“USB 连接…”,直接打开串流设置页的 USB 控件;USB 状态变化也写入底部活动日志。USB 教程 说明自动检测开关、官方 ADB 选择及就绪状态的位置。

检查与限制

Windows 候选通过 157 项测试及 36 个子项,源代码核对匹配 15 个自有模块。受控原生无效标准输入句柄实验中,旧 ADB 启动方式失败,新方式能识别已授权 USB 手机。这证明稳健性修复的作用,不等于证明原电脑界面故障的精确原因。本机已有配置好的 SDK,不能把新增发现路径认定为当时故障的原因。

候选通过普通 Windows 界面启动后,自动建立手机 18765 → 电脑 8765 反向映射,USB bootstrap 返回 HTTP 200。用户点“开始串流”并在华为连接后,主机 health 显示 connected=true。用户确认手机可以看到串流,且效果不错。这证明本次观察到的连接 / 可见画面结果,本补丁没有新增定量 FPS 或延迟测量。

历史 v0.3.0 真机 / 模拟器结果仍只证明对应版本。真实 iPhone USB、盒子镜片、真实 FPS 游戏输入与端到端延迟仍未验证,本补丁不宣称已完整交互验收 Windows 编辑器界面。参见 历史验证、性能边界 与 兼容性。

产物与更新步骤

产物 版本 / 更新范围
VRization-Windows-x64.zip 更新后的 0.3.1 电脑端与文档。完整解压,运行其中的 VRization-Host.exe。
VRization-Android-debug.apk、VRization-vr-core-alpha.aar 原样复用已验证 0.3.0 产物,字节与 SHA-256 不变;已有手机安装可保留。
VRization-iOS-Simulator.zip 原样复用已验证 0.3.0 / build 4 arm64 模拟器产物,不是 iPhone 安装包。
VRization-iOS-source.zip 重新生成的源码包包含更新后的桌面端 / 文档,iOS 应用仍为 0.3.0 / build 4;真机安装仍需自己的 Apple 签名。
VRization-Licenses.zip、SHA256SUMS.txt 本次产物的许可通知与校验清单,下载后按清单核对。

先关闭旧电脑端,再运行新版;保留完整解压目录与另行安装的 Microsoft Visual C++ v14 x64 运行库。手机保留已有 Android 安装及保存配置。打开“USB 连接…”,保持自动检测 USB,确认电脑显示“安卓 USB 已就绪:…”,再在手机点“检测 USB 并连接”。按 USB 前提 与 下载 / 归档说明 使用,并保留旧版已校验归档。

USB 连接不会授权电脑鼠标;FPS 仍须在电脑主动授权,F8 停止控制。局域网继续可选,明文 ws:// 仅用于可信网络。

v0.3.0-alpha · v0.2.0-alpha · 发布历史

联系

咨询或合作:lexzeonstudio@gmail.com。

VRization v0.3.0-alpha 🥽 Visual headset fit / 可视盒子适配

Choose a tag to compare

@LexZeon LexZeon released this 09 Oct 07:39

🥽 VRization v0.3.0-alpha — release notes / 发布说明

English · 简体中文

English

This release adds visual headset fitting and saved phone profiles to the Windows / Android / iOS viewer. The GPU capture, USB transports and latency work were published separately in v0.2.0-alpha; its verified downloads and local archive are retained. The local Windows / Android checks, physical Huawei acceptance, API 23 emulator checks and final iOS Simulator CI passed within the exact scope in validation. The new Windows GUI, physical iPhone USB, headset optics and real FPS game input remain unverified.

New in v0.3.0-alpha

  • Visual headset fitting is first in each application's settings: Windows Headset editor, Android Fit headset visually, and iOS Visual headset fit editor. Drag either eye horizontally for linked spacing, vertically to move both, or a corner to resize both with aspect ratio preserved and centers normally fixed. The PC offers an approximate phone-shaped preview with a selectable aspect ratio.
  • Linked mirrored eye spacing works on all three applications: left-eye left / right-eye right widens, left-eye right / right-eye left narrows. Smaller images continue inward until seam contact; shared X is retained while space permits, then recenters. Vertical motion remains direct, corners keep centers fixed unless contact requires adjustment, and FPS mouse mapping is unchanged. Connected Save synchronizes PC ↔ phone through normal validated settings / acknowledgments / broadcasts and preserves committed profiles on both sides; offline Save stays local until a valid connection.
  • Save / Discard: the editor is a local draft. Preview dragging sends no host setting updates and writes no preferences. Phone Save commits the complete draft; PC Save updates only the fit fields into current host settings, preserving other concurrent changes; Discard restores the entry snapshot. A flat, undistorted preview preserves the actual viewing mode and other optical values. Editing pauses phone pose messages and sends disarm-only hello metadata on entry; it never arms mouse control. The PC preview reuses existing JPEGs without starting another capture.
  • Persistent phone profiles: committed VR settings survive restarts and offline changes. After a validated host hello, a saved phone profile is restored through one normal settings update with a fresh client sequence. Subsequent host changes retain revision / acknowledgment synchronization. Pairing secrets are not saved.
  • Reset all settings: restore VR defaults, English and USB. Windows restores low-latency capture defaults (640 / 60 / Q45) and automatic USB choice, while preserving the explicitly chosen capture display / rectangle and ADB executable path. Phone reset clears its preferences / pairing field and disconnects without immediately reconnecting; a fresh launch resumes normal initial USB discovery / listening.
  • The original reusable Python geometry / transaction module and matching Android / Swift geometry use the same normalized coordinates, proportional corner projection and resolved seam bounds. Signed eye separation uses −1…0.2 on the wire, with an aspect-dependent inward limit; existing nonnegative profiles and the 0.03 default remain valid. Update both ends: v0.2 does not understand negative values. The seam guarantee is for the flat preview / undistorted full or FPS view, not cinema perspective or lens distortion. See the behavior and integration contract.

Verification and inherited limits

The original Python geometry / transaction has 28 automated checks for aspect fit, both-eye spacing, all four corners, all four selected-eye drag directions, clamp limits, remaining-gap X limits, small-image seam contact, resize contact correction, negative-profile commit / discard, gesture-start deltas, invalid inputs and commit / discard. These are pure checks with no screen capture, OS mouse input or physical headset. Application and device acceptance must be recorded separately; inherited v0.2 performance numbers are not new v0.3 measurements.

Final local checks passed: 152 Windows tests plus 36 subcases, 70 Android JVM tests and lint with zero errors / eight warnings. The local EXE audit matched 15 project modules, 44 notice files and all 38 recorded native components. The final APK's installed hash matched on the physical Huawei. Actual Huawei gestures / seam contact, Save / Discard, committed profile restart, PC ↔ phone persistence, language and reset passed, as did 14 real UI checks on the Google-free API 23 emulator. PC handlers were tested headlessly; the new Windows GUI has not been accepted through actual interaction. Final CI 37897738507 passed 65 Swift core tests and three real Simulator UI cases, both iOS SDK builds, LAN / simulated-USB reception, both-eye colors and signed-seam boundary checks, with no failures or skips. See the precise validation and unmodified editor screenshots.

A separate 30.02-second v0.3 AW → Huawei USB run averaged 60.00 host sent FPS; distinct JPEG reads were 53.70/s. The phone retained a final-window 59.7 FPS / 9.7 ms receive-to-texture-call mean after video stopped; individual ping observations were 8–11 ms. These stages are not whole-session phone averages or end-to-end delay. See performance.

Targets remain Windows 10 / 11 x64, Android 6.0+ with GLES 2.0, and iOS / iPadOS 15+ with Metal. The iOS USB bridge has native Simulator / simulated-usbmux evidence; physical iPhone USB, physical headset optics and real FPS game input remain unverified. iPhone installation still needs a Mac, Xcode and your Apple signing. The Simulator download is arm64 for an Apple Silicon Mac, not an iPhone IPA or Windows app.

Capture profiles remain longest edge / target FPS / JPEG quality: low 640 / 60 / Q45, stable 640 / 30 / Q50, quality 960 / 30 / Q60, plus custom. Both eyes receive the same 2D image. No audio, hardware video encoding, native game stereo or 6DoF position tracking is supplied. FPS targets, link RTT and phone-local texture-submission times are not end-to-end video-latency guarantees. See performance boundaries.

Downloads and setup

The asset names remain VRization-Windows-x64.zip, VRization-Android-debug.apk, VRization-vr-core-alpha.aar, VRization-iOS-source.zip, VRization-iOS-Simulator.zip, VRization-Licenses.zip and SHA256SUMS.txt. Completely extract Windows, keep its license / documentation folders and use the separate Microsoft Visual C++ v14 x64 runtime. The APK remains test-signed; preserving application data on upgrade requires a matching certificate. iOS source is editable, not pre-signed for your phone.

Follow quick start, USB setup, iOS signing and verified download / local archive instructions. Select the intended display before starting capture. USB connection, profile restore, Save and Reset never authorize PC mouse input; FPS needs explicit PC arming and F8 remains the stop key. LAN ws:// remains unencrypted and should be used only on trusted networks.

Release history


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

本版在 Windows / Android / iOS 观看端加入可视盒子适配与手机本地配置。GPU 采集、USB 传输和延迟优化已先独立发布为 v0.2.0-alpha,已校验下载与本地归档继续保留。v0.3 本地 Windows / Android 检查、华为真机验收、API 23 模拟器及最终 iOS 模拟器 CI 已在 验证记录 明确范围内通过;新 Windows 界面、真实 iPhone USB、盒子镜片和真实 FPS 游戏输入仍未验证。

v0.3.0-alpha 新增

  • 三端设置首位提供可视适配:Windows 画面编辑、Android 可视化适配 VR 盒子、iOS 可视化盒子画面编辑器。横向拖任一眼联动间距、竖向同步移动,拖角点同步缩放,保持图像比例、通常中心固定;电脑提供可选择宽高比的近似手机形预览。
  • 三端镜像联动眼间距:左眼向左 / 右眼向右拉开,左眼向右 / 右眼向左收拢;缩小后仍可收拢到接缝;空间允许时保留共用 X,接近中缝时居中;竖向正常,角点通常中心固定,触发接触约束时必要修正,FPS 鼠标映射不变。已连接的保存经普通合法设置 / 确认 / 广播同步电脑 ↔ 手机,两端保留已提交配置;离线保存先留在本地,等合法连接。
  • 保存 / 放弃:编辑器是本地草稿。预览拖动不向主机更新设置、不保存偏好;手机保存提交完整草稿,电脑只把适配字段合并到当前主机设置并保留其他并发变化;放弃恢复进入快照。平面、无畸变预览保留实际模式与其他光学值。编辑暂停手机姿态,进入时发送仅解除授权的 hello 元数据,不授权鼠标;电脑预览复用已有 JPEG,不新增采集。
  • 手机配置持久保存:已提交 VR 设置在重启和离线更改后保留。合法主机 hello 后,用新客户端序号通过一次普通设置更新恢复手机配置;后续电脑改动仍按 revision / 确认同步。不保存配对秘密。
  • 重置全部设置:恢复 VR 默认、英文和 USB。Windows 恢复低延迟采集默认 640 / 60 / Q45 与 USB 自动选择,但保留明确选择的采集显示器 / 选区及 ADB 程序路径;手机清除偏好 / 配对字段并断线,当前界面不自动重连;全新启动恢复正常初次 USB 发现 / 监听。
  • 原创可复用 Python 几何 / 事务模块和对应 Android / Swift 几何共用归一化坐标、等比角点投影与解析接缝边界。有符号眼间距协议范围为 −1…0.2、向内下限按比例计算,旧非负配置与默认 0.03 不变。v0.2 不理解负值,需两端更新。接缝保证只用于平面预览 / 无畸变全屏或 FPS,不含大屏幕透视或镜片畸变。见 操作行为与集成合同。

验证与继承限制

原创 Python 几何 / 事务已有 28 项自动检查,覆盖比例适配、双眼间距、四角、选中眼四种横向方向、端点限制、剩余间隙对 X 限位、小画面接缝、接触放大修正、负值保存 / 放弃、手势起点总位移、非法输入及提交 / 放弃。它们不采屏、不发操作系统鼠标输入,也不使用真实盒子;应用与设备验收需另记。v0.2 的性能数字不能当作新的 v0.3 测量。

最终本地检查已通过:Windows 152 项测试及 36 个子项、**Android 70 项 ...

Read more

VRization v0.2.0-alpha 🥽 GPU + low latency / GPU 与低延迟

Choose a tag to compare

@LexZeon LexZeon released this 09 Oct 06:07

🥽 VRization v0.2.0-alpha — release notes / 发布说明

English · 简体中文

English

Windows screen → Android, iPhone or iPad VR viewing, with fixed full screen, a head-tracked cinema screen and gyro-to-mouse FPS mode. English is the default; Simplified Chinese is selectable and saved. FPS still requires explicit PC arming; F8 stops input.

New in v0.2.0-alpha

  • Native iOS / iPadOS 15+ client: UIKit, Metal, Core Motion and a reusable dependency-free Swift core package. Includes viewer-fit settings, recentering, settings acknowledgments, session validation, foreground lifecycle handling and language choice.
  • USB is the default on the Windows host and both mobile clients. Authorized physical Android devices use official ADB reverse forwarding and local host discovery; iOS uses Apple's Windows USB service and an original framed relay. LAN with manual pairing remains available.
  • Automatic authorized-device detection: one Android phone is selected automatically; multiple Android devices require selection. iOS supports one attached Apple mobile device. Start streaming on the PC and keep the phone app in the foreground. Backgrounding or changing phone language requires explicit reconnecting.
  • Capture presets (long edge / target FPS / JPEG quality): low latency 640 / 60 / Q45 for new configurations, stable 640 / 30 / Q50, quality 960 / 30 / Q60, or custom. Saved choices remain effective. The phone reports receive FPS and link round trip; neither measures end-to-end video latency.
  • Original Windows DXGI / D3D11 GPU capture: crop, rotate and downscale before smaller pixel readback, then CPU JPEG encoding. Explicit adapter / output selection, identity / layout checks, owned textures / bytes and same-thread resource cleanup; verified initial unsupported cases use the same region through GDI / MSS. Later access / identity errors stop capture and disarm FPS input. No DXcam, NumPy or comtypes runtime is bundled; research ideas retain source credit.
  • Windows DPI fallbacks, USB mapping ownership / cleanup, local bootstrap restrictions, and bounded iOS framing / handshake validation.
  • Illustrated bilingual USB / iOS guides and a verified local release archive tool that preserves historical versions and a fully extracted latest Windows program. Every project-owned public page remains complete English first, then Chinese below.

Verification and limits

The new Android APK upgraded a physical HUAWEI Pura 70 Ultra in place, using the same local signing certificate. Real USB host discovery, automatic connection after a fresh app launch, JPEG reception, both-eye rendering and real sensor-pose reception were observed. These tests used an original calibration card and a fake mouse sink; they do not establish headset optics, game compatibility or gyro-axis accuracy. Exact checks, build outcomes and later measurements are recorded in validation.

The first production GPU full-output stream from the ASUS 2160 × 3840 display to that phone used 360 × 640 / Q45 / target 60 FPS. Phone decoded-FPS readings were 59.9 and 57.7; 41 host samples averaged 59.66 sent FPS including startup. Repeated static reads were separately recorded, so these are not 60 unique displayed frames per second or end-to-end delay. Profile / region checks and timing boundaries are in performance.

The iOS USB bridge has software / simulated-device tests. No physical iPhone USB test has been completed. iOS source and Mac Simulator builds require different installation steps: a physical iPhone needs a Mac, Xcode and your Apple signing. No signed, directly installable iPhone IPA is supplied. See the iOS guide.

Downloads

  • VRization-Windows-x64.zip: extract completely and run VRization-Host.exe; Windows 10 / 11 x64 target.
  • VRization-Android-debug.apk: Android 6.0+ test-signed APK. APK-compatible derivatives depend on their device capabilities.
  • VRization-vr-core-alpha.aar: reusable Android core; alpha APIs.
  • VRization-iOS-source.zip: editable Xcode project and Swift core; sign for your own device on a Mac.
  • VRization-iOS-Simulator.zip: Mac Simulator build, not an iPhone installer or a Windows app.
  • VRization-Licenses.zip and SHA256SUMS.txt: license / provenance records and download checksums.

First USB connection

Android: install official Platform Tools → enable and authorize USB debugging → connect a data cable → select the display and Start streaming on the PC → open the phone app in USB mode. iPhone: first sign / install with Xcode, install Apple Devices on Windows and approve Trust, then keep the app in the foreground. Use the phone connection button if its first attempt has ended. Follow the USB tutorial and download / archive guide.

Alpha boundaries

GPU capture / scaling followed by CPU JPEG sends the same 2D image to both eyes. Audio, hardware video encoding, native game stereo and 6DoF tracking are not provided. Actual frame rate and latency depend on the hardware; a 60 FPS target is not a performance guarantee. LAN ws:// is unencrypted: use trusted networks and never expose the port to the internet. USB requires platform authorization and never arms mouse input automatically.

Android uses a debug signature; a build from another machine can require uninstalling the old app and clearing its settings. The Windows EXE has no commercial code signature and requires Microsoft's Visual C++ v14 x64 runtime, supplied separately. For a missing DLL / error 126, follow Microsoft's runtime guide.


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

Windows 电脑画面 → Android、iPhone 或 iPad VR 观看,支持固定全屏、头部追踪虚拟大屏幕与陀螺仪转鼠标 FPS 模式。默认英文,可选择并保存简体中文。FPS 仍需电脑主动授权,F8 停止输入。

v0.2.0-alpha 新增

  • 原生 iOS / iPadOS 15+ 客户端,使用 UIKit、Metal、Core Motion,以及无外部依赖的可复用 Swift 核心包。包含盒子适配、回正、设置确认、会话校验、前台生命周期处理与语言选择。
  • Windows 和两种手机端均默认 USB。已授权 Android 真机通过官方 ADB 反向转发与本机服务发现连接;iOS 通过 Apple 的 Windows USB 服务和原创分帧中继连接。保留手动配对的局域网方式。
  • 自动检测授权设备:一台 Android 自动选择,多台需选择;iOS 支持连接一台 Apple 移动设备。电脑需开始串流,手机需保持前台。手机进入后台或切换语言后需显式重连。
  • 采集预设(最长边 / 目标 FPS / JPEG 质量):新配置默认低延迟 640 / 60 / Q45,稳定 640 / 30 / Q50,画质 960 / 30 / Q60,或自定义;已有设置继续生效。手机显示接收帧率和链路往返时间,两者都不是端到端视频延迟。
  • 原创 Windows DXGI / D3D11 GPU 采集:裁切、旋转、缩小后回读较少像素,再由 CPU 编码 JPEG。显式选择显卡 / 输出,核对身份 / 布局,自有纹理 / 字节及同线程资源清理;已确认初始化不支持的情况对同一区域采用 GDI / MSS。之后的访问 / 身份错误会停止采集并解除 FPS 输入授权。不打包 DXcam、NumPy 或 comtypes 运行时,研究思路保留 来源鸣谢。
  • Windows DPI 回退、USB 映射归属与清理、本地 bootstrap 限制,以及 iOS 分帧大小与握手校验。
  • 新增双语图文 USB / iOS 教程及校验式本地归档工具,保留历史版本和完整解压的最新版 Windows 程序。所有自有公共页面继续先完整英文、再完整中文。

验证与限制

新版 APK 使用同一本地签名在 HUAWEI Pura 70 Ultra 真机覆盖升级,已观察到真实 USB 服务发现、新启动自动连接、JPEG 接收、双眼渲染与真实传感器姿态接收。测试采用原创校准卡与假鼠标接收器,不代表镜片舒适度、游戏兼容性或陀螺仪轴向已经验证。确切检查、构建结果与后续测量见 验证记录。

首轮正式 GPU 全输出串流从 ASUS 2160 × 3840 显示器到该手机,使用 360 × 640 / Q45 / 目标 60 FPS。手机解码 FPS 两次读数为 59.9、57.7,41 个主机样本平均 59.66 发送 FPS,包含启动阶段。重复静态读取另行记录,不能当作每秒 60 张不同图像实际显示或端到端延迟;选区 / 预设检查及计时边界见 性能文档。

iOS USB 目前有软件 / 模拟设备桥接测试,尚未完成真实 iPhone USB 测试。iOS 源码与 Mac 模拟器构建安装方式不同:真机需要 Mac、Xcode 和自己的 Apple 签名,未提供可直接安装的已签名 iPhone IPA。详见 iOS 教程。

下载

  • VRization-Windows-x64.zip:完整解压后运行 VRization-Host.exe;目标 Windows 10 / 11 x64。
  • VRization-Android-debug.apk:Android 6.0+ 测试签名 APK;兼容 APK 的衍生系统取决于设备能力。
  • VRization-vr-core-alpha.aar:可复用 Android 核心,仍为 Alpha API。
  • VRization-iOS-source.zip:可编辑 Xcode 项目和 Swift 核心,在 Mac 为自己的真机签名。
  • VRization-iOS-Simulator.zip:Mac 模拟器构建,不是 iPhone 安装包或 Windows 软件。
  • VRization-Licenses.zip 与 SHA256SUMS.txt:许可证 / 来源记录与下载校验值。

首次 USB 连接

Android:安装官方 Platform Tools → 开启 USB 调试并授权 → 接数据线 → 电脑选择屏幕并开始串流 → 手机打开 USB 模式。iPhone:先用 Xcode 签名安装,Windows 安装 Apple Devices 并允许信任,保持手机应用前台。如果首次连接尝试已结束,点手机连接按钮。详见 USB 教程 与 下载 / 本地归档说明。

Alpha 边界

GPU 采集 / 缩放后由 CPU 编码 JPEG,向两眼发送同一二维图像,未提供音频、硬件视频编码、原生游戏立体画面与 6DoF 追踪。实际帧率与延迟取决于硬件,目标 60 FPS 不是性能保证。局域网 ws:// 未加密,仅在可信网络使用,不要开放到公网。USB 需要平台授权,不会自动开启鼠标控制。

Android 使用测试签名,其他机器构建可能需要卸载旧版并清除设置。Windows EXE 没有商业代码签名,需要另行安装微软 Visual C++ v14 x64 运行库。缺少 DLL / 错误 126 时见 微软运行库说明。

联系

咨询或合作:lexzeonstudio@gmail.com。

VRization v0.1.1-alpha · English-first bilingual update / 双语更新

Choose a tag to compare

@LexZeon LexZeon released this 09 Oct 03:04

🥽 VRization v0.1.1-alpha — release notes / 发布说明

English · 简体中文

English

Windows screen → Android phone VR viewer, with fixed full screen, a head-tracked cinema screen and gyro-to-mouse FPS mode. Phone controls include scale, offsets, separation, field of view, screen distance and distortion. FPS requires explicit PC arming; F8 stops input.

Changes since v0.1.0-alpha

  • Selectable English / Simplified Chinese on PC and phone, with local persistence. PC language switching keeps streaming but disarms mouse control; phone switching disconnects and requires reconnecting.
  • Settings revisions and client acknowledgments prevent delayed responses from rolling newer slider values back. Session-scoped callbacks avoid stale reconnect / background events.
  • Every public project document now contains complete English first and Chinese below; CI checks language structure and local file links, with human translation review still required.
  • Windows packages include the documentation's offline targets, and the standalone core AAR includes the original MIT license.
  • Validation: 20 host tests and 15 Android tests (6 core, 9 app), plus build / lint checks. The final APK passed Google-free Android 6 / API 23 and Android 16 / API 36 emulator upgrade, language persistence, streaming and lifecycle / reconnection checks. API 23 recorded one transient popup EGL_BAD_SURFACE, followed by normal rendering; see the validation record. Physical phones, viewers and real FPS games still need hardware validation.
  • API 23 also confirmed English default on a Chinese system, no-sensor cinema / FPS fallback to full screen, and stable slider boundary values. See the compatibility record and detailed validation.

Downloads

  • VRization-Windows-x64.zip: extract completely, then run VRization-Host.exe.
  • VRization-Android-debug.apk: test-signed Android 6.0+ APK; compatible derivatives depend on device capabilities.
  • VRization-vr-core-alpha.aar: reusable Android core, with alpha APIs.
  • VRization-Licenses.zip: license texts and provenance indexes; preserve applicable texts when distributing.
  • SHA256SUMS.txt: SHA-256 download checksums.

First connection

Use the same trusted LAN → start PC streaming → enter the PC IP, port and pairing code on the phone → try full screen → fit the image before inserting the phone. See the illustrated tutorial.

Alpha boundaries

CPU JPEG + WebSocket sends the same 2D image to both eyes. It does not create native game stereo, carry audio or promise production VR latency. Physical viewers, Android derivatives and real games still need hardware testing.

ws:// is unencrypted; use trusted LANs and never forward the port to the internet. Debug signatures can differ between build machines, requiring uninstall / reinstall and clearing settings. The Windows EXE has no commercial code signature.

Windows requires Microsoft Visual C++ v14 x64 runtime; Microsoft runtime DLLs are not bundled. For a missing DLL or error 126, follow Microsoft's guide and use the current x64 runtime. First local and CI builds use different CPython builds; check the inventory for the actual artifact.


Contact

For questions or collaboration: lexzeonstudio@gmail.com.

简体中文

🥽 VRization Alpha

Windows 电脑画面 → Android 手机 VR 盒子:固定全屏、头部追踪虚拟大屏幕与 FPS 鼠标控制三种模式。手机端提供缩放、偏移、眼间距、视场角、屏幕距离和畸变调节;FPS 需要电脑主动授权,F8 停止。

相对 v0.1.0-alpha 的变化

  • 电脑与手机可选英文 / 简体中文,并在本地保留。电脑切换保持串流但解除鼠标授权;手机切换断线,需重连。
  • 设置版本与客户端确认防止迟到响应覆盖较新的滑块值;按会话绑定回调,避免重连 / 后台旧事件干扰。
  • 所有公共自有文档同页完整英文在上、中文在下,CI 检查语言结构与本地文件链接;翻译质量仍需人工审阅。
  • Windows 包补齐文档离线链接目标,独立核心 AAR 内嵌原创 MIT 许可。
  • 已有 20 项电脑检查与 15 项 Android 检查(核心 6、应用 9)及构建 / lint;最终 APK 在无 Google 的 Android 6 / API 23 与 Android 16 / API 36 模拟器通过升级、语言保留、串流、生命周期 / 重连检查。API 23 记录过一次临时弹窗 EGL_BAD_SURFACE,随后渲染正常,详见验证记录。手机真机、盒子与真实 FPS 仍需硬件验证。
  • API 23 还确认系统中文时默认英文、无传感器的大屏幕 / FPS 回退全屏,以及滑块边界值稳定。详见 兼容性记录 和 详细验证。

下载

  • VRization-Windows-x64.zip:完整解压后运行 VRization-Host.exe。
  • VRization-Android-debug.apk:Android 6.0+ 测试签名 APK,兼容 Android 的系统可按设备能力尝试。
  • VRization-vr-core-alpha.aar:供 Android 软件集成的核心库,仍为 Alpha API。
  • VRization-Licenses.zip:完整许可文本与来源索引;分发时保留相关文本。
  • SHA256SUMS.txt:下载文件的 SHA-256 校验值。

首次连接

两端连接同一可信局域网 → 电脑开始串流 → 手机填写电脑 IP、端口与配对码 → 先试全屏 → 调整画面后放入盒子。详细图文教程见仓库 docs/QUICKSTART.zh-CN.md。

Alpha 边界

当前采用 CPU JPEG + WebSocket,左右眼显示相同二维画面,不提供普通游戏自动立体化、音频或生产级低延迟承诺。实际手机盒子、Android 衍生系统和游戏兼容性仍需实机测试。

传输为明文 ws://,仅用于可信局域网,不要开放公网端口。APK 使用测试签名;不同机器重新构建后可能需要卸载旧版再安装,保存的设置会被清除。Windows 程序未做商业代码签名。

Windows 端需要 Microsoft Visual C++ v14 x64 运行库,包内不附带微软运行库 DLL。若提示缺少 DLL 或错误 126,可按 微软官方说明 安装 当前 x64 运行库。首发本机与 CI 使用不同 CPython 构建,原生组件版本请按具体产物核对。

联系

咨询或合作:lexzeonstudio@gmail.com。