Skip to main content

Tools to transcode, inspect and convert videos.

Project description

Vid Cleaner

Changelog PyPI version PyPI - Python Version Tests codecov

Tools to transcode, inspect and convert videos. This package provides convenience wrappers around ffmpeg and ffprobe to make it easier to work with video files. The functionality is highly customized to my personal workflows and needs. I am sharing it in case it is useful to others.

Features

  • Remove commentary tracks and subtitles
  • Remove unwanted audio and subtitle tracks
  • Convert to H.265 or VP9
  • Convert 4k to 1080p
  • Downmix from surround to create missing stereo streams with custom filters to improve quality
  • Removes unwanted audio and subtitle tracks, optionally keeping the original language audio track
  • Create clips from a video file

Install

Before installing vid-cleaner, the following dependencies must be installed:

To install vid-cleaner, run:

pip install vid-cleaner

Running vidcleaner for the first time will create a default configuration file in ~/.config/vid-cleaner/config.toml. Edit this file to configure your default settings.

Usage

Run vidcleaner --help to see the available commands and options.

File Locations

Vid-cleaner uses the XDG specification for determining the locations of configuration files, logs, and caches.

  • Configuration file: ~/.config/vid-cleaner/config.toml
  • Logs: ~/.local/state/vid-cleaner/vid-cleaner.log
  • Cache: ~/.cache/vid-cleaner

Contributing

Setup: Once per project

  1. Install Python 3.11 and uv
  2. Clone this repository. git clone https://github.com/natelandau/vid-cleaner
  3. Install the virtual environment with uv sync.
  4. Activate your virtual environment with source .venv/bin/activate
  5. Install the pre-commit hooks with pre-commit install --install-hooks.

Developing

  • This project follows the Conventional Commits standard to automate Semantic Versioning and Keep A Changelog with Commitizen.
    • When you're ready to commit changes run cz c
  • Run poe from within the development environment to print a list of Poe the Poet tasks available to run on this project. Common commands:
    • poe lint runs all linters
    • poe test runs all tests with Pytest
  • Run uv add {package} from within the development environment to install a run time dependency and add it to pyproject.toml and uv.lock.
  • Run uv remove {package} from within the development environment to uninstall a run time dependency and remove it from pyproject.toml and uv.lock.
  • Run uv lock --upgrade from within the development environment to update all dependencies in pyproject.toml.

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

vid_cleaner-0.3.5.tar.gz (98.9 kB view details)

Uploaded Source

Built Distribution

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

vid_cleaner-0.3.5-py3-none-any.whl (52.2 kB view details)

Uploaded Python 3

File details

Details for the file vid_cleaner-0.3.5.tar.gz.

File metadata

  • Download URL: vid_cleaner-0.3.5.tar.gz
  • Upload date:
  • Size: 98.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for vid_cleaner-0.3.5.tar.gz
Algorithm Hash digest
SHA256 ba3d7fc18ca6960a4d34c5e1245738221b5c3d3f4f9a17840f3ee9a9120c9b6c
MD5 6af1fe797bcb9b099e925a9d5c073fa9
BLAKE2b-256 b0c228262a90681f71b7ea49755fb510898cb235c7e9867dbf3c21f628aa0e0f

See more details on using hashes here.

File details

Details for the file vid_cleaner-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: vid_cleaner-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 52.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for vid_cleaner-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 dcf86aecf1cd9d9bc0e2cd850edc8319f4f9e91f4cca6198dab68790b2da194a
MD5 f294b8942cca38d431c3a64b42ac47f8
BLAKE2b-256 b7a60004333173ed0ec8fd68b556e733232f3a240852ce106ab316624fd1892a

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