https://github.com/alchemist-aloha/explicitutil
A utility library for managing media files, especially focused on conversion, organization, and archival.
https://github.com/alchemist-aloha/explicitutil
batch-processing media-management namer nfo-file rename-files transcribe whisper-cpp
Last synced: 9 months ago
JSON representation
A utility library for managing media files, especially focused on conversion, organization, and archival.
- Host: GitHub
- URL: https://github.com/alchemist-aloha/explicitutil
- Owner: Alchemist-Aloha
- License: mit
- Created: 2025-03-06T03:08:15.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-04-06T23:04:50.000Z (9 months ago)
- Last Synced: 2025-04-07T00:18:53.780Z (9 months ago)
- Topics: batch-processing, media-management, namer, nfo-file, rename-files, transcribe, whisper-cpp
- Language: Python
- Homepage: https://github.com/Alchemist-Aloha/explicit_util
- Size: 103 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
Awesome Lists containing this project
README
# ExplicitUtil
A utility library for managing media files, especially focused on conversion, organization, and archival.
## Overview
This library provides tools for managing media content, with features for video transcription, image conversion, file renaming, zip operations, and more. It's designed to help organize and process large media collections efficiently.
## Features
- **Batch convert images to WebP format**
Use `convert_pic_to_webp.py` to convert image files to the WebP format, reducing file size while maintaining quality. This is useful for optimizing storage and web usage.
- **Transcribe videos using whisper.cpp**
`whisper_cpp_transcribe.py` leverages the whisper.cpp library to generate accurate transcriptions for video files. Ideal for creating subtitles or searchable text content.
- **Recursively rename video files using namer**
`recursive_namer.py` integrates with the namer library to rename video files in bulk, ensuring consistent and organized naming conventions.
- **Zip and archive content with backup functionality**
`zip_and_move.py` allows you to compress and archive media files into zip files, with options for creating backups to ensure data safety.
- **Batch unzip operations with recursive support**
`recursive_unzip.py` enables you to extract zip files in bulk, handling nested zip files automatically for efficient processing.
- **Generate and batch add metadata entry for media files**
Use `nfo_tool.py`t to create metadata files for your media content. This is particularly useful for cataloging and organizing large collections.
## Installation
### Prerequisites
#### Install [namer](https://github.com/ThePornDatabase/namer) to use `recursive_namer.py`
```bash
pip install namer
```
Fill your PornDB API into `.namer.cfg`.
#### Install [ImageMagick](https://imagemagick.org/script/download.php) to use `convert_pic_to_webp.py`
Download the installer and install.
#### Install [whisper.cpp](https://github.com/ggerganov/whisper.cpp) to use `whisper_cpp_transcribe.py`
Compile the code based on your inference hardware.
### Install `ExplicitUtil`
```bash
git clone https://github.com/Alchemist-Aloha/ExplicitUtil.git
cd ExplicitUtil
pip install -e .
```
## Usage
### Using Jupyter Notebook
You can run the code in Jupyter Notebook. The library is designed to be used interactively, allowing you to test and modify the code as needed. See `explicit_util_examples.ipynb`
### Using Command Line
You can run the code from the command line.
```bash
# Transcribe videos
python -m ExplicitUtil.whisper_cpp_transcribe
# Convert images to WebP
python -m ExplicitUtil.convert_pic_to_webp
# Zip and archive pictures
python -m ExplicitUtil.zip_and_move
# Unzip and extract
python -m ExplicitUtil.recursive_unzip
# Generate metadata
python -m ExplicitUtil.nfo_tool
# Batch add metadata using namer
python -m ExplicitUtil.recursive_namer
# Remove empty folders
python -m ExplicitUtil.remove_empty
```
## License
MIT