Skip to content

1234coco/ChateniarVideoEditor

Repository files navigation

Project Logo

CHATENIARVIDEOEDITOR

Built with the tools and technologies:

JSON Python


Table of Contents


Overview

ChateniarVideoEditor is an advanced video editing automation tool that integrates with DaVinci Resolve. It provides a powerful Python-based framework for programmatically managing video editing tasks, timeline operations, and project workflows. This tool is designed to streamline the video editing process through automation and AI-assisted editing capabilities.

Key aspects:

  • Integration with DaVinci Resolve's API
  • Automated timeline management
  • Support for multiple media types (video, audio, AV)
  • Project and folder organization
  • Template-based editing operations

Features

The ChateniarVideoEditor provides a comprehensive set of features for automated video editing:

Core Features

  • DaVinci Resolve Integration: Seamless connection with DaVinci Resolve for professional video editing
  • Timeline Management: Advanced control over video/audio tracks and timeline operations
  • Media Management: Efficient handling of various media types (video, audio, combined AV)
  • Project Organization: Structured project and folder management system
  • Template System: Reusable templates for common editing operations

Editor Capabilities

  • Track Operations:
    • Add video to specific tracks
    • Insert audio in designated tracks
    • Manage combined audio/video content
    • Retrieve track contents and properties

Project Management

  • Folder Structure: Organized media and project file management
  • Media Import: Automated media importing and organization
  • Project Settings: Customizable project configuration
  • Timeline Control: Precise timeline manipulation and editing

Technical Features

  • Python-based Framework: Powerful and extensible Python implementation
  • JSON Configuration: Flexible template and settings management
  • Logging System: Comprehensive logging for debugging and monitoring
  • Cache Management: Efficient caching system for improved performance

Project Structure

└── ChateniarVideoEditor/
    ├── __pycache__
    │   ├── DaVinciResolveScript.cpython-310.pyc
    │   └── python_get_resolve.cpython-310.pyc
    ├── a.txt
    ├── ChateniarAI
    │   ├── Editor
    ├── Lib
    │   ├── __init__.py
    │   ├── __pycache__
    │   ├── DaVinciResolveScript.py
    │   ├── fusionscript.dll
    │   ├── Logger.py
    │   ├── ResolveLoader.py
    │   └── ResolveLoader.pyi
    ├── ManageProject
    │   ├── __pycache__
    │   ├── Connection.py
    │   ├── FolderManager.py
    │   ├── MediaManager.py
    │   ├── ProjectManager.py
    │   ├── ResolveDefine.py
    │   └── TimelineManager.py
    ├── Test.py
    └── VirtualEnvironment
        ├── Lib
        ├── pyvenv.cfg
        └── Scripts

Project Index

C:\USERS\LONG96\DOCUMENTS\CHATENIARVIDEOEDITOR/
__root__
⦿ __root__
File Name Summary
a.txt Code>❯ REPLACE-ME
Test.py Code>❯ REPLACE-ME
ChateniarAI
⦿ ChateniarAI
Editor
⦿ ChateniarAI.Editor
File Name Summary
EditExample.json Code>❯ REPLACE-ME
EditorMain.py Code>❯ REPLACE-ME
Cache
⦿ ChateniarAI.Editor.Cache
NahBro
⦿ ChateniarAI.Editor.Cache.NahBro
File Name Summary
copy_7126D21C-8EE3-484D-B53C-8B3B5DFB1655_property_ce5d652e-8cbc-4cac-9443-0c8dd12f1145.json Code>❯ REPLACE-ME
Template
⦿ ChateniarAI.Editor.Template
File Name Summary
addAudioToTrack.py Code>❯ REPLACE-ME
addAVToTrack.py Code>❯ REPLACE-ME
addVideoToTrack.py Code>❯ REPLACE-ME
getAudioInTrack.py Code>❯ REPLACE-ME
getAVInTrack.py Code>❯ REPLACE-ME
getVideoInTrack.py Code>❯ REPLACE-ME
ListFunction.py Code>❯ REPLACE-ME
Lib
⦿ Lib
File Name Summary
DaVinciResolveScript.py Code>❯ REPLACE-ME
Logger.py Code>❯ REPLACE-ME
ResolveLoader.py Code>❯ REPLACE-ME
ResolveLoader.pyi Code>❯ REPLACE-ME
ManageProject
⦿ ManageProject
File Name Summary
Connection.py Code>❯ REPLACE-ME
FolderManager.py Code>❯ REPLACE-ME
MediaManager.py Code>❯ REPLACE-ME
ProjectManager.py Code>❯ REPLACE-ME
ResolveDefine.py Code>❯ REPLACE-ME
TimelineManager.py Code>❯ REPLACE-ME

