Skip to main content

A video editing utility

Project description

vide

Tests PyPI Python License: MIT

A video editing utility for the command line. vide wraps PySceneDetect and FFmpeg behind a small, composable CLI: split a video into scene clips, edit or drop the ones you don't want, and merge the rest back together — all without re-encoding on the merge side.

Requirements

  • Python 3.12+
  • The ffmpeg binary on your PATH (brew install ffmpeg, apt install ffmpeg, …)

Installation

$ uv tool install vide
# or
$ pip install vide

Usage

Split a video into scenes

Detects scene cuts and writes one clip per scene:

$ vide split-scenes input.mp4 --output /tmp/clips
$ ls /tmp/clips
input-Scene-001.mp4  input-Scene-002.mp4  input-Scene-003.mp4
Option Description
-o, --output DIRECTORY Where to write clips. Defaults to ./<video name>_scenes.
--threshold FLOAT Scene cut sensitivity (default 27.0). Lower detects more cuts.

Merge clips into one video

Concatenates clips in the order given using FFmpeg's concat demuxer with stream copy — instant and lossless, no re-encoding:

$ vide merge-scenes /tmp/clips/*.mp4 --output final.mp4
Option Description
-o, --output FILE Path of the merged video (default merged.mp4).

Because streams are copied, all inputs must share the same codec, resolution, and framerate — always true for clips produced by vide split-scenes from the same source.

Documentation

Full documentation lives in docs/. Build it locally with:

$ make sphinx
$ open docs/_build/html/index.html

Development

$ git clone https://github.com/inkylabsdev/vide.git
$ cd vide
$ uv sync
$ make test

The test suite runs real vide invocations against videos generated on the fly with FFmpeg, and enforces 100% coverage.

Adding a command is a single file: drop a module into vide/commands/ exposing a module-level cli click command, and it is registered automatically.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vide_python-0.1.0.tar.gz (46.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vide_python-0.1.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file vide_python-0.1.0.tar.gz.

File metadata

  • Download URL: vide_python-0.1.0.tar.gz
  • Upload date:
  • Size: 46.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vide_python-0.1.0.tar.gz
Algorithm Hash digest
SHA256 95d60f7964591980a7af2c149f5a201eacf201e921a9f92b3800b47f9a62f2f2
MD5 bb53887217f8ac2b191732a0d793501f
BLAKE2b-256 ad8fd5fb35e0f012c297e0fc313781024151601855f94f5bd17373a6bf726089

See more details on using hashes here.

File details

Details for the file vide_python-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: vide_python-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vide_python-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a29c35db7b3af7cf40273e7b7520b5034a9a701eb34fbc01553413ab3bc6d0b9
MD5 6584a904e5409a0730df8c3e2e21094b
BLAKE2b-256 fa50a81a65fa4252384ef0e860c996afeb6c9cf510bcd955fdc04a399315ba8f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page