OpenCut-app / OpenCut-app/OpenCut
[FEATURE] Feature Request: Python API for Batch Asset/Subtitle Management & Pipeline Automation
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 89.8k
- Forks
- 8.9k
- PR merge metrics
- No merged PRs in 30d
Description
Problem
Currently, users must manually perform repetitive editing tasks through the GUI. This creates bottlenecks for:
Batch subtitle import/export (SRT/VTT)
Media asset management at scale
Automated timeline assembly workflows
Integration with external tools (ML captioning, QC systems)
Manual workflows make it impossible to build reusable editing pipelines or integrate OpenCut into production environments.
Solution
Implement Python API with this core functionality:
import opencut
# 1. Batch processing
project = opencut.load_project("demo")
project.import_subtitles(["intro.srt", "scene_*.vtt"], format="vtt")
project.export_assets(output_dir="/exports", pattern="*.mp4")
# 2. Timeline automation
timeline = project.create_timeline()
timeline.auto_sequence(clips=project.assets, transition="crossfade")
timeline.apply_template("news_package")
timeline.render("final.mp4", preset="4k")
# 3. Extensibility hooks
@opencut.hook("pre_render")
def color_correction(timeline):
timeline.apply_lut("film_emulation.cube")
External integration
from autocaptions import generate_subs
project.import_subtitles(generate_subs("presentation.mp4"))
Alternative
| Option | Drawback |
|---|---|
| CLI | Limited workflow composability |
| JS API | Incompatible with Python ML stack |
| External scripts | No project state access |
Anything else?
Use Cases:
- Newsrooms: Auto-daily highlight reels
- Education: Bulk lecture processing
- Localization: Multi-language subtitles
Roadmap:
- v0.5: Read-only API
- v1.0: Asset/subtitle write ops
- v1.5: Full timeline control
Tech Notes:
- Bindings: Pybind11/Cython
- Backend: Existing FFmpeg integration
- Security: Plugin sandboxing
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing project architecture and its FFmpeg integration, then compare them with the proposed Python API, bindings, and plugin-sandboxing notes. The issue does not identify files, tests, or a settled scope; done would require agreeing on a roadmap phase and implementing its defined API surface.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, typescript
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100