Skip to content

Releases: nightt5879/mumble-voice-lab

v1.5.0 - Godot Store Ready

08 May 12:55

Choose a tag to compare

Summary

v1.5.0 moves the Godot integration from preview to a Windows-first store-ready candidate. The web tool remains stable, Unity remains a local UPM alpha, and Godot addon 0.2.0 now includes a bundled Windows renderer so normal Windows users do not need Node/npm.

Stable

  • Browser studio, realtime preview, WAV export, preset JSON import/export, and schedule JSON remain supported.
  • CLI render and batch workflows keep the mumble-voice-lab/schedule 1.0 protocol.

Godot Store-Ready Candidate

  • Added Godot addon 0.2.0 under integrations/godot/addons/mumble_voice_lab.
  • Added bundled Windows renderer: mvl-renderer-win-x64.exe.
  • Added MumbleDialogueClip resources and .tres generation.
  • MumbleVoicePlayer now prefers MumbleDialogueClip while keeping audio_stream + schedule_path compatibility.
  • Added addon-local README, LICENSE, icon, and third-party notices for Asset Library submission.

Validation

  • npm run build:renderer:win
  • npm run test:cli
  • npm run test:renderer
  • npm run build
  • npm run test:godot
  • npm run package:godot
  • Manual Godot Play Mode QA: ManualTest.tscn produced audible WAV playback, reveal text, and playback complete.

Limits

  • Godot bundled renderer is Windows-first. macOS/Linux can use Node CLI fallback for development.
  • This is not runtime free-text synthesis for player-entered text; engines play generated assets.
  • Godot Asset Library acceptance still depends on official review.
  • Windows exported game package validation is not included in this release candidate.

v1.4.0 - Engine Integration Alpha

08 May 07:36

Choose a tag to compare

V1.4.0 Engine Integration Alpha

This release adds the first game-engine integration workflow for Mumble Voice Lab.

Stable

  • Browser studio, realtime preview, WAV export, preset JSON import/export, and My Presets remain supported.
  • Schedule JSON now uses schema: "mumble-voice-lab/schedule" and schemaVersion: "1.0" for engine import.

Alpha

  • Added npm run mvl -- render for single-line WAV + schedule generation.
  • Added npm run mvl -- batch for JSON/CSV dialogue batch generation.
  • Added the local Unity UPM package at integrations/unity/com.nightt5879.mumble-voice-lab.
  • Added Unity editor tooling at Tools > Mumble Voice Lab.
  • Added Unity runtime APIs: MumbleDialogueClip, MumblePresetAsset, MumbleVoicePlayer, onTextChanged, onReveal, and onPlaybackComplete.

Preview

  • Added a Godot 4 addon preview at integrations/godot/addons/mumble_voice_lab.
  • Godot shares the same CLI and schedule JSON protocol as Unity.
  • Godot remains preview until a Godot editor closed-loop test is completed.

Known Limits

  • Engine packages require local Node/npm in this alpha.
  • Runtime engine playback uses generated assets only; player runtime free-text synthesis is not included.
  • No-Node renderer bundles and store-ready Unity/Godot packaging are planned follow-up work.

Verified

  • npm run test:cli
  • npm run build
  • CLI manual render smoke
  • Unity batchmode closed-loop smoke test

v1.3.0 — My Presets

07 May 10:13
6b0b0dd

Choose a tag to compare

让 demo 变成"真正可用的工具"——调好的角色现在可以一键存档、导出、导入、跨设备复用。
Turning the demo into something you can actually keep — your tuned voices now save, export, import, and travel between devices.

✨ 新功能 / What's new

「我的角色」自定义保存库 / My Presets library

在高级面板调好参数后,点 preset 区顶部的 「保存为角色」,输入名字即可。新角色会接在官方 9 个 preset 之后,带星形角标 + 暖纸底色区分。
Tune any voice in the Advanced panel, click the new Save as Preset button at the top of the preset row, name it, done. Custom cards sit alongside the official nine with a star badge and a warm-paper tint.

  • localStorage 持久化,下次打开还在
  • 重新选中 = 完整恢复参数(同 seed 同输出)
  • 鼠标悬停在自定义卡上 → 右上角浮现 ⤓ 导出 + × 删除两个圆形按钮
  • 卡片角色脸沿用 basedOn preset 的 SVG 形象

localStorage-persisted, hover for ⤓ + × actions, faces inherited from the source preset.

配置文件导入 / 导出 / Config import & export

任意 preset(官方 + 自定义)都能导出成便携 JSON:mumble-voice-lab/preset schema 1.0 格式,包含所有 17 个参数 + 元信息。
Any preset can export as a portable mumble-voice-lab/preset schema 1.0 JSON — all 17 params + metadata.

  • 导出当前按钮:直接导出当前调试中的参数,不需要先存
  • 单卡 ⤓:导出某个具体的自定义角色
  • 导入配置:从 JSON 文件加回库;schema 严格校验,损坏文件会被拒绝并显示具体原因(如 params.basicFreq 超出范围 [45, 900]),库不被污染

Export Current works on whatever is currently loaded; per-card ⤓ exports a specific saved one. Import validates the full schema and rejects with a precise reason on mismatch.

🛠 内部 / Internals

  • 新模块 src/presets/customPresets.ts:localStorage 读写 + 完整 schema 校验(每个参数范围检查、hex 颜色格式、boolean 字段)+ 文件名 slug 工具
  • getPresetDisplayName 加 customPresets fallback,状态栏显示用户起的名字而非 id
  • AppStatus 加 5 种新状态:presetSaved / presetImported / presetImportFailed / presetDeleted / configExported
  • .preset-cell 包装器统一 default + custom 渲染;hover overlay 用 pointer-events 切换避免误触

