Local Media Toolkit
A local-first Python toolkit for practical audio, image, and video processing through focused command-line tools and an optional FastAPI service.
Current portfolio record
Verified against the public repository and current documentation
Purpose and use case
Why this project was built
Built for creators and developers who want repeatable local media workflows for YouTube production, game assets, and rapid experiments without depending on one large cloud platform.
Overview
What the project is
Local Media Toolkit collects useful media-production workflows into small independent Python projects. It supports everyday content and prototype work such as cleaning speech, creating subtitles, removing backgrounds, resizing video, extracting frames, and exposing the same operations through a local HTTP API.
Problem
What it is designed to solve
Common media tasks are often spread across unrelated scripts, desktop applications, and paid services. That makes automation difficult and forces users to install heavy model dependencies even when they only need one workflow.
Approach
How the project addresses it
The repository keeps audio, image, video, and API projects independently usable. Optional dependencies are installed only for the workflows that need them, while FFmpeg and small Python modules handle the reliable local processing path.
Key features
- Audio conversion, trimming, normalization, and spoken-audio cleanup
- Speech transcription and SRT subtitle generation with faster-whisper
- Image prompt presets, batch generation workflows, and local background removal
- Video resizing for common formats and frame extraction for references
- Optional FastAPI entry point for shared local HTTP workflows
- Project-based output folders that keep generated media organized
Architecture highlights
- Each media domain remains independently installable and usable from its own CLI
- Optional model dependencies are isolated instead of being required by the whole repository
- FFmpeg subprocess boundaries keep proven media operations simple and inspectable
- The FastAPI layer reuses project workflows rather than reimplementing processing behavior
Engineering challenges
- Keeping installation practical across operating systems and optional CPU or GPU tooling
- Separating dependable local processing from provider experiments that cannot always be tested
- Sharing workflows through an API without adding queues, storage services, or databases before they are needed
Implemented outcomes
- Created working local commands for transcription, subtitles, voice cleanup, background removal, video resizing, and frame extraction
- Added consistent output organization and an optional local API for reusable workflows
- Documented practical daily workflows, architecture, design decisions, development, and future priorities