Getting Started

Prerequisites

This project requires the following dependencies:

  • Python: Version 3.8 or higher
  • DaVinci Resolve: Studio or Free version installed
  • Operating System: Windows 10/11
  • Additional Software:
    • Git (for version control)
    • Python virtual environment tool (recommended)

Installation

Follow these steps to set up ChateniarVideoEditor:

  1. Clone the repository:

    git clone https://github.com/1234coco/ChateniarVideoEditor.git
  2. Navigate to the project directory:

    cd ChateniarVideoEditor
  3. Create and activate a virtual environment:

    python -m venv venv
    .\venv\Scripts\activate
  4. Install the dependencies:

    pip install -r requirements.txt
  5. Configure DaVinci Resolve:

    • Ensure DaVinci Resolve is installed
    • Enable external scripting in DaVinci Resolve preferences
    • Set up proper permissions for script access

Usage

  1. Start DaVinci Resolve before running any scripts.

  2. Run the main editor:

    python ChateniarAI/Editor/EditorMain.py
  3. Use template functions:

    • Add video to track:
      from ChateniarAI.Editor.Template import addVideoToTrack
      addVideoToTrack.execute(timeline, trackIndex, mediaPath)
    • Add audio to track:
      from ChateniarAI.Editor.Template import addAudioToTrack
      addAudioToTrack.execute(timeline, trackIndex, mediaPath)
  4. Project Management:

    • Create new project:
      from ManageProject import ProjectManager
      project = ProjectManager.createProject("MyProject")
    • Manage media:
      from ManageProject import MediaManager
      MediaManager.importMedia(project, "path/to/media")

Configuration

  1. Edit EditExample.json to customize default settings:

    {
      "project": {
        "name": "MyProject",
        "resolution": "1920x1080",
        "framerate": 30
      }
    }
  2. Configure logging in Logger.py for debugging needs.

Testing

ChateniarVideoEditor includes a test suite for verifying functionality:

  1. Run all tests:

    python -m unittest discover tests
  2. Run specific test modules:

    python -m unittest tests/test_editor.py
    python -m unittest tests/test_project.py

Roadmap

  • Core Framework: Implement basic DaVinci Resolve integration and project management
  • Template System: Create reusable templates for common editing operations
  • AI Enhancement: Implement AI-assisted editing features
  • GUI Interface: Develop graphical user interface for easier operation
  • Advanced Templates: Add more sophisticated editing templates
  • Asset Management: Improve media asset organization and tagging
  • Performance Optimization: Enhance speed and efficiency of operations
  • Multi-platform Support: Extend support to other operating systems

Contributing

Contributing Guidelines
  1. Fork the Repository: Start by forking the project repository to your LOCAL account.
  2. Clone Locally: Clone the forked repository to your local machine using a git client.
    git clone C:\Users\long96\Documents\ChateniarVideoEditor
  3. Create a New Branch: Always work on a new branch, giving it a descriptive name.
    git checkout -b new-feature-x
  4. Make Your Changes: Develop and test your changes locally.
  5. Commit Your Changes: Commit with a clear message describing your updates.
    git commit -m 'Implemented new feature x.'
  6. Push to LOCAL: Push the changes to your forked repository.
    git push origin new-feature-x
  7. Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
  8. Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
Contributor Graph


License

ChateniarVideoEditor is released under the MIT License. This means you can:

  • Use the software for commercial purposes
  • Modify the source code
  • Distribute the software
  • Use and modify the software in private

For more details, refer to the LICENSE file in the repository.


Acknowledgments

  • DaVinci Resolve: For providing the powerful video editing platform and API
  • Python Community: For the extensive libraries and tools
  • Contributors: All developers who have contributed to this project
  • Documentation: Thanks to everyone who helped improve the documentation


About

Edit video bằng Davinci Resolve Với sự hỗ trợ của AI (Chưa hoàn thành đâu 😭)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages