🚀 AI 全自动短视频引擎 | AI Fully Automated Short Video Engine
560 matches across 14 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | web/pipelines/digital_human.py | 38 | # ==================================================================== |
| MEDIUM | web/pipelines/digital_human.py | 40 | # ==================================================================== |
| MEDIUM | web/pipelines/digital_human.py | 47 | # ==================================================================== |
| MEDIUM | web/pipelines/digital_human.py | 49 | # ==================================================================== |
| MEDIUM | web/pipelines/digital_human.py | 55 | # ==================================================================== |
| MEDIUM | web/pipelines/digital_human.py | 57 | # ==================================================================== |
| MEDIUM | web/pipelines/standard.py | 51 | # ==================================================================== |
| MEDIUM | web/pipelines/standard.py | 53 | # ==================================================================== |
| MEDIUM | web/pipelines/standard.py | 64 | # ==================================================================== |
| MEDIUM | web/pipelines/standard.py | 66 | # ==================================================================== |
| MEDIUM | web/pipelines/standard.py | 71 | # ==================================================================== |
| MEDIUM | web/pipelines/standard.py | 73 | # ==================================================================== |
| MEDIUM | web/pipelines/action_transfer.py | 38 | # ==================================================================== |
| MEDIUM | web/pipelines/action_transfer.py | 40 | # ==================================================================== |
| MEDIUM | web/pipelines/action_transfer.py | 45 | # ==================================================================== |
| MEDIUM | web/pipelines/action_transfer.py | 47 | # ==================================================================== |
| MEDIUM | web/pipelines/action_transfer.py | 52 | # ==================================================================== |
| MEDIUM | web/pipelines/action_transfer.py | 54 | # ==================================================================== |
| MEDIUM | web/pipelines/i2v.py | 37 | # ==================================================================== |
| MEDIUM | web/pipelines/i2v.py | 39 | # ==================================================================== |
| MEDIUM | web/pipelines/i2v.py | 44 | # ==================================================================== |
| MEDIUM | web/pipelines/i2v.py | 46 | # ==================================================================== |
| MEDIUM | web/pipelines/asset_based.py | 56 | # ==================================================================== |
| MEDIUM | web/pipelines/asset_based.py | 58 | # ==================================================================== |
| MEDIUM | web/pipelines/asset_based.py | 64 | # ==================================================================== |
| MEDIUM | web/pipelines/asset_based.py | 66 | # ==================================================================== |
| MEDIUM | web/pipelines/asset_based.py | 70 | # ==================================================================== |
| MEDIUM | web/pipelines/asset_based.py | 72 | # ==================================================================== |
| MEDIUM | web/utils/streamlit_helpers.py | 32 | # ============================================================================ |
| MEDIUM | web/utils/streamlit_helpers.py | 34 | # ============================================================================ |
| MEDIUM | web/components/style_config.py | 32 | # ==================================================================== |
| MEDIUM | web/components/style_config.py | 62 | # ================================================================ |
| MEDIUM | web/components/style_config.py | 64 | # ================================================================ |
| MEDIUM | web/components/style_config.py | 122 | # ================================================================ |
| MEDIUM | web/components/style_config.py | 124 | # ================================================================ |
| MEDIUM | web/components/style_config.py | 182 | # ================================================================ |
| MEDIUM | web/components/style_config.py | 184 | # ================================================================ |
| MEDIUM | web/components/style_config.py | 232 | # ==================================================================== |
| MEDIUM | web/components/style_config.py | 234 | # ==================================================================== |
| MEDIUM | web/components/style_config.py | 675 | # ==================================================================== |
| MEDIUM | web/components/style_config.py | 677 | # ==================================================================== |
| MEDIUM | web/components/settings.py | 34 | # ==================================================================== |
| MEDIUM | web/components/settings.py | 36 | # ==================================================================== |
| MEDIUM | web/components/settings.py | 205 | # ==================================================================== |
| MEDIUM | web/components/settings.py | 207 | # ==================================================================== |
| MEDIUM | web/components/settings.py | 293 | # ==================================================================== |
| MEDIUM | web/components/settings.py | 295 | # ==================================================================== |
| MEDIUM | web/components/content_input.py | 28 | # ==================================================================== |
| MEDIUM | web/components/content_input.py | 30 | # ==================================================================== |
| MEDIUM | web/components/content_input.py | 38 | # ================================================================ |
| MEDIUM | web/components/content_input.py | 40 | # ================================================================ |
| MEDIUM | web/components/content_input.py | 112 | # ================================================================ |
| MEDIUM | web/components/content_input.py | 114 | # ================================================================ |
| MEDIUM | web/components/digital_tts_config.py | 31 | # ==================================================================== |
| MEDIUM | web/components/digital_tts_config.py | 61 | # ================================================================ |
| MEDIUM | web/components/digital_tts_config.py | 63 | # ================================================================ |
| MEDIUM | web/components/digital_tts_config.py | 121 | # ================================================================ |
| MEDIUM | web/components/digital_tts_config.py | 123 | # ================================================================ |
| MEDIUM | web/components/digital_tts_config.py | 152 | # ================================================================ |
| MEDIUM | web/components/digital_tts_config.py | 154 | # ================================================================ |
| 30 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | pixelle_video/service.py | 260 | Generate video using specified pipeline Args: text: Input text |
| HIGH | pixelle_video/tts_voices.py | 226 | Convert speed multiplier to Edge TTS rate parameter Args: speed: Speed multiplier (1.0 = normal, 1 |
| HIGH | pixelle_video/pipelines/base.py | 79 | Execute the pipeline Args: text: Input text (meaning varies by pipeline) |
| HIGH | pixelle_video/utils/content_generators.py | 465 | Parse JSON from text, with fallback to extract JSON from markdown code blocks Args: text: Text con |
| HIGH | pixelle_video/utils/template_util.py | 34 | Parse video size from template path Args: template_path: Template path like "templates/1080x1920/d |
| HIGH | pixelle_video/utils/template_util.py | 122 | List all templates available for a given size (merged from templates/ and data/templates/) Args: s |
| HIGH | pixelle_video/utils/template_util.py | 145 | Get full template path from size and template name (checks data/templates/ first, then templates/) Args: |
| HIGH | pixelle_video/utils/template_util.py | 198 | Format template display information for UI Returns structured data for UI layer to handle display and i18n |
| HIGH | pixelle_video/utils/template_util.py | 317 | Resolve template input to full path with validation (checks data/templates/ first, then templates/) Args: |
| HIGH | pixelle_video/utils/template_util.py | 390 | Detect template type from template filename Template naming convention: - static_*.html: Static style |
| HIGH | pixelle_video/utils/template_util.py | 433 | Filter templates by type Args: templates: List of TemplateInfo objects template_type: Type |
| HIGH | pixelle_video/utils/template_util.py | 460 | Get templates grouped by size, optionally filtered by type Args: template_type: Optional type filt |
| HIGH | pixelle_video/utils/os_util.py | 331 | Get resource file path with custom override support Search priority: 1. data/{resource_type}/*path |
| HIGH | pixelle_video/utils/os_util.py | 384 | List resource files with custom override support Merges files from both default and custom locations: |
| HIGH | pixelle_video/utils/os_util.py | 432 | List subdirectories in resource directory Merges directories from both default and custom locations. |
| HIGH | pixelle_video/utils/os_util.py | 472 | Check if resource file exists (in custom or default location) Args: resource_type: Resource type ( |
| HIGH | pixelle_video/utils/llm_util.py | 25 | Fetch available models from an OpenAI-compatible API endpoint. Uses the standard GET /v1/models endpoint w |
| HIGH | pixelle_video/utils/workflow_util.py | 35 | Resolve workflow path using standardized naming convention Convention: workflows/{source}/{service_name}.j |
| HIGH | pixelle_video/utils/prompt_helper.py | 21 | Build final image prompt with optional prefix Args: prompt: User's raw prompt prefix: Opti |
| HIGH | pixelle_video/services/comfy_base_service.py | 194 | Resolve workflow key to workflow info Args: workflow: Workflow key (e.g., "running |
| HIGH | pixelle_video/services/media.py | 130 | Generate media (image or video) using workflow Media type must be specified explicitly via med |
| HIGH | pixelle_video/services/tts_service.py | 81 | Generate speech using local Edge TTS or ComfyUI workflow Args: text: Text to conve |
| HIGH | pixelle_video/services/image_analysis.py | 78 | Analyze an image using workflow Args: image_path: Path to the image file (local or |
| HIGH | pixelle_video/services/llm_service.py | 129 | Generate text using LLM Args: prompt: The prompt to generate from api_ |
| HIGH | pixelle_video/services/video_analysis.py | 78 | Analyze a video using workflow Args: video_path: Path to the video file (local or |
| HIGH | pixelle_video/services/video.py | 312 | Merge audio with video with intelligent duration adjustment Automatically handles duration mis |
| HIGH | pixelle_video/services/video.py | 521 | Overlay a transparent image on top of video Args: video: Base video file path |
| HIGH | pixelle_video/services/video.py | 608 | Create video from static image and audio Args: image: Image file path |
| HIGH | pixelle_video/services/video.py | 687 | Add background music to video Args: video: Video file path bgm: Backgr |
| HIGH | pixelle_video/services/video.py | 772 | Internal helper to add BGM to video with path resolution Args: video: Video file p |
| HIGH | pixelle_video/services/video.py | 823 | Resolve BGM path (filename or custom path) with custom override support Search priority: |
| HIGH | pixelle_video/services/video.py | 887 | Trim video to specified duration Args: video: Input video file path ta |
| HIGH | pixelle_video/services/video.py | 921 | Pad video to specified duration by extending the last frame or adding black frames Args: |
| HIGH | api/routers/video.py | 35 | Convert file path to accessible URL Handles both absolute and relative paths, extracting the path relative |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | packaging/windows/build.py | 141 | except Exception as e: |
| LOW | packaging/windows/build.py | 211 | except Exception as e: |
| LOW | packaging/windows/build.py | 228 | except Exception as e: |
| LOW | packaging/windows/build.py | 655 | except Exception as e: |
| LOW | web/pipelines/digital_human.py | 665 | except Exception as e: |
| LOW | web/pipelines/action_transfer.py | 387 | except Exception as e: |
| LOW | web/pipelines/i2v.py | 300 | except Exception as e: |
| LOW | web/pipelines/asset_based.py | 436 | except Exception as e: |
| LOW | web/utils/async_helpers.py | 41 | except Exception as e: |
| LOW | web/utils/async_helpers.py | 59 | except Exception as e: |
| LOW | web/utils/batch_manager.py | 130 | except Exception as e: |
| LOW | web/state/session.py | 72 | except Exception as e: |
| LOW | web/components/style_config.py | 228 | except Exception as e: |
| LOW | web/components/style_config.py | 671 | except Exception as e: |
| LOW | web/components/style_config.py | 844 | except Exception as e: |
| LOW | web/components/settings.py | 173 | except Exception as e: |
| LOW | web/components/settings.py | 189 | except Exception as e: |
| LOW | web/components/settings.py | 243 | except Exception as e: |
| LOW | web/components/settings.py | 324 | except Exception as e: |
| LOW | web/components/content_input.py | 209 | except Exception as e: |
| LOW | web/components/content_input.py | 254 | except Exception as e: |
| LOW | web/components/faq.py | 56 | except Exception as e: |
| LOW | web/components/digital_tts_config.py | 198 | except Exception as e: |
| LOW | web/components/output_preview.py | 207 | except Exception as e: |
| LOW | web/i18n/__init__.py | 44 | except Exception as e: |
| LOW | web/i18n/__init__.py | 159 | except Exception as e: |
| LOW | web/i18n/__init__.py | 187 | except Exception as e: |
| LOW | web/i18n/__init__.py | 195 | except Exception as e: |
| LOW | web/i18n/__init__.py | 203 | except Exception as e: |
| LOW | web/i18n/__init__.py | 235 | except Exception as e: |
| LOW | web/pages/2_📚_History.py | 254 | except Exception as e: |
| LOW | pixelle_video/service.py | 166 | except Exception as e: |
| LOW | pixelle_video/service.py | 234 | except Exception as e: |
| LOW | pixelle_video/config/loader.py | 45 | except Exception as e: |
| LOW | pixelle_video/config/loader.py | 62 | except Exception as e: |
| LOW | pixelle_video/pipelines/custom.py | 399 | except Exception as e: |
| LOW | pixelle_video/pipelines/custom.py | 462 | except Exception as e: |
| LOW | pixelle_video/pipelines/standard.py | 515 | except Exception as e: |
| LOW | pixelle_video/pipelines/linear.py | 121 | except Exception as e: |
| LOW | pixelle_video/pipelines/asset_based.py | 152 | except Exception as e: |
| LOW | pixelle_video/pipelines/asset_based.py | 250 | except Exception as e: |
| LOW | pixelle_video/pipelines/asset_based.py | 847 | except Exception as e: |
| LOW | pixelle_video/utils/content_generators.py | 454 | except Exception as e: |
| LOW | pixelle_video/utils/tts_util.py | 215 | except Exception as e: |
| LOW | pixelle_video/utils/tts_util.py | 243 | except Exception as e: |
| LOW | pixelle_video/utils/tts_util.py | 338 | except Exception as e: |
| LOW | pixelle_video/utils/llm_util.py | 105 | except Exception as e: |
| LOW | pixelle_video/services/comfy_base_service.py | 126 | except Exception as e: |
| LOW | pixelle_video/services/media.py | 104 | except Exception as e: |
| LOW | pixelle_video/services/media.py | 285 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 193 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 254 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 293 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 134 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 159 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 226 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 445 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 455 | except Exception as e: |
| LOW | pixelle_video/services/persistence.py | 672 | except Exception as e: |
| LOW | pixelle_video/services/frame_html.py | 110 | except Exception as e: |
| 38 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | packaging/windows/build.py | 24 | |
| LOW | web/pipelines/digital_human.py | 14 | |
| LOW | web/pipelines/__init__.py | 19 | |
| LOW | web/pipelines/__init__.py | 19 | |
| LOW | web/pipelines/__init__.py | 19 | |
| LOW | web/pipelines/__init__.py | 19 | |
| LOW | web/pipelines/__init__.py | 27 | |
| LOW | web/pipelines/__init__.py | 28 | |
| LOW | web/pipelines/__init__.py | 29 | |
| LOW | web/pipelines/__init__.py | 30 | |
| LOW | web/pipelines/__init__.py | 31 | |
| LOW | web/utils/batch_manager.py | 16 | |
| LOW | web/components/output_preview.py | 17 | |
| LOW | web/components/output_preview.py | 19 | |
| LOW | web/pages/2_📚_History.py | 29 | |
| LOW | pixelle_video/__init__.py | 46 | |
| LOW | pixelle_video/__init__.py | 46 | |
| LOW | pixelle_video/__init__.py | 47 | |
| LOW | pixelle_video/config/__init__.py | 32 | |
| LOW | pixelle_video/config/__init__.py | 32 | |
| LOW | pixelle_video/config/__init__.py | 32 | |
| LOW | pixelle_video/config/__init__.py | 32 | |
| LOW | pixelle_video/config/__init__.py | 32 | |
| LOW | pixelle_video/config/__init__.py | 32 | |
| LOW | pixelle_video/config/__init__.py | 34 | |
| LOW | pixelle_video/config/__init__.py | 34 | |
| LOW | pixelle_video/pipelines/standard.py | 23 | |
| LOW | pixelle_video/pipelines/standard.py | 23 | |
| LOW | pixelle_video/pipelines/standard.py | 23 | |
| LOW | pixelle_video/pipelines/standard.py | 23 | |
| LOW | pixelle_video/pipelines/standard.py | 31 | |
| LOW | pixelle_video/pipelines/__init__.py | 20 | |
| LOW | pixelle_video/pipelines/__init__.py | 21 | |
| LOW | pixelle_video/pipelines/__init__.py | 21 | |
| LOW | pixelle_video/pipelines/__init__.py | 22 | |
| LOW | pixelle_video/pipelines/__init__.py | 23 | |
| LOW | pixelle_video/pipelines/__init__.py | 24 | |
| LOW | pixelle_video/pipelines/asset_based.py | 594 | |
| LOW | pixelle_video/utils/template_util.py | 17 | |
| LOW | pixelle_video/utils/template_util.py | 23 | |
| LOW | pixelle_video/prompts/image_generation.py | 20 | |
| LOW | pixelle_video/prompts/__init__.py | 20 | |
| LOW | pixelle_video/prompts/__init__.py | 21 | |
| LOW | pixelle_video/prompts/__init__.py | 22 | |
| LOW | pixelle_video/prompts/__init__.py | 25 | |
| LOW | pixelle_video/prompts/__init__.py | 25 | |
| LOW | pixelle_video/prompts/__init__.py | 25 | |
| LOW | pixelle_video/prompts/__init__.py | 30 | |
| LOW | pixelle_video/services/comfy_base_service.py | 22 | |
| LOW | pixelle_video/services/media.py | 22 | |
| LOW | pixelle_video/services/tts_service.py | 22 | |
| LOW | pixelle_video/services/__init__.py | 29 | |
| LOW | pixelle_video/services/__init__.py | 30 | |
| LOW | pixelle_video/services/__init__.py | 31 | |
| LOW | pixelle_video/services/__init__.py | 33 | |
| LOW | pixelle_video/services/__init__.py | 34 | |
| LOW | pixelle_video/services/__init__.py | 35 | |
| LOW | pixelle_video/services/__init__.py | 36 | |
| LOW | pixelle_video/services/image_analysis.py | 22 | |
| LOW | pixelle_video/services/video_analysis.py | 22 | |
| 36 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | config.example.yaml | 1 | # Pixelle-Video Configuration |
| LOW | config.example.yaml | 41 | prompt_prefix: "Minimalist black-and-white matchstick figure style illustration, clean lines, simple sketch style" |
| LOW | config.example.yaml | 61 | # - video_*.html: Templates requiring AI-generated videos |
| LOW | web/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/app.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/pipelines/standard.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/pipelines/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/pipelines/base.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/pipelines/asset_based.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/utils/async_helpers.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/utils/streamlit_helpers.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/utils/batch_manager.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/state/session.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/header.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/style_config.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/settings.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/content_input.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/faq.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/digital_tts_config.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/components/output_preview.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/i18n/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/pages/2_📚_History.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | web/pages/1_🎬_Home.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/service.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/tts_voices.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/llm_presets.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/config/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/config/loader.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/config/manager.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/config/schema.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/pipelines/custom.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/pipelines/standard.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/pipelines/linear.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/pipelines/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/pipelines/base.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/pipelines/asset_based.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/content_generators.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/template_util.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/tts_util.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/os_util.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/llm_util.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/workflow_util.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/utils/prompt_helper.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/models/media.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/models/storyboard.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/models/progress.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/topic_narration.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/image_generation.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/title_generation.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/__init__.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/style_conversion.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/asset_script_generation.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/content_narration.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/prompts/video_generation.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/services/comfy_base_service.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/services/media.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/services/persistence.py | 1 | # Copyright (C) 2025 AIDC-AI |
| LOW | pixelle_video/services/frame_html.py | 1 | # Copyright (C) 2025 AIDC-AI |
| 35 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | docker-start.sh | 10 | # Check if config.yaml exists as a directory (Docker mount issue) |
| LOW | docker-start.sh | 16 | # Check if config.yaml exists, if not, create from example |
| LOW | docker-start.sh | 37 | # Check if docker-compose is available |
| LOW | packaging/windows/build.py | 184 | # Check if path exists |
| LOW | packaging/windows/build.py | 202 | # Check if pip is available |
| LOW | web/pipelines/digital_human.py | 111 | # Check if image |
| LOW | web/pipelines/digital_human.py | 136 | # Check if RunningHub API key is configured |
| LOW | web/pipelines/digital_human.py | 239 | # Check if image |
| LOW | web/pipelines/digital_human.py | 631 | # Display result |
| LOW | web/pipelines/action_transfer.py | 104 | # Check if image |
| LOW | web/pipelines/action_transfer.py | 165 | # Check if image |
| LOW | web/pipelines/action_transfer.py | 354 | # Display result |
| LOW | web/pipelines/i2v.py | 110 | # Check if image |
| LOW | web/pipelines/i2v.py | 267 | # Display result |
| LOW | web/pipelines/asset_based.py | 126 | # Check if image or video |
| LOW | web/pipelines/asset_based.py | 194 | # Check if RunningHub API key is configured |
| LOW | web/pipelines/asset_based.py | 296 | # Check if assets are provided |
| LOW | web/pipelines/asset_based.py | 400 | # Display result |
| LOW | web/utils/streamlit_helpers.py | 51 | # Check if this is a transition TO selfhost |
| LOW | web/state/session.py | 60 | # Check if we need to create or recreate core instance |
| LOW | web/components/style_config.py | 678 | # Check if current template requires media generation |
| LOW | web/components/settings.py | 26 | # Check if system is configured |
| LOW | web/components/settings.py | 275 | # Check if instance type is "plus" (48G VRAM enabled) |
| LOW | web/components/output_preview.py | 32 | # Check if batch mode |
| LOW | web/components/output_preview.py | 68 | # Check if system is configured |
| LOW | web/components/output_preview.py | 222 | # Check if topics are provided |
| LOW | web/components/output_preview.py | 358 | # Display results summary |
| LOW | web/pages/2_📚_History.py | 394 | # Check if we need to show a detail view |
| LOW | pixelle_video/service.py | 159 | # Check if we need to create or recreate ComfyKit |
| LOW | pixelle_video/pipelines/standard.py | 298 | # Check if using RunningHub workflows for parallel processing |
| LOW | pixelle_video/utils/template_util.py | 237 | # Check if it's a standard size (only these three) |
| LOW | pixelle_video/services/comfy_base_service.py | 164 | # Check if it's a wrapper format (RunningHub, etc.) |
| LOW | pixelle_video/services/video.py | 389 | # Check if video has audio stream |
| LOW | api/routers/files.py | 64 | # Check if path starts with allowed prefix, otherwise try output/ |
| LOW | api/routers/files.py | 88 | # Check if path starts with any allowed prefix |
| LOW | api/routers/video.py | 63 | # Check if it's an absolute path (works for both Windows and Linux) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | packaging/windows/build.py | 76 | |
| LOW | packaging/windows/build.py | 153 | |
| LOW | packaging/windows/build.py | 363 | |
| LOW | packaging/windows/build.py | 469 | |
| LOW | packaging/windows/build.py | 475 | |
| LOW | web/pipelines/digital_human.py | 69 | |
| LOW | web/pipelines/digital_human.py | 183 | |
| LOW | web/pipelines/digital_human.py | 284 | |
| LOW | web/pipelines/digital_human.py | 371 | |
| LOW | web/pipelines/action_transfer.py | 63 | |
| LOW | web/pipelines/action_transfer.py | 124 | |
| LOW | web/pipelines/action_transfer.py | 223 | |
| LOW | web/pipelines/action_transfer.py | 285 | |
| LOW | web/pipelines/i2v.py | 54 | |
| LOW | web/pipelines/i2v.py | 153 | |
| LOW | web/pipelines/i2v.py | 202 | |
| LOW | web/pipelines/asset_based.py | 84 | |
| LOW | web/pipelines/asset_based.py | 287 | |
| LOW | web/pipelines/asset_based.py | 333 | |
| LOW | web/utils/batch_manager.py | 38 | |
| LOW | web/components/style_config.py | 29 | |
| LOW | web/components/settings.py | 24 | |
| LOW | web/components/content_input.py | 23 | |
| LOW | web/components/content_input.py | 190 | |
| LOW | web/components/faq.py | 105 | |
| LOW | web/components/digital_tts_config.py | 28 | |
| LOW | web/components/output_preview.py | 43 | |
| LOW | web/components/output_preview.py | 215 | |
| LOW | web/i18n/__init__.py | 128 | |
| LOW | web/pages/2_📚_History.py | 164 | |
| LOW | web/pages/2_📚_History.py | 262 | |
| LOW | web/pages/2_📚_History.py | 375 | |
| LOW | pixelle_video/pipelines/asset_based.py | 161 | |
| LOW | pixelle_video/pipelines/asset_based.py | 299 | |
| LOW | pixelle_video/pipelines/asset_based.py | 534 | |
| LOW | pixelle_video/utils/content_generators.py | 269 | |
| LOW | pixelle_video/utils/content_generators.py | 372 | |
| LOW | pixelle_video/utils/tts_util.py | 65 | |
| LOW | pixelle_video/utils/llm_util.py | 73 | |
| LOW | pixelle_video/services/persistence.py | 503 | |
| LOW | pixelle_video/services/frame_html.py | 231 | |
| LOW | pixelle_video/services/tts_service.py | 197 | |
| LOW | pixelle_video/services/image_analysis.py | 66 | |
| LOW | pixelle_video/services/video_analysis.py | 66 | |
| LOW | pixelle_video/services/frame_processor.py | 44 | |
| LOW | api/routers/resources.py | 200 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | packaging/windows/build.py | 310 | def prepare_python_environment(self, python_dir: Path): |
| LOW | packaging/windows/build.py | 523 | def generate_launcher_scripts(self): |
| LOW | web/pipelines/digital_human.py | 69 | def render_digital_human_input(self) -> dict: |
| LOW | web/pipelines/digital_human.py | 183 | def render_digital_human_mode(self, character_asset_paths: list) -> dict: |
| LOW | web/pipelines/digital_human.py | 371 | async def generate_digital_human_video(): |
| LOW | web/pipelines/action_transfer.py | 63 | def render_action_transfer_video_input(self, pixelle_video) -> dict: |
| LOW | web/pipelines/action_transfer.py | 124 | def render_action_transfer_assets_input(self, pixelle_video) -> dict: |
| LOW | web/pipelines/action_transfer.py | 172 | def list_action_transfer_workflows(): |
| LOW | web/pipelines/action_transfer.py | 285 | async def generate_audio_visual_video(): |
| LOW | web/pipelines/i2v.py | 54 | def render_audio_visual_input(self, pixelle_video) -> dict: |
| LOW | web/pipelines/i2v.py | 202 | async def generate_audio_visual_video(): |
| LOW | web/utils/streamlit_helpers.py | 38 | def check_and_warn_selfhost_workflow(workflow_path: str): |
| LOW | web/components/style_config.py | 236 | def get_template_preview_path(template_path: str, language: str = "zh_CN") -> str: |
| LOW | web/components/output_preview.py | 304 | def make_task_progress_callback(task_idx, topic): |
| LOW | pixelle_video/service.py | 130 | def _compute_comfykit_config_hash(self, config: dict) -> str: |
| LOW | pixelle_video/service.py | 249 | def _create_generate_video_wrapper(self): |
| LOW | pixelle_video/llm_presets.py | 76 | def find_preset_by_base_url_and_model(base_url: str, model: str) -> str | None: |
| LOW | pixelle_video/pipelines/custom.py | 482 | async def _custom_prompt_generation(self, context: str) -> str: |
| LOW | pixelle_video/pipelines/standard.py | 314 | async def process_frame_with_semaphore(i: int, frame: StoryboardFrame): |
| LOW | pixelle_video/utils/content_generators.py | 95 | async def generate_narrations_from_topic( |
| LOW | pixelle_video/utils/content_generators.py | 153 | async def generate_narrations_from_content( |
| LOW | pixelle_video/utils/template_util.py | 197 | def format_template_display_info(template_name: str, size: str) -> TemplateDisplayInfo: |
| LOW | pixelle_video/utils/template_util.py | 250 | def get_all_templates_with_info() -> List[TemplateInfo]: |
| LOW | pixelle_video/utils/template_util.py | 280 | def get_templates_grouped_by_size() -> dict: |
| LOW | pixelle_video/utils/template_util.py | 457 | def get_templates_grouped_by_size_and_type( |
| LOW | pixelle_video/utils/os_util.py | 27 | def get_pixelle_video_root_path() -> str: |
| LOW | pixelle_video/utils/os_util.py | 47 | def ensure_pixelle_video_root_path() -> str: |
| LOW | pixelle_video/utils/os_util.py | 311 | def get_task_final_video_path(task_id: str) -> str: |
| LOW | pixelle_video/prompts/topic_narration.py | 134 | def build_topic_narration_prompt( |
| LOW | pixelle_video/prompts/image_generation.py | 120 | def build_image_prompt_prompt( |
| LOW | pixelle_video/prompts/title_generation.py | 67 | def build_title_generation_prompt(content: str, max_length: int = 15) -> str: |
| LOW | pixelle_video/prompts/style_conversion.py | 35 | def build_style_conversion_prompt(description: str) -> str: |
| LOW | pixelle_video/prompts/asset_script_generation.py | 54 | def build_asset_script_prompt( |
| LOW | pixelle_video/prompts/content_narration.py | 80 | def build_content_narration_prompt( |
| LOW | pixelle_video/prompts/video_generation.py | 102 | def build_video_prompt_prompt( |
| LOW | pixelle_video/services/persistence.py | 407 | def _content_metadata_to_dict(self, metadata: ContentMetadata) -> Dict[str, Any]: |
| LOW | pixelle_video/services/persistence.py | 419 | def _dict_to_content_metadata(self, data: Dict[str, Any]) -> ContentMetadata: |
| LOW | pixelle_video/services/frame_html.py | 78 | def _check_linux_dependencies(self): |
| LOW | pixelle_video/services/frame_html.py | 125 | def _parse_media_size_from_meta(self) -> tuple[Optional[int], Optional[int]]: |
| LOW | pixelle_video/services/frame_html.py | 175 | def parse_template_parameters(self) -> Dict[str, Dict[str, Any]]: |
| LOW | pixelle_video/services/llm_service.py | 205 | async def _call_with_structured_output( |
| LOW | pixelle_video/services/llm_service.py | 252 | def _get_json_schema_instruction(self, response_type: Type[T]) -> str: |
| LOW | pixelle_video/services/frame_processor.py | 333 | async def _step_create_video_segment( |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | README_EN.md | 172 | > 💡 **Tip**: All these videos are fully automatically generated by AI just by inputting a topic keyword, without any vid |
| HIGH | config.example.yaml | 59 | # - static_*.html: Static style templates (no AI-generated media) |
| HIGH | config.example.yaml | 60 | # - image_*.html: Templates requiring AI-generated images |
| HIGH | config.example.yaml | 61 | # - video_*.html: Templates requiring AI-generated videos |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | web/components/content_input.py | 29 | # Step 1: Batch mode toggle (highest priority) |
| LOW | pixelle_video/pipelines/base.py | 43 | ... # Step 1: Generate content |
| LOW | pixelle_video/pipelines/base.py | 46 | ... # Step 2: Process frames |
| LOW | pixelle_video/pipelines/asset_based.py | 576 | # Step 1: Generate audio for each narration and combine |
| LOW | pixelle_video/pipelines/asset_based.py | 637 | # Step 2: Use FrameProcessor to generate composed frame and video |
| LOW | pixelle_video/services/frame_processor.py | 81 | # Step 1: Generate audio (TTS) |
| LOW | pixelle_video/services/frame_processor.py | 96 | # Step 2: Generate media (image or video, conditional) |
| LOW | pixelle_video/services/frame_processor.py | 119 | # Step 3: Compose frame (add subtitle) |
| LOW | pixelle_video/services/frame_processor.py | 131 | # Step 4: Create video segment |
| LOW | pixelle_video/services/frame_processor.py | 353 | # Step 1: Overlay transparent HTML image on video |
| LOW | pixelle_video/services/frame_processor.py | 364 | # Step 2: Add narration audio to the overlaid video |
| LOW | pixelle_video/services/video.py | 141 | # Step 1: Concatenate videos |
| LOW | pixelle_video/services/video.py | 147 | # Step 2: Add BGM |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | docs/zh/reference/config-schema.md | 11 | api_key: "your-api-key" |
| HIGH | docs/en/reference/config-schema.md | 11 | api_key: "your-api-key" |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | pixelle_video/pipelines/asset_based.py | 612 | # Create a file list for FFmpeg concat |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | pixelle_video/services/video.py | 439 | # Video is silent, just add the audio |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | api/tasks/manager.py | 105 | async def execute_task( |