{ "common": { "cancel": "取消", "save": "保存", "delete": "删除", "edit": "编辑", "close": "关闭", "confirm": "确认", "loading": "加载中…", "error": "错误", "unknown": "未知", "unknownError": "未知错误" }, "nav": { "generate": "生成", "stories": "故事", "captures": "捕获", "voices": "声音", "effects": "效果", "audio": "音频", "models": "模型", "settings": "设置", "updateBadge": "更新" }, "captures": { "title": "捕获", "beta": "Beta", "searchPlaceholder": "搜索转录文本……", "snippetEmpty": "(暂无转录)", "noTranscriptError": "此次捕获尚无转录文本", "captureCardLabel": "捕获 · {{when}}", "header": { "modelSummary": "Whisper {{stt}} · Qwen3 · {{llm}}" }, "source": { "dictation": "听写", "recording": "录制", "file": "文件" }, "transcript": { "refined": "精修", "raw": "原始", "refinedHint": "由 Qwen3 · {{model}} 精修", "rawHint": "由 Whisper {{model}} 转录" }, "actions": { "configure": "配置", "import": "导入", "importing": "上传中…", "dictate": "听写", "stop": "停止", "copy": "复制", "refine": "精修", "reRefine": "重新精修", "export": "导出", "exportDropdownLabel": "导出格式", "exportAudio": "音频 (WAV)", "exportTranscript": "文字稿 (TXT)", "exportMarkdown": "Markdown (MD)", "delete": "删除", "playAs": "以 {{name}} 播放", "playAsFallback": "播放为……", "playAsGenerating": "生成中…", "playAsStop": "停止 · {{name}}", "playAsStopFallback": "停止 · 声音", "playAsDropdownLabel": "将转录播放为" }, "empty": { "noMatches": "没有捕获匹配 \"{{query}}\"", "none": "暂无捕获。", "loading": "加载捕获中…", "pickOne": "选择一项捕获以查看转录。", "holdToRecord": "按住以录制", "toggleHandsFree": "切换免提模式", "pressShortcut": "在系统的任何位置按下快捷键以开始第一次捕获。", "turnOnShortcut": "开启全局快捷键以在任何位置进行听写——或点击上方的「听写」在应用内进行捕获。", "openSettings": "打开「捕获」设置" }, "deleteDialog": { "title": "删除捕获", "description": "这将永久删除该捕获及其音频和转录。此操作不可撤销。", "deleting": "删除中…" }, "toast": { "deleteFailed": "删除失败", "playAsFailed": "播放失败", "noVoice": "暂无声音档案", "noVoiceDescription": "使用「播放为」之前请先创建声音档案。", "transcriptCopied": "转录已复制", "copyFailed": "复制失败", "exportSuccess": "已导出到 {{path}}", "exportFailed": "导出失败", "exportEmpty": "无可导出的内容", "shortcutNotArmed": "快捷键已开启,但尚未就绪", "shortcutNotArmedDescription_one": "{{names}} 仍需下载。打开「捕获」标签页开始下载。", "shortcutNotArmedDescription_other": "{{names}} 仍需下载。打开「捕获」标签页开始下载。" }, "pill": { "recording": "录制中", "transcribing": "转录中", "refining": "精修中", "speaking": "朗读中", "completed": "完成", "stopAria": "停止录制", "errorFallback": "出现了错误", "errorCopyTooltip": "点击以复制错误" }, "chord": { "capturing": "捕获中…", "pressShortcut": "按下您的快捷键", "noKeys": "尚无按键", "unsupported": "「{{key}}」不支持用于组合键。请尝试修饰键或字母键。", "notSet": "未设置" }, "readiness": { "title": "听写前还需准备几项", "subheading": "在以下所有项目就绪之前,快捷键将保持关闭。", "downloadButton": "下载", "downloading": "下载中…", "downloadingPercent": "下载中… {{pct}}%", "downloadStarted": "下载已开始", "downloadStartedDescription": "{{name}} 正在下载。下载完成后快捷键会自动就绪。", "downloadFailed": "下载失败", "stt": { "label": "{{name}}(语音转文本)", "ready": "模型已下载。", "missing": "用于转录您的音频", "missingWithSize": "用于转录您的音频 · {{size}}" }, "llm": { "label": "{{name}}(精修)", "ready": "模型已下载。", "missing": "在粘贴前清理原始转录文本", "missingWithSize": "在粘贴前清理原始转录文本 · {{size}}" }, "inputMonitoring": { "label": "「输入监控」权限", "ready": "macOS 允许 Voicebox 检测您的全局快捷键。", "missing": "macOS 需要允许 Voicebox 检测全局快捷键。", "openSettings": "打开设置" }, "accessibility": { "label": "「辅助功能」权限", "ready": "Voicebox 可以将转录粘贴到其他应用中。", "missing": "需要此权限,转录才能粘贴到当前焦点应用。", "openSettings": "打开设置" } }, "permissions": { "accessibility": { "title": "授予「辅助功能」权限以启用自动粘贴", "body": "Voicebox 需要在 系统设置 → 隐私与安全性 → 辅助功能 中获得权限,才能将转录粘贴到其他应用。即使没有此权限,听写仍会保存到「捕获」标签页。", "openSettings": "打开设置", "recheck": "我已启用", "rechecking": "检查中…", "stillMissing": "仍未检测到。切换权限后,macOS 通常需要退出并重新打开 Voicebox。" }, "inputMonitoring": { "title": "授予「输入监控」权限以启用全局快捷键", "body": "Voicebox 需要在 系统设置 → 隐私与安全性 → 输入监控 中获得权限,才能检测您的听写组合键。开关已开启,但在您允许之前 macOS 会拦截按键事件。", "openSettings": "打开设置", "recheck": "我已启用", "rechecking": "检查中…", "stillMissing": "仍未检测到。切换权限后,macOS 通常需要退出并重新打开 Voicebox。" } } }, "voicesTab": { "title": "声音", "loading": "加载声音中…", "searchPlaceholder": "搜索声音……", "newVoice": "新建声音", "avatarAlt": "{{name}} 的头像", "selectChannels": "选择通道……", "channelDefaultLabel": "{{name}}(默认)", "columns": { "name": "名称", "language": "语言", "generations": "生成次数", "samples": "样本", "effects": "效果", "channels": "通道" } }, "voiceInspector": { "loading": "加载中…", "defaultEffectsHint": "自动应用于使用此声音的新生成。", "fields": { "description": "描述" }, "toast": { "invalidImageFormat": "请选择 PNG、JPG 或 WebP 格式", "avatarUpdated": "头像已更新", "savedDescription": "\"{{name}}\" 已保存。" } }, "audioChannels": { "title": "音频通道", "newChannel": "新建通道", "loading": "加载中…", "confirmDelete": "删除此通道?", "noVoicesAssigned": "未分配声音", "selectDevice": "选择设备", "addDevice": "添加设备", "addVoice": "添加声音", "defaultSuffix": "默认", "empty": { "message": "暂无音频通道。创建您的第一个通道,将声音路由到特定设备。", "action": "创建通道" }, "labels": { "outputDevices": "输出设备", "assignedVoices": "已分配声音" }, "devices": { "title": "可用设备", "defaultNote": "默认通道使用系统默认设备", "toggleHint": "点击设备以将其添加到或从选定通道中移除", "selectHint": "选择通道以分配设备", "empty": "未找到音频设备", "requiresTauri": "音频设备选择需要 Tauri" }, "fields": { "name": "通道名称", "namePlaceholder": "例如:虚拟线缆、广播" }, "createDialog": { "title": "创建音频通道", "description": "创建新的音频通道(总线),将声音路由到特定的输出设备。", "action": "创建" }, "editDialog": { "title": "编辑通道", "description": "更新通道设置和声音分配。" } }, "profileForm": { "createTitle": "创建声音", "editTitle": "编辑声音", "createDescription": "从音频样本或内置声音创建新的声音档案。", "editDescription": "更新您的声音档案详情并管理样本。", "draftRestored": "已恢复草稿", "discard": "丢弃", "source": { "clone": "从音频克隆", "builtin": "内置声音" }, "builtin": { "hint": "选择一个预建的声音。这些不需要音频样本。", "badge": "内置声音", "note": "此档案使用内置声音。创建后声音无法更改。" }, "sampleTabs": { "upload": "上传", "record": "录制", "system": "系统音频" }, "fields": { "engine": "引擎", "voice": "声音", "name": "名称", "namePlaceholder": "我的声音", "descriptionLabel": "描述(可选)", "descriptionPlaceholder": "描述此声音……", "language": "语言", "referenceText": "参考文本", "referenceTextPlaceholder": "输入音频中所说的准确文字……", "defaultEngine": "默认引擎", "noPreference": "无偏好", "defaultEngineHint": "选择该档案时自动使用此引擎。", "defaultEffects": "默认效果", "defaultEffectsHint": "自动应用于使用此声音的所有新生成的效果。", "personalityLabel": "人物设定", "personalityPlaceholder": "例如:「一位脾气暴躁的海盗,只会用航海比喻说话」", "personalityHint": "这个声音是谁、说话方式如何。会驱动生成页面上的「撰写」按钮和入戏改写开关。留空则两者都隐藏。" }, "avatar": { "alt": "头像预览" }, "actions": { "saving": "保存中…", "saveChanges": "保存更改", "createProfile": "创建档案" }, "validation": { "nameRequired": "请输入名称", "referenceRequired": "添加样本时需要参考文本", "sampleRequired": "需要音频样本", "referenceTextRequired": "需要参考文本", "audioTooLong": "音频过长({{duration}})。最大时长为 {{max}}。", "audioFailed": "音频文件验证失败。请尝试其他文件。" }, "toast": { "recordingComplete": "录制完成", "recordingCompleteDescription": "音频已成功录制。", "recordingError": "录制错误", "systemAudioCaptured": "系统音频已捕获", "systemAudioCapturedDescription": "音频已成功捕获。", "systemAudioError": "系统音频捕获错误", "transcribeFailed": "转录失败", "transcribeFailedFallback": "无法转录音频", "noFile": "未选择文件", "noFileDescription": "请先选择一个音频文件。", "invalidFile": "文件类型无效", "invalidImageFormat": "请选择图片文件(PNG、JPG 或 WebP)", "fileTooLarge": "文件过大", "imageTooLargeDescription": "图片必须小于 5MB", "avatarRemoved": "头像已移除", "avatarRemovedDescription": "头像图片已成功移除。", "avatarRemoveFailed": "移除头像失败", "avatarUploadFailed": "头像上传失败", "avatarUploadFailedFallback": "无法上传头像", "effectsUpdateFailed": "效果更新失败", "effectsUpdateFailedFallback": "无法保存效果链", "voiceUpdated": "声音已更新", "voiceUpdatedDescription": "\"{{name}}\" 已成功更新。", "noVoiceSelected": "未选择声音", "noVoiceSelectedDescription": "请选择内置声音。", "profileCreated": "档案已创建", "profileCreatedBuiltin": "\"{{name}}\" 已使用内置声音创建。", "profileCreatedSample": "\"{{name}}\" 已使用样本创建。", "sampleRequired": "需要音频样本", "sampleRequiredDescription": "请提供音频样本以创建声音档案。", "referenceTextRequired": "需要参考文本", "referenceTextRequiredDescription": "请提供音频样本的参考文本。", "invalidAudio": "音频文件无效", "invalidAudioDescription": "音频时长为 {{duration}},但最大为 {{max}}。", "validationError": "验证错误", "rollbackFailed": "回滚失败", "rollbackFailedDescription": "样本上传失败后无法移除已创建的档案。", "profileRolledBack": "档案已回滚。", "sampleFailed": "添加样本失败", "sampleFailedDescription": "添加样本失败。", "sampleFailedRolledBack": "添加样本失败。档案已回滚。", "saveFailed": "保存档案失败" } }, "audioSample": { "chooseFile": "选择文件", "uploadHint": "点击选择文件或拖放。最大时长:30 秒。", "fileUploaded": "文件已上传", "fileLabel": "文件:{{name}}", "play": "播放", "pause": "暂停", "transcribe": "转录", "transcribing": "转录中…", "remove": "移除", "startRecording": "开始录制", "recordHint": "点击开始录制。最大时长:30 秒。", "stopRecording": "停止录制", "remaining": "剩余 {{time}}", "recordingComplete": "录制完成", "recordAgain": "重新录制", "startCapture": "开始捕获", "systemHint": "从您的系统捕获音频。最大时长:30 秒。", "stopCapture": "停止捕获", "captureComplete": "捕获完成", "captureAgain": "重新捕获" }, "sampleList": { "loading": "加载样本中…", "empty": { "title": "暂无样本", "hint": "添加第一个音频样本以开始" }, "editing": "正在编辑转录", "placeholder": "输入参考文本……", "saving": "保存中…", "editTranscription": "编辑转录", "deleteSample": "删除样本", "addSample": "添加样本", "note": "注意:单个 30 秒的样本效果最佳。多个样本可能会降低质量。未来版本中样本可能会变得可互换,并为同一声音的不同风格打标签。", "deleteDialog": { "title": "删除样本", "description": "确定要删除此音频样本吗?此操作不可撤销。", "deleting": "删除中…" }, "player": { "play": "播放样本", "pause": "暂停样本", "stop": "停止", "stopAria": "停止播放", "position": "样本播放位置", "positionValue": "{{current}} / {{total}}" }, "toast": { "invalidText": "文本无效", "invalidTextDescription": "参考文本不能为空。", "updated": "样本已更新", "updatedDescription": "参考文本已成功更新。", "updateFailed": "更新失败", "updateFailedFallback": "更新样本失败" } }, "profiles": { "card": { "noDescription": "无描述", "designed": "设计", "export": "导出声音档案", "edit": "编辑声音档案", "delete": "删除声音档案", "selectLabel": "{{name}},{{language}}。选择用于生成的声音。", "selectLabelSelected": "{{name}},{{language}}。已选为用于生成的声音。" }, "list": { "errorLoading": "加载声音档案时出错:{{message}}", "empty": "还没有声音档案。创建您的第一个档案以开始使用。", "createVoice": "创建声音", "unsupportedNote": "当前模型仅可选择支持的声音档案。" }, "deleteDialog": { "title": "删除声音档案", "body": "确定要删除 \"{{name}}\" 吗?使用此声音创建的所有生成(包括其音频文件)也将被删除。此操作不可撤销。", "deleting": "删除中…" } }, "effects": { "title": "效果", "newPreset": "新建预设", "noDescription": "无描述", "placeholder": "选择一个预设或创建新的", "effectCount_one": "{{count}} 个效果", "effectCount_other": "{{count}} 个效果", "sections": { "builtin": "内置", "custom": "自定义", "new": "新建" }, "badge": { "builtin": "内置" }, "unsaved": { "title": "未保存的预设", "hint": "在右侧面板配置效果。" }, "detail": { "newTitle": "新建预设", "editTitle": "编辑预设", "savePreset": "保存预设", "saveAsCustom": "另存为自定义", "saving": "保存中…", "deleting": "删除中…" }, "fields": { "name": "名称", "namePlaceholder": "我的预设……", "description": "描述", "descriptionPlaceholder": "描述此预设的作用……" }, "preview": { "label": "预览", "button": "预览", "processing": "处理中…", "hint": "预览仅将效果应用于干净版本,不会保存。" }, "saveAs": { "title": "另存为自定义预设", "description": "基于当前效果链创建一个新的自定义预设。", "suggestedName": "{{name}}(副本)" }, "toast": { "saved": "预设已保存", "createdDescription": "\"{{name}}\" 已创建。", "updated": "预设已更新", "deleted": "预设已删除", "saveFailed": "保存失败", "deleteFailed": "删除失败", "previewFailed": "预览失败", "nameRequired": "请输入名称" }, "chain": { "loadPreset": "加载预设……", "addEffect": "添加效果……", "clear": "清空", "enable": "启用", "disable": "禁用", "remove": "移除" }, "types": { "chorus": { "label": "合唱 / 镶边", "params": { "rate_hz": "LFO 速度(Hz)", "depth": "调制深度", "feedback": "反馈量", "centre_delay_ms": "中心延迟(毫秒)", "mix": "干湿混合" } }, "reverb": { "label": "混响", "params": { "room_size": "房间大小", "damping": "高频阻尼", "wet_level": "湿声电平", "dry_level": "干声电平", "width": "立体声宽度" } }, "delay": { "label": "延迟", "params": { "delay_seconds": "延迟时间(秒)", "feedback": "反馈量", "mix": "干湿混合" } }, "compressor": { "label": "压缩器", "params": { "threshold_db": "阈值(dB)", "ratio": "压缩比", "attack_ms": "起音时间(毫秒)", "release_ms": "释放时间(毫秒)" } }, "gain": { "label": "增益", "params": { "gain_db": "增益(dB)" } }, "highpass": { "label": "高通滤波器", "params": { "cutoff_frequency_hz": "截止频率(Hz)" } }, "lowpass": { "label": "低通滤波器", "params": { "cutoff_frequency_hz": "截止频率(Hz)" } }, "pitch_shift": { "label": "音高变换", "params": { "semitones": "半音移动" } } }, "builtinPresets": { "Robotic": { "name": "机器人", "description": "金属机器人嗓音(慢速 LFO 加高反馈的镶边效果)" }, "Radio": { "name": "收音机", "description": "带通滤波加轻度压缩的 AM 收音机薄嗓音" }, "Echo Chamber": { "name": "回声室", "description": "宽广的混响加尾随回声" }, "Deep Voice": { "name": "低沉嗓音", "description": "降低音高并增添温暖" } } }, "stories": { "title": "故事", "newStory": "新建故事", "loading": "加载故事中…", "searchPlaceholder": "搜索故事…", "empty": { "title": "暂无故事", "hint": "创建您的第一个故事以开始", "noMatches": "没有故事匹配 “{{query}}”" }, "row": { "itemCount_one": "{{count}} 项", "itemCount_other": "{{count}} 项", "ariaLabel": "故事 {{name}},{{count}} 项,{{updated}}", "actionsLabel": "{{name}} 的操作" }, "createDialog": { "title": "新建故事", "description": "创建新故事以将您的语音生成整理成对话。", "action": "创建", "creating": "创建中…" }, "editDialog": { "title": "编辑故事", "description": "更新故事名称和描述。", "saving": "保存中…" }, "deleteDialog": { "title": "确定吗?", "description": "这将永久删除该故事及其所有项目。此操作不可撤销。", "deleting": "删除中…" }, "fields": { "name": "名称", "namePlaceholder": "我的故事", "descriptionLabel": "描述(可选)", "descriptionPlaceholder": "一段对话……" }, "toast": { "nameRequired": "请输入名称", "nameRequiredDescription": "请输入故事名称", "created": "故事已创建", "createdDescription": "\"{{name}}\" 已创建", "createFailed": "创建故事失败", "updateFailed": "更新故事失败", "deleteFailed": "删除故事失败" } }, "storyContent": { "selectStory": { "title": "选择一个故事", "hint": "从列表中选择一个故事以查看其内容" }, "loading": "加载故事中…", "notFound": { "title": "未找到故事", "hint": "无法加载所选故事" }, "generatingCount_one": "生成 {{count}} 个音频中", "generatingCount_other": "生成 {{count}} 个音频中", "add": "添加", "searchPlaceholder": "按名称或文字内容搜索……", "searchNoMatches": "未找到匹配的生成", "searchNoAvailable": "暂无可用的生成", "exportAudio": "导出音频", "empty": { "title": "此故事暂无项目", "hint": "使用下方输入框生成语音以添加项目" }, "itemActions": { "playFromHere": "从此处播放", "regenerate": "重新生成", "removeFromStory": "从故事中移除" }, "importAudio": "导入音频…", "importing": "正在导入…", "dropToImport": "拖放以导入音频", "toast": { "removeFailed": "移除项目失败", "reorderFailed": "重新排序项目失败", "exportFailed": "导出音频失败", "addFailed": "添加生成失败", "regenerateFailed": "重新生成失败", "importFailed": "导入音频失败" } }, "history": { "empty": "暂无语音生成…", "actions": { "menu": "操作", "play": "播放", "exportAudio": "导出音频", "exportPackage": "导出包", "applyEffects": "应用效果", "regenerate": "重新生成" }, "deleteDialog": { "title": "删除生成", "body": "确定要删除来自 \"{{name}}\" 的这次生成吗?此操作不可撤销。", "deleting": "删除中…" }, "clearFailedDialog": { "title": "清除失败的生成", "body_one": "这将从历史记录中永久删除 {{count}} 条失败的生成。此操作不可撤销。", "body_other": "这将从历史记录中永久删除 {{count}} 条失败的生成。此操作不可撤销。", "clearing": "清除中…", "clearAll": "全部清除" }, "importDialog": { "title": "导入生成", "body": "从 \"{{name}}\" 导入生成。这将添加到您的历史记录中。", "importing": "导入中…", "action": "导入" }, "effectsDialog": { "title": "应用效果", "body": "配置应用于此次生成的后处理效果。将会创建一个新版本。", "sourceLabel": "来源", "sourcePlaceholder": "选择来源版本", "apply": "应用", "applying": "应用中…" } }, "generation": { "placeholder": { "storyWithEffects": "为 \"{{name}}\" 生成语音… (输入 / 使用效果)", "story": "为 \"{{name}}\" 生成语音…", "profile": "使用 {{name}} 生成语音…", "effectsHint": "输入 / 使用效果,如 [笑声]、[叹息]…", "selectVoice": "请在上方选择一个声音档案…" }, "button": { "generate": "生成语音", "generating": "生成中…", "selectFirst": "请先选择声音档案" }, "instruct": { "show": "显示传达说明", "hide": "隐藏传达说明", "tooltip": "传达说明 (语气、情感、节奏)", "placeholder": "传达说明——例如:温柔缓慢地说、威严清晰…" }, "voiceSelector": { "placeholder": "选择声音…" }, "effects": { "none": "无效果", "profileDefault": "档案默认" }, "compose": { "tooltip": "撰写", "ariaLabel": "以人物设定撰写一句台词", "failedTitle": "撰写失败", "failedDescription": "无法根据此人物设定生成文本。" }, "persona": { "tooltipActive": "正以人物设定朗读", "tooltipInactive": "以人物设定朗读", "ariaLabelActive": "正以人物设定朗读", "ariaLabelInactive": "以人物设定朗读" } }, "main": { "importVoice": "导入声音", "createVoice": "创建声音", "import": { "invalidTitle": "文件类型无效", "invalidDescription": "请选择有效的 .voicebox.zip 文件", "successTitle": "声音已导入", "successDescription": "成功导入声音档案", "failedTitle": "导入声音档案失败", "dialogTitle": "导入声音档案", "dialogDescription": "从 \"{{name}}\" 导入声音档案。这将创建一个新的声音档案,包含所有样本。", "importing": "导入中…", "action": "导入" } }, "settings": { "tabs": { "general": "常规", "generation": "生成", "captures": "捕获", "mcp": "MCP", "gpu": "GPU", "logs": "日志", "changelog": "更新日志", "about": "关于" }, "language": { "label": "语言", "description": "选择 Voicebox 的显示语言。" }, "theme": { "label": "主题", "description": "跟随系统外观,或固定为浅色 / 深色模式。", "options": { "system": "跟随系统", "light": "浅色", "dark": "深色" } }, "general": { "docs": { "title": "阅读文档" }, "discord": { "title": "加入 Discord", "subtitle": "获取帮助 & 分享声音" }, "serverUrl": { "title": "服务器 URL", "description": "Voicebox 后端服务器的地址。", "invalidUrl": "请输入有效的 URL", "updatedTitle": "服务器 URL 已更新", "updatedDescription": "已连接到 {{url}}" }, "keepServerRunning": { "title": "关闭应用时保持服务器运行", "description": "关闭应用后,服务器将继续在后台运行。", "failedTitle": "更新设置失败", "failedDescription": "无法将设置同步到后端。", "updatedTitle": "设置已更新", "runningDescription": "关闭应用时服务器将继续运行", "stoppedDescription": "关闭应用时服务器将停止" }, "networkAccess": { "title": "允许网络访问", "description": "使网络上的其他设备可以访问服务器。更改后请重启应用。", "updatedTitle": "设置已更新", "enabled": "已启用网络访问。重启应用以应用更改。", "disabled": "已禁用网络访问。重启应用以应用更改。" }, "connection": { "connecting": "连接中", "offline": "离线", "online": "在线" }, "updates": { "title": "应用更新", "devSuffix": " (开发版)", "devMode": { "title": "开发模式", "description": "开发模式下已禁用自动更新。" }, "check": { "title": "检查更新", "available": "版本 {{version}} 可用", "checking": "检查中…", "upToDate": "已是最新版本", "button": "检查" }, "error": "更新错误", "download": { "title": "更新到 {{version}}", "description": "下载并安装最新版本。", "button": "下载" }, "downloading": "下载更新中…", "ready": { "title": "更新已准备就绪", "description": "版本 {{version}} 已下载。重启以完成。", "button": "立即重启" } }, "api": { "title": "API 访问", "description": "通过 {{url}} 的 REST API 将 Voicebox 集成到您的工作流程中", "viewReference": "查看完整的 API 参考", "endpoints": { "generate": "生成语音", "health": "服务器状态", "profiles": "声音列表", "history": "历史生成" } } }, "generation": { "title": "生成", "description": "长文本生成的控件。这些设置适用于所有引擎。", "chunkLimit": { "title": "自动分块上限", "description": "长文本在句子边界处分块。较低的值可以提高长输出的质量。", "value": "{{chars}} 字符" }, "crossfade": { "title": "块间淡入淡出", "description": "在块之间混合音频以平滑过渡。设为 0 表示硬切换。", "cut": "切换", "ms": "{{ms}}毫秒" }, "normalize": { "title": "音频归一化", "description": "将输出音量调整到所有生成结果一致的水平。" }, "autoplay": { "title": "生成后自动播放", "description": "生成完成后自动播放音频。" }, "folder": { "title": "生成文件夹", "description": "生成的音频文件在磁盘上的存储位置。", "open": "打开" }, "sidebar": { "aboutTitle": "关于语音生成", "aboutBody": "用一段简短样本克隆声音,然后用任意声音、任意语言生成语音。把 TTS 接入 AI 代理、游戏、播客或长篇旁白。", "differencesTitle": "不同之处", "clone": { "title": "几秒内克隆任意声音。", "body": "几秒钟的参考音频就足够了。需要更高质量时,支持多样本克隆。" }, "engines": { "title": "七种引擎,23 种语言。", "body": "选择最合适的取舍——质量、速度,或多语言覆盖。" }, "agentReady": { "title": "面向代理。", "body": "REST API 支持按档案控制——给任何 AI 一个您克隆的声音。" } } }, "captures": { "dictation": { "title": "听写", "description": "使用全局快捷键在系统的任何位置进行捕获。", "globalShortcut": { "title": "全局快捷键", "description": "按住快捷键即可在系统的任何位置录制。松开后进行转录。" }, "pushToTalk": { "title": "按住说话快捷键", "description": "在系统任何位置按住这些键以录制。松开即可停止并转录。", "change": "更改" }, "toggle": { "title": "切换快捷键", "description": "按一次开始免提录制,再按一次停止。通常是按住说话的快捷键加上空格。", "change": "更改" }, "chordPicker": { "pttTitle": "设置按住说话快捷键", "pttDescription": "按住您要使用的按键,然后松开并点击「保存」。右侧的修饰键徽章会显示按键是左侧还是右侧的变体。", "toggleTitle": "设置切换快捷键", "toggleDescription": "按住您要使用的按键,然后松开并点击「保存」。请选择与按住说话组合键不同的按键。" }, "preview": { "title": "预览", "description": "按住快捷键时屏幕上显示的内容。" }, "copyToClipboard": { "title": "将转录复制到剪贴板", "description": "捕获完成后,清理过的转录会出现在剪贴板上。" }, "autoPaste": { "title": "自动粘贴到当前焦点的文本字段", "description": "如果其他应用中有焦点输入框,则直接粘贴进去。Voicebox 会保存并恢复您剪贴板原有的内容。" } }, "transcription": { "title": "转录", "description": "选择捕获时使用哪个语音转文本模型。", "model": { "title": "转录模型", "description": "Whisper 随 Voicebox 一同发布,完全在您的设备上运行。", "base": "Whisper Base · 74M · {{tail}}", "small": "Whisper Small · 244M · {{tail}}", "medium": "Whisper Medium · 769M · {{tail}}", "large": "Whisper Large · 1.5B · {{tail}}", "turbo": "Whisper Turbo · 精简版 Large v3 · {{tail}}", "tail": { "fast": "快速", "balanced": "均衡", "higher": "更高准确度", "best": "最佳准确度", "nearBest": "接近最佳,速度快" } }, "language": { "title": "语言", "description": "自动检测适用于大多数捕获。如果您总是说同一种语言,可以将其锁定。", "auto": "自动检测", "en": "英语", "es": "西班牙语", "fr": "法语", "de": "德语", "ja": "日语", "zh": "中文", "hi": "印地语" }, "archive": { "title": "归档音频", "description": "在每次转录旁保留原始录音。" } }, "refinement": { "title": "精修", "description": "可选择在转录上运行本地 LLM,以清理填充词、标点和自我纠正。", "auto": { "title": "自动精修转录", "description": "每次捕获后运行。您仍可以在「捕获」标签页中切换原始和精修视图。" }, "model": { "title": "精修模型", "description": "更大的模型速度较慢,但能更好地处理细微的自我纠正和技术词汇。", "size06": "Qwen3 · 0.6B · 400 MB · {{tail}}", "size17": "Qwen3 · 1.7B · 1.1 GB · {{tail}}", "size40": "Qwen3 · 4B · 2.5 GB · {{tail}}", "tail": { "veryFast": "非常快", "fast": "快速", "fullQuality": "完整质量" } }, "smartCleanup": { "title": "智能清理", "description": "去除填充词(嗯、呃、那个),还原标点和大小写,但不重新措辞。" }, "selfCorrection": { "title": "去除自我纠正", "description": "当您说到一半改变想法时(「其实不对……」「等等,我是说……」),丢弃被收回的部分,只保留最终意图。" }, "preserveTechnical": { "title": "保留技术术语", "description": "完全按原样保留代码标识符、命令名称和缩写。在向代码提示词中听写时建议开启。" } }, "playback": { "title": "播放", "description": "「捕获」标签页中「播放为」操作的默认声音。", "defaultVoice": { "title": "默认声音", "description": "未选择声音直接点击「播放为」时使用。可对每次捕获单独更改。", "noClonedVoices": "暂无克隆的声音", "noneSelected": "未选择", "clonedVoices": "克隆的声音" } }, "storage": { "title": "存储", "description": "捕获以配对的音频和转录文件保存在您的 Voicebox 数据目录中。", "retention": { "title": "保留", "description": "捕获保留多久。同时适用于音频和转录。", "forever": "永久保留", "d90": "90 天", "d30": "30 天", "d7": "7 天" }, "folder": { "title": "捕获文件夹", "description": "捕获的音频和转录在磁盘上的存储位置。", "open": "打开" } }, "sidebar": { "aboutTitle": "关于「捕获」", "aboutBody": "在系统的任何位置按住快捷键说话,Voicebox 就会把您的声音转换成文本。可用任何克隆的声音回放、粘贴到任何应用,或导入到您的编程代理中。", "differencesTitle": "不同之处", "local": { "title": "完全本地。", "body": "Whisper 和精修 LLM 都在您的硬件上运行。无云端、无账号,您的声音不会离开本机。" }, "playAs": { "title": "以任何声音播放。", "body": "转录可以用您克隆的任何档案朗读出来。" }, "crossPlatform": { "title": "跨平台。", "body": "在 macOS、Windows 和 Linux 上使用相同的快捷键和流程。" }, "windowsCaveat": { "title": "Windows 上的提示", "body": "当 Voicebox 自身或任何以管理员身份运行的应用处于焦点时,快捷键不会触发。我们正在解决这个问题。" } } }, "mcp": { "install": { "title": "安装到您的代理", "description": "只要应用打开,Voicebox 就会暴露一个本地 MCP 服务器。将以下任一片段粘贴到您的代理 MCP 配置中。", "http": { "title": "HTTP(推荐)", "description": "适用于支持 HTTP MCP 的客户端——Claude Code、Cursor、Windsurf、VS Code。" }, "claudeCode": { "title": "Claude Code 一行命令", "description": "通过 Claude Code CLI 注册。" }, "stdio": { "title": "Stdio(备选)", "description": "适用于仅启动 stdio 进程的客户端。垫片二进制随应用一同发布。" }, "copy": "复制", "copied": "已复制" }, "defaultVoice": { "title": "默认声音", "description": "当代理调用 voicebox_speak 但未指定具体档案、且没有按客户端绑定时使用。", "label": "默认播放声音", "labelHint": "与「捕获」标签页的「播放为」下拉菜单共享——被动播放的统一默认声音。", "none": "(无)" }, "bindings": { "title": "按代理设置声音", "description": "将特定代理绑定到特定声音,这样不用看也能分辨谁在说话。代理通过 X-Voicebox-Client-Id 请求头(stdio 则用 VOICEBOX_CLIENT_ID 环境变量)来标识自己。", "empty": "暂无绑定。在下方添加一个,然后将您的 MCP 客户端配置为发送匹配的 X-Voicebox-Client-Id。", "lastSeen": "最后活跃 {{when}}", "lastSeenTitle": "最后活跃 {{when}}", "neverConnected": "从未连接", "defaultOption": "(默认)", "removeAria": "移除 {{client}} 的绑定", "add": { "title": "添加绑定", "clientIdPlaceholder": "客户端 ID(例如 claude-code)", "labelPlaceholder": "标签(可选)", "action": "添加绑定" } }, "sidebar": { "aboutTitle": "关于 MCP", "aboutBody": "Model Context Protocol 让您的 AI 编程代理——Claude Code、Cursor、Windsurf——可以调用 Voicebox 工具。以克隆的声音朗读、转录音频、浏览捕获。", "toolsTitle": "可用工具", "tools": { "speak": "用声音档案朗读文本。", "transcribe": "对音频片段运行 Whisper 转录。", "listCaptures": "最近的听写 / 录制。", "listProfiles": "可用的声音档案。" }, "postSpeak": "也以 POST /speak 暴露,可用于 shell 脚本、ACP、A2A。" } }, "gpu": { "cpuOnly": "仅 CPU", "vramUsed": "{{mb}} MB 显存", "noAcceleration": "未检测到 GPU 加速", "active": "活动", "cuda": { "title": "CUDA 后端", "description": "通过可下载的 CUDA 后端实现 NVIDIA GPU 加速。", "downloading": "下载 CUDA 后端中…", "downloadingShort": "下载中…", "updating": "更新中…" }, "restart": { "ready": "服务器重启成功", "waiting": "重启服务器中…", "stopping": "停止服务器中…" }, "download": { "title": "下载 CUDA 后端", "description": "约 2.4 GB 下载。需要支持 CUDA 的 NVIDIA GPU。", "button": "下载" }, "switchToCuda": { "title": "切换到 CUDA 后端", "description": "CUDA 后端已下载完成。重启以启用。", "button": "重启" }, "switchToCpu": { "title": "切换到 CPU 后端", "description": "禁用 GPU 加速。您之后可以重新下载 CUDA。", "button": "切换" }, "remove": { "title": "移除 CUDA 后端", "description": "删除已下载的 CUDA 二进制文件以释放磁盘空间。", "button": "移除" }, "errors": { "downloadFailed": "下载失败", "downloadStart": "启动下载失败", "restartFailed": "重启失败", "switchCpu": "切换到 CPU 失败", "deleteCuda": "删除 CUDA 后端失败" }, "footer": "Voicebox 会自动检测并使用系统上可用的最佳 GPU。在 Apple Silicon Mac 上,MLX 后端通过 Metal Performance Shaders (MPS) 在神经引擎和 GPU 上原生运行,无需额外设置。在配备 NVIDIA GPU 的 Windows 和 Linux 上,您可以下载可选的 CUDA 后端以获得硬件加速推理。AMD ROCm、Intel XPU 和 DirectML 也通过 PyTorch 获得支持。未检测到 GPU 时,Voicebox 会退回到 CPU——所有引擎仍可工作,只是速度较慢。" }, "logs": { "title": "服务器日志", "lineCount_one": "{{count}} 行", "lineCount_other": "{{count}} 行", "scrollToBottom": "滚动到底部", "clear": "清除", "empty": "暂无日志输出。", "devHint": "仅当应用管理服务器进程(生产构建)时才会捕获服务器日志。" }, "changelog": { "devBadge": "开发版", "showLess": "收起", "showMore": "展开" }, "about": { "tagline": "开源语音合成工作室。克隆声音、生成语音、应用效果、构建语音驱动的应用——全部在您的本地机器上运行。", "createdBy": "创建者", "buyCoffee": "请我喝杯咖啡", "license": "采用 MIT 协议" } }, "models": { "title": "模型", "subtitle": "下载和管理用于语音生成和转录的 AI 模型", "defaultName": "模型", "unknownSize": "未知大小", "sections": { "voiceGeneration": "语音生成", "transcription": "语音转录", "languageModels": "语言模型" }, "status": { "loaded": "已加载" }, "storage": { "location": "存储位置", "open": "打开", "change": "更改", "migrating": "迁移中…", "reset": "重置", "pickerTitle": "选择模型存储文件夹" }, "progress": { "connecting": "连接中…", "connectingHf": "连接到 HuggingFace 中…" }, "problems": { "title": "问题", "clearAll": "全部清除", "noDetails": "没有可用的错误详情。请重试下载。", "startedAt": "开始于 {{time}}" }, "detail": { "loadingInfo": "加载模型信息中…", "byAuthor": "由 {{author}}", "downloads": "下载量", "likes": "点赞数", "license": "许可", "languagesCount": "支持 {{count}} 种语言", "languagesList": "语言:{{list}}", "onDisk": "磁盘占用 {{size}}" }, "actions": { "download": "下载", "retry": "重试下载", "unload": "卸载", "unloading": "卸载中…", "unloadFirst": "删除前请先卸载模型", "deleteModel": "删除模型" }, "deleteDialog": { "title": "删除模型", "body": "确定要删除 {{name}} 吗?", "sizeNote": "这将释放 {{size}} 磁盘空间。如果您想再次使用该模型,需要重新下载。", "deleting": "删除中…" }, "migrateDialog": { "title": "移动模型到新位置?", "description": "在模型迁移到新文件夹期间,服务器将关闭。迁移完成后会自动重启。", "action": "移动模型", "preparing": "准备中…", "restartingServer": "重启服务器中…" }, "migrate": { "title": "移动模型中", "offline": "模型迁移期间服务器处于离线状态。" }, "toast": { "downloadFailed": "下载失败", "cancelFailed": "取消失败", "cancelFailedDescription": "无法取消下载任务。", "deleted": "模型已删除", "deletedDescription": "{{name}} 已成功删除。", "deleteFailed": "删除失败", "unloaded": "模型已卸载", "unloadedDescription": "{{name}} 已从内存中卸载。", "unloadFailed": "卸载失败", "openFolderFailed": "打开模型文件夹失败", "pickerFailed": "打开文件夹选择器失败", "resetToDefault": "已重置到默认位置。重启服务器中…", "noModelsToMigrate": "没有可迁移的模型", "noModelsToMigrateDescription": "更改存储位置前请先下载至少一个模型。", "migrated": "模型已成功移动", "migrationFailed": "迁移失败", "migrationFailedGeneric": "迁移模型失败", "migrationConnectionLost": "迁移期间丢失连接" } } }