Files
archived-vdo.ninja/obs/locales/zh-CN.json
2025-10-27 20:56:02 -03:00

313 lines
22 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"pageTitle": "VDO.Ninja OBS 控制面板",
"mainHeading": "VDO.Ninja OBS 控制",
"languageSwitcher": {
"label": "语言:"
},
"collapsible": {
"clickToExpand": "点击展开",
"clickToCollapse": "点击折叠"
},
"customCss": {
"title": "自定义 CSS",
"label": "在此输入您的自定义 CSS",
"description": "此 CSS 将应用于源。"
},
"obsConnection": {
"title": "OBS WebSocket 连接",
"websocketUrlLabel": "WebSocket URL",
"passwordLabel": "密码:",
"cameraPrefixLabel": "通用摄像头前缀:",
"reactionPrefixLabel": "反应前缀VDO.",
"highlightPrefixLabel": "高亮前缀VDO.",
"reactionPrefixDynamicLabel": "反应前缀:{{prefix}}{{separator}}{{subPrefix}}",
"highlightPrefixDynamicLabel": "高亮前缀:{{prefix}}{{separator}}{{subPrefix}}",
"connectButton": "连接",
"disconnectButton": "断开连接",
"statusDisconnected": "状态:已断开",
"statusConnected": "状态:已连接",
"statusConnecting": "状态:连接中...",
"statusError": "状态:错误",
"statusErrorUrlMissing": "状态:错误 - URL 缺失",
"statusErrorTimeout": "状态:错误 - 连接超时",
"statusErrorCameraPrefixMissing": "状态:错误 - 摄像头前缀缺失"
},
"vdoNinjaSettings": {
"title": "VDO.Ninja 设置",
"baseUrlLabel": "VDO.Ninja 基础 URL",
"baseUrlPlaceholder": "https://vdo.ninja",
"roomNameLabel": "房间名称:",
"roomNamePlaceholder": "例如MyNinjaRoom",
"passwordLabel": "密码:",
"passwordPlaceholder": "房间或 &password",
"streamIdsLabel": "流 ID",
"streamIdsPlaceholder": "streamId1,streamId2",
"roomOrStreamIdsNeeded": "需要房间名称或流 ID",
"connectButton": "连接",
"disconnectButton": "断开连接",
"cancelButton": "取消",
"statusDisconnected": "状态:已断开",
"statusConnected": "状态:已连接",
"statusConnecting": "状态:连接中...",
"statusConnectionFailed": "状态:连接失败",
"statusConnectionLost": "状态:连接丢失"
},
"streamIdMappings": {
"title": "流 ID 映射",
"addNewMappingButton": "添加新映射",
"ruleTitle": "流映射规则",
"streamIdPlaceholder": "流 ID",
"streamIdTooltip": "VDO.Ninja 流 ID",
"labelPlaceholder": "标签(可选)",
"labelTooltip": "VDO.Ninja 流标签",
"matchTypeTooltip": "如何匹配流",
"matchType": {
"idOnly": "仅 ID",
"labelOnly": "仅标签",
"bothRequired": "两者都需要",
"eitherMatch": "任一匹配"
},
"targetSceneTooltip": "目标 OBS 场景",
"selectSceneOption": "选择场景...",
"removeRuleTooltip": "删除此映射规则",
"cloneToMainSceneLabel": "克隆到主场景",
"switchToSceneOnAddLabel": "添加时切换到场景",
"ruleDescription": "定义传入流如何路由到 OBS 场景。"
},
"obsTargetSettings": {
"title": "OBS 目标设置",
"sourceCreationScenesLabel": "源创建的场景:",
"sourceCreationScenesDesc": "选择一个或多个场景。第一个将作为主要场景,其他用于复制。",
"loadingScenes": "加载场景中...",
"noScenesFound": "未找到场景",
"refetchScenesButton": "重新获取场景",
"screenShareSettings": {
"title": "屏幕共享设置:",
"widthLabel": "宽度:",
"heightLabel": "高度:",
"resolutionNote": "此分辨率将用于具有反应布局的场景中的屏幕共享源。"
},
"autoAddSourcesLabel": "自动将新流添加为源",
"autoRemoveSourcesLabel": "断开连接时自动删除源",
"newSourceSizing": {
"label": "默认源大小:",
"defaultSizeOption": "默认1920x1080 位于 0,0",
"bestFitOption": "最佳适配(保持纵横比)",
"stretchToFillOption": "拉伸以填充屏幕",
"overrideNote": "布局部分中定义的特定布局将覆盖这些场景的设置。"
},
"codec": {
"label": "编解码器:",
"noneOption": "无",
"learnMoreTitle": "了解更多编解码器选项"
}
},
"sceneLayouts": {
"title": "场景布局",
"addNewLayoutButton": "添加新布局",
"description": "为特定 OBS 场景定义自动布局。这些将覆盖配置场景的默认源大小。",
"sceneLabel": "场景:",
"selectSceneOption": "选择场景...",
"layoutLabel": "布局:",
"selectLayoutOption": "选择布局...",
"layoutTypes": {
"grid": "网格",
"reaction": "反应",
"highlight": "高亮"
},
"noActiveLayouts": "无活动布局",
"removeLayoutTooltip": "删除此布局配置",
"sceneAlreadyConfiguredTooltip": "(已在使用中)",
"sceneAlreadyConfiguredAlert": "场景 '{{sceneName}}' 已被另一个布局配置使用。",
"controls": {
"margin": "边距",
"spacing": "间距",
"offsetX": "X 偏移",
"offsetY": "Y 偏移",
"gridSplitScreenTwoCameras": "2 个摄像头分屏(网格)",
"distributeCameras": "分布摄像头(反应/高亮)"
}
},
"activeStreams": {
"title": "活动流",
"noActiveStreams": "无活动流",
"streamIdLabel": "ID{{id}}",
"labelLabel": "标签:{{label}}",
"targetSceneLabelText": "目标场景:{{sceneName}}",
"notSet": "未设置",
"defaultSceneTag": "默认",
"mappedSceneTag": "已映射",
"addedToObs": "✓ 已添加到 OBS",
"notInObs": "✗ 不在 OBS 中",
"buttons": {
"addToObs": "添加到 OBS",
"removeFromObs": "从 OBS 删除",
"highlight": "高亮",
"unhighlight": "取消高亮",
"screenShare": "屏幕共享",
"stopScreenShare": "停止屏幕共享"
}
},
"log": {
"title": "日志"
},
"vdoNinja": {
"defaultStreamLabel": "流 {{id}}"
},
"logMessages": {
"settingsSaved": "设置已保存。",
"settingsLoaded": "已从 localStorage 加载设置。",
"customCssChangedWillApplyToSource": "自定义 CSS 输入已更改。将在下次创建/更新时直接应用于 OBS 源设置。",
"errorLoadingSettings": "从 localStorage 加载设置时出错:{{message}}。使用默认值。",
"noSavedSettings": "未找到保存的设置。使用默认值。",
"appInitialized": "VDO.Ninja OBS 控制面板已初始化。欢迎使用!",
"jsShaLoaded": "jsSHA 库已成功加载Web Crypto 的后备方案)。",
"errorLoadingJsSha": "错误:无法加载 jsSHA 库。如果 Web Crypto 也不可用OBS 身份验证可能会失败。",
"loadedStreamMappings": "已加载 {{count}} 个流映射。",
"errorLoadingStreamMappings": "从 localStorage 加载流映射时出错:{{message}}",
"warningStreamMappingElementsNotFound": "警告:无法在流映射 UI div 中找到所有预期元素。",
"loadedLayoutConfigs": "已加载 {{count}} 个场景布局配置。",
"errorLoadingLayoutConfigs": "加载场景布局配置时出错:{{message}}",
"savedLayoutConfigs": "已保存 {{count}} 个场景布局配置。",
"errorSavingLayoutsDuplicateScene": "保存布局时出错:场景 '{{sceneName}}' 配置了多次。请确保每个场景只有一个布局。",
"layoutSceneNotFound": "为布局保存的场景 '{{sceneName}}' 在当前 OBS 场景中未找到。",
"errorHidingSource": "在 {{sceneName}} 中隐藏源项目 {{sourceName}} 时出错:{{message}}",
"sceneAlreadyConfiguredError": "场景 '{{sceneName}}' 已为另一个布局配置。恢复选择。",
"vdoNinja": {
"disconnected": "已断开与 VDO.Ninja 的连接。",
"alreadyConnected": "已连接到 VDO.Ninja。",
"errorRoomOrStreamIdNeeded": "VDO.Ninja 错误:必须提供房间名称或流 ID。",
"connectionTimeout": "VDO.Ninja 连接超时。未从 iframe 收到任何活动。",
"roomOrStreamIdNeededForConnect": "VDO.Ninja必须提供房间名称或特定流 ID 才能连接。",
"streamIdsEmptyAfterTrim": "VDO.Ninja提供了流 ID但修剪后为空。",
"initializingIframe": "使用 URL 初始化 VDO.Ninja iframe{{url}}",
"invalidBaseUrl": "设置中的 VDO.Ninja 基础 URL 无效:{{url}}",
"iframeConnectedActive": "VDO.Ninja iframe 连接已建立并激活。",
"streamConnectedActive": "VDO.Ninja 流已连接/激活:\"{{label}}\"ID{{id}}",
"autoAddingStream": "自动将流 {{id}} 添加到 OBS。",
"streamDisconnectedInactive": "VDO.Ninja 流已断开/非活动:\"{{label}}\"ID{{id}}",
"autoRemovingStream": "自动从 OBS 删除流 {{id}}。",
"streamLabelUpdated": "ID {{id}} 的 VDO.Ninja 流标签已更新:\"{{newLabel}}\"(原为 \"{{oldLabel}}\"",
"connectionLostResetting": "VDO.Ninja 连接丢失iframe 无活动)。尝试重置。"
},
"obs": {
"disconnecting": "正在断开 OBS WebSocket 连接...",
"errorCameraPrefixRequired": "错误OBS 连接需要通用摄像头前缀。",
"errorUrlRequired": "错误:需要 OBS WebSocket URL。",
"attemptingConnection": "尝试连接到 OBS WebSocket{{url}}...",
"connectionTimeout": "OBS WebSocket 连接尝试超时。",
"connectionOpenedWaitingHello": "OBS WebSocket 连接已打开。等待服务器 Hello...",
"receivedHelloSendingIdentify": "收到来自 OBS 的 Hello。发送 Identify...",
"authDataPrepared": "已为 Identify 消息准备身份验证数据。",
"warningAuthRequiredNoPassword": "警告OBS 服务器需要身份验证,但未提供密码。",
"authSuccessConnected": "OBS WebSocket 身份验证成功!连接已建立。",
"requestError": "OBS 请求错误(类型:{{type}}ID{{id}}{{error}}(代码:{{code}}",
"eventSceneListChanged": "OBS 事件:场景列表已更改。重新获取场景。",
"errorProcessingMessage": "处理 OBS WebSocket 消息时出错:{{message}}。数据:{{data}}",
"webSocketError": "OBS WebSocket 错误:{{error}}",
"authFailedReason": "身份验证失败 - 密码错误或需要身份验证但未提供。",
"connectionClosedReasonCode": "代码:{{code}}{{wasClean}}",
"uncleanDisconnection": "(非正常断开)",
"connectionClosed": "OBS WebSocket 连接已关闭。原因:{{reason}}",
"errorCreatingConnection": "创建 OBS WebSocket 连接时出错:{{message}}",
"authGenerationError": "OBS 身份验证生成错误:{{message}}",
"cannotSendRequestNotConnected": "无法发送请求 '{{requestType}}':未连接到 OBS。",
"errorSendingRequest": "发送 OBS 请求 '{{requestType}}' 时出错:{{message}}",
"requestTimeout": "OBS 请求 '{{requestType}}'ID{{id}})超时。",
"connectionEstablishedFetchingData": "OBS 连接已完全建立。获取初始数据...",
"errorPostConnectionSetup": "OBS 连接后设置期间出错(获取场景):{{message}}",
"connectionClosedOrLost": "OBS 连接已关闭或丢失。",
"cannotFetchScenesNotConnected": "无法获取 OBS 场景:未连接到 OBS。",
"fetchingScenes": "正在获取 OBS 场景...",
"fetchedScenesCount": "从 OBS 获取了 {{count}} 个场景。",
"failedToFetchScenes": "无法获取 OBS 场景或未返回场景。",
"errorFetchingScenes": "获取 OBS 场景时出错:{{message}}",
"cannotHighlightNotConnected": "无法高亮:未连接到 OBS。",
"highlightLayoutActiveManualLegacy": "场景 '{{sceneName}}' 使用新的高亮布局。手动高亮按钮可能效果有限或被替代。",
"stoppingScreenShareForHighlight": "屏幕共享处于活动状态({{id}})。在高亮之前停止它。",
"cannotScreenShareNotConnected": "无法开始屏幕共享:未连接到 OBS。",
"unhighlightingForScreenShare": "摄像头被高亮({{id}})。在开始屏幕共享之前取消高亮。",
"cannotAddScreenShareNotConnected": "无法添加屏幕共享:未连接到 OBS。",
"cannotAddScreenShareNoRoom": "无法添加屏幕共享:屏幕共享 URL 需要 VDO.Ninja 房间名称。",
"cannotAddScreenShareNoReactionLayoutScene": "无法添加屏幕共享:没有配置反应布局的场景。",
"addingUpdatingScreenShareToReactionScenes": "向反应场景添加/更新屏幕共享源 '{{sourceName}}'URL{{url}})。在 '{{primaryScene}}' 中主要创建。(共 {{count}} 个场景)",
"reconfiguringExistingScreenShare": "重新配置现有屏幕共享源 '{{oldName}}' 为 '{{newName}}'。",
"reconfiguredRenamedScreenShare": "已重新配置并重命名现有屏幕共享源为 '{{sourceName}}'。",
"screenShareExistsUpdating": "屏幕共享源 '{{sourceName}}' 已存在。更新其设置。",
"creatingNewScreenShareInScene": "在场景 '{{sceneName}}' 中创建新的屏幕共享源 '{{sourceName}}'。",
"ensuredTransformedScreenShareReaction": "确保并转换了反应场景 '{{sceneName}}' 中的屏幕共享源 '{{sourceName}}'。",
"sourceFoundInSceneEnabled": "在场景 '{{sceneName}}' 中找到源 '{{sourceName}}',项目 ID{{itemId}}。确保其已启用。",
"sourceAddedToScene": "源 '{{sourceName}}' 已添加到场景 '{{sceneName}}',项目 ID{{itemId}}。",
"errorCreatingSceneItem": "在 '{{sceneName}}' 中为 '{{sourceName}}' 创建场景项目时出错:{{message}}",
"errorCheckingSceneForItem": "在场景 '{{sceneName}}' 中检查 '{{sourceName}}' 时出错:{{message}}",
"errorApplyingInitialTransform": "将初始默认变换应用于 '{{sceneName}}' 中的 '{{sourceName}}' 时出错:{{message}}",
"successConfigScreenShare": "成功配置流 {{streamId}}{{label}})的屏幕共享。",
"errorAddingUpdatingScreenShare": "添加/更新屏幕共享源 '{{sourceName}}' 时出错:{{message}}。",
"cannotToggleHighlightNotConnected": "无法切换高亮:未连接到 OBS。",
"streamUnhighlighted": "流 {{id}} 取消高亮(从 {{oldName}} 重命名为 {{newName}}",
"streamSuccessfullyUnhighlighted": "流 {{id}} 成功取消高亮(重命名为 {{newName}}",
"streamSuccessfullyHighlighted": "流 {{id}} 成功高亮(重命名为 {{newName}}",
"unhighlightError": "无法取消高亮(重命名){{sourceName}},可能不存在或其他错误:{{message}}",
"highlightError": "无法高亮(重命名){{sourceName}},可能不存在或其他错误:{{message}}",
"legacyHighlightUnhighlightOnRemove": "流 {{id}} 是旧版高亮。取消高亮。",
"cannotAddStreamNotConnected": "无法将流 \"{{label}}\"{{id}})添加到 OBS未连接到 OBS。",
"cannotAddStreamNoTargetSceneName": "无法添加流 \"{{label}}\"{{id}}):需要目标 OBS 场景名称但未设置(无默认值且无映射)。",
"foundExistingStandardSource": "为流 {{streamId}} 找到现有标准源 '{{sourceName}}'。",
"foundExistingHighlightForConnectingStream": "找到与连接流 {{streamId}} 的高亮命名匹配的现有 OBS 源 '{{sourceName}}'。更新内部高亮状态。",
"foundExistingHighlightedSource": "为流 {{streamId}} 找到现有高亮源 '{{sourceName}}'。",
"noExistingSourceFoundWillCreate": "未找到流 {{streamId}} 的标准('{{baseSourceName}}')或高亮('{{highlightedSourceName}}')源。将创建新的。",
"noExistingStandardSourceSamePrefix": "未找到流 {{streamId}} 的标准源 '{{sourceName}}'(高亮前缀相同)。将创建新的。",
"errorGettingCanvasSize": "获取 OBS 画布大小时出错:{{message}}。使用默认 {{width}}x{{height}}。",
"sourceNotGlobalCreating": "源 '{{sourceName}}' 不存在于全局。在场景 '{{sceneName}}' 中创建它。",
"sourceCreatedAddedToScene": "源 '{{sourceName}}' 已创建并添加到场景 '{{sceneName}}'。",
"sourceGlobalUpdatingWithUrl": "源 '{{sourceName}}' 已全局存在。更新其设置。URL{{url}}",
"sourceFoundAsItemInScene": "源 '{{sourceName}}' 作为项目在场景 '{{sceneName}}' 中找到。",
"sourceNotInSceneAdding": "源 '{{sourceName}}' 不在场景 '{{sceneName}}' 中。正在添加。",
"cloningToMainScene": "由于映射规则,将源 '{{sourceName}}' 克隆到主场景(从复选框)'{{sceneName}}'。",
"addingSourceToOtherScene": "将源 '{{sourceName}}' 作为项目添加到其他选定场景 '{{sceneName}}'。",
"switchingProgramScene": "切换 OBS 当前节目场景到 '{{sceneName}}'。",
"successfullyProcessedStream": "成功处理流 \"{{label}}\"{{id}}),有效 OBS 源:'{{sourceName}}'。",
"errorManagingStream": "在 OBS 中管理流 '{{sourceName}}'\"{{label}}\")时出错:{{message}}",
"applyTransformAndGridCalled": "为 {{sceneName}} 中的 {{sourceName}} 调用了 applyTransformAndGrid。触发场景的完整布局更新。",
"triggeringLayoutUpdate": "触发场景 '{{sceneName}}' 的布局更新...",
"gridFallbackSourceChanged": "'{{sourceGridScene}}'(主要后备候选)的网格设置已更改。触发反应/高亮场景 '{{dependentScene}}' 的更新。",
"noSceneItemsForLayout": "在场景 '{{sceneName}}' 中未找到用于布局更新的场景项目。",
"applyingConfiguredLayout": "将 '{{layoutType}}' 布局应用于场景 '{{sceneName}}'。({{count}} 个项目)",
"unknownLayoutType": "场景 '{{sceneName}}' 的未知布局类型 '{{layoutType}}'。应用默认大小。",
"noSpecificLayoutApplyingDefault": "场景 '{{sceneName}}' 没有特定布局。应用默认源大小('{{sizing}}')。",
"errorTriggeringLayoutUpdate": "场景 '{{sceneName}}' 的布局更新期间出错:{{message}}",
"applyingDefaultSizing": "将默认源大小('{{sizing}}')应用于场景 '{{sceneName}}' 中的 {{count}} 个项目。",
"errorApplyingDefaultTransformItem": "将默认变换应用于 {{sceneName}} 中的 {{sourceName}} 时出错:{{message}}",
"noSourcesForGridLayout": "场景 '{{sceneName}}' 中没有 VDO.Ninja 摄像头源来应用网格布局。",
"applyingGridLayoutScene": "将网格布局应用于场景 '{{sceneName}}' 中的 {{count}} 个 VDO.Ninja 摄像头源。",
"applyingGridSplitScreen": "将 2 摄像头分屏网格布局应用于场景 '{{sceneName}}'。",
"reactionMainNotFoundFallbackGrid": "在场景 '{{sceneName}}' 中未找到/不可见反应布局的主内容。应用摄像头的后备网格。",
"highlightMainNotFoundFallbackGrid": "在场景 '{{sceneName}}' 中未找到/不可见高亮布局的主内容。应用摄像头的后备网格。",
"usingGridSceneFallbackSettings": "使用第一个配置的网格布局场景('{{sceneName}}')的网格设置作为 '{{targetScene}}' 的后备。",
"usingDefaultGridFallbackSettings": "未找到网格布局场景。使用默认网格设置作为 '{{targetScene}}' 的后备。",
"applyingFallbackGridToCameras": "将后备网格布局应用于场景 '{{sceneName}}' 中的 {{count}} 个摄像头源。",
"noCamerasForFallbackGridHidingAll": "场景 '{{sceneName}}' 的后备网格中没有要显示的摄像头项目。此场景中的所有 VDO 源将被隐藏。",
"cannotRemoveStreamNotConnected": "无法从 OBS 删除流 {{id}}:未连接到 OBS。",
"triggeredRemoval": "用户或自动触发从 OBS 删除流 '{{id}}'。基础源:'{{baseName}}'。",
"streamScreenSharingRemoving": "流 {{id}} 正在积极共享屏幕。启动屏幕共享删除。",
"finishedRemovingSourceItems": "完成从指定 OBS 场景删除流 {{id}} 的源项目。",
"cannotRemoveScreenShareNotConnected": "无法删除屏幕共享:未连接到 OBS。",
"attemptingRemoveScreenShareSource": "尝试从 OBS 完全删除屏幕共享源 '{{sourceName}}'(所有场景和输入)。",
"removingGlobalInput": "从 OBS 删除全局输入 '{{sourceName}}'。",
"successfullyRemovedInput": "成功删除输入 '{{sourceName}}'。",
"errorScreenShareRemovalProcess": "'{{sourceName}}' 的屏幕共享删除过程中出错:{{message}}",
"removingSourceItemFromScene": "从场景 '{{sceneName}}' 删除源项目 '{{sourceName}}'ID{{itemId}})。",
"errorTryingRemoveSourceItem": "尝试从场景 '{{sceneName}}' 删除源项目 '{{sourceName}}' 时出错:{{message}}",
"codecChangedUpdatingSources": "编解码器更改为:{{codec}}。更新 OBS 源...",
"codecChangedNotConnected": "OBS 未连接。在重新连接和新操作之前,源不会使用新编解码器更新。",
"sourceUpdatedWithUrlAndCss": "源 '{{sourceName}}' 已使用 URL{{url}} 和自定义 CSS 更新。",
"screenShareSourceUpdatedWithUrlAndCss": "屏幕共享源 '{{sourceName}}' 已使用 URL{{url}} 和自定义 CSS 更新。",
"codecUpdateComplete": "OBS 源的编解码器更新完成。",
"codecCssUpdateComplete": "OBS 源的编解码器/CSS 更新完成。",
"inputNameChanged": "OBS 事件:输入名称从 '{{oldName}}' 更改为 '{{newName}}'。检查相关场景以进行布局更新。",
"foundPreExistingHighlight": "在 OBS 中找到预先存在的高亮源:'{{sourceName}}'。将活动高亮设置为流 ID{{streamId}}。",
"errorCheckingMainContentEnabled": "检查主内容 {{sourceName}} 是否已启用时出错:{{message}}"
}
}
}