An automatic video converter using HandBrake CLI.
Project description
Handbrake Automatic Video Converter
An automatic video converter using HandBrake CLI. All videos found on a given folder, and subsequent folders, will be converted on original location while original file will be transferred to another folder for easy removal.
HandBrake
This is a video converter and the HandBrake GUI can be found here, which also has a HandBrake CLI.
For more information, follow this link.
Table of Contents
Description
Given a specific folder, all video files found with user-given extensions will be converted to a target extension also provided by the user.
The converted video file will stay in the original folder while the original file will be transferred to another folder. This has the benefit of easy removal of the original files, as well as if a file does not encode successfully the original file still exists and can be converted again.
The program also accepts a user custom command which must have placeholders to be replaced by the original file path and converted file path.
In a first use of the program, all given arguments will be saved in a external file so the user does not have to always write the same repeated command.
In the end, an output file will be created containing:
- all the files' information, files' original size and converted size;
- if the file was successfully encoded;
- the size difference between all files.
Initially, this project has the aim of reducing files size to ocupy the least amount of space in the disk and comparing between original size and converted size, but since a user can input a custom command, this can also be used just to convert a lot of files in a folder for other purposes.
Features
Status | Feature |
---|---|
✅ | convert a lot of files in their corresponding folders |
✅ | convert files with multiple different extensions at the same time |
✅ | transfer of original files in an external folder for easy removal |
✅ | configurations will be saved in an external file |
✅ | use of an automatic basic command aimed to reduce file size |
✅ | a custom HandBrake command with placeholders can also be inserted |
✅ | output file containing converted files information and their success |
Any new features are very welcome!
Prerequisites
Python 3 must also be installed.
To use this project, the HandBrake command line version must be installed. This installation can be found in this link under 'Downloads->Other->Command Line Version'
Installation
pip --no-cache-dir install havc
or,
pip3 --no-cache-dir install havc
Usage
Command | Required | Description |
---|---|---|
-r | ✅ | absolute path folder to the HandBrake.exe (command line version) |
-c | ✅ | absolute path folder containing the files to convert |
-e | ✅ | multiple file extensions to find and convert |
-t | ✅ | file extension the converted file will have |
-d | ❌ | folder's name containing original files |
-cc | ❌ | custom handbrake command with placeholders |
--safety-question / --no-safety-question |
❌ | enable or disable the safety question |
Notes
- Initial command must have all required arguments except if these arguments already are configured in external file. file.
- Non-required arguments will also be saved in the external file if specified.
- The folder containing original filed has the default name of 'TO-DELETE'.
- The dot '.' before each extension is completely optional.
- Because the program modifies the original files by moving them to another folder, one must be certain the correct folder is being modified so there is a question to make sure the user wants to continue. However, this feature can be disabled to let the program run freely, but be warned. The default of this value is 'true'.
Any additional help can be provided if the following command is run:
havc --help
or,
havc -h
Example of the initial command:
havc -r "C:\path\to\Desktop" -c "C:\path\to\Desktop\folder to convert" -e mp4 mkv -t m4v
After this, the external file will be configured and then the following command becomes valid (always using the previous configurations):
havc
If any argument has to be modified just run the command with the necessary argument, for instance, if the extensions have to be modified, we simply run:
havc -e mov .avi mp4
Support
The following links contain documentation about how to make a HandBrake command:
License
Status
This project started as a simple one file script, but then I saw the opportunity to make a program more complex that could also not only help the community, but also help my development. With that said, this project was also developed for educational purposes, so any bugs, suggestions, new features, improvements, etc, don't hesitate to ask, open an issue or a pull request.
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
Built Distribution
File details
Details for the file havc-1.0.0.tar.gz
.
File metadata
- Download URL: havc-1.0.0.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8832149385380f5e158daff948e3e29fe97bb3696d3b5409dfd8204a34f1ff78 |
|
MD5 | 0f4509e9dd94646de005e489ad8c477f |
|
BLAKE2b-256 | da84a0dbdab4c2655902ce764182d66cb6f9f013a28eca3be972d6d56de3a27d |
Provenance
File details
Details for the file havc-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: havc-1.0.0-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d48e33b13769294ee8ce3a02ca60368e45930a105eda4867a7684ec65ec381e |
|
MD5 | f12350c3b3ca95882b6a4473b947befb |
|
BLAKE2b-256 | 5e086117a535fc7ca3c092863329d8029f912cf23a3adb0b348beeec6aa8a505 |