[转载][支持Folia]Voice Bridge|语言聊天转换|让你的玩家不管用Plasmo Voice 还是 Simple Voice Chat都能聊天吧!

开源 工具 [转载][支持Folia]Voice Bridge|语言聊天转换|让你的玩家不管用Plasmo Voice 还是 Simple Voice Chat都能聊天吧! 1.1.0

完成注册/登录后下载
版权类型
转载
插件中文名称
语音聊天转换
插件英文名称
voice-bridge
原帖地址
https://github.com/PfauMC/voice-bridge/
支持的核心(服务端)
  1. Spigot
  2. Paper
  3. Folia
  4. Purpur
  5. Leaves
  6. 其他核心
语言支持
多语言
适配版本(Java)
  1. 1.21
[MD] **Voice Bridge** 这是一个服务端 Paper 插件,用于桥接 Simple Voice Chat 和 Plasmo Voice 之间的近距离语音聊天,使使用不同语音模组的玩家能够互相听见对方。 ## 工作原理 Simple Voice Chat (SVC) 和 Plasmo Voice (PV) 均使用 Opus 编码音频,格式为 48 kHz、单声道、20 毫秒帧。Voice Bridge 会拦截来自各模组 API 的音频数据包并将其转发给另一方——**无需转码**。结果是实现了低延迟、跨模组的近距离语音聊天,且 CPU 开销极小。 ```text SVC 玩家 ──► SVC API ──► Voice Bridge ──► PV API ──► PV 玩家 PV 玩家 ──► PV API ──► Voice Bridge ──► SVC API ──► SVC 玩家 ``` ## 需求 * Paper 1.21.4+ (或 Folia) * Java 21+ * Simple Voice Chat (服务端插件) * Plasmo Voice (服务端插件) ## 安装 1. 在你的 Paper 服务器上安装 Simple Voice Chat 和 Plasmo Voice。 2. 下载 `voice-bridge-<版本>.jar`。 3. 将其放入服务器的 `plugins/` 目录中。 4. 重启服务器。 ## 源码编译 ```bash ./gradlew build ``` 编译后的插件 jar 文件位于 `build/libs/` 目录下。 ## 运行开发服 ```bash # 使用 Mojang 映射(用于调试) ./gradlew runDevBundleServer # 使用混淆(类似生产环境) ./gradlew runServer ``` ## 配置 首次运行后,会在 `plugins/voice-bridge/` 目录下生成 `config.yml`: ```yaml bridge: enabled: true # 启用/禁用桥接 debug: false # 启用调试日志 proximity: default-distance: 48.0 # 默认语音距离(单位:格) whisper-multiplier: 0.33 # 耳语距离 = 默认距离 * 倍率 max-distance: 128.0 # 允许的最大语音距离 audio: passthrough: true # Opus 透传(推荐) force-transcode: false # 强制转码(尚未实现) ``` ### 每个世界的距离覆盖 你可以为特定世界覆盖默认的语音距离: ```yaml proximity: world-overrides: world_nether: 24.0 # 下界世界 world_the_end: 64.0 # 末地世界 ``` ## 命令 | 命令 | 描述 | | :--- | :--- | | `/voicebridge status` | 显示桥接状态、指标和配置 | | `/voicebridge players` | 列出活跃的桥接会话 | | `/voicebridge reload` | 重载配置文件 | | `/voicebridge debug [on\|off]` | 切换调试日志 | **别名:** `/vb` **权限:** `voicebridge.admin` (默认:OP) ## 架构 ```text ┌────────────────────────────────────────────────┐ │ VoiceBridgePlugin │ ├───────────┬───────────┬────────────┬───────────┤ │ SvcAdapter│ PvAdapter │ AudioRelay │ Session │ │ │ │ │ Manager │ ├───────────┴───────────┴────────────┴───────────┤ │ SpatialMapper │ BridgeConfig │ BridgeMetrics │ └────────────────────────────────────────────────┘ ``` * **SvcAdapter** — 通过 `VoicechatPlugin` 集成 Simple Voice Chat * **PvAdapter** — 通过 `@Addon` / `AddonInitializer` 集成 Plasmo Voice * **AudioRelay** — 中央路由器,在适配器之间转发音频帧 * **SessionManager** — 追踪每个玩家使用的模组 * **SpatialMapper** — 在 SVC 的 float 距离和 PV 的 short 距离之间进行转换 ## 已知限制 * 不支持群组/频道桥接(仅限近距离语音聊天)。 * 转码模式尚未实现(仅支持透传)。 * 在某些极端情况下,仅使用 SVC 的玩家可能无法收到 PV 玩家的音频。 [/MD]
作者
mc506lw
下载
14
查看
257
首次发布
最后更新

评分

0.00 星 0 次评分

mc506lw 的其他资源

后退
顶部 底部