Skip to main content

LLM-powered FFmpeg command assistant

Project description

llmpeg

LLM-powered FFmpeg command assistant that converts natural language instructions into ffmpeg commands.

Repository: https://github.com/imortaltatsu/llmpeg
PyPI Package: https://pypi.org/project/llmpeg/

Features

  • Conversational interface that converts natural language instructions into ffmpeg commands
  • GPT-compatible API support (OpenRouter, Ollama, or custom endpoints)
  • Interactive file selection when requests are ambiguous
  • Automatic command validation and error correction
  • Support for compression, conversion, and cropping operations

Installation

From PyPI (Recommended)

Using pip:

pip install llmpeg

Using pipx (isolated installation, recommended for CLI tools):

pipx install llmpeg

Using uv:

uv pip install llmpeg

From Git Repository

Using pip:

pip install git+https://github.com/imortaltatsu/llmpeg.git

Using pipx:

pipx install git+https://github.com/imortaltatsu/llmpeg.git

Using uv:

uv pip install git+https://github.com/imortaltatsu/llmpeg.git

Using uvx (run without installing):

uvx git+https://github.com/imortaltatsu/llmpeg.git

Local Development

# Clone the repository
git clone https://github.com/imortaltatsu/llmpeg.git
cd llmpeg

# Install in development mode
uv sync
# or
pip install -e .

Setup

After installation, configure your API settings:

# Interactive setup
llmpeg setup init

# Or use environment variables
export LLMPEG_PROVIDER=openrouter
export LLMPEG_API_KEY=your-api-key
export LLMPEG_MODEL_NAME=gpt-oss:20b

Usage

# Single command
llmpeg -p "convert sample.png to jpg"

# Interactive mode
llmpeg

# Setup commands
llmpeg setup init    # Configure API settings
llmpeg setup show    # Show current configuration
llmpeg setup test    # Test API connection

Configuration

Configuration is stored in ~/.llmpeg/config.py or ~/.llmpeg/config.json.

Supported providers:

  • OpenRouter: Use gpt-oss:20b or other models
  • Ollama: Local Ollama instance (defaults to gpt-oss:20b)
  • Custom: Any OpenAI-compatible API endpoint

Requirements

  • Python 3.12+
  • FFmpeg installed and available in PATH
  • API access (OpenRouter API key, Ollama running locally, or custom endpoint)

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

llmpeg-0.1.2.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

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

llmpeg-0.1.2-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file llmpeg-0.1.2.tar.gz.

File metadata

  • Download URL: llmpeg-0.1.2.tar.gz
  • Upload date:
  • Size: 20.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for llmpeg-0.1.2.tar.gz
Algorithm Hash digest
SHA256 434df4bdb43b5cb70c77615083fd98b3bf869d55be57871f428701c510713159
MD5 f5b2e15ef176468b83ac9a39f752370d
BLAKE2b-256 aec69ae8b123581af7e3d9b202f687995045c7a14549e6c5a2dce79139c104f4

See more details on using hashes here.

File details

Details for the file llmpeg-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: llmpeg-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for llmpeg-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fb2ce66ce91e0050582f17c8702e4a9a980adb417ba6d585c25baf5fb76bd397
MD5 b1d189cc5e44c7e62d30149574e972fc
BLAKE2b-256 4ec27f251f5f5ba6f5eae4a4971b4ca3797a7d99bfbbcb7ea5242c57405b1abd

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