From c8e181c841541d1807b5692df596e0faf07e4499 Mon Sep 17 00:00:00 2001 From: Comfy Org PR Bot Date: Sat, 10 Jan 2026 10:49:52 +0900 Subject: [PATCH] 1.37.8 (#7937) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Patch version increment to 1.37.8 **Base branch:** `main` ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7937-1-37-8-2e46d73d3650814bb126d7a0bc385a44) by [Unito](https://www.unito.io) --------- Co-authored-by: christian-byrne <72887196+christian-byrne@users.noreply.github.com> Co-authored-by: github-actions --- package.json | 2 +- src/locales/ar/main.json | 24 +++- src/locales/ar/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/en/commands.json | 3 - src/locales/en/main.json | 2 +- src/locales/en/nodeDefs.json | 197 +++++++++++++++++++++++++++++++- src/locales/es/main.json | 24 +++- src/locales/es/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/fr/main.json | 24 +++- src/locales/fr/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/ja/main.json | 24 +++- src/locales/ja/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/ko/main.json | 24 +++- src/locales/ko/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/pt-BR/main.json | 110 ++++++++++-------- src/locales/pt-BR/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/ru/main.json | 24 +++- src/locales/ru/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/tr/main.json | 24 +++- src/locales/tr/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/zh-TW/main.json | 24 +++- src/locales/zh-TW/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ src/locales/zh/main.json | 24 +++- src/locales/zh/nodeDefs.json | 193 +++++++++++++++++++++++++++++++ 24 files changed, 2390 insertions(+), 70 deletions(-) diff --git a/package.json b/package.json index 222592a6a..5f9458d5a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@comfyorg/comfyui-frontend", "private": true, - "version": "1.37.7", + "version": "1.37.8", "type": "module", "repository": "https://github.com/Comfy-Org/ComfyUI_frontend", "homepage": "https://comfy.org", diff --git a/src/locales/ar/main.json b/src/locales/ar/main.json index ac972502a..f9e372b42 100644 --- a/src/locales/ar/main.json +++ b/src/locales/ar/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "إضافة المزيد من الرصيد", "addMoreCreditsToRun": "أضف المزيد من الرصيد للتشغيل", + "amountToPayLabel": "المبلغ المطلوب دفعه بالدولار", "buy": "شراء", + "buyCredits": "المتابعة للدفع", "buyNow": "اشترِ الآن", + "contactUs": "اتصل بنا", "creditsDescription": "يتم استخدام الرصيد لتشغيل سير العمل أو عقد الشركاء.", + "creditsPerDollar": "أرصدة لكل دولار", + "creditsToReceiveLabel": "الأرصدة المستلمة", "howManyCredits": "كم رصيد ترغب في إضافته؟", "insufficientMessage": "ليس لديك رصيد كافٍ لتشغيل هذا الإجراء.", "insufficientTitle": "رصيد غير كافٍ", "insufficientWorkflowMessage": "ليس لديك رصيد كافٍ لتشغيل هذا سير العمل.", + "maxAllowed": "الحد الأقصى {credits} أرصدة.", "maxAmount": "(الحد الأقصى 1000 دولار أمريكي)", + "maximumAmount": "الحد الأقصى ${amount}.", + "minRequired": "الحد الأدنى {credits} أرصدة", + "minimumPurchase": "الحد الأدنى ${amount} ({credits} أرصدة)", + "needMore": "تحتاج المزيد؟", "purchaseError": "فشل الشراء", "purchaseErrorDetail": "فشل شراء الرصيد: {error}", "quickPurchase": "شراء سريع", "seeDetails": "عرض التفاصيل", + "selectAmount": "اختر المبلغ", "templateNote": "*تم الإنشاء باستخدام قالب Wan Fun Control", "topUp": "شحن الرصيد", "unknownError": "حدث خطأ غير معروف", - "videosEstimate": "~{count} فيديو" + "usdAmount": "${amount} دولار أمريكي", + "videosEstimate": "~{count} فيديو", + "viewPricing": "عرض تفاصيل التسعير", + "youGet": "أرصدة", + "youPay": "المبلغ (دولار أمريكي)" }, "unified": { "message": "تم توحيد الرصيد", @@ -536,6 +551,7 @@ "HOOKS": "معالجات", "HOOK_KEYFRAMES": "مفاتيح المعالجات", "IMAGE": "صورة", + "IMAGECOMPARE": "مقارنة الصور", "INT": "عدد صحيح", "LATENT": "كامِن", "LATENT_OPERATION": "عملية كامنة", @@ -680,6 +696,7 @@ "customBackground": "خلفية مخصصة", "customize": "تخصيص", "customizeFolder": "تخصيص المجلد", + "decrement": "إنقاص", "defaultBanner": "لافتة افتراضية", "delete": "حذف", "deleteAudioFile": "حذف ملف الصوت", @@ -738,6 +755,7 @@ "imageUrl": "رابط الصورة", "import": "استيراد", "inProgress": "جارٍ التنفيذ", + "increment": "زيادة", "info": "معلومات العقدة", "insert": "إدراج", "install": "تثبيت", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "تم حذف {count} أصل(أصول) بنجاح", "deleteSelected": "حذف", + "deleteSelectedAll": "حذف الكل", "deselectAll": "إلغاء تحديد الكل", "downloadSelected": "تحميل", + "downloadSelectedAll": "تحميل الكل", "downloadStarted": "جاري تحميل {count} ملف(ملفات)...", "downloadsStarted": "بدأ تنزيل {count} ملف(ملفات)", "failedToDeleteAssets": "فشل في حذف الأصول المحددة", + "multipleSelectedAssets": "تم تحديد عدة ملفات", "partialDeleteSuccess": "{succeeded} تم حذفها بنجاح، {failed} فشلت", "selectedCount": "الأصول المحددة: {count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "تبديل السمة (داكن/فاتح)", "Toggle View Controls Bottom Panel": "تبديل لوحة عناصر التحكم في العرض السفلية", "Toggle promotion of hovered widget": "تبديل ترقية عنصر واجهة المستخدم المحدد", - "Toggle the Custom Nodes Manager Progress Bar": "تبديل شريط تقدم مدير العقد المخصصة", "Undo": "تراجع", "Ungroup selected group nodes": "فك تجميع عقد المجموعة المحددة", "Unload Models": "إلغاء تحميل النماذج", diff --git a/src/locales/ar/nodeDefs.json b/src/locales/ar/nodeDefs.json index 0b954c6a4..a4ffc1532 100644 --- a/src/locales/ar/nodeDefs.json +++ b/src/locales/ar/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "يقارن صورتين جنبًا إلى جنب باستخدام شريط تمرير.", + "display_name": "مقارنة الصور", + "inputs": { + "compare_view": { + "name": "عرض المقارنة" + }, + "image_a": { + "name": "الصورة أ" + }, + "image_b": { + "name": "الصورة ب" + } + } + }, "ImageCompositeMasked": { "display_name": "تركيب صورة مع قناع", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "يضم القناتين الصوتيتين الأحادية (اليمنى واليسرى) في صوت ستيريو.", + "display_name": "دمج قنوات الصوت", + "inputs": { + "audio_left": { + "name": "الصوت الأيسر" + }, + "audio_right": { + "name": "الصوت الأيمن" + } + }, + "outputs": { + "0": { + "name": "الصوت", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "دمج الصورة مع ألفا", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "إنشاء فيديو من صورة ونص اختياري.", + "display_name": "توليد فيديو من صورة Vidu2", + "inputs": { + "control_after_generate": { + "name": "التحكم بعد التوليد" + }, + "duration": { + "name": "المدة" + }, + "image": { + "name": "الصورة", + "tooltip": "صورة تُستخدم كإطار بداية للفيديو المُنتج." + }, + "model": { + "name": "النموذج" + }, + "movement_amplitude": { + "name": "سعة الحركة", + "tooltip": "سعة حركة العناصر داخل الإطار." + }, + "prompt": { + "name": "النص التوجيهي", + "tooltip": "نص اختياري لتوليد الفيديو (بحد أقصى 2000 حرف)." + }, + "resolution": { + "name": "الدقة" + }, + "seed": { + "name": "البذرة" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "إنشاء فيديو من عدة صور مرجعية ونص توجيهي.", + "display_name": "توليد فيديو من مراجع Vidu2", + "inputs": { + "aspect_ratio": { + "name": "نسبة العرض إلى الارتفاع" + }, + "audio": { + "name": "الصوت", + "tooltip": "عند التفعيل، سيحتوي الفيديو على كلام وموسيقى خلفية مولدة بناءً على النص التوجيهي." + }, + "control_after_generate": { + "name": "التحكم بعد التوليد" + }, + "duration": { + "name": "المدة" + }, + "model": { + "name": "النموذج" + }, + "movement_amplitude": { + "name": "سعة الحركة", + "tooltip": "سعة حركة العناصر داخل الإطار." + }, + "prompt": { + "name": "النص التوجيهي", + "tooltip": "عند التفعيل، سيحتوي الفيديو على كلام وموسيقى خلفية مولدة بناءً على النص التوجيهي." + }, + "resolution": { + "name": "الدقة" + }, + "seed": { + "name": "البذرة" + }, + "subjects": { + "name": "الموضوعات", + "tooltip": "لكل موضوع، قدم حتى 3 صور مرجعية (بحد أقصى 7 صور لجميع الموضوعات). استخدمها في النص التوجيهي عبر @subject{subject_id}." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "إنشاء فيديو من إطار بداية، إطار نهاية، وموجه نصي.", + "display_name": "توليد فيديو من إطار البداية/النهاية باستخدام Vidu2", + "inputs": { + "control_after_generate": { + "name": "التحكم بعد التوليد" + }, + "duration": { + "name": "المدة" + }, + "end_frame": { + "name": "إطار النهاية" + }, + "first_frame": { + "name": "إطار البداية" + }, + "model": { + "name": "النموذج" + }, + "movement_amplitude": { + "name": "سعة الحركة", + "tooltip": "سعة حركة العناصر داخل الإطار." + }, + "prompt": { + "name": "الموجه", + "tooltip": "وصف الموجه (بحد أقصى 2000 حرف)." + }, + "resolution": { + "name": "الدقة" + }, + "seed": { + "name": "البذرة" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "إنشاء فيديو من موجه نصي", + "display_name": "توليد فيديو من نص باستخدام Vidu2", + "inputs": { + "aspect_ratio": { + "name": "نسبة العرض إلى الارتفاع" + }, + "background_music": { + "name": "موسيقى خلفية", + "tooltip": "هل تريد إضافة موسيقى خلفية للفيديو المُنتج." + }, + "control_after_generate": { + "name": "التحكم بعد التوليد" + }, + "duration": { + "name": "المدة" + }, + "model": { + "name": "النموذج" + }, + "prompt": { + "name": "الموجه", + "tooltip": "وصف نصي لتوليد الفيديو، بحد أقصى 2000 حرف." + }, + "resolution": { + "name": "الدقة" + }, + "seed": { + "name": "البذرة" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "إنشاء فيديو من صورة ونص اختياري", "display_name": "إنشاء الفيديو من الصورة باستخدام Vidu", diff --git a/src/locales/en/commands.json b/src/locales/en/commands.json index 9a32d9e73..1af5d505e 100644 --- a/src/locales/en/commands.json +++ b/src/locales/en/commands.json @@ -191,9 +191,6 @@ "Comfy_Manager_ShowUpdateAvailablePacks": { "label": "Check for Custom Node Updates" }, - "Comfy_Manager_ToggleManagerProgressDialog": { - "label": "Toggle the Custom Nodes Manager Progress Bar" - }, "Comfy_MaskEditor_BrushSize_Decrease": { "label": "Decrease Brush Size in MaskEditor" }, diff --git a/src/locales/en/main.json b/src/locales/en/main.json index 5f5d1a056..58baba37f 100644 --- a/src/locales/en/main.json +++ b/src/locales/en/main.json @@ -1149,7 +1149,6 @@ "Manager Menu (Legacy)": "Manager Menu (Legacy)", "Install Missing Custom Nodes": "Install Missing Custom Nodes", "Check for Custom Node Updates": "Check for Custom Node Updates", - "Toggle the Custom Nodes Manager Progress Bar": "Toggle the Custom Nodes Manager Progress Bar", "Decrease Brush Size in MaskEditor": "Decrease Brush Size in MaskEditor", "Increase Brush Size in MaskEditor": "Increase Brush Size in MaskEditor", "Open Color Picker in MaskEditor": "Open Color Picker in MaskEditor", @@ -1517,6 +1516,7 @@ "HOOK_KEYFRAMES": "HOOK_KEYFRAMES", "HOOKS": "HOOKS", "IMAGE": "IMAGE", + "IMAGECOMPARE": "IMAGECOMPARE", "INT": "INT", "LATENT": "LATENT", "LATENT_OPERATION": "LATENT_OPERATION", diff --git a/src/locales/en/nodeDefs.json b/src/locales/en/nodeDefs.json index 936547f7d..d613c575e 100644 --- a/src/locales/en/nodeDefs.json +++ b/src/locales/en/nodeDefs.json @@ -3876,6 +3876,21 @@ } } }, + "ImageCompare": { + "display_name": "Image Compare", + "description": "Compares two images side by side with a slider.", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "image_a" + }, + "image_b": { + "name": "image_b" + } + } + }, "ImageCompositeMasked": { "display_name": "ImageCompositeMasked", "inputs": { @@ -4383,6 +4398,24 @@ } } }, + "JoinAudioChannels": { + "display_name": "Join Audio Channels", + "description": "Joins left and right mono audio channels into a stereo audio.", + "inputs": { + "audio_left": { + "name": "audio_left" + }, + "audio_right": { + "name": "audio_right" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "Join Image with Alpha", "inputs": { @@ -14321,6 +14354,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "display_name": "Vidu2 Image-to-Video Generation", + "description": "Generate a video from an image and an optional prompt.", + "inputs": { + "model": { + "name": "model" + }, + "image": { + "name": "image", + "tooltip": "An image to be used as the start frame of the generated video." + }, + "prompt": { + "name": "prompt", + "tooltip": "An optional text prompt for video generation (max 2000 characters)." + }, + "duration": { + "name": "duration" + }, + "seed": { + "name": "seed" + }, + "resolution": { + "name": "resolution" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "The movement amplitude of objects in the frame." + }, + "control_after_generate": { + "name": "control after generate" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "display_name": "Vidu2 Reference-to-Video Generation", + "description": "Generate a video from multiple reference images and a prompt.", + "inputs": { + "model": { + "name": "model" + }, + "subjects": { + "name": "subjects", + "tooltip": "For each subject, provide up to 3 reference images (7 images total across all subjects). Reference them in prompts via @subject{subject_id}." + }, + "prompt": { + "name": "prompt", + "tooltip": "When enabled, the video will include generated speech and background music based on the prompt." + }, + "audio": { + "name": "audio", + "tooltip": "When enabled video will contain generated speech and background music based on the prompt." + }, + "duration": { + "name": "duration" + }, + "seed": { + "name": "seed" + }, + "aspect_ratio": { + "name": "aspect_ratio" + }, + "resolution": { + "name": "resolution" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "The movement amplitude of objects in the frame." + }, + "control_after_generate": { + "name": "control after generate" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "display_name": "Vidu2 Start/End Frame-to-Video Generation", + "description": "Generate a video from a start frame, an end frame, and a prompt.", + "inputs": { + "model": { + "name": "model" + }, + "first_frame": { + "name": "first_frame" + }, + "end_frame": { + "name": "end_frame" + }, + "prompt": { + "name": "prompt", + "tooltip": "Prompt description (max 2000 characters)." + }, + "duration": { + "name": "duration" + }, + "seed": { + "name": "seed" + }, + "resolution": { + "name": "resolution" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "The movement amplitude of objects in the frame." + }, + "control_after_generate": { + "name": "control after generate" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "display_name": "Vidu2 Text-to-Video Generation", + "description": "Generate video from a text prompt", + "inputs": { + "model": { + "name": "model" + }, + "prompt": { + "name": "prompt", + "tooltip": "A textual description for video generation, with a maximum length of 2000 characters." + }, + "duration": { + "name": "duration" + }, + "seed": { + "name": "seed" + }, + "aspect_ratio": { + "name": "aspect_ratio" + }, + "resolution": { + "name": "resolution" + }, + "background_music": { + "name": "background_music", + "tooltip": "Whether to add background music to the generated video." + }, + "control_after_generate": { + "name": "control after generate" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "display_name": "Vidu Image To Video Generation", "description": "Generate video from image and optional prompt", @@ -14365,7 +14558,7 @@ }, "ViduReferenceVideoNode": { "display_name": "Vidu Reference To Video Generation", - "description": "Generate video from multiple images and prompt", + "description": "Generate video from multiple images and a prompt", "inputs": { "model": { "name": "model", @@ -14457,7 +14650,7 @@ }, "ViduTextToVideoNode": { "display_name": "Vidu Text To Video Generation", - "description": "Generate video from text prompt", + "description": "Generate video from a text prompt", "inputs": { "model": { "name": "model", diff --git a/src/locales/es/main.json b/src/locales/es/main.json index a73fbbeb6..456e154b9 100644 --- a/src/locales/es/main.json +++ b/src/locales/es/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "Agregar más créditos", "addMoreCreditsToRun": "Agrega más créditos para ejecutar", + "amountToPayLabel": "Cantidad a pagar en dólares", "buy": "Comprar", + "buyCredits": "Continuar al pago", "buyNow": "Comprar ahora", + "contactUs": "Contáctanos", "creditsDescription": "Los créditos se utilizan para ejecutar flujos de trabajo o nodos de socios.", + "creditsPerDollar": "créditos por dólar", + "creditsToReceiveLabel": "Créditos a recibir", "howManyCredits": "¿Cuántos créditos te gustaría agregar?", "insufficientMessage": "No tienes suficientes créditos para ejecutar este flujo de trabajo.", "insufficientTitle": "Créditos insuficientes", "insufficientWorkflowMessage": "No tienes suficientes créditos para ejecutar este flujo de trabajo.", + "maxAllowed": "Máximo {credits} créditos.", "maxAmount": "(Máx. $1,000 USD)", + "maximumAmount": "Máximo ${amount}.", + "minRequired": "Mínimo {credits} créditos", + "minimumPurchase": "Mínimo ${amount} ({credits} créditos)", + "needMore": "¿Necesitas más?", "purchaseError": "Compra fallida", "purchaseErrorDetail": "No se pudo comprar créditos: {error}", "quickPurchase": "Compra rápida", "seeDetails": "Ver detalles", + "selectAmount": "Seleccionar cantidad", "templateNote": "*Generado con la plantilla Wan Fun Control", "topUp": "Recargar", "unknownError": "Ocurrió un error desconocido", - "videosEstimate": "~{count} videos" + "usdAmount": "${amount}", + "videosEstimate": "~{count} videos", + "viewPricing": "Ver detalles de precios", + "youGet": "Créditos", + "youPay": "Cantidad (USD)" }, "unified": { "message": "Los créditos han sido unificados", @@ -536,6 +551,7 @@ "HOOKS": "GANCHOS", "HOOK_KEYFRAMES": "GANCHO_FOTOGRAMAS_CLAVE", "IMAGE": "IMAGEN", + "IMAGECOMPARE": "COMPARARIMÁGENES", "INT": "ENTERO", "LATENT": "LATENTE", "LATENT_OPERATION": "OPERACIÓN_LATENTE", @@ -680,6 +696,7 @@ "customBackground": "Fondo personalizado", "customize": "Personalizar", "customizeFolder": "Personalizar carpeta", + "decrement": "Disminuir", "defaultBanner": "banner predeterminado", "delete": "Eliminar", "deleteAudioFile": "Eliminar archivo de audio", @@ -738,6 +755,7 @@ "imageUrl": "URL de la imagen", "import": "Importar", "inProgress": "En progreso", + "increment": "Incrementar", "info": "Información del Nodo", "insert": "Insertar", "install": "Instalar", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} recurso(s) eliminado(s) exitosamente", "deleteSelected": "Eliminar", + "deleteSelectedAll": "Eliminar todo", "deselectAll": "Deseleccionar todo", "downloadSelected": "Descargar", + "downloadSelectedAll": "Descargar todo", "downloadStarted": "Descargando {count} archivos...", "downloadsStarted": "Se inició la descarga de {count} archivo(s)", "failedToDeleteAssets": "Error al eliminar los recursos seleccionados", + "multipleSelectedAssets": "Varios recursos seleccionados", "partialDeleteSuccess": "{succeeded} eliminados correctamente, {failed} fallidos", "selectedCount": "Recursos seleccionados: {count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "Alternar tema (Oscuro/Claro)", "Toggle View Controls Bottom Panel": "Alternar panel inferior de controles de vista", "Toggle promotion of hovered widget": "Alternar promoción del widget sobre el que se pasa el cursor", - "Toggle the Custom Nodes Manager Progress Bar": "Alternar la Barra de Progreso del Administrador de Nodos Personalizados", "Undo": "Deshacer", "Ungroup selected group nodes": "Desagrupar nodos de grupo seleccionados", "Unload Models": "Descargar modelos", diff --git a/src/locales/es/nodeDefs.json b/src/locales/es/nodeDefs.json index 571ec55ef..e362c13c4 100644 --- a/src/locales/es/nodeDefs.json +++ b/src/locales/es/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "Compara dos imágenes una al lado de la otra con un control deslizante.", + "display_name": "Comparar Imágenes", + "inputs": { + "compare_view": { + "name": "vista_comparar" + }, + "image_a": { + "name": "imagen_a" + }, + "image_b": { + "name": "imagen_b" + } + } + }, "ImageCompositeMasked": { "display_name": "ImageCompositeMasked", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "Une los canales de audio mono izquierdo y derecho en un audio estéreo.", + "display_name": "Unir Canales de Audio", + "inputs": { + "audio_left": { + "name": "audio_izquierdo" + }, + "audio_right": { + "name": "audio_derecho" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "Unir Imagen con Alfa", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "Genera un video a partir de una imagen y un prompt opcional.", + "display_name": "Vidu2 Generación de Imagen a Video", + "inputs": { + "control_after_generate": { + "name": "controlar después de generar" + }, + "duration": { + "name": "duración" + }, + "image": { + "name": "imagen", + "tooltip": "Una imagen que se usará como el primer fotograma del video generado." + }, + "model": { + "name": "modelo" + }, + "movement_amplitude": { + "name": "amplitud_de_movimiento", + "tooltip": "La amplitud de movimiento de los objetos en el fotograma." + }, + "prompt": { + "name": "prompt", + "tooltip": "Un prompt de texto opcional para la generación de video (máx. 2000 caracteres)." + }, + "resolution": { + "name": "resolución" + }, + "seed": { + "name": "semilla" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "Genera un video a partir de múltiples imágenes de referencia y un prompt.", + "display_name": "Vidu2 Generación de Video con Referencias", + "inputs": { + "aspect_ratio": { + "name": "relación_de_aspecto" + }, + "audio": { + "name": "audio", + "tooltip": "Si está habilitado, el video contendrá voz generada y música de fondo basada en el prompt." + }, + "control_after_generate": { + "name": "controlar después de generar" + }, + "duration": { + "name": "duración" + }, + "model": { + "name": "modelo" + }, + "movement_amplitude": { + "name": "amplitud_de_movimiento", + "tooltip": "La amplitud de movimiento de los objetos en el fotograma." + }, + "prompt": { + "name": "prompt", + "tooltip": "Si está habilitado, el video incluirá voz generada y música de fondo basada en el prompt." + }, + "resolution": { + "name": "resolución" + }, + "seed": { + "name": "semilla" + }, + "subjects": { + "name": "sujetos", + "tooltip": "Para cada sujeto, proporciona hasta 3 imágenes de referencia (7 imágenes en total entre todos los sujetos). Haz referencia a ellos en los prompts usando @subject{subject_id}." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "Genera un video a partir de un fotograma inicial, un fotograma final y un prompt.", + "display_name": "Generación de video de Vidu2 desde fotogramas inicial/final", + "inputs": { + "control_after_generate": { + "name": "controlar después de generar" + }, + "duration": { + "name": "duración" + }, + "end_frame": { + "name": "fotograma_final" + }, + "first_frame": { + "name": "fotograma_inicial" + }, + "model": { + "name": "modelo" + }, + "movement_amplitude": { + "name": "amplitud_de_movimiento", + "tooltip": "La amplitud de movimiento de los objetos en el fotograma." + }, + "prompt": { + "name": "prompt", + "tooltip": "Descripción del prompt (máximo 2000 caracteres)." + }, + "resolution": { + "name": "resolución" + }, + "seed": { + "name": "semilla" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "Genera un video a partir de un prompt de texto", + "display_name": "Generación de video de Vidu2 desde texto", + "inputs": { + "aspect_ratio": { + "name": "relación_de_aspecto" + }, + "background_music": { + "name": "música_de_fondo", + "tooltip": "Indica si se añade música de fondo al video generado." + }, + "control_after_generate": { + "name": "controlar después de generar" + }, + "duration": { + "name": "duración" + }, + "model": { + "name": "modelo" + }, + "prompt": { + "name": "prompt", + "tooltip": "Una descripción textual para la generación de video, con una longitud máxima de 2000 caracteres." + }, + "resolution": { + "name": "resolución" + }, + "seed": { + "name": "semilla" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "Generar video a partir de imagen y texto opcional", "display_name": "Generación de Video a partir de Imagen Vidu", diff --git a/src/locales/fr/main.json b/src/locales/fr/main.json index ae3df72c8..cbe54e5b6 100644 --- a/src/locales/fr/main.json +++ b/src/locales/fr/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "Ajouter des crédits", "addMoreCreditsToRun": "Ajouter des crédits pour exécuter", + "amountToPayLabel": "Montant à payer en dollars", "buy": "Acheter", + "buyCredits": "Continuer vers le paiement", "buyNow": "Acheter maintenant", + "contactUs": "Contactez-nous", "creditsDescription": "Les crédits sont utilisés pour exécuter des workflows ou des nœuds partenaires.", + "creditsPerDollar": "crédits par dollar", + "creditsToReceiveLabel": "Crédits à recevoir", "howManyCredits": "Combien de crédits souhaitez-vous ajouter ?", "insufficientMessage": "Vous n'avez pas assez de crédits pour exécuter ce workflow.", "insufficientTitle": "Crédits insuffisants", "insufficientWorkflowMessage": "Vous n'avez pas assez de crédits pour exécuter ce workflow.", + "maxAllowed": "Maximum {credits} crédits.", "maxAmount": "(Max. 1 000 $ US)", + "maximumAmount": "Maximum ${amount}.", + "minRequired": "Minimum {credits} crédits", + "minimumPurchase": "Achat minimum de ${amount} ({credits} crédits)", + "needMore": "Besoin de plus ?", "purchaseError": "Échec de l'achat", "purchaseErrorDetail": "Échec de l'achat de crédits : {error}", "quickPurchase": "Achat rapide", "seeDetails": "Voir les détails", + "selectAmount": "Sélectionner le montant", "templateNote": "*Généré avec le modèle Wan Fun Control", "topUp": "Recharger", "unknownError": "Une erreur inconnue est survenue", - "videosEstimate": "~{count} vidéos" + "usdAmount": "${amount}", + "videosEstimate": "~{count} vidéos", + "viewPricing": "Voir les détails des tarifs", + "youGet": "Crédits", + "youPay": "Montant (USD)" }, "unified": { "message": "Les crédits ont été unifiés", @@ -536,6 +551,7 @@ "HOOKS": "CROCHETS", "HOOK_KEYFRAMES": "CLEFS_DE_CROCHET", "IMAGE": "IMAGE", + "IMAGECOMPARE": "COMPARAISON_IMAGE", "INT": "ENTIER", "LATENT": "LATENT", "LATENT_OPERATION": "OPERATION_LATENTE", @@ -680,6 +696,7 @@ "customBackground": "Arrière-plan personnalisé", "customize": "Personnaliser", "customizeFolder": "Personnaliser le dossier", + "decrement": "Diminuer", "defaultBanner": "bannière par défaut", "delete": "Supprimer", "deleteAudioFile": "Supprimer le fichier audio", @@ -738,6 +755,7 @@ "imageUrl": "URL de l'image", "import": "Importer", "inProgress": "En cours", + "increment": "Augmenter", "info": "Informations du nœud", "insert": "Insérer", "install": "Installer", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} élément(s) supprimé(s) avec succès", "deleteSelected": "Supprimer", + "deleteSelectedAll": "Tout supprimer", "deselectAll": "Tout désélectionner", "downloadSelected": "Télécharger", + "downloadSelectedAll": "Tout télécharger", "downloadStarted": "Téléchargement de {count} fichier(s)...", "downloadsStarted": "Début du téléchargement de {count} fichier(s)", "failedToDeleteAssets": "Échec de la suppression des éléments sélectionnés", + "multipleSelectedAssets": "Plusieurs ressources sélectionnées", "partialDeleteSuccess": "{succeeded} supprimé(s) avec succès, {failed} échec(s)", "selectedCount": "Éléments sélectionnés : {count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "Basculer le thème (Sombre/Clair)", "Toggle View Controls Bottom Panel": "Basculer le panneau inférieur des contrôles d’affichage", "Toggle promotion of hovered widget": "Basculer la promotion du widget survolé", - "Toggle the Custom Nodes Manager Progress Bar": "Basculer la barre de progression du gestionnaire de nœuds personnalisés", "Undo": "Annuler", "Ungroup selected group nodes": "Dégrouper les nœuds de groupe sélectionnés", "Unload Models": "Décharger les modèles", diff --git a/src/locales/fr/nodeDefs.json b/src/locales/fr/nodeDefs.json index e159ceb68..53e81fef9 100644 --- a/src/locales/fr/nodeDefs.json +++ b/src/locales/fr/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "Compare deux images côte à côte avec un curseur.", + "display_name": "Comparaison d’images", + "inputs": { + "compare_view": { + "name": "vue de comparaison" + }, + "image_a": { + "name": "image A" + }, + "image_b": { + "name": "image B" + } + } + }, "ImageCompositeMasked": { "display_name": "ImageCompositeMasked", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "Fusionne les canaux audio mono gauche et droit en un audio stéréo.", + "display_name": "Fusionner les canaux audio", + "inputs": { + "audio_left": { + "name": "audio gauche" + }, + "audio_right": { + "name": "audio droit" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "Joindre Image avec Alpha", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "Génère une vidéo à partir d’une image et d’une invite optionnelle.", + "display_name": "Génération d’image vers vidéo Vidu2", + "inputs": { + "control_after_generate": { + "name": "contrôle après génération" + }, + "duration": { + "name": "durée" + }, + "image": { + "name": "image", + "tooltip": "Une image à utiliser comme première image de la vidéo générée." + }, + "model": { + "name": "modèle" + }, + "movement_amplitude": { + "name": "amplitude du mouvement", + "tooltip": "L’amplitude du mouvement des objets dans l’image." + }, + "prompt": { + "name": "invite", + "tooltip": "Une invite textuelle optionnelle pour la génération vidéo (max 2000 caractères)." + }, + "resolution": { + "name": "résolution" + }, + "seed": { + "name": "graine" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "Génère une vidéo à partir de plusieurs images de référence et d’une invite.", + "display_name": "Génération de vidéo à partir de références Vidu2", + "inputs": { + "aspect_ratio": { + "name": "rapport d’aspect" + }, + "audio": { + "name": "audio", + "tooltip": "Si activé, la vidéo contiendra une voix générée et une musique de fond basée sur l’invite." + }, + "control_after_generate": { + "name": "contrôle après génération" + }, + "duration": { + "name": "durée" + }, + "model": { + "name": "modèle" + }, + "movement_amplitude": { + "name": "amplitude du mouvement", + "tooltip": "L’amplitude du mouvement des objets dans l’image." + }, + "prompt": { + "name": "invite", + "tooltip": "Si activé, la vidéo inclura une voix générée et une musique de fond basée sur l’invite." + }, + "resolution": { + "name": "résolution" + }, + "seed": { + "name": "graine" + }, + "subjects": { + "name": "sujets", + "tooltip": "Pour chaque sujet, fournissez jusqu’à 3 images de référence (7 images au total pour tous les sujets). Référencez-les dans les invites via @subject{subject_id}." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "Générez une vidéo à partir d'une image de départ, d'une image de fin et d'une invite.", + "display_name": "Génération vidéo Vidu2 à partir d'une image de début/fin", + "inputs": { + "control_after_generate": { + "name": "contrôle après génération" + }, + "duration": { + "name": "durée" + }, + "end_frame": { + "name": "image de fin" + }, + "first_frame": { + "name": "image de début" + }, + "model": { + "name": "modèle" + }, + "movement_amplitude": { + "name": "amplitude du mouvement", + "tooltip": "L'amplitude du mouvement des objets dans l'image." + }, + "prompt": { + "name": "invite", + "tooltip": "Description de l'invite (2000 caractères maximum)." + }, + "resolution": { + "name": "résolution" + }, + "seed": { + "name": "graine" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "Générez une vidéo à partir d'une invite textuelle", + "display_name": "Génération vidéo Vidu2 à partir d'un texte", + "inputs": { + "aspect_ratio": { + "name": "rapport d'aspect" + }, + "background_music": { + "name": "musique de fond", + "tooltip": "Ajouter ou non une musique de fond à la vidéo générée." + }, + "control_after_generate": { + "name": "contrôle après génération" + }, + "duration": { + "name": "durée" + }, + "model": { + "name": "modèle" + }, + "prompt": { + "name": "invite", + "tooltip": "Une description textuelle pour la génération vidéo, longueur maximale de 2000 caractères." + }, + "resolution": { + "name": "résolution" + }, + "seed": { + "name": "graine" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "Générer une vidéo à partir d'une image et d'un éventuel prompt", "display_name": "Génération vidéo Vidu à partir d'image", diff --git a/src/locales/ja/main.json b/src/locales/ja/main.json index 1132cc042..866faca84 100644 --- a/src/locales/ja/main.json +++ b/src/locales/ja/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "クレジットを追加", "addMoreCreditsToRun": "実行するためにクレジットを追加", + "amountToPayLabel": "支払う金額(ドル)", "buy": "購入", + "buyCredits": "支払いに進む", "buyNow": "今すぐ購入", + "contactUs": "お問い合わせ", "creditsDescription": "クレジットはワークフローやパートナーノードの実行に使用されます。", + "creditsPerDollar": "1ドルあたりのクレジット数", + "creditsToReceiveLabel": "受け取るクレジット数", "howManyCredits": "いくつクレジットを追加しますか?", "insufficientMessage": "このワークフローを実行するのに十分なクレジットがありません。", "insufficientTitle": "クレジット不足", "insufficientWorkflowMessage": "このワークフローを実行するためのクレジットが足りません。", + "maxAllowed": "最大{credits}クレジットまで。", "maxAmount": "(最大 $1,000 USD)", + "maximumAmount": "最大:${amount}", + "minRequired": "最低{credits}クレジット", + "minimumPurchase": "最低購入額:${amount}({credits}クレジット)", + "needMore": "さらに必要ですか?", "purchaseError": "購入に失敗しました", "purchaseErrorDetail": "クレジットの購入に失敗しました: {error}", "quickPurchase": "クイック購入", "seeDetails": "詳細を見る", + "selectAmount": "金額を選択", "templateNote": "*Wan Fun Control テンプレートで生成", "topUp": "チャージ", "unknownError": "不明なエラーが発生しました", - "videosEstimate": "約{count}本の動画" + "usdAmount": "${amount}", + "videosEstimate": "約{count}本の動画", + "viewPricing": "料金詳細を見る", + "youGet": "クレジット", + "youPay": "支払金額(USD)" }, "unified": { "message": "クレジットが統合されました", @@ -536,6 +551,7 @@ "HOOKS": "フック", "HOOK_KEYFRAMES": "フックキーフレーム", "IMAGE": "画像", + "IMAGECOMPARE": "画像比較", "INT": "整数", "LATENT": "潜在", "LATENT_OPERATION": "潜在操作", @@ -680,6 +696,7 @@ "customBackground": "カスタム背景", "customize": "カスタマイズ", "customizeFolder": "フォルダーをカスタマイズ", + "decrement": "減少", "defaultBanner": "デフォルトバナー", "delete": "削除", "deleteAudioFile": "オーディオファイルを削除", @@ -738,6 +755,7 @@ "imageUrl": "画像URL", "import": "インポート", "inProgress": "進行中", + "increment": "増加", "info": "ノード情報", "insert": "挿入", "install": "インストール", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} 個のアセットが正常に削除されました", "deleteSelected": "削除", + "deleteSelectedAll": "すべて削除", "deselectAll": "すべて選択解除", "downloadSelected": "ダウンロード", + "downloadSelectedAll": "すべてダウンロード", "downloadStarted": "{count} ファイルをダウンロード中...", "downloadsStarted": "{count} ファイルのダウンロードを開始しました", "failedToDeleteAssets": "選択したアセットの削除に失敗しました", + "multipleSelectedAssets": "複数のアセットが選択されています", "partialDeleteSuccess": "{succeeded}件の削除に成功、{failed}件の削除に失敗しました", "selectedCount": "選択されたアセット: {count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "テーマを切り替え(ダーク/ライト)", "Toggle View Controls Bottom Panel": "ビューコントロール下部パネルの切り替え", "Toggle promotion of hovered widget": "ホバー中のウィジェットの昇格を切り替え", - "Toggle the Custom Nodes Manager Progress Bar": "カスタムノードマネージャーの進行状況バーを切り替え", "Undo": "元に戻す", "Ungroup selected group nodes": "選択したグループノードのグループ解除", "Unload Models": "モデルのアンロード", diff --git a/src/locales/ja/nodeDefs.json b/src/locales/ja/nodeDefs.json index e53c0a147..93e31b47c 100644 --- a/src/locales/ja/nodeDefs.json +++ b/src/locales/ja/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "2枚の画像をスライダーで並べて比較します。", + "display_name": "画像比較", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "image_a" + }, + "image_b": { + "name": "image_b" + } + } + }, "ImageCompositeMasked": { "display_name": "マスクされた画像合成", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "左右のモノラルオーディオチャンネルをステレオオーディオに結合します。", + "display_name": "オーディオチャンネル結合", + "inputs": { + "audio_left": { + "name": "audio_left" + }, + "audio_right": { + "name": "audio_right" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "アルファで画像を結合", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "画像とオプションのプロンプトから動画を生成します。", + "display_name": "Vidu2 画像から動画生成", + "inputs": { + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "image": { + "name": "image", + "tooltip": "生成される動画の開始フレームとして使用する画像です。" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "フレーム内のオブジェクトの動きの振幅。" + }, + "prompt": { + "name": "prompt", + "tooltip": "動画生成用のオプションテキストプロンプト(最大2000文字)。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "複数の参照画像とプロンプトから動画を生成します。", + "display_name": "Vidu2 参照画像から動画生成", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "audio": { + "name": "audio", + "tooltip": "有効にすると、プロンプトに基づいた音声とBGMが動画に含まれます。" + }, + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "フレーム内のオブジェクトの動きの振幅。" + }, + "prompt": { + "name": "prompt", + "tooltip": "有効にすると、プロンプトに基づいた音声とBGMが動画に含まれます。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + }, + "subjects": { + "name": "subjects", + "tooltip": "各被写体ごとに最大3枚の参照画像を指定してください(全被写体で合計7枚まで)。プロンプト内で@subject{subject_id}で参照できます。" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "開始フレーム、終了フレーム、およびプロンプトから動画を生成します。", + "display_name": "Vidu2 開始/終了フレームからの動画生成", + "inputs": { + "control_after_generate": { + "name": "生成後に制御" + }, + "duration": { + "name": "duration" + }, + "end_frame": { + "name": "end_frame" + }, + "first_frame": { + "name": "first_frame" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "フレーム内のオブジェクトの動きの振幅。" + }, + "prompt": { + "name": "prompt", + "tooltip": "プロンプトの説明(最大2000文字)。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "テキストプロンプトから動画を生成します", + "display_name": "Vidu2 テキストから動画生成", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "background_music": { + "name": "background_music", + "tooltip": "生成された動画にBGMを追加するかどうか。" + }, + "control_after_generate": { + "name": "生成後に制御" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "prompt": { + "name": "prompt", + "tooltip": "動画生成用のテキスト説明(最大2000文字)。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "画像とオプションのプロンプトからビデオを生成", "display_name": "Vidu 画像からビデオ生成", diff --git a/src/locales/ko/main.json b/src/locales/ko/main.json index 792797ef2..6010adecb 100644 --- a/src/locales/ko/main.json +++ b/src/locales/ko/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "크레딧 추가하기", "addMoreCreditsToRun": "실행을 위해 크레딧 추가하기", + "amountToPayLabel": "결제할 금액(달러)", "buy": "구매", + "buyCredits": "결제 계속하기", "buyNow": "지금 구매", + "contactUs": "문의하기", "creditsDescription": "크레딧은 워크플로우 또는 파트너 노드 실행에 사용됩니다.", + "creditsPerDollar": "달러당 크레딧", + "creditsToReceiveLabel": "받을 크레딧", "howManyCredits": "얼마나 많은 크레딧을 추가하시겠습니까?", "insufficientMessage": "이 워크플로를 실행하기에 크레딧이 부족합니다.", "insufficientTitle": "크레딧 부족", "insufficientWorkflowMessage": "이 워크플로우를 실행할 크레딧이 부족합니다.", + "maxAllowed": "최대 {credits} 크레딧", "maxAmount": "(최대 $1,000 USD)", + "maximumAmount": "최대 ${amount}", + "minRequired": "최소 {credits} 크레딧", + "minimumPurchase": "최소 ${amount} ({credits} 크레딧)", + "needMore": "더 필요하신가요?", "purchaseError": "구매 실패", "purchaseErrorDetail": "크레딧 구매 실패: {error}", "quickPurchase": "빠른 구매", "seeDetails": "자세히 보기", + "selectAmount": "금액 선택", "templateNote": "*Wan Fun Control 템플릿으로 생성됨", "topUp": "충전하기", "unknownError": "알 수 없는 오류가 발생했습니다", - "videosEstimate": "~{count}개 비디오" + "usdAmount": "${amount}", + "videosEstimate": "~{count}개 비디오", + "viewPricing": "요금 세부정보 보기", + "youGet": "크레딧", + "youPay": "결제 금액 (USD)" }, "unified": { "message": "크레딧이 통합되었습니다", @@ -536,6 +551,7 @@ "HOOKS": "후크", "HOOK_KEYFRAMES": "후크 키프레임", "IMAGE": "이미지", + "IMAGECOMPARE": "이미지 비교", "INT": "정수", "LATENT": "잠재 데이터", "LATENT_OPERATION": "잠재 연산", @@ -680,6 +696,7 @@ "customBackground": "맞춤 배경", "customize": "사용자 정의", "customizeFolder": "폴더 사용자 정의", + "decrement": "감소", "defaultBanner": "기준 배너", "delete": "삭제", "deleteAudioFile": "오디오 파일 삭제", @@ -738,6 +755,7 @@ "imageUrl": "이미지 URL", "import": "가져오기", "inProgress": "진행 중", + "increment": "증가", "info": "노드 정보", "insert": "삽입", "install": "설치", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count}개 에셋이 성공적으로 삭제되었습니다", "deleteSelected": "삭제", + "deleteSelectedAll": "전체 삭제", "deselectAll": "모두 선택 해제", "downloadSelected": "다운로드", + "downloadSelectedAll": "전체 다운로드", "downloadStarted": "{count}개 파일 다운로드 중...", "downloadsStarted": "{count}개 파일 다운로드 시작됨", "failedToDeleteAssets": "선택한 에셋 삭제 실패", + "multipleSelectedAssets": "여러 자산이 선택됨", "partialDeleteSuccess": "{succeeded}개가 성공적으로 삭제되었고, {failed}개가 실패했습니다", "selectedCount": "선택된 에셋: {count}개" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "테마 전환 (어두운/밝은)", "Toggle View Controls Bottom Panel": "뷰 컨트롤 하단 패널 전환", "Toggle promotion of hovered widget": "호버된 위젯 승격 전환", - "Toggle the Custom Nodes Manager Progress Bar": "커스텀 노드 매니저 진행률 표시줄 전환", "Undo": "실행 취소", "Ungroup selected group nodes": "선택한 그룹 노드 그룹 해제", "Unload Models": "모델 언로드", diff --git a/src/locales/ko/nodeDefs.json b/src/locales/ko/nodeDefs.json index 0f2c8463c..ad2437ae2 100644 --- a/src/locales/ko/nodeDefs.json +++ b/src/locales/ko/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "두 이미지를 슬라이더로 나란히 비교합니다.", + "display_name": "이미지 비교", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "image_a" + }, + "image_b": { + "name": "image_b" + } + } + }, "ImageCompositeMasked": { "display_name": "마스크된 이미지 합성", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "좌우 모노 오디오 채널을 스테레오 오디오로 합칩니다.", + "display_name": "오디오 채널 합치기", + "inputs": { + "audio_left": { + "name": "audio_left" + }, + "audio_right": { + "name": "audio_right" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "알파와 함께 이미지 결합", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "이미지와 선택적 프롬프트로부터 비디오를 생성합니다.", + "display_name": "Vidu2 이미지-비디오 생성", + "inputs": { + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "image": { + "name": "image", + "tooltip": "생성된 비디오의 시작 프레임으로 사용할 이미지입니다." + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "프레임 내 객체의 움직임 진폭입니다." + }, + "prompt": { + "name": "prompt", + "tooltip": "비디오 생성을 위한 선택적 텍스트 프롬프트 (최대 2000자)." + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "여러 참조 이미지와 프롬프트로부터 비디오를 생성합니다.", + "display_name": "Vidu2 참조-비디오 생성", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "audio": { + "name": "audio", + "tooltip": "활성화 시, 프롬프트를 기반으로 생성된 음성과 배경 음악이 비디오에 포함됩니다." + }, + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "프레임 내 객체의 움직임 진폭입니다." + }, + "prompt": { + "name": "prompt", + "tooltip": "활성화 시, 프롬프트를 기반으로 생성된 음성과 배경 음악이 비디오에 포함됩니다." + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + }, + "subjects": { + "name": "subjects", + "tooltip": "각 subject마다 최대 3개의 참조 이미지를 제공합니다 (전체 subject 합계 7장). 프롬프트에서 @subject{subject_id}로 참조하세요." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "시작 프레임, 종료 프레임, 프롬프트로부터 비디오를 생성합니다.", + "display_name": "Vidu2 시작/종료 프레임-투-비디오 생성", + "inputs": { + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "end_frame": { + "name": "end_frame" + }, + "first_frame": { + "name": "first_frame" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "프레임 내 객체의 움직임 진폭입니다." + }, + "prompt": { + "name": "prompt", + "tooltip": "프롬프트 설명 (최대 2000자)." + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "텍스트 프롬프트로부터 비디오를 생성합니다.", + "display_name": "Vidu2 텍스트-투-비디오 생성", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "background_music": { + "name": "background_music", + "tooltip": "생성된 비디오에 배경 음악을 추가할지 여부입니다." + }, + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "prompt": { + "name": "prompt", + "tooltip": "비디오 생성을 위한 텍스트 설명 (최대 2000자)." + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "이미지와 선택적 프롬프트로부터 비디오 생성", "display_name": "Vidu 이미지 비디오 생성", diff --git a/src/locales/pt-BR/main.json b/src/locales/pt-BR/main.json index 0f1ca6c59..84ec5c610 100644 --- a/src/locales/pt-BR/main.json +++ b/src/locales/pt-BR/main.json @@ -237,22 +237,6 @@ "title": "Criar uma conta" } }, - "authTimeout": { - "causes": [ - "Firewall corporativo ou proxy bloqueando serviços de autenticação", - "Restrições de VPN ou rede", - "Extensões do navegador interferindo nas requisições", - "Limitações de rede regionais", - "Tente outro navegador ou rede" - ], - "helpText": "Precisa de ajuda? Contate", - "message": "Estamos tendo dificuldades para conectar ao ComfyUI Cloud. Isso pode ser devido a uma conexão lenta ou um problema temporário no serviço.", - "restart": "Sair e tentar novamente", - "supportLink": "suporte", - "technicalDetails": "Detalhes técnicos", - "title": "Conexão demorando demais", - "troubleshooting": "Causas comuns:" - }, "breadcrumbsMenu": { "clearWorkflow": "Limpar Fluxo de Trabalho", "deleteBlueprint": "Excluir Blueprint", @@ -261,7 +245,6 @@ "enterNewName": "Digite um novo nome", "missingNodesWarning": "O fluxo de trabalho contém nós não suportados (destacados em vermelho)." }, - "checkingStatus": "Verificando o status da sua conta...", "clipboard": { "errorMessage": "Falha ao copiar para a área de transferência", "errorNotSupported": "API de área de transferência não suportada no seu navegador", @@ -279,6 +262,49 @@ "cloudForgotPassword_sendResetLink": "Enviar link de redefinição", "cloudForgotPassword_title": "Esqueceu a senha", "cloudOnboarding": { + "authTimeout": { + "causes": [ + "Firewall corporativo ou proxy bloqueando serviços de autenticação", + "Restrições de VPN ou rede", + "Extensões do navegador interferindo nas requisições", + "Limitações de rede regionais", + "Tente outro navegador ou rede" + ], + "helpText": "Precisa de ajuda? Contate", + "message": "Estamos com dificuldades para conectar ao ComfyUI Cloud. Isso pode ser devido a uma conexão lenta ou problema temporário no serviço.", + "restart": "Sair e tentar novamente", + "supportLink": "suporte", + "technicalDetails": "Detalhes técnicos", + "title": "Conexão demorando demais", + "troubleshooting": "Causas comuns:" + }, + "checkingStatus": "Verificando o status da sua conta...", + "forgotPassword": { + "backToLogin": "Voltar para login", + "didntReceiveEmail": "Não recebeu o e-mail? Entre em contato conosco em", + "emailLabel": "E-mail", + "emailPlaceholder": "Digite seu e-mail", + "emailRequired": "E-mail é obrigatório", + "instructions": "Digite seu endereço de e-mail e enviaremos um link para redefinir sua senha.", + "passwordResetError": "Falha ao enviar o e-mail de redefinição de senha. Tente novamente.", + "passwordResetSent": "E-mail de redefinição de senha enviado", + "sendResetLink": "Enviar link de redefinição", + "title": "Esqueceu a senha" + }, + "privateBeta": { + "desc": "Faça login para entrar na lista de espera. Vamos avisar quando chegar a sua vez. Já foi notificado? Faça login para começar a usar o Cloud.", + "title": "Cloud está atualmente em beta privado" + }, + "retry": "Tentar novamente", + "retrying": "Tentando novamente...", + "start": { + "desc": "Nenhuma configuração necessária. Funciona em qualquer dispositivo.", + "download": "Baixar ComfyUI", + "explain": "Gere múltiplos resultados de uma vez. Compartilhe fluxos de trabalho com facilidade.", + "learnAboutButton": "Saiba mais sobre o Cloud", + "title": "comece a criar em segundos", + "wantToRun": "Prefere rodar o ComfyUI localmente?" + }, "survey": { "options": { "familiarity": { @@ -462,22 +488,37 @@ "topUp": { "addMoreCredits": "Adicionar mais créditos", "addMoreCreditsToRun": "Adicione mais créditos para executar", + "amountToPayLabel": "Valor a pagar em dólares", "buy": "Comprar", + "buyCredits": "Continuar para o pagamento", "buyNow": "Comprar agora", + "contactUs": "Fale conosco", "creditsDescription": "Os créditos são usados para executar fluxos de trabalho ou nós parceiros.", + "creditsPerDollar": "créditos por dólar", + "creditsToReceiveLabel": "Créditos a receber", "howManyCredits": "Quantos créditos você gostaria de adicionar?", "insufficientMessage": "Você não tem créditos suficientes para executar este fluxo de trabalho.", "insufficientTitle": "Créditos insuficientes", "insufficientWorkflowMessage": "Você não tem créditos suficientes para executar este fluxo de trabalho.", + "maxAllowed": "Máximo de {credits} créditos.", "maxAmount": "(Máx. US$ 1.000)", + "maximumAmount": "Máximo de ${amount}.", + "minRequired": "Mínimo de {credits} créditos", + "minimumPurchase": "Mínimo de ${amount} ({credits} créditos)", + "needMore": "Precisa de mais?", "purchaseError": "Falha na compra", "purchaseErrorDetail": "Falha ao comprar créditos: {error}", "quickPurchase": "Compra rápida", "seeDetails": "Ver detalhes", + "selectAmount": "Selecione o valor", "templateNote": "*Gerado com o template Wan Fun Control", "topUp": "Adicionar créditos", "unknownError": "Ocorreu um erro desconhecido", - "videosEstimate": "~{count} vídeos" + "usdAmount": "${amount}", + "videosEstimate": "~{count} vídeos", + "viewPricing": "Ver detalhes de preços", + "youGet": "Créditos", + "youPay": "Valor (USD)" }, "unified": { "message": "Os créditos foram unificados", @@ -510,6 +551,7 @@ "HOOKS": "GANCHOS", "HOOK_KEYFRAMES": "QUADROS-CHAVE DE GANCHO", "IMAGE": "IMAGEM", + "IMAGECOMPARE": "COMPARAR_IMAGEM", "INT": "INTEIRO", "LATENT": "LATENT", "LATENT_OPERATION": "OPERAÇÃO LATENT", @@ -600,18 +642,6 @@ "noStackTrace": "Nenhum stacktrace disponível", "promptExecutionError": "Falha na execução do prompt" }, - "forgotPassword": { - "backToLogin": "Voltar para login", - "didntReceiveEmail": "Não recebeu o e-mail? Entre em contato conosco em", - "emailLabel": "E-mail", - "emailPlaceholder": "Digite seu e-mail", - "emailRequired": "E-mail é obrigatório", - "instructions": "Digite seu endereço de e-mail e enviaremos um link para redefinir sua senha.", - "passwordResetError": "Falha ao enviar o e-mail de redefinição de senha. Por favor, tente novamente.", - "passwordResetSent": "E-mail de redefinição de senha enviado", - "sendResetLink": "Enviar link de redefinição", - "title": "Esqueceu a Senha" - }, "g": { "1x": "1x", "2x": "2x", @@ -666,6 +696,7 @@ "customBackground": "Plano de fundo personalizado", "customize": "Personalizar", "customizeFolder": "Personalizar pasta", + "decrement": "Diminuir", "defaultBanner": "banner padrão", "delete": "Excluir", "deleteAudioFile": "Excluir arquivo de áudio", @@ -724,6 +755,7 @@ "imageUrl": "URL da imagem", "import": "Importar", "inProgress": "Em andamento", + "increment": "Aumentar", "info": "Informações do nó", "insert": "Inserir", "install": "Instalar", @@ -1349,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} recurso(s) excluído(s) com sucesso", "deleteSelected": "Excluir", + "deleteSelectedAll": "Excluir todos", "deselectAll": "Desmarcar todos", "downloadSelected": "Baixar", + "downloadSelectedAll": "Baixar todos", "downloadStarted": "Baixando {count} arquivos...", "downloadsStarted": "Iniciada a transferência de {count} arquivo(s)", "failedToDeleteAssets": "Falha ao excluir os recursos selecionados", + "multipleSelectedAssets": "Vários ativos selecionados", "partialDeleteSuccess": "{succeeded} excluído(s) com sucesso, {failed} falha(s)", "selectedCount": "Recursos selecionados: {count}" }, @@ -1495,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "Alternar tema (Escuro/Claro)", "Toggle View Controls Bottom Panel": "Alternar painel inferior de controles de visualização", "Toggle promotion of hovered widget": "Alternar promoção do widget destacado", - "Toggle the Custom Nodes Manager Progress Bar": "Alternar barra de progresso do gerenciador de nós personalizados", "Undo": "Desfazer", "Ungroup selected group nodes": "Desagrupar nós de grupo selecionados", "Unload Models": "Descarregar modelos", @@ -1665,10 +1699,6 @@ }, "title": "Seu dispositivo não é suportado" }, - "privateBeta": { - "desc": "Faça login para entrar na lista de espera. Vamos avisar quando chegar a sua vez. Já foi avisado? Faça login para começar a usar a Nuvem.", - "title": "A Nuvem está atualmente em beta privado" - }, "progressToast": { "allDownloadsCompleted": "Todos os downloads concluídos", "downloadingModel": "Baixando modelo...", @@ -1744,8 +1774,6 @@ "update": "Atualizar", "whatsNew": "Veja as novidades" }, - "retry": "Tentar novamente", - "retrying": "Tentando novamente...", "rightSidePanel": { "bypass": "Ignorar", "color": "Cor do nó", @@ -2135,14 +2163,6 @@ }, "workflows": "Workflows" }, - "start": { - "desc": "Nenhuma configuração necessária. Funciona em qualquer dispositivo.", - "download": "Baixar ComfyUI", - "explain": "Gere múltiplos resultados de uma vez. Compartilhe fluxos de trabalho com facilidade.", - "learnAboutButton": "Saiba mais sobre a Nuvem", - "title": "comece a criar em segundos", - "wantToRun": "Prefere rodar o ComfyUI localmente?" - }, "subgraphStore": { "blueprintName": "Nome do subgrafo", "confirmDelete": "Esta ação removerá permanentemente o blueprint da sua biblioteca", diff --git a/src/locales/pt-BR/nodeDefs.json b/src/locales/pt-BR/nodeDefs.json index 38d30dc09..81ae32363 100644 --- a/src/locales/pt-BR/nodeDefs.json +++ b/src/locales/pt-BR/nodeDefs.json @@ -3877,6 +3877,21 @@ } } }, + "ImageCompare": { + "description": "Compara duas imagens lado a lado com um controle deslizante.", + "display_name": "Comparar Imagens", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "imagem_a" + }, + "image_b": { + "name": "imagem_b" + } + } + }, "ImageCompositeMasked": { "display_name": "Composição de Imagem com Máscara", "inputs": { @@ -4384,6 +4399,24 @@ } } }, + "JoinAudioChannels": { + "description": "Une os canais de áudio mono esquerdo e direito em um áudio estéreo.", + "display_name": "Unir Canais de Áudio", + "inputs": { + "audio_left": { + "name": "áudio_esquerdo" + }, + "audio_right": { + "name": "áudio_direito" + } + }, + "outputs": { + "0": { + "name": "áudio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "Unir Imagem com Alfa", "inputs": { @@ -14326,6 +14359,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "Gere um vídeo a partir de uma imagem e um prompt opcional.", + "display_name": "Geração de Vídeo a partir de Imagem Vidu2", + "inputs": { + "control_after_generate": { + "name": "controle após gerar" + }, + "duration": { + "name": "duração" + }, + "image": { + "name": "imagem", + "tooltip": "Uma imagem a ser usada como quadro inicial do vídeo gerado." + }, + "model": { + "name": "modelo" + }, + "movement_amplitude": { + "name": "amplitude_de_movimento", + "tooltip": "A amplitude de movimento dos objetos no quadro." + }, + "prompt": { + "name": "prompt", + "tooltip": "Um prompt de texto opcional para geração de vídeo (máx. 2000 caracteres)." + }, + "resolution": { + "name": "resolução" + }, + "seed": { + "name": "semente" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "Gere um vídeo a partir de múltiplas imagens de referência e um prompt.", + "display_name": "Geração de Vídeo por Referência Vidu2", + "inputs": { + "aspect_ratio": { + "name": "proporção" + }, + "audio": { + "name": "áudio", + "tooltip": "Quando ativado, o vídeo conterá fala gerada e música de fundo com base no prompt." + }, + "control_after_generate": { + "name": "controle após gerar" + }, + "duration": { + "name": "duração" + }, + "model": { + "name": "modelo" + }, + "movement_amplitude": { + "name": "amplitude_de_movimento", + "tooltip": "A amplitude de movimento dos objetos no quadro." + }, + "prompt": { + "name": "prompt", + "tooltip": "Quando ativado, o vídeo incluirá fala gerada e música de fundo com base no prompt." + }, + "resolution": { + "name": "resolução" + }, + "seed": { + "name": "semente" + }, + "subjects": { + "name": "sujeitos", + "tooltip": "Para cada sujeito, forneça até 3 imagens de referência (7 imagens no total entre todos os sujeitos). Referencie-os nos prompts via @subject{subject_id}." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "Gere um vídeo a partir de um quadro inicial, um quadro final e um prompt.", + "display_name": "Geração de Vídeo Vidu2 de Quadro Inicial/Final", + "inputs": { + "control_after_generate": { + "name": "controle após gerar" + }, + "duration": { + "name": "duração" + }, + "end_frame": { + "name": "quadro_final" + }, + "first_frame": { + "name": "quadro_inicial" + }, + "model": { + "name": "modelo" + }, + "movement_amplitude": { + "name": "amplitude_de_movimento", + "tooltip": "A amplitude de movimento dos objetos no quadro." + }, + "prompt": { + "name": "prompt", + "tooltip": "Descrição do prompt (máx. 2000 caracteres)." + }, + "resolution": { + "name": "resolução" + }, + "seed": { + "name": "semente" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "Gerar vídeo a partir de um prompt de texto", + "display_name": "Geração de Vídeo Vidu2 a partir de Texto", + "inputs": { + "aspect_ratio": { + "name": "proporção" + }, + "background_music": { + "name": "música_de_fundo", + "tooltip": "Se deve adicionar música de fundo ao vídeo gerado." + }, + "control_after_generate": { + "name": "controle após gerar" + }, + "duration": { + "name": "duração" + }, + "model": { + "name": "modelo" + }, + "prompt": { + "name": "prompt", + "tooltip": "Uma descrição textual para geração de vídeo, com comprimento máximo de 2000 caracteres." + }, + "resolution": { + "name": "resolução" + }, + "seed": { + "name": "semente" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "Gera vídeo a partir de uma imagem e prompt opcional", "display_name": "Geração de Vídeo a partir de Imagem Vidu", diff --git a/src/locales/ru/main.json b/src/locales/ru/main.json index 4a77a261c..1e85ee9fc 100644 --- a/src/locales/ru/main.json +++ b/src/locales/ru/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "Добавить больше кредитов", "addMoreCreditsToRun": "Добавить больше кредитов для запуска", + "amountToPayLabel": "Сумма к оплате в долларах", "buy": "Купить", + "buyCredits": "Перейти к оплате", "buyNow": "Купить сейчас", + "contactUs": "Свяжитесь с нами", "creditsDescription": "Кредиты используются для запуска рабочих процессов или партнерских узлов.", + "creditsPerDollar": "кредитов за доллар", + "creditsToReceiveLabel": "Кредиты к получению", "howManyCredits": "Сколько кредитов вы хотите добавить?", "insufficientMessage": "У вас недостаточно кредитов для запуска этого рабочего процесса.", "insufficientTitle": "Недостаточно кредитов", "insufficientWorkflowMessage": "У вас недостаточно кредитов для запуска этого рабочего процесса.", + "maxAllowed": "Максимум {credits} кредитов.", "maxAmount": "(Макс. $1,000 USD)", + "maximumAmount": "Максимум ${amount}.", + "minRequired": "Минимум {credits} кредитов", + "minimumPurchase": "Минимум ${amount} ({credits} кредитов)", + "needMore": "Нужно больше?", "purchaseError": "Покупка не удалась", "purchaseErrorDetail": "Не удалось купить кредиты: {error}", "quickPurchase": "Быстрая покупка", "seeDetails": "Смотреть детали", + "selectAmount": "Выберите сумму", "templateNote": "*Сгенерировано с помощью шаблона Wan Fun Control", "topUp": "Пополнить", "unknownError": "Произошла неизвестная ошибка", - "videosEstimate": "~{count} видео" + "usdAmount": "${amount}", + "videosEstimate": "~{count} видео", + "viewPricing": "Посмотреть детали цен", + "youGet": "Кредиты", + "youPay": "Сумма (USD)" }, "unified": { "message": "Кредиты были объединены", @@ -536,6 +551,7 @@ "HOOKS": "ХУКИ", "HOOK_KEYFRAMES": "КЛЮЧЕВЫЕ_КАДРЫ_ХУКА", "IMAGE": "ИЗОБРАЖЕНИЕ", + "IMAGECOMPARE": "СРАВНЕНИЕ_ИЗОБРАЖЕНИЙ", "INT": "ЦЕЛОЕ", "LATENT": "ЛАТЕНТНЫЙ", "LATENT_OPERATION": "ЛАТЕНТНАЯ_ОПЕРАЦИЯ", @@ -680,6 +696,7 @@ "customBackground": "Пользовательский фон", "customize": "Настроить", "customizeFolder": "Настроить папку", + "decrement": "Уменьшить", "defaultBanner": "баннер по умолчанию", "delete": "Удалить", "deleteAudioFile": "Удалить аудиофайл", @@ -738,6 +755,7 @@ "imageUrl": "URL изображения", "import": "Импорт", "inProgress": "В процессе", + "increment": "Увеличить", "info": "Информация о ноде", "insert": "Вставить", "install": "Установить", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} ресурс(ов) успешно удалено", "deleteSelected": "Удалить", + "deleteSelectedAll": "Удалить все", "deselectAll": "Снять выделение со всех", "downloadSelected": "Скачать", + "downloadSelectedAll": "Скачать все", "downloadStarted": "Скачивание {count} файлов...", "downloadsStarted": "Начато скачивание {count} файла(ов)", "failedToDeleteAssets": "Не удалось удалить выбранные ресурсы", + "multipleSelectedAssets": "Выбрано несколько ресурсов", "partialDeleteSuccess": "{succeeded} успешно удалено, {failed} не удалось удалить", "selectedCount": "Выбрано ресурсов: {count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "Переключение темы (Тёмная/Светлая)", "Toggle View Controls Bottom Panel": "Показать/скрыть нижнюю панель элементов управления", "Toggle promotion of hovered widget": "Переключить повышение выделенного виджета", - "Toggle the Custom Nodes Manager Progress Bar": "Переключить индикатор выполнения менеджера пользовательских узлов", "Undo": "Отменить", "Ungroup selected group nodes": "Разгруппировать выбранные групповые ноды", "Unload Models": "Выгрузить модели", diff --git a/src/locales/ru/nodeDefs.json b/src/locales/ru/nodeDefs.json index 7d35bd51d..97581e389 100644 --- a/src/locales/ru/nodeDefs.json +++ b/src/locales/ru/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "Сравнивает два изображения бок о бок с помощью ползунка.", + "display_name": "Сравнение изображений", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "image_a" + }, + "image_b": { + "name": "image_b" + } + } + }, "ImageCompositeMasked": { "display_name": "Составное изображение с маской", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "Объединяет левый и правый моно аудиоканалы в стерео аудио.", + "display_name": "Объединить аудиоканалы", + "inputs": { + "audio_left": { + "name": "audio_left" + }, + "audio_right": { + "name": "audio_right" + } + }, + "outputs": { + "0": { + "name": "аудио", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "Объединить изображение с альфа-каналом", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "Создаёт видео из изображения и необязательной текстовой подсказки.", + "display_name": "Vidu2: генерация видео из изображения", + "inputs": { + "control_after_generate": { + "name": "управление после генерации" + }, + "duration": { + "name": "длительность" + }, + "image": { + "name": "изображение", + "tooltip": "Изображение, которое будет использовано в качестве первого кадра сгенерированного видео." + }, + "model": { + "name": "модель" + }, + "movement_amplitude": { + "name": "амплитуда движения", + "tooltip": "Амплитуда движения объектов в кадре." + }, + "prompt": { + "name": "подсказка", + "tooltip": "Необязательная текстовая подсказка для генерации видео (максимум 2000 символов)." + }, + "resolution": { + "name": "разрешение" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "Создаёт видео из нескольких референсных изображений и подсказки.", + "display_name": "Vidu2: генерация видео по референсам", + "inputs": { + "aspect_ratio": { + "name": "соотношение сторон" + }, + "audio": { + "name": "аудио", + "tooltip": "Если включено, видео будет содержать сгенерированную речь и фоновую музыку на основе подсказки." + }, + "control_after_generate": { + "name": "управление после генерации" + }, + "duration": { + "name": "длительность" + }, + "model": { + "name": "модель" + }, + "movement_amplitude": { + "name": "амплитуда движения", + "tooltip": "Амплитуда движения объектов в кадре." + }, + "prompt": { + "name": "подсказка", + "tooltip": "Если включено, видео будет содержать сгенерированную речь и фоновую музыку на основе подсказки." + }, + "resolution": { + "name": "разрешение" + }, + "seed": { + "name": "seed" + }, + "subjects": { + "name": "объекты", + "tooltip": "Для каждого объекта предоставьте до 3 референсных изображений (всего до 7 изображений для всех объектов). Ссылайтесь на них в подсказках через @subject{subject_id}." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "Создайте видео из начального кадра, конечного кадра и текстового запроса.", + "display_name": "Vidu2 Генерация видео по начальному и конечному кадрам", + "inputs": { + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "end_frame": { + "name": "end_frame" + }, + "first_frame": { + "name": "first_frame" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "Амплитуда движения объектов в кадре." + }, + "prompt": { + "name": "prompt", + "tooltip": "Описание запроса (максимум 2000 символов)." + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "Создайте видео по текстовому запросу", + "display_name": "Vidu2 Генерация видео по тексту", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "background_music": { + "name": "background_music", + "tooltip": "Добавлять ли фоновую музыку к сгенерированному видео." + }, + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "prompt": { + "name": "prompt", + "tooltip": "Текстовое описание для генерации видео, максимум 2000 символов." + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "Генерация видео из изображения и необязательного промпта", "display_name": "Vidu Image To Video Generation", diff --git a/src/locales/tr/main.json b/src/locales/tr/main.json index 2069825de..380ee1a39 100644 --- a/src/locales/tr/main.json +++ b/src/locales/tr/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "Daha fazla kredi ekle", "addMoreCreditsToRun": "Çalıştırmak için daha fazla kredi ekle", + "amountToPayLabel": "Ödenecek tutar (dolar)", "buy": "Satın Al", + "buyCredits": "Ödemeye devam et", "buyNow": "Şimdi al", + "contactUs": "Bize ulaşın", "creditsDescription": "Krediler, iş akışlarını veya partner düğümlerini çalıştırmak için kullanılır.", + "creditsPerDollar": "dolar başına kredi", + "creditsToReceiveLabel": "Alınacak kredi", "howManyCredits": "Kaç kredi eklemek istersiniz?", "insufficientMessage": "Bu iş akışını çalıştırmak için yeterli krediniz yok.", "insufficientTitle": "Yetersiz Kredi", "insufficientWorkflowMessage": "Bu iş akışını çalıştırmak için yeterli krediniz yok.", + "maxAllowed": "En fazla {credits} kredi.", "maxAmount": "(Maks. 1.000 USD)", + "maximumAmount": "En fazla ${amount}.", + "minRequired": "En az {credits} kredi", + "minimumPurchase": "En az ${amount} ({credits} kredi)", + "needMore": "Daha fazlasına mı ihtiyacınız var?", "purchaseError": "Satın Alma Başarısız", "purchaseErrorDetail": "Kredi satın alınamadı: {error}", "quickPurchase": "Hızlı Satın Alma", "seeDetails": "Detayları gör", + "selectAmount": "Tutar seç", "templateNote": "*Wan Fun Control şablonu ile oluşturuldu", "topUp": "Yükleme Yap", "unknownError": "Bilinmeyen bir hata oluştu", - "videosEstimate": "~{count} video" + "usdAmount": "${amount}", + "videosEstimate": "~{count} video", + "viewPricing": "Fiyatlandırma detaylarını görüntüle", + "youGet": "Kredi", + "youPay": "Tutar (USD)" }, "unified": { "message": "Krediler birleştirildi", @@ -536,6 +551,7 @@ "HOOKS": "Kancalar", "HOOK_KEYFRAMES": "Kanca_anahtar_kareleri", "IMAGE": "GÖRÜNTÜ", + "IMAGECOMPARE": "GÖRSELKARŞILAŞTIR", "INT": "TAMSAYI", "LATENT": "GİZLİ", "LATENT_OPERATION": "GİZLİ_İŞLEM", @@ -680,6 +696,7 @@ "customBackground": "Özel Arka Plan", "customize": "Özelleştir", "customizeFolder": "Klasörü Özelleştir", + "decrement": "Azalt", "defaultBanner": "varsayılan banner", "delete": "Sil", "deleteAudioFile": "Ses dosyasını sil", @@ -738,6 +755,7 @@ "imageUrl": "Görsel URL'si", "import": "İçe Aktar", "inProgress": "Devam ediyor", + "increment": "Arttır", "info": "Düğüm Bilgisi", "insert": "Ekle", "install": "Yükle", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} varlık başarıyla silindi", "deleteSelected": "Sil", + "deleteSelectedAll": "Tümünü sil", "deselectAll": "Tümünü seçimi kaldır", "downloadSelected": "İndir", + "downloadSelectedAll": "Tümünü indir", "downloadStarted": "{count} dosya indiriliyor...", "downloadsStarted": "{count} dosya indirilmeye başlandı", "failedToDeleteAssets": "Seçilen varlıklar silinemedi", + "multipleSelectedAssets": "Birden fazla varlık seçildi", "partialDeleteSuccess": "{succeeded} başarıyla silindi, {failed} silinemedi", "selectedCount": "Seçilen Varlıklar: {count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "Temayı Değiştir (Karanlık/Açık)", "Toggle View Controls Bottom Panel": "Görünüm Kontrolleri Alt Panelini Aç/Kapat", "Toggle promotion of hovered widget": "Üzerine gelinen widget'ı yükseltmeyi aç/kapat", - "Toggle the Custom Nodes Manager Progress Bar": "Özel Düğüm Yöneticisi İlerleme Çubuğunu Aç/Kapat", "Undo": "Geri Al", "Ungroup selected group nodes": "Seçili grup düğümlerinin grubunu çöz", "Unload Models": "Modelleri Boşalt", diff --git a/src/locales/tr/nodeDefs.json b/src/locales/tr/nodeDefs.json index 7f5ac77b8..5b9e2e210 100644 --- a/src/locales/tr/nodeDefs.json +++ b/src/locales/tr/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "İki görüntüyü yan yana bir kaydırıcı ile karşılaştırır.", + "display_name": "Görüntü Karşılaştırma", + "inputs": { + "compare_view": { + "name": "karşılaştırma_görünümü" + }, + "image_a": { + "name": "görüntü_a" + }, + "image_b": { + "name": "görüntü_b" + } + } + }, "ImageCompositeMasked": { "display_name": "MaskeliGörüntüBirleştirme", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "Sol ve sağ mono ses kanallarını stereo sese birleştirir.", + "display_name": "Ses Kanallarını Birleştir", + "inputs": { + "audio_left": { + "name": "ses_sol" + }, + "audio_right": { + "name": "ses_sağ" + } + }, + "outputs": { + "0": { + "name": "ses", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "Görüntüyü Alfa ile Birleştir", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "Bir görüntüden ve isteğe bağlı bir istemden video oluşturun.", + "display_name": "Vidu2 Görüntüden Videoya Üretim", + "inputs": { + "control_after_generate": { + "name": "oluşturduktan sonra kontrol et" + }, + "duration": { + "name": "süre" + }, + "image": { + "name": "görüntü", + "tooltip": "Oluşturulan videonun başlangıç karesi olarak kullanılacak bir görüntü." + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "hareket_genliği", + "tooltip": "Karedeki nesnelerin hareket genliği." + }, + "prompt": { + "name": "istem", + "tooltip": "Video üretimi için isteğe bağlı metin istemi (en fazla 2000 karakter)." + }, + "resolution": { + "name": "çözünürlük" + }, + "seed": { + "name": "tohum" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "Birden fazla referans görüntü ve bir istemden video oluşturun.", + "display_name": "Vidu2 Referans ile Videoya Üretim", + "inputs": { + "aspect_ratio": { + "name": "en-boy_oranı" + }, + "audio": { + "name": "ses", + "tooltip": "Etkinleştirildiğinde, video isteme göre oluşturulan konuşma ve arka plan müziği içerecektir." + }, + "control_after_generate": { + "name": "oluşturduktan sonra kontrol et" + }, + "duration": { + "name": "süre" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "hareket_genliği", + "tooltip": "Karedeki nesnelerin hareket genliği." + }, + "prompt": { + "name": "istem", + "tooltip": "Etkinleştirildiğinde, video isteme göre oluşturulan konuşma ve arka plan müziği içerecektir." + }, + "resolution": { + "name": "çözünürlük" + }, + "seed": { + "name": "tohum" + }, + "subjects": { + "name": "konular", + "tooltip": "Her konu için en fazla 3 referans görüntü sağlayın (tüm konular için toplam 7 görüntü). İstemlerde @subject{subject_id} ile referans verin." + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "Bir başlangıç karesi, bir bitiş karesi ve bir komut istemiyle video oluşturun.", + "display_name": "Vidu2 Başlangıç/Bitiş Kareden Videoya Üretim", + "inputs": { + "control_after_generate": { + "name": "oluşturduktan sonra kontrol et" + }, + "duration": { + "name": "süre" + }, + "end_frame": { + "name": "bitiş_kare" + }, + "first_frame": { + "name": "ilk_kare" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "hareket_genliği", + "tooltip": "Karedeki nesnelerin hareket genliği." + }, + "prompt": { + "name": "komut_istemi", + "tooltip": "Komut istemi açıklaması (en fazla 2000 karakter)." + }, + "resolution": { + "name": "çözünürlük" + }, + "seed": { + "name": "tohum" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "Bir metin komut isteminden video oluşturun", + "display_name": "Vidu2 Metinden Videoya Üretim", + "inputs": { + "aspect_ratio": { + "name": "en-boy_oranı" + }, + "background_music": { + "name": "arka_plan_müziği", + "tooltip": "Oluşturulan videoya arka plan müziği eklenip eklenmeyeceği." + }, + "control_after_generate": { + "name": "oluşturduktan sonra kontrol et" + }, + "duration": { + "name": "süre" + }, + "model": { + "name": "model" + }, + "prompt": { + "name": "komut_istemi", + "tooltip": "Video üretimi için metinsel açıklama, maksimum uzunluk 2000 karakter." + }, + "resolution": { + "name": "çözünürlük" + }, + "seed": { + "name": "tohum" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "Görsel ve isteğe bağlı prompt'tan video oluştur", "display_name": "Vidu Görselden Video Oluşturma", diff --git a/src/locales/zh-TW/main.json b/src/locales/zh-TW/main.json index c2aa81658..fce5855d7 100644 --- a/src/locales/zh-TW/main.json +++ b/src/locales/zh-TW/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "儲值點數", "addMoreCreditsToRun": "儲值點數以執行", + "amountToPayLabel": "需支付的美元金額", "buy": "購買", + "buyCredits": "繼續付款", "buyNow": "立即購買", + "contactUs": "聯絡我們", "creditsDescription": "點數用於執行工作流程或合作夥伴節點。", + "creditsPerDollar": "每美元點數", + "creditsToReceiveLabel": "可獲得的點數", "howManyCredits": "您想要儲值多少點數?", "insufficientMessage": "您的點數不足,無法執行此工作流程。", "insufficientTitle": "點數不足", "insufficientWorkflowMessage": "您的點數不足,無法執行此工作流程。", + "maxAllowed": "最多可購買 {credits} 點。", "maxAmount": "(最高 $1,000 美元)", + "maximumAmount": "最高 ${amount}", + "minRequired": "最低需購買 {credits} 點", + "minimumPurchase": "最低購買 ${amount}(${credits} 點)", + "needMore": "需要更多?", "purchaseError": "購買失敗", "purchaseErrorDetail": "購買點數失敗:{error}", "quickPurchase": "快速購買", "seeDetails": "查看詳情", + "selectAmount": "選擇金額", "templateNote": "*以 Wan Fun Control 範本產生", "topUp": "儲值", "unknownError": "發生未知錯誤", - "videosEstimate": "約 {count} 部影片" + "usdAmount": "${amount}", + "videosEstimate": "約 {count} 部影片", + "viewPricing": "查看價格詳情", + "youGet": "點數", + "youPay": "金額(美元)" }, "unified": { "message": "點數已統一", @@ -536,6 +551,7 @@ "HOOKS": "掛鉤", "HOOK_KEYFRAMES": "關鍵影格掛鉤", "IMAGE": "影像", + "IMAGECOMPARE": "圖像比較", "INT": "整數", "LATENT": "latent (潛空間)", "LATENT_OPERATION": "latent 操作", @@ -680,6 +696,7 @@ "customBackground": "自訂背景", "customize": "自訂", "customizeFolder": "自訂資料夾", + "decrement": "減少", "defaultBanner": "預設橫幅", "delete": "刪除", "deleteAudioFile": "刪除音訊檔案", @@ -738,6 +755,7 @@ "imageUrl": "圖片網址", "import": "匯入", "inProgress": "進行中", + "increment": "增加", "info": "節點資訊", "insert": "插入", "install": "安裝", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "{count} 個資源刪除成功", "deleteSelected": "刪除", + "deleteSelectedAll": "全部刪除", "deselectAll": "取消全選", "downloadSelected": "下載", + "downloadSelectedAll": "全部下載", "downloadStarted": "正在下載 {count} 個檔案...", "downloadsStarted": "已開始下載 {count} 個檔案", "failedToDeleteAssets": "刪除選取資源失敗", + "multipleSelectedAssets": "已選取多個資產", "partialDeleteSuccess": "{succeeded} 刪除成功,{failed} 刪除失敗", "selectedCount": "已選取資源:{count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "切換主題(深色/淺色)", "Toggle View Controls Bottom Panel": "切換檢視控制底部面板", "Toggle promotion of hovered widget": "切換懸停小工具提升狀態", - "Toggle the Custom Nodes Manager Progress Bar": "切換自訂節點管理器進度條", "Undo": "復原", "Ungroup selected group nodes": "取消群組選取的群組節點", "Unload Models": "卸載模型", diff --git a/src/locales/zh-TW/nodeDefs.json b/src/locales/zh-TW/nodeDefs.json index cc2dae73f..09b40188d 100644 --- a/src/locales/zh-TW/nodeDefs.json +++ b/src/locales/zh-TW/nodeDefs.json @@ -3868,6 +3868,21 @@ } } }, + "ImageCompare": { + "description": "將兩張圖像並排顯示,並可用滑桿比較差異。", + "display_name": "圖像比較", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "image_a" + }, + "image_b": { + "name": "image_b" + } + } + }, "ImageCompositeMasked": { "display_name": "影像合成(遮罩)", "inputs": { @@ -4375,6 +4390,24 @@ } } }, + "JoinAudioChannels": { + "description": "將左聲道與右聲道的單聲道音訊合併為立體聲音訊。", + "display_name": "合併音訊聲道", + "inputs": { + "audio_left": { + "name": "audio_left" + }, + "audio_right": { + "name": "audio_right" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "合併影像與 Alpha", "inputs": { @@ -14295,6 +14328,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "從一張圖像及可選提示詞生成影片。", + "display_name": "Vidu2 圖像轉影片生成", + "inputs": { + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "image": { + "name": "image", + "tooltip": "用作生成影片起始畫格的圖像。" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "畫面中物件的移動幅度。" + }, + "prompt": { + "name": "prompt", + "tooltip": "影片生成的可選文字提示(最多 2000 字元)。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "從多張參考圖像及提示詞生成影片。", + "display_name": "Vidu2 參考圖像轉影片生成", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "audio": { + "name": "audio", + "tooltip": "啟用後,影片將根據提示詞包含生成的語音及背景音樂。" + }, + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "畫面中物件的移動幅度。" + }, + "prompt": { + "name": "prompt", + "tooltip": "啟用後,影片將根據提示詞生成語音及背景音樂。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + }, + "subjects": { + "name": "subjects", + "tooltip": "每個主體最多可提供 3 張參考圖像(所有主體合計最多 7 張)。可在提示詞中以 @subject{subject_id} 參照。" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "根據起始影格、結束影格與提示詞生成影片。", + "display_name": "Vidu2 起始/結束影格轉影片生成", + "inputs": { + "control_after_generate": { + "name": "生成後控制" + }, + "duration": { + "name": "duration" + }, + "end_frame": { + "name": "end_frame" + }, + "first_frame": { + "name": "first_frame" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "畫面中物件的移動幅度。" + }, + "prompt": { + "name": "prompt", + "tooltip": "提示描述(最多 2000 字元)。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "根據文字提示生成影片", + "display_name": "Vidu2 文字轉影片生成", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "background_music": { + "name": "background_music", + "tooltip": "是否為生成的影片加入背景音樂。" + }, + "control_after_generate": { + "name": "生成後控制" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "prompt": { + "name": "prompt", + "tooltip": "用於影片生成的文字描述,最長 2000 字元。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "從圖像和可選提示生成影片", "display_name": "Vidu 圖像轉影片生成", diff --git a/src/locales/zh/main.json b/src/locales/zh/main.json index c25deaec3..679b01098 100644 --- a/src/locales/zh/main.json +++ b/src/locales/zh/main.json @@ -488,22 +488,37 @@ "topUp": { "addMoreCredits": "获取更多积分", "addMoreCreditsToRun": "获取更多积分来运行", + "amountToPayLabel": "支付金额(美元)", "buy": "购买", + "buyCredits": "继续付款", "buyNow": "立即购买", + "contactUs": "联系我们", "creditsDescription": "该工作流需要积分运行。", + "creditsPerDollar": "每美元积分数", + "creditsToReceiveLabel": "获得积分数", "howManyCredits": "您想要多少积分?", "insufficientMessage": "您的积分不足,无法运行此工作流。", "insufficientTitle": "积分不足", "insufficientWorkflowMessage": "您的积分不足以运行该工作流。", + "maxAllowed": "最多{credits}积分。", "maxAmount": "(最高 $1,000 美元)", + "maximumAmount": "最多${amount}", + "minRequired": "最少{credits}积分", + "minimumPurchase": "最低${amount}({credits}积分)", + "needMore": "需要更多?", "purchaseError": "购买失败", "purchaseErrorDetail": "购买积分失败:{error}", "quickPurchase": "快速购买", "seeDetails": "查看详情", + "selectAmount": "选择金额", "templateNote": "*使用 Wan Fun Control 模板生成", "topUp": "充值", "unknownError": "发生未知错误", - "videosEstimate": "~{count} 个视频*" + "usdAmount": "${amount}", + "videosEstimate": "~{count} 个视频*", + "viewPricing": "查看定价详情", + "youGet": "获得积分", + "youPay": "支付金额(美元)" }, "unified": { "message": "积分已合并", @@ -536,6 +551,7 @@ "HOOKS": "约束", "HOOK_KEYFRAMES": "约束关键帧", "IMAGE": "图像", + "IMAGECOMPARE": "图像对比", "INT": "整数", "LATENT": "Latent", "LATENT_OPERATION": "Latent操作", @@ -680,6 +696,7 @@ "customBackground": "自定义背景", "customize": "自定义", "customizeFolder": "自定义文件夹", + "decrement": "减小", "defaultBanner": "默认横幅", "delete": "删除", "deleteAudioFile": "删除音频文件", @@ -738,6 +755,7 @@ "imageUrl": "图片网址", "import": "导入", "inProgress": "进行中", + "increment": "增加", "info": "节点信息", "insert": "插入", "install": "安装", @@ -1363,11 +1381,14 @@ "selection": { "assetsDeletedSuccessfully": "已成功删除 {count} 个资产", "deleteSelected": "删除", + "deleteSelectedAll": "全部删除", "deselectAll": "取消全选", "downloadSelected": "下载", + "downloadSelectedAll": "全部下载", "downloadStarted": "正在下载 {count} 个文件...", "downloadsStarted": "开始下载 {count} 个文件", "failedToDeleteAssets": "未能删除所选资产", + "multipleSelectedAssets": "已选择多个资源", "partialDeleteSuccess": "{succeeded} 删除成功, {failed} 失败", "selectedCount": "已选择资产:{count}" }, @@ -1509,7 +1530,6 @@ "Toggle Theme (Dark/Light)": "切换主题(暗/亮)", "Toggle View Controls Bottom Panel": "切换视图控制底部面板", "Toggle promotion of hovered widget": "切换悬停小部件的提升", - "Toggle the Custom Nodes Manager Progress Bar": "切换自定义节点管理器进度条", "Undo": "撤销", "Ungroup selected group nodes": "解散选中组节点", "Unload Models": "卸载模型", diff --git a/src/locales/zh/nodeDefs.json b/src/locales/zh/nodeDefs.json index a37c74ded..8f3c84cc3 100644 --- a/src/locales/zh/nodeDefs.json +++ b/src/locales/zh/nodeDefs.json @@ -3877,6 +3877,21 @@ } } }, + "ImageCompare": { + "description": "通过滑块并排比较两张图像。", + "display_name": "图像对比", + "inputs": { + "compare_view": { + "name": "compare_view" + }, + "image_a": { + "name": "image_a" + }, + "image_b": { + "name": "image_b" + } + } + }, "ImageCompositeMasked": { "display_name": "合成图像(遮罩)", "inputs": { @@ -4384,6 +4399,24 @@ } } }, + "JoinAudioChannels": { + "description": "将左声道和右声道的单声道音频合成为立体声音频。", + "display_name": "音频通道合并", + "inputs": { + "audio_left": { + "name": "audio_left" + }, + "audio_right": { + "name": "audio_right" + } + }, + "outputs": { + "0": { + "name": "audio", + "tooltip": null + } + } + }, "JoinImageWithAlpha": { "display_name": "合并图像Alpha", "inputs": { @@ -14326,6 +14359,166 @@ } } }, + "Vidu2ImageToVideoNode": { + "description": "根据一张图像和可选提示生成视频。", + "display_name": "Vidu2 图像转视频生成", + "inputs": { + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "image": { + "name": "image", + "tooltip": "用于生成视频起始帧的图像。" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "画面中物体的运动幅度。" + }, + "prompt": { + "name": "prompt", + "tooltip": "用于视频生成的可选文本提示(最多2000字符)。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2ReferenceVideoNode": { + "description": "根据多张参考图像和提示生成视频。", + "display_name": "Vidu2 参考图像转视频生成", + "inputs": { + "aspect_ratio": { + "name": "aspect_ratio" + }, + "audio": { + "name": "audio", + "tooltip": "启用后,视频将根据提示包含生成的语音和背景音乐。" + }, + "control_after_generate": { + "name": "control after generate" + }, + "duration": { + "name": "duration" + }, + "model": { + "name": "model" + }, + "movement_amplitude": { + "name": "movement_amplitude", + "tooltip": "画面中物体的运动幅度。" + }, + "prompt": { + "name": "prompt", + "tooltip": "启用后,视频将根据提示生成语音和背景音乐。" + }, + "resolution": { + "name": "resolution" + }, + "seed": { + "name": "seed" + }, + "subjects": { + "name": "subjects", + "tooltip": "每个主体最多提供3张参考图像(所有主体共7张)。可通过 @subject{subject_id} 在提示中引用。" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2StartEndToVideoNode": { + "description": "根据起始帧、结束帧和提示词生成视频。", + "display_name": "Vidu2 起始/结束帧到视频生成", + "inputs": { + "control_after_generate": { + "name": "生成后控制" + }, + "duration": { + "name": "时长" + }, + "end_frame": { + "name": "结束帧" + }, + "first_frame": { + "name": "起始帧" + }, + "model": { + "name": "模型" + }, + "movement_amplitude": { + "name": "运动幅度", + "tooltip": "帧中物体的运动幅度。" + }, + "prompt": { + "name": "提示词", + "tooltip": "提示描述(最多2000个字符)。" + }, + "resolution": { + "name": "分辨率" + }, + "seed": { + "name": "种子" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, + "Vidu2TextToVideoNode": { + "description": "根据文本提示生成视频", + "display_name": "Vidu2 文本到视频生成", + "inputs": { + "aspect_ratio": { + "name": "宽高比" + }, + "background_music": { + "name": "背景音乐", + "tooltip": "是否为生成的视频添加背景音乐。" + }, + "control_after_generate": { + "name": "生成后控制" + }, + "duration": { + "name": "时长" + }, + "model": { + "name": "模型" + }, + "prompt": { + "name": "提示词", + "tooltip": "用于视频生成的文本描述,最大长度为2000个字符。" + }, + "resolution": { + "name": "分辨率" + }, + "seed": { + "name": "种子" + } + }, + "outputs": { + "0": { + "tooltip": null + } + } + }, "ViduImageToVideoNode": { "description": "从图像和可选提示生成视频", "display_name": "Vidu 图像转视频生成",