A simple Python GUI application for video editing using FFmpeg. This application provides tools for viewing video information, removing/adding logos, deleting video sections, and converting video formats.
- Video Information Extraction: View comprehensive video metadata including dimensions, format, codec, bitrate, frame rate, duration, and more
- Logo Removal: Remove logos from videos using blur or inpaint methods with visual selection, preset positions, or manual coordinates
- Logo Addition: Add logos to videos with customizable position, scale, and opacity
- Video Section Deletion: Delete specific sections from videos by specifying start and end times
- Format Conversion: Convert videos between different formats (MP4, AVI, MKV, MOV, WebM)
- Python 3.7 or higher
- FFmpeg (including ffprobe) must be installed and available in your system PATH
Install Python dependencies using pip:
pip install -r requirements.txtThe required packages are:
opencv-python- For video frame extraction and visual selectionPillow- For image handling and logo processing
-
Install FFmpeg (if not already installed):
Linux (Ubuntu/Debian):
sudo apt-get update sudo apt-get install ffmpeg
macOS:
brew install ffmpeg
Windows:
- Download from FFmpeg website
- Extract and add to system PATH
-
Clone or download this repository
-
Install Python dependencies:
pip install -r requirements.txt
-
Verify FFmpeg installation:
ffmpeg -version ffprobe -version
python main.py-
Select a Video File:
- Click "Select Video File" button
- Choose a video file from your system
- Video information will be automatically displayed
-
View Video Information:
- Video metadata is displayed in the left panel
- Includes file properties, video stream details, and audio stream details
-
Play Video:
- Click "Play Video" button to open the video in your system's default player
-
Remove Logo:
- Go to "Logo Editor" tab → "Remove Logo"
- Choose removal method (Blur or Inpaint)
- Select position using:
- Visual selection (draw rectangle on preview)
- Preset positions (top-left, top-right, etc.)
- Manual coordinates (x, y, width, height)
- Click "Remove Logo" and choose output file location
-
Add Logo:
- Go to "Logo Editor" tab → "Add Logo"
- Click "Browse" to select a logo image file (PNG recommended for transparency)
- Choose position (preset, manual, or visual selection)
- Adjust scale and opacity
- Click "Add Logo" and choose output file location
-
Delete Video Section:
- Go to "Video Trimmer" tab
- Enter start and end times (HH:MM:SS format or seconds)
- Preview shows the section to be deleted and resulting duration
- Click "Delete Section" and choose output file location
-
Convert Format:
- Go to "Format Conversion" tab
- Select output format and quality
- Click "Convert Video" and choose output file location
The application supports two time formats:
- HH:MM:SS: Hours:Minutes:Seconds (e.g., "00:20:00" for 20 minutes)
- Seconds: Total seconds as a number (e.g., "1200" for 20 minutes)
- MP4, AVI, MKV, MOV, WMV, FLV, WebM, M4V, MPG, MPEG, 3GP, OGV, TS, MTS
- PNG (recommended for transparency support)
- JPG, JPEG, GIF, BMP
- Video processing operations may take time depending on video size and length
- Original video files are not modified; all operations create new output files
- For best logo removal results, use the inpaint method
- For logo addition, PNG files with transparency work best
- The application uses FFmpeg's copy codec when possible to preserve quality and speed up processing
FFmpeg not found:
- Ensure FFmpeg is installed and in your system PATH
- Verify installation with
ffmpeg -version
Video playback fails:
- Ensure you have a video player installed (VLC, mpv, or system default)
Processing errors:
- Check that input files are valid video files
- Ensure output directory is writable
- Check available disk space
This project is provided as-is for educational and personal use.
- Built with Python, Tkinter, and FFmpeg
- Uses OpenCV for video frame extraction
- Uses Pillow for image processing