🔒 兼容性 / Compatibility

  • 无破坏性改动,state shape 向后兼容
  • 音频管线、buildSchedule / renderEventsToWav 契约、deterministic schedule 行为完全不变
  • Crowd Chatter 当前仍只引用官方 9 个 preset;让 chatter 也支持自定义角色留作 v1.3.1 follow-up

📦 升级 / Upgrade

无破坏性改动。Cache-buster 已 bump 到 ?v=1.3.0-presets,浏览器会重抓 UI。
No breaking changes. Cache-busters bumped to ?v=1.3.0-presets.


Pull request: #2
Live demo: https://nightt5879.github.io/mumble-voice-lab/?v=1.3.0-presets

v1.2.0 — Cozy Redesign

07 May 09:27
ad4d9f0

Choose a tag to compare

完整重做了浏览器界面,并将 12 条试听样例换成现场算法生成。
A full studio refresh, plus rebuilt listening samples that now flow through the live audio pipeline.

🎨 UI 升级 / UI

  • Cozy 手作设计系统:抛弃原 Apple 风中性 SaaS,整体改为 2px 墨线 + 硬偏移阴影 + 暖纸底色 + 9 色 character cast 的"贴纸笔记本"风格。Self-hosted Nunito / JetBrains Mono / Noto Sans SC(约 344 KB)。
    Brand-new sticker-style visual system: 2px ink outlines, hard-offset shadows, warm paper canvas, and a nine-color character cast. Nunito / JetBrains Mono / Noto Sans SC ship self-hosted.
  • 9 个角色专属虚拟形象:每个 preset 配独特 SVG 表情画像 —— 圆眼粉腮 Cute NPC、像素 LED 眼 Robot Guard、闭眼小笑 Forest Spirit、皇冠紫袍 Deep Boss…
    Each of the nine presets now has its own expressive SVG face.
  • 整页一屏布局:收紧 padding / 字号 / 高度,studio + preset 行 + 高级抽屉在 768p+ 屏幕一屏装下。
    Tightened spacing so the whole studio fits on a single screen at 768p+.
  • 试听页角色 tag 配头像:listen.html 12 条卡片角色标签前置 SVG 头像,与主 app 一致。
    Showcase role tags now lead with the matching character avatar.

🎤 内核升级 / Core

  • 多人同时讲话面板:勾选任意 preset 组合 + 每行一句台词,一键全员同时开口;起声 0–0.18s deterministic 错开避免硬同步,混音自动 -10·log₁₀(N) dB 减幅防削峰。
    New Crowd Chatter panel — pick any subset of presets, multiple lines per row, fire on the same tick. 0–0.18s deterministic stagger and -10·log₁₀(N) dB headroom keep the mix natural.
  • 试听样例重新生成:12 条 WAV 现在全部由真正的 buildSchedule + renderEventsToWav 跑出 —— jieba 分词、pinyin 声调、Web Audio formant / ring mod / compressor 全在线,所听即所得。
    Showcase clips are now produced by the live audio pipeline — jieba segmentation, pinyin tones, formant filtering, ring modulation, and the dynamics compressor all participate.
  • npm run samples 改用 tsx + node-web-audio-api:Node 端直接跑真实音频管线,未来再生成不会和现场脱节。
    Sample regeneration now runs through tsx with node-web-audio-api as the OfflineAudioContext polyfill — future regens stay locked to the live algorithm.

🛠 其他 / Misc

  • UiCopy.heroCopy 移入 i18n(zh + en)
  • 主题切换器暂时隐藏(设计目前只 ship 亮色 token,state + localStorage 保留以便未来恢复)
  • public/fonts/ 自托管 8 个 woff2 字体
  • 路线图刷新,标注 V1.1.0 / V1.2.0 完成项

📦 升级 / Upgrade

无破坏性改动。Cache-buster 已 bump 到 ?v=1.2.0-cozy,浏览器会重抓 UI 与音频。
No breaking changes — cache-busters bumped to ?v=1.2.0-cozy so browsers refetch the new UI and audio.


Pull request: #1
Live demo: https://nightt5879.github.io/mumble-voice-lab/?v=1.2.0-cozy
Listening showcase: https://nightt5879.github.io/mumble-voice-lab/showcase.html?v=1.2.0-cozy

v1.0.2 - Theme and Cache Patch

05 May 09:56

Choose a tag to compare

V1.0.2 is a small patch release for the UI polish build.\n\nFixes:\n- Strengthened light theme to a true white surface/background.\n- Strengthened dark theme to a true black background with darker panels.\n- Added cache-busted GitHub Pages links for the live demo and listening showcase.\n- Updated repository homepage URL to the cache-busted live demo link.\n\nNo audio generation behavior changed.

v1.0.1 - UI Polish

05 May 09:50

Choose a tag to compare

V1.0.1 focuses on a visual and experience polish pass for Mumble Voice Lab.\n\nHighlights:\n- Redesigned the live demo into a cleaner, Apple-inspired voice workbench.\n- Added light, dark, and system theme switching with local persistence.\n- Moved advanced parameters, preset JSON, and event preview into a default-collapsed Sound Lab section.\n- Refreshed the online listening showcase with matching visual styling and theme switching.\n- Kept audio generation, deterministic schedules, WAV export, and JSON export behavior unchanged.

Mumble Voice Lab v1.0.0

05 May 09:21

Choose a tag to compare

Initial open-source release. Includes browser-based mumble voice generation, Chinese/English rhythm, character presets, expression controls, WAV/JSON export, README audio samples, and the live GitHub Pages demo: https://nightt5879.github.io/mumble-voice-lab/