414 lines
26 KiB
JSON
414 lines
26 KiB
JSON
{
|
||
"language_name": "English",
|
||
"t": {
|
||
"app.title": "⚡ Pixelle-Video - AI Auto Short Video Engine",
|
||
"app.subtitle": "Powered by Pixelle.AI",
|
||
"section.content_input": "📝 Video Script",
|
||
"section.bgm": "🎵 Background Music",
|
||
"section.tts": "🎤 Voiceover",
|
||
"section.image": "🎨 Image Generation",
|
||
"section.video": "🎬 Video Generation",
|
||
"section.media": "🎨 Media Generation",
|
||
"section.template": "📐 Storyboard Template",
|
||
"section.video_generation": "🎬 Generate Video",
|
||
"input_mode.topic": "💡 Topic",
|
||
"input_mode.custom": "✍️ Custom Content",
|
||
"mode.generate": "💡 AI Creation",
|
||
"mode.fixed": "✍️ Custom Script",
|
||
"input.topic": "Topic",
|
||
"input.topic_placeholder": "AI automatically creates specified number of narrations\nExample: How to build passive income, 如何增加被动收入",
|
||
"input.topic_help": "Enter a topic, AI will generate content based on it",
|
||
"input.text": "Text Input",
|
||
"input.text_help_generate": "Enter topic or theme (AI will create narrations)",
|
||
"input.text_help_fixed": "Enter complete narration script (used directly without modification)",
|
||
"split.mode_label": "Split Strategy",
|
||
"split.mode_help": "Choose how to split the text into video segments",
|
||
"split.mode_paragraph": "📄 By Paragraph (\\n\\n)",
|
||
"split.mode_line": "📝 By Line (\\n)",
|
||
"split.mode_sentence": "✂️ By Sentence (。.!?)",
|
||
"input.content": "Content",
|
||
"input.content_placeholder": "Used directly without modification (split by strategy below)\nExample:\nHello everyone, today I'll share three study tips.\n\nThe first tip is focus training, meditate for 10 minutes daily.\n\nThe second tip is active recall, review immediately after learning.",
|
||
"input.content_help": "Provide your own content for video generation",
|
||
"input.title": "Title (Optional)",
|
||
"input.title_placeholder": "Video title (auto-generated if empty)",
|
||
"input.title_help": "Optional: Custom title for the video",
|
||
"voice.title": "🎤 Voice Selection",
|
||
"voice.male_professional": "🎤 Male-Professional",
|
||
"voice.male_young": "🎙️ Male-Young",
|
||
"voice.female_gentle": "🎵 Female-Gentle",
|
||
"voice.female_energetic": "🎶 Female-Energetic",
|
||
"voice.preview": "▶ Preview Voice",
|
||
"voice.previewing": "Generating voice preview...",
|
||
"voice.preview_failed": "Preview failed: {error}",
|
||
"style.workflow": "Workflow Selection",
|
||
"style.workflow_what": "Determines how each frame's illustration is generated and its effect (e.g., using FLUX, SD models)",
|
||
"style.workflow_how": "Place the exported image_xxx.json workflow file(API format) into the workflows/selfhost/ folder (for local ComfyUI) or the workflows/runninghub/ folder (for cloud)",
|
||
"style.video_workflow_what": "Determines how each frame's video clip is generated and its effect (e.g., using different video generation models)",
|
||
"style.video_workflow_how": "Place the exported video_xxx.json workflow file(API format) into the workflows/selfhost/ folder (for local ComfyUI) or the workflows/runninghub/ folder (for cloud)",
|
||
"style.image_size_info": "Image Size: {width}x{height} (auto-determined by template)",
|
||
"style.video_size_info": "Video Size: {width}x{height} (auto-determined by template)",
|
||
"style.prompt_prefix": "Prompt Prefix",
|
||
"style.prompt_prefix_what": "Automatically added before all image prompts to control the illustration style uniformly (e.g., cartoon, realistic)",
|
||
"style.prompt_prefix_how": "Enter style description in the input box below. To save permanently, edit the config.yaml file",
|
||
"style.prompt_prefix_placeholder": "Enter style prefix (leave empty for config default)",
|
||
"style.prompt_prefix_help": "This text will be automatically added before all image generation prompts. To permanently change, edit config.yaml",
|
||
"style.custom": "Custom",
|
||
"style.description": "Style Description",
|
||
"style.description_placeholder": "Describe the illustration style you want (any language)...",
|
||
"style.preview_title": "Preview Style",
|
||
"style.video_preview_title": "Preview Video",
|
||
"style.test_prompt": "Test Prompt",
|
||
"style.test_video_prompt": "Test Video Prompt",
|
||
"style.test_prompt_help": "Enter test prompt to preview style effect",
|
||
"style.preview": "🖼️ Generate Preview",
|
||
"style.video_preview": "🎬 Generate Video Preview",
|
||
"style.previewing": "Generating style preview...",
|
||
"style.video_previewing": "Generating video preview...",
|
||
"style.preview_success": "✅ Preview generated successfully!",
|
||
"style.video_preview_success": "✅ Video preview generated successfully!",
|
||
"style.preview_caption": "Style Preview",
|
||
"style.preview_failed": "Preview failed: {error}",
|
||
"style.preview_failed_general": "Failed to generate preview image",
|
||
"style.final_prompt_label": "Final Prompt",
|
||
"style.generated_prompt": "Generated prompt: {prompt}",
|
||
"template.selector": "Template Selection",
|
||
"template.select": "Select Template",
|
||
"template.select_help": "Select template and video size",
|
||
"template.video_size_info": "Final Video Size: {width} × {height}",
|
||
"template.separator_selected": "Please select a specific template, not the group header",
|
||
"template.default": "Default",
|
||
"template.modern": "Modern",
|
||
"template.neon": "Neon",
|
||
"template.what": "Controls the visual layout and design style of each frame (title, text, image arrangement)",
|
||
"template.how": "Place .html template files in templates/SIZE/ directories (e.g., templates/1080x1920/). Templates are automatically grouped by size. Custom CSS styles are supported.\n\n**Template Naming Convention**\n\n- `static_*.html` → Static style templates (no AI-generated media)\n- `image_*.html` → Image generation templates (AI-generated images)\n- `video_*.html` → Video generation templates (AI-generated videos)\n\n**Note**\n\nAt least one of the following browsers must be installed on your computer for proper operation:\n1. Google Chrome (Windows, macOS)\n2. Chromium Browser (Linux)\n3. Microsoft Edge",
|
||
"template.size_info": "Template Size",
|
||
"template.type_selector": "Template Type",
|
||
"template.type.static": "📄 Static Style",
|
||
"template.type.image": "🖼️ Generate Images",
|
||
"template.type.video": "🎬 Generate Videos",
|
||
"template.type.static_hint": "Uses template's built-in styles, no AI-generated media required. You can customize background images and other parameters in the template.",
|
||
"template.type.image_hint": "AI automatically generates illustrations matching the narration content. Image size is determined by the template.",
|
||
"template.type.video_hint": "AI automatically generates video clips matching the narration content. Video size is determined by the template.",
|
||
"orientation.portrait": "Portrait",
|
||
"orientation.landscape": "Landscape",
|
||
"orientation.square": "Square",
|
||
"template.preview_title": "Preview Template",
|
||
"template.preview_param_title": "Title",
|
||
"template.preview_param_text": "Text",
|
||
"template.preview_param_image": "Image Path",
|
||
"template.preview_param_width": "Width",
|
||
"template.preview_param_height": "Height",
|
||
"template.preview_default_title": "AI Changes Content Creation",
|
||
"template.preview_default_text": "Artificial intelligence is transforming the way Pixelle.AI creates content, making it easy for everyone to produce professional-grade videos.",
|
||
"template.preview_button": "🖼️ Generate Preview",
|
||
"template.preview_generating": "Generating template preview...",
|
||
"template.preview_success": "✅ Preview generated successfully!",
|
||
"template.preview_failed": "❌ Preview failed: {error}",
|
||
"template.preview_image_help": "Supports local path or URL",
|
||
"template.preview_caption": "Template Preview: {template}",
|
||
"template.custom_parameters": "Custom Parameters",
|
||
"template.gallery_view": "Template Gallery",
|
||
"template.select_button": "Check",
|
||
"template.selected": "Checked",
|
||
"template.selected_template": "Current Template",
|
||
"template.no_templates_with_preview": "⚠️ No templates available for this type",
|
||
"image.not_required": "Current template does not require image generation",
|
||
"image.not_required_hint": "The selected template is text-only and does not need images. Benefits: ⚡ Faster generation 💰 Lower cost",
|
||
"video.title": "🎬 Video Settings",
|
||
"video.frames": "Scenes",
|
||
"video.frames_help": "More scenes = longer video",
|
||
"video.frames_label": "Scenes: {n}",
|
||
"video.frames_fixed_mode_hint": "💡 Fixed mode: scene count is determined by actual script segments",
|
||
"bgm.selector": "Music Selection",
|
||
"bgm.none": "🔇 No BGM",
|
||
"bgm.volume": "Volume",
|
||
"bgm.volume_help": "Adjust background music volume (0.0 = muted, 1.0 = original volume)",
|
||
"bgm.preview": "▶ Preview Music",
|
||
"bgm.preview_failed": "❌ Music file not found: {file}",
|
||
"bgm.what": "Adds background music to your video, making it more atmospheric and professional",
|
||
"bgm.how": "Place audio files (MP3/WAV/FLAC, etc.) in the bgm/ folder for automatic detection",
|
||
"btn.generate": "🎬 Generate Video",
|
||
"btn.save_config": "💾 Save Configuration",
|
||
"btn.reset_config": "🔄 Reset to Default",
|
||
"btn.save_and_start": "Save and Start",
|
||
"btn.test_connection": "Test Connection",
|
||
"status.initializing": "🔧 Initializing...",
|
||
"status.generating": "🚀 Generating video...",
|
||
"status.success": "✅ Video generated successfully!",
|
||
"status.error": "❌ Generation failed: {error}",
|
||
"status.video_generated": "✅ Video generated: {path}",
|
||
"status.video_not_found": "Video file not found: {path}",
|
||
"status.config_saved": "✅ Configuration saved",
|
||
"status.config_reset": "✅ Configuration reset to defaults",
|
||
"status.llm_config_incomplete": "⚠️ LLM configuration incomplete, please fill in API Key, Base URL and Model",
|
||
"status.save_failed": "Save failed",
|
||
"status.connection_success": "✅ Connection successful",
|
||
"status.connection_failed": "❌ Connection failed",
|
||
"progress.generating_title": "Generating title...",
|
||
"progress.generating_narrations": "Generating narrations...",
|
||
"progress.splitting_script": "Splitting script...",
|
||
"progress.generating_image_prompts": "Generating image prompts...",
|
||
"progress.generating_video_prompts": "Generating video prompts...",
|
||
"progress.preparing_frames": "Preparing frames...",
|
||
"progress.frame": "Frame {current}/{total}",
|
||
"progress.frame_step": "Frame {current}/{total} - Step {step}/4: {action}",
|
||
"progress.processing_frame": "Processing frame {current}/{total}...",
|
||
"progress.step_audio": "Generating audio",
|
||
"progress.step_image": "Generating image",
|
||
"progress.step_media": "Generating media",
|
||
"progress.step_compose": "Composing frame",
|
||
"progress.step_video": "Creating video segment",
|
||
"progress.concatenating": "Concatenating video...",
|
||
"progress.finalizing": "Finalizing...",
|
||
"progress.completed": "✅ Completed",
|
||
"error.input_required": "❌ Please provide topic or content",
|
||
"error.api_key_required": "❌ Please enter API Key",
|
||
"error.missing_field": "Please enter {field}",
|
||
"info.duration": "Duration",
|
||
"info.file_size": "File Size",
|
||
"info.frames": "Scenes",
|
||
"info.scenes_unit": " scenes",
|
||
"info.resolution": "Resolution",
|
||
"info.video_information": "📊 Video Information",
|
||
"info.no_video_yet": "Video preview will appear here after generation",
|
||
"info.generation_time": "Generation Time",
|
||
"settings.title": "⚙️ System Configuration (Required)",
|
||
"settings.not_configured": "⚠️ Please complete system configuration before generating videos",
|
||
"settings.llm.title": "🤖 Large Language Model",
|
||
"settings.llm.quick_select": "Quick Select",
|
||
"settings.llm.quick_select_help": "Choose a preset LLM or custom configuration",
|
||
"settings.llm.get_api_key": "Get API Key",
|
||
"settings.llm.api_key": "API Key",
|
||
"settings.llm.api_key_help": "Enter your API Key",
|
||
"settings.llm.base_url": "Base URL",
|
||
"settings.llm.base_url_help": "API service address",
|
||
"settings.llm.model": "Model",
|
||
"settings.llm.model_help": "Model name",
|
||
"settings.comfyui.title": "🔧 ComfyUI Configuration",
|
||
"settings.comfyui.local_title": "Local/Self-hosted ComfyUI",
|
||
"settings.comfyui.cloud_title": "RunningHub Cloud",
|
||
"settings.comfyui.comfyui_url": "ComfyUI Server URL",
|
||
"settings.comfyui.comfyui_url_help": "Local or remote ComfyUI server address",
|
||
"settings.comfyui.comfyui_api_key": "ComfyUI API Key",
|
||
"settings.comfyui.comfyui_api_key_help": "Optional, get from https://platform.comfy.org/profile/api-keys",
|
||
"settings.comfyui.runninghub_api_key": "RunningHub API Key",
|
||
"settings.comfyui.runninghub_api_key_help": "Visit https://runninghub.ai to register and get API Key",
|
||
"settings.comfyui.runninghub_hint": "No local ComfyUI? Use RunningHub Cloud:",
|
||
"settings.comfyui.runninghub_get_api_key": "Get RunningHub API Key",
|
||
"settings.comfyui.runninghub_concurrent_limit": "Concurrent Limit",
|
||
"settings.comfyui.runninghub_concurrent_limit_help": "RunningHub concurrent execution limit (1-10), default is 1 for regular members, adjust based on your membership level",
|
||
"settings.comfyui.runninghub_instance_type": "Machine Spec",
|
||
"settings.comfyui.runninghub_instance_type_help": "Select RunningHub machine spec, 48G VRAM is suitable for large models or high-resolution generation (requires membership support)",
|
||
"settings.comfyui.runninghub_instance_24g": "24G VRAM",
|
||
"settings.comfyui.runninghub_instance_48g": "48G VRAM",
|
||
"tts.inference_mode": "Synthesis Mode",
|
||
"tts.mode.local": "Local Synthesis",
|
||
"tts.mode.comfyui": "ComfyUI Synthesis",
|
||
"tts.mode.local_hint": "💡 Using Edge TTS, no configuration required, ready to use",
|
||
"tts.mode.comfyui_hint": "⚙️ Using ComfyUI workflows, flexible and powerful",
|
||
"tts.voice_selector": "Voice Selection",
|
||
"tts.speed": "Speed",
|
||
"tts.speed_label": "{speed}x",
|
||
"tts.voice.zh_CN_XiaoxiaoNeural": "zh-CN-XiaoxiaoNeural",
|
||
"tts.voice.zh_CN_XiaoyiNeural": "zh-CN-XiaoyiNeural",
|
||
"tts.voice.zh_CN_YunjianNeural": "zh-CN-YunjianNeural",
|
||
"tts.voice.zh_CN_YunxiNeural": "zh-CN-YunxiNeural",
|
||
"tts.voice.zh_CN_YunyangNeural": "zh-CN-YunyangNeural",
|
||
"tts.voice.zh_CN_YunyeNeural": "zh-CN-YunyeNeural",
|
||
"tts.voice.zh_CN_YunfengNeural": "zh-CN-YunfengNeural",
|
||
"tts.voice.zh_CN_liaoning_XiaobeiNeural": "zh-CN-liaoning-XiaobeiNeural",
|
||
"tts.voice.en_US_AriaNeural": "en-US-AriaNeural",
|
||
"tts.voice.en_US_JennyNeural": "en-US-JennyNeural",
|
||
"tts.voice.en_US_GuyNeural": "en-US-GuyNeural",
|
||
"tts.voice.en_US_DavisNeural": "en-US-DavisNeural",
|
||
"tts.voice.en_GB_SoniaNeural": "en-GB-SoniaNeural",
|
||
"tts.voice.en_GB_RyanNeural": "en-GB-RyanNeural",
|
||
"tts.selector": "Workflow Selection",
|
||
"tts.what": "Converts narration text to natural human-like speech (some workflows support reference audio for voice cloning)",
|
||
"tts.how": "Place the exported tts_xxx.json workflow file(API format) into the workflows/selfhost/ folder (for local ComfyUI) or the workflows/runninghub/ folder (for cloud)",
|
||
"tts.ref_audio": "Reference Audio",
|
||
"tts.ref_audio_help": "Upload audio file for voice cloning (only supported by some workflows)",
|
||
"tts.preview_title": "Preview TTS",
|
||
"tts.preview_text": "Preview Text",
|
||
"tts.preview_text_placeholder": "Enter text to preview...",
|
||
"tts.preview_button": "🔊 Generate Preview",
|
||
"tts.previewing": "Generating TTS preview...",
|
||
"tts.preview_success": "✅ Preview generated successfully!",
|
||
"tts.preview_failed": "❌ Preview failed: {error}",
|
||
"welcome.first_time": "🎉 Welcome to Pixelle-Video! Please complete basic configuration",
|
||
"welcome.config_hint": "💡 First-time setup requires API Key configuration, you can modify it in advanced settings later",
|
||
"wizard.llm_required": "🤖 Large Language Model Configuration (Required)",
|
||
"wizard.image_optional": "🎨 Image Generation Configuration (Optional)",
|
||
"wizard.image_hint": "💡 If not configured, default template will be used (no AI image generation)",
|
||
"wizard.configure_image": "Configure Image Generation (Recommended)",
|
||
"label.required": "(Required)",
|
||
"label.optional": "(Optional)",
|
||
"help.feature_description": "💡 Feature Description",
|
||
"help.what": "Purpose",
|
||
"help.how": "Customization",
|
||
"language.select": "🌐 Language",
|
||
"version.title": "📦 Version Info",
|
||
"version.current": "Current Version",
|
||
"github.title": "⭐ Open Source Support",
|
||
"history.page_title": "📚 Generation History",
|
||
"history.total_tasks": "Total Tasks",
|
||
"history.completed_count": "Completed",
|
||
"history.failed_count": "Failed",
|
||
"history.total_duration": "Total Duration",
|
||
"history.total_size": "Total Size",
|
||
"history.filter_status": "Filter Status",
|
||
"history.status_all": "All",
|
||
"history.status_completed": "Completed",
|
||
"history.status_failed": "Failed",
|
||
"history.status_running": "Running",
|
||
"history.status_pending": "Pending",
|
||
"history.sort_by": "Sort By",
|
||
"history.sort_created_at": "Created Time",
|
||
"history.sort_completed_at": "Completed Time",
|
||
"history.sort_title": "Title",
|
||
"history.sort_duration": "Duration",
|
||
"history.sort_order_desc": "Descending",
|
||
"history.sort_order_asc": "Ascending",
|
||
"history.page_size": "Page Size",
|
||
"history.no_tasks": "No tasks yet",
|
||
"history.task_card.title": "Title",
|
||
"history.task_card.created_at": "Created",
|
||
"history.task_card.duration": "Duration",
|
||
"history.task_card.frames": "Frames",
|
||
"history.task_card.view_detail": "View Detail",
|
||
"history.task_card.duplicate": "Duplicate",
|
||
"history.task_card.delete": "Delete",
|
||
"history.task_card.download": "Download",
|
||
"history.task_card.status_completed": "✅ Completed",
|
||
"history.task_card.status_failed": "❌ Failed",
|
||
"history.task_card.status_running": "⏳ Running",
|
||
"history.task_card.status_pending": "⏸️ Pending",
|
||
"history.detail.modal_title": "Task Detail",
|
||
"history.detail.task_id": "Task ID",
|
||
"history.detail.input_params": "Input Parameters",
|
||
"history.detail.text": "Text",
|
||
"history.detail.mode": "Mode",
|
||
"history.detail.n_scenes": "Scenes",
|
||
"history.detail.tts_mode": "TTS Mode",
|
||
"history.detail.voice": "Voice",
|
||
"history.detail.storyboard": "Storyboard",
|
||
"history.detail.frame_index": "Frame {index}",
|
||
"history.detail.frame": "Frame",
|
||
"history.detail.download_video": "Download Video",
|
||
"history.detail.narration": "Narration",
|
||
"history.detail.image_prompt": "Image Prompt",
|
||
"history.detail.audio_path": "Audio",
|
||
"history.detail.image_path": "Image",
|
||
"history.detail.video_segment_path": "Video Segment",
|
||
"history.detail.close": "Close",
|
||
"history.action.duplicate_success": "✅ Parameters duplicated, redirecting...",
|
||
"history.action.duplicate_failed": "❌ Duplication failed: {error}",
|
||
"history.action.delete_confirm": "Confirm deletion? This action cannot be undone!",
|
||
"history.action.delete_success": "✅ Task deleted",
|
||
"history.action.delete_failed": "❌ Deletion failed: {error}",
|
||
"history.page_info": "Page {page} / {total_pages}",
|
||
"batch.mode_label": "🔢 Batch Generation Mode",
|
||
"batch.mode_help": "Generate multiple videos, one topic per line",
|
||
"batch.section_title": "Batch Topics Input",
|
||
"batch.section_generation": "📦 Batch Video Generation",
|
||
"batch.rules_title": "Batch Generation Rules",
|
||
"batch.rule_1": "Automatically use 'AI Generate Content' mode",
|
||
"batch.rule_2": "Enter one topic per line",
|
||
"batch.rule_3": "All videos use the same configuration (TTS, template, workflow, etc.)",
|
||
"batch.topics_label": "Batch Topics (one per line)",
|
||
"batch.topics_placeholder": "Why develop a reading habit\nHow to manage time efficiently\n5 secrets to healthy living\nBenefits of waking up early\nHow to overcome procrastination\nTechniques to stay focused\nEmotional management methods\nTips to improve memory\nBuilding good relationships\nWealth management basics",
|
||
"batch.topics_help": "One video topic per line, AI will generate content based on the topic",
|
||
"batch.count_success": "✅ Detected {count} topics",
|
||
"batch.count_error": "❌ Batch size exceeds limit (max 100), current: {count}",
|
||
"batch.preview_title": "📋 Preview Topic List",
|
||
"batch.title_prefix_label": "Title Prefix (optional)",
|
||
"batch.title_prefix_placeholder": "e.g., Knowledge Sharing",
|
||
"batch.title_prefix_help": "Final title format: {prefix} - {topic}, e.g., Knowledge Sharing - Why develop a reading habit",
|
||
"batch.n_scenes_label": "Scenes (unified for all videos)",
|
||
"batch.n_scenes_help": "Number of scenes per video, same setting for all videos",
|
||
"batch.n_scenes_caption": "Scenes: {n}",
|
||
"batch.config_info": "Other configurations: TTS voice, video template, image workflow, etc. will use the settings from the right panel, unified for all videos",
|
||
"batch.no_topics": "⚠️ Please enter batch topics on the left (one per line)",
|
||
"batch.prepare_info": "📊 Ready to generate {count} videos (using same configuration)",
|
||
"batch.estimated_time": "⏱️ Estimated time: about {minutes} minutes",
|
||
"batch.generate_button": "🚀 Batch Generate {count} Videos",
|
||
"batch.generate_help": "⚠️ Please keep the page open during batch generation, do not close the browser",
|
||
"batch.overall_progress": "Overall Progress",
|
||
"batch.current_task": "Current Task",
|
||
"batch.completed": "Batch generation completed!",
|
||
"batch.results_title": "📊 Batch Generation Results",
|
||
"batch.total": "Total",
|
||
"batch.success": "Success",
|
||
"batch.failed": "Failed",
|
||
"batch.total_time": "Total Time",
|
||
"batch.minutes": "m",
|
||
"batch.seconds": "s",
|
||
"batch.success_message": "✅ Batch generation completed! All videos have been saved to history.",
|
||
"batch.view_in_history": "💡 Tip: You can view all generated videos in the '📚 History' page.",
|
||
"batch.goto_history": "Go to History Page",
|
||
"batch.failed_list": "❌ Failed Tasks",
|
||
"batch.task": "Task",
|
||
"batch.error": "Error",
|
||
"batch.error_detail": "View detailed error stack",
|
||
"pipeline.quick_create.name": "Quick Create",
|
||
"pipeline.quick_create.description": "Input an idea, AI completes the entire video for you",
|
||
"pipeline.custom_media.name": "Custom Media",
|
||
"pipeline.custom_media.description": "Use your own photos/videos, AI adds narration and voiceover",
|
||
"asset_based.section.assets": "📦 Asset Upload",
|
||
"asset_based.section.video_info": "📝 Video Information",
|
||
"asset_based.section.source": "⚙️ Service Configuration",
|
||
"asset_based.assets.what": "Upload your images or video assets, AI will automatically analyze them and generate a video script",
|
||
"asset_based.assets.how": "Supports JPG/PNG/GIF/WebP images and MP4/MOV/AVI videos. Each asset should be clear and relevant",
|
||
"asset_based.assets.upload": "Upload Assets",
|
||
"asset_based.assets.upload_help": "Supports multiple image or video files",
|
||
"asset_based.assets.count": "✅ Uploaded {count} assets",
|
||
"asset_based.assets.preview": "📷 Asset Preview",
|
||
"asset_based.assets.empty_hint": "💡 Please upload at least one image or video asset",
|
||
"asset_based.video_title": "Video Title (Optional)",
|
||
"asset_based.video_title_placeholder": "e.g., Pet Store Year-End Sale",
|
||
"asset_based.video_title_help": "Main title for the video, leave empty to hide title",
|
||
"asset_based.intent": "Video Intent",
|
||
"asset_based.intent_placeholder": "e.g., Promote our pet store's year-end special offers to attract more customers, use a warm and friendly tone",
|
||
"asset_based.intent_help": "Describe the purpose, message, and desired style of this video",
|
||
"asset_based.duration": "Target Duration (seconds)",
|
||
"asset_based.duration_help": "Expected video duration, AI will adjust based on asset count",
|
||
"asset_based.duration_label": "Target Duration: {seconds}s",
|
||
"asset_based.source.what": "Select the service provider for image analysis",
|
||
"asset_based.source.how": "RunningHub is a cloud service requiring API Key; SelfHost uses local ComfyUI",
|
||
"asset_based.source.select": "Select Service",
|
||
"asset_based.source.runninghub": "☁️ RunningHub (Cloud)",
|
||
"asset_based.source.selfhost": "🖥️ SelfHost (Local)",
|
||
"asset_based.source.runninghub_hint": "💡 Using RunningHub cloud service for asset analysis",
|
||
"asset_based.source.selfhost_hint": "💡 Using local ComfyUI service for asset analysis",
|
||
"asset_based.source.runninghub_not_configured": "⚠️ RunningHub API Key not configured",
|
||
"asset_based.source.selfhost_not_configured": "⚠️ Local ComfyUI URL not configured",
|
||
"asset_based.output.no_assets": "💡 Please upload assets on the left first",
|
||
"asset_based.output.ready": "📦 {count} assets ready, you can start generating",
|
||
"asset_based.progress.analyzing": "🔍 Analyzing assets...",
|
||
"asset_based.progress.analyzing_start": "🔍 Starting to analyze {total} assets...",
|
||
"asset_based.progress.analyzing_asset": "🔍 Analyzing asset {current}/{total}: {name}",
|
||
"asset_based.progress.analyzing_complete": "✅ Asset analysis complete ({count} total)",
|
||
"asset_based.progress.generating_script": "📝 Generating video script...",
|
||
"asset_based.progress.script_complete": "✅ Script generation complete",
|
||
"asset_based.progress.concat_complete": "✅ Video concatenation complete",
|
||
"faq.expand_to_view": "FAQ",
|
||
"faq.load_error": "Failed to load FAQ content",
|
||
"faq.more_help": "Need more help?",
|
||
"section.character_memory": "👤 Character Memory",
|
||
"character.title": "Character Memory Management",
|
||
"character.desc": "Maintain visual consistency for characters",
|
||
"character.add_button": "➕ Add Character",
|
||
"character.name": "Character Name",
|
||
"character.type": "Type",
|
||
"character.appearance": "Appearance",
|
||
"character.clothing": "Clothing",
|
||
"character.features": "Features (comma separated)",
|
||
"character.ref_image": "Reference Image",
|
||
"character.no_characters": "No characters registered",
|
||
"character.registered_count": "{count} characters registered",
|
||
"character.type.person": "Person",
|
||
"character.type.animal": "Animal",
|
||
"character.type.creature": "Creature",
|
||
"character.type.object": "Object"
|
||
}
|
||
} |