Skip to main content

🖥️ About

Welcome to the HandbrakeCLI Batch Compressor project!

This application is designed to compress video files in bulk using the HandbrakeCLI. It offers many features to customize the compression process such as:

  • deletion of original files
  • show statistics during and after the compression
  • smart filtering and skipping of files based on your specified rules (see usage)

📑 Table of Contents

✨ Features

  • Bulk Compression: Compress multiple video files at once using HandbrakeCLI.
  • Custom Compression Options: Pass any options available in HandbrakeCLI, like encoders and quality settings.
  • File Management: Automatically detect compressed and incomplete files if your process is interrupted.
  • Filter Features: Smart filters allow skipping videos that don't meet your criteria (e.g., resolution, bitrate, or frame rate).
  • Statistics: Optionally display compression stats during and after the process.
  • Replace Original Files: Automatically delete original files if they are successfully compressed.
  • Automatic Installation: Automatically install HandbrakeCLI and dependencies if not already installed.

📸 Screenshots

🛠️ Installation

  1. Install python:

    • Window:
      winget install Python.Python.3.12
      
    • Linux:
      sudo apt-get install python3
      
    • macOS:
      brew install python
      
  2. Install the handbrake-batch-compressor package:

    pip install handbrake-batch-compressor
    
  3. Run the application:

    handbrake-batch-compressor --help
    

🚀 Usage and Examples

Highly recommended to see both --help and --guide before compression.

⚙️ Advanced Usage

You can specify more options such as HandbrakeCLI settings, file extensions, and whether to delete the originals after processing.

python main.py -t ./videos -o "--encoder x264 --quality 20" \
    --progress-extension c \
    --complete-extension x \
    --show-stats \
    --effective-compression-behavior delete_original \
    --ineffective-compression-behavior delete_compressed

🧠 Smart Filters

Smart filters allow you to apply conditions that control which videos will be processed based on their characteristics.

  • Minimum Bitrate: Skips videos with a bitrate lower than the specified value.
  • Minimum Frame Rate: Skips videos with a frame rate lower than the specified value.
  • Minimum Resolution: Skips videos with a resolution lower than the specified threshold.

These filters help avoid unnecessary processing of low-quality videos.

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for handbrake-batch-compressor 3.0.0

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

Source distribution (sdist)

Source distribution for handbrake-batch-compressor 3.0.0
File Size Uploaded
handbrake_batch_compressor-3.0.0.tar.gz 17.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for handbrake-batch-compressor 3.0.0
File Interpreter ABI Platform
handbrake_batch_compressor-3.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 42.2 kB

Release files / handbrake_batch_compressor-3.0.0.tar.gz

Download URL handbrake_batch_compressor-3.0.0.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d73d69c2afa35b0afa8e6b576716155732526e6edd593b759966cbd8b412b998
BLAKE2b-256 checksum
How to use checksums
a43c940dbc413509545b485e924eab15c135c8fc71ded563ff91acbf3cfc24a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 22, 2025.

Transparency log

Release files / handbrake_batch_compressor-3.0.0-py3-none-any.whl

Download URL handbrake_batch_compressor-3.0.0-py3-none-any.whl
Size 24.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e76cab2514df0cd7f1fcd5a466d3bbd1201abdecb7cde5dba53e99292541e593
BLAKE2b-256 checksum
How to use checksums
4fbcdba8a74041aabf0010989e6995a49cb48ab4b71bc752e10012b784a90826
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 22, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

3.0.0 This release

2 release files

2.1.0

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

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