{ "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 default", "status.connection_success": "βœ… Connected", "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.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", "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?" } }