Home
Softono
cut-it-out

cut-it-out

Open source MIT Python
22
Stars
1
Forks
1
Issues
1
Watchers
1 year
Last Commit

About cut-it-out

Cut-It-Out is an AI-first visual editor for trimming and cutting media

Platforms

Web Self-hosted

Languages

Python

Links

Cut-It-Out

A lightweight, cross-platform video editor focused on quick and simple cuts. Perfect for removing unwanted sections from video recordings, lectures, or any other video content.

Cut-It-Out Screenshot

Features

  • πŸŽ₯ Simple, intuitive video cutting interface
  • 🌊 Audio waveform visualization for precise cuts
  • ⌨️ Keyboard shortcuts for efficient editing
  • 🎯 Frame-accurate cutting
  • πŸ”„ Non-destructive editing
  • πŸ’» Cross-platform (Windows, macOS, Linux)

Requirements

  • Python 3.7 or higher
  • VLC media player
  • FFmpeg

System-specific Requirements

Windows

  • VLC media player (64-bit version if using 64-bit Python)
  • FFmpeg added to system PATH

macOS

brew install vlc ffmpeg

Linux (Ubuntu/Debian)

sudo apt-get install vlc ffmpeg python3-dev

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/cut-it-out.git
    cd cut-it-out
  2. Create and activate a virtual environment:

    python -m venv venv
    # Windows
    venv\Scripts\activate
    # macOS/Linux
    source venv/bin/activate
  3. Install dependencies:

    pip install -r requirements.txt

Running the Application

From the project directory:

python main.py

Usage

  1. Click "Load Video" to open your video file
  2. Click on the timeline to set start point (green marker)
  3. Click again to set end point (red marker)
  4. Use keyboard shortcuts for precise control:
    • ESC: Remove last marker
    • DELETE: Remove selected section
    • SPACE: Play/Pause
    • ←/β†’: Step frame by frame
  5. Click "Export" to save your edited video

Project Structure

cut-it-out/
β”œβ”€β”€ main.py                 # Application entry point
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ video_player.py     # Video playback component
β”‚   β”œβ”€β”€ unified_timeline.py # Timeline with waveform
β”‚   └── progress_dialog.py  # Loading progress feedback
β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ audio_processor.py  # Audio waveform extraction
β”‚   β”œβ”€β”€ video_processor.py  # Video processing utilities
β”‚   └── async_worker.py     # Async loading handler
└── requirements.txt        # Python dependencies

Dependencies

PySide6>=6.4.0
python-vlc>=3.0.18122
pyqtgraph>=0.13.1
numpy>=1.21.0
pydub>=0.25.1

Known Issues

  • VLC media player must be installed and match Python architecture (32/64-bit)
  • Some video codecs might require additional system codecs
  • On Windows, FFmpeg must be properly added to system PATH

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.