Skip to content
This repository was archived by the owner on May 23, 2026. It is now read-only.

WDM2VST 3.2.13

Choose a tag to compare

@GeekAudio GeekAudio released this 08 Apr 21:03
· 2 commits to main since this release

⚠️ 此项目已重构为 WDM2VST-Ultra,新用户请下载新版:

👉 Releases · GeekASMR/WDM2VST-Ultra

v3.x 系列不再维护,仅作历史归档保留。


⚙️ 核心架构更新:终极防御宿主休眠策略 (Plugin Nap 杀手)

我们在本版本对底层处理逻辑进行了深度重构,彻底解决了在 Studio One 及其他严格的 DAW 中,因通道长时间无音频或参数无动作而被宿主系统强制挂起(Plugin Nap / 智能休眠)导致的断流问题。

此防御机制已全面部署于 W2V、V2W、Audio Send 以及 Audio Receive 四大核心插件中。

🛡️ 反休眠技术详解

  1. 注入奈奎斯特 (Nyquist) 震荡防休眠波
    • 针对 Studio One 可能存在的绝对值电平过滤检查,我们弃用了旧版的直流电平唤醒机制。
    • 现在,当插件检测到音频读数为绝对的 0.0f 时,会精准切入极微弱的 1e-5f 正负高频震荡信号。这能向宿主提供足以避免待机检测的活跃能量(约 -100dBFS),但对用户体验毫无损伤。
  2. 全分支末梢拦截
    • 在核心音频处理区 (processBlock) 的绝对末端,增加了兜底判决系统。
    • 任何可能被内部淡出、插值计算抹平为绝对零值的残余样本,都会在被发送出去前强制补上防休眠波,确保在任何极端场景下输出链路绝不断流。
  3. “参数自动化” 活跃度伪装
    • 针对部分宿主在“未检测到 UI 交互与参数变动”时仍会强行休眠的机制,我们在 W2V 核心引擎中植入了不可见的隐藏参数 antiSleepDummy。
    • 引擎每隔 300 毫秒会在后台驱动微小步进,巧妙地向宿主发送“插件处于高强度自动化运算状态”的假象,死锁式拦截 CPU 挂起。
  4. 底层 VST / JUCE 通报重写
    • 强制覆写插件尾音反馈接口:getTailLengthSeconds() -> infinity,在框架协议层面告诉 DAW:“本插件余音无穷,绝不允许切断处理链”。

💡 附:关于“防休眠保护波”的音频安全信誉度声明

你可能对系统底层被注入的 1e-5f 震荡保护波有所顾虑,但请放心加入最严苛的发烧级音频流程,该技术方案绝对无痕,且不会造成任何音频污染。这部分技术逻辑亦被广泛运用于顶级模拟器插件(如 Waves / FabFilter 等厂牌的 Analog Dither 机制):

  • 🔈 超越物理响度感知的极低极限:该信号约为 -100 dBFS。此响度比传统的 16-bit 格式(CD无损音质)那 -96dB 的天然量化底噪还要小,在物理设备上会被直接隐入电路热噪。且该机制具有智能规避功能——仅在真实音频通道进入绝对零值时才会触发。
  • 🦇 人耳不可见的超声波:得益于样本级的一正一负精密交替(+1e-5f, -1e-5f),该能量位于正中心奈奎斯特定理极值。在 48kHz 工程中,这是绝对恒定的 24,000 Hz 载波,完全脱离并超越了人类极其苛刻的听频响应峰值,大部分音箱硬件也无法解析此类超声波。
  • 🎛️ 无法惊动任何动态效果器:-100dB 的高频能量,远远沉匿于所有专业级压缩器 (Compressor)、门限 (Gate)、限制器 (Limiter) 的阈值下限底网(普通极值为 -80dB)外。它是一根仅供宿主监测使用的“不可见心跳线”。