Skip to main content

Trimmy

Vertical split-crop video editor. Take any video, pick two crop regions, stack them top-and-bottom into a 9:16 frame, and export optimized for social media.

The output stacks the two crops vertically into a single 9:16 video — ideal for reaction content, split-screen tutorials, gameplay + facecam, and Reels / TikToks / Shorts.

Install

pip install trimmy

Or run it without installing, using uv:

uvx trimmy

Requires ffmpeg and ffprobe available on your PATH, plus Python 3.10+.

Usage

Launch the app:

trimmy

Or open a file directly:

trimmy path/to/video.mp4

Then:

  1. Open or drag-drop a video.
  2. Position the two crop boxes on the source frame (TOP and BOTTOM).
  3. Adjust the split ratio by dragging the red divider.
  4. Trim the timeline to the segment you want.
  5. Pick a platform and quality preset.
  6. Render — ffmpeg encodes a ready-to-upload vertical video.

Keyboard shortcuts

Key Action
K Play / Pause
J Seek backward 5s
L Seek forward 5s
Q Set trim start to playhead
E Set trim end to playhead
M Toggle mute
? Show keyboard shortcuts

Platform presets

Platform Resolution Max FPS Max Size Codec
Instagram 1080x1920 60 300 MB H.264 High 4.0
TikTok 1080x1920 60 4 GB H.264 High 4.2
Twitter/X 1080x1920 60 512 MB H.264 High 4.2
WhatsApp 720x1280 30 16 MB H.264 Main 3.1
Telegram 1080x1920 60 2 GB H.264 High 4.2

Each platform offers a Max mode (highest quality, slower encode) and an Optimized mode (smaller files, faster encode). WhatsApp auto-caps bitrate to fit the 16 MB limit.

Development

Trimmy is built with PySide6. To work on it from source:

git clone https://github.com/musantro/trimmy.git
cd trimmy
uv sync
uv run python -m trimmy

See CHANGELOG.md for release history.

Documentation

The documentation site lives in docs and is configured with MkDocs Material:

uv run --group docs mkdocs serve

License

MIT

Metadata

Release files for trimmy 0.16.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for trimmy 0.16.1
File Size Uploaded Provenance
trimmy-0.16.1.tar.gz 786.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for trimmy 0.16.1
File Interpreter ABI Platform
trimmy-0.16.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / trimmy-0.16.1.tar.gz

Download URL trimmy-0.16.1.tar.gz
Size 786.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1420fff7b33a6307fb51cf4dae2ca58517a72fe3e6ae3e159e11482e4b728f31
BLAKE2b-256 checksum
How to use checksums
604e878e99d9ee87e735dec732b94edcbc0d52223100a733b4a72355f281671d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.30 {"installer":{"name":"uv","version":"0.11.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / trimmy-0.16.1-py3-none-any.whl

Download URL trimmy-0.16.1-py3-none-any.whl
Size 820.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5d735bd7bc208337d4d86a54ebf3d5e2619bc5f419780a08224e896b9ef1813d
BLAKE2b-256 checksum
How to use checksums
17bcf9ab7703a6d1ac928753c5803d22500624ca4af126fd711585d27ede9ed9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.30 {"installer":{"name":"uv","version":"0.11.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for trimmy 0.16.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page