Skip to content

Manim Sideview Incorrectly Predicts 1080p60 Output Path Despite -ql and outputPath Settings #132

@smamran

Description

@smamran

Describe the bug

The Manim Sideview extension incorrectly predicts the output file path as /home/amran/dev/python/manimcs/media/videos/demo/1080p60/Demo.mp4 when rendering with the -ql flag, which outputs to /home/amran/dev/python/manimcs/media/videos/demo/480p15/Demo.mp4. The manim-sideview.outputPath setting is also ignored, despite being set to the correct 480p15 directory. This causes the error:

Manim Sideview: Predicted output file does not exist at "/home/amran/dev/python/manimcs/media/videos/demo/1080p60/Demo.mp4" Make sure that the designated video directories are reflected in the extension log.

To Reproduce

  1. Install Manim Sideview extension in VSCode.
  2. Configure settings.json with:
    {
        "manim-sideview.commandLineArgs": "-ql",
        "manim-sideview.outputPath": "/home/amran/dev/python/manimcs/media/videos/demo/480p15",
        "manimCE.videoDir": "media/videos",
        "manimCE.sceneName": "Demo",
        "manim-sideview.previewAutoPlay": false,
        "manim-sideview.defaultManimPath": "/home/amran/dev/python/manimcs/venv/bin/manim"
    }
  3. Render a scene named Demo using Ctrl+Shift+P > "Manim: Render Scene".
  4. Observe the output channel logs showing the render succeeds at /home/amran/dev/python/manimcs/media/videos/demo/480p15/Demo.mp4, but the extension predicts /home/amran/dev/python/manimcs/media/videos/demo/1080p60/Demo.mp4.

Expected behavior

The extension should predict the output path as /home/amran/dev/python/manimcs/media/videos/demo/480p15/Demo.mp4, respecting the -ql flag (which sets 854x480, 15 FPS) and the manim-sideview.outputPath setting, and display the rendered video in the sideview.

Logs

Relevant output channel logs (timestamp: September 14, 2025, 15:02 +06):

[9/14/2025 15:2] INFO: [70489] Execution returned code=0 in 28.168 seconds
[9/14/2025 15:2] INFO: Attempting to determine the output file type for "Demo".
[9/14/2025 15:2] INFO: [59259] Render output is predicted as "Video".
[9/14/2025 15:2] INFO: File type is set to "0".
[9/14/2025 15:2] INFO: Running process for "Demo" has finished.
[9/14/2025 15:2] INFO: Predicted output file path is "/home/amran/dev/python/manimcs/media/videos/demo/1080p60/Demo.mp4" for "Demo".
[9/14/2025 15:2] ERROR: Manim Sideview: Predicted output file does not exist at "/home/amran/dev/python/manimcs/media/videos/demo/1080p60/Demo.mp4" Make sure that the designated video directories are reflected in the extension log.

Screenshots

N/A (issue is in output path prediction, no visual component beyond error message).

Environment

  • Manim Sideview Extension Version: [Specify your version, e.g., check in VSCode Extensions view]
  • Manim Version: 0.19.0 (confirmed via logs)
  • VSCode Version: [Specify your version, e.g., run code --version]
  • OS: Linux (assumed from file paths, e.g., Ubuntu or similar)
  • Python Version: [Specify, e.g., run /home/amran/dev/python/manimcs/venv/bin/python --version]
  • Manim Executable: /home/amran/dev/python/manimcs/venv/bin/manim

Additional context

  • The -ql flag correctly renders the video to /home/amran/dev/python/manimcs/media/videos/demo/480p15/Demo.mp4, as confirmed by checking the output directory.
  • Manually selecting the 480p15/Demo.mp4 file via Ctrl+Shift+P > "Manim: Play Media" works, indicating the render is correct, and the issue is solely with the extension’s path prediction.
  • The manim-sideview.outputPath setting is ignored, suggesting a bug in the extension’s logic for handling output paths with -ql.
  • No manim.cfg file is present in the project or home directory (assumed, please confirm).
  • This issue matches similar reports, e.g., Issue #45 and Issue #102, where the extension fails to detect resolution changes.

Suggested Fix

The extension should:

  1. Respect manim-sideview.outputPath when set in settings.json.
  2. Parse Manim’s console output (e.g., File ready at ...) to dynamically detect the correct output path, as suggested in Issue #102.
  3. Avoid defaulting to 1080p60 when -ql or other resolution flags are used.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions