Metadata-Version: 2.4
Name: ffmpeg-local
Version: 0.1.0
Summary: Automatically downloads and provides paths to ffmpeg and ffprobe binaries.
Author: Rashed Iqbal
License: MIT
Project-URL: Homepage, https://github.com/iqbal-rashed/nodejs-ffmpeg
Keywords: ffmpeg,ffprobe,binaries,download,video,audio
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Multimedia :: Video
Classifier: Topic :: Multimedia :: Sound/Audio
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# ffmpeg-local

A Python package that provides a simple way to get `ffmpeg` and `ffprobe` binaries for your platform. It automatically downloads the binaries from the official [nodejs-ffmpeg](https://github.com/iqbal-rashed/nodejs-ffmpeg) release source.

## Installation

```bash
pip install ffmpeg-local
```

During installation, the package will attempt to download the appropriate binaries for your platform. If this fails (e.g., no internet access during install), they will be downloaded automatically on the first time you call `get_ffmpeg_path()` or `get_ffprobe_path()`.

## Usage

```python
from ffmpeg_local import get_ffmpeg_path, get_ffprobe_path
import subprocess

# Get the path to the ffmpeg binary
ffmpeg_path = get_ffmpeg_path()
print(f"FFmpeg is at: {ffmpeg_path}")

# Use it in a subprocess
subprocess.run([ffmpeg_path, "-version"])

# Get the path to ffprobe
ffprobe_path = get_ffprobe_path()
print(f"FFprobe is at: {ffprobe_path}")
```

## Supported Platforms

- **Windows**: x64, ia32, arm64
- **Linux**: x64, arm64
- **macOS**: x64, arm64
- **Android**: arm64 (Termux etc.)

## CLI Utility

You can manually trigger the download using the CLI:

```bash
ffmpeg-local-download
```

## Credits

This package is a Python port of [nodejs-ffmpeg](https://github.com/iqbal-rashed/nodejs-ffmpeg).
Binaries are sourced from [ytdlp-nodejs](https://github.com/iqbal-rashed/ytdlp-nodejs).
