⚡ Bolt: Cache VideoFileClip instances for faster rendering #4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
⚡ Bolt: Optimize video clip loading
💡 What: Implemented caching for
VideoFileClipinstances increate_music_video. Instead of creating a newVideoFileClipinstance for every cut (which happens inside a loop), we now load unique video files once at the beginning and reuse the instances.🎯 Why: The previous implementation re-opened the video file (and likely spawned an ffmpeg/ffprobe process) for every single cut. For a music video with many cuts (e.g. 100+), this overhead was significant.
📊 Impact: Reduces video creation time significantly. Benchmarks showed a reduction from ~24s to ~17s for a 20s output video with ~20 cuts (~30% improvement). For longer videos with more cuts, the impact is expected to be even greater.
🔬 Measurement:
Ran
benchmark.py(simulating CLI usage) before and after changes.Baseline: ~24s
Optimized: ~17s
(Variance observed, but consistently faster).
PR created automatically by Jules for task 1077710418378270077 started by @Alchemist-Production