shazee
  • work
  • services
  • contact
  • extras
  • work
  • services
  • contact
  • extras
View Live

Video Splitter

2025

A cross-platform Python desktop tool built with Tkinter and ttkbootstrap for splitting video files into equal-length segments. Features background worker threads, live progress monitoring, and automated FFmpeg video segment export to organized folders.

Video Splitter is an open-source desktop tool built to automate the chore of cutting long videos into equal-length clips. It is designed for creators preparing footage for platforms like WhatsApp Status, Instagram Stories, and TikTok.

The tool features a modern dark GUI styled with ttkbootstrap's Cyborg theme. Users choose input video files (.mp4, .avi), specify segment duration in minutes and seconds, and export with visual progress tracking and automated folder organization.

I developed the utility in Python using MoviePy and imageio-ffmpeg for media processing. To keep the UI responsive during video encoding, I built a multi-threaded architecture decoupling FFmpeg rendering from the Tkinter event loop.

Tech
PythonTkinterttkbootstrapMoviePyFFmpegThreading
ClientOpen Source Project
RoleAuthor & Developer
CategoryOpen Source & Desktop Utility
Duration1 month

Challenge

Video processing with MoviePy and FFmpeg is computationally intensive. Running media rendering directly on the standard Tkinter main loop caused the desktop GUI to freeze completely, preventing progress bar updates and stopping user cancellation.

Solution

I implemented a multi-threaded execution pipeline using Python's threading library. Video slicing is offloaded to background threads while thread-safe callbacks periodically update ttkbootstrap progress indicators, keeping the user interface completely responsive throughout.

Interested in something similar?

Have a project in mind or want to know more about how this was built? Drop me a message, I'd love to connect.

Ask me about this project
Previous Project
Gym Management System
Next Project
8D Audio Converter