Metadata-Version: 2.4
Name: openbbq
Version: 0.0.5
Summary: Agent-friendly CLI for video translation and subtitle production.
Author: ACAne0320
Author-email: ACAne0320 <nyaashino@gmail.com>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Multimedia :: Video
Classifier: Topic :: Text Processing :: Linguistic
Requires-Dist: pydantic>=2.13.4
Requires-Dist: rich>=15.0.0
Requires-Dist: typer>=0.26.7
Requires-Dist: yt-dlp>=2026.6.9
Requires-Dist: fastapi>=0.128.0 ; extra == 'review'
Requires-Dist: uvicorn>=0.40.0 ; extra == 'review'
Requires-Dist: pywhispercpp>=1.5.0 ; extra == 'whispercpp'
Requires-Python: >=3.12
Project-URL: Homepage, https://github.com/ACAne0320/OpenBBQ
Project-URL: Repository, https://github.com/ACAne0320/OpenBBQ
Project-URL: Issues, https://github.com/ACAne0320/OpenBBQ/issues
Project-URL: Documentation, https://github.com/ACAne0320/OpenBBQ/tree/main/docs
Provides-Extra: review
Provides-Extra: whispercpp
Description-Content-Type: text/markdown

# OpenBBQ

[中文说明](README.zh-CN.md) · [Usage Guide](docs/usage.md)

**OpenBBQ** is a command-line tool for agent-driven video translation and subtitle production.

OpenBBQ provides composable tools for video download, audio extraction, ASR transcription, segmentation, translation, review, subtitle export, and subtitle burning.
It does not force one fixed pipeline. The goal is to let an agent choose the right workflow for each task.

## Why OpenBBQ?

In Chinese fansub and creator communities, the process of translating and subtitling foreign-language videos is often called "barbecue".
Raw untranslated material is "raw meat"; the translated, subtitled result is "cooked meat".

OpenBBQ is meant to be an open-source, open subtitle translation platform.

## Requirements

- Python 3.12 or newer
- [uv](https://docs.astral.sh/uv/), used to install the `openbbq` command and manage Python dependencies
- [ffmpeg](https://www.ffmpeg.org/), used for video download, audio/video merging, audio extraction, and video burning; subtitle burning also needs FFmpeg with `libass` support
- An ASR backend. OpenBBQ currently supports [whisper.cpp](https://github.com/absadiki/pywhispercpp) through its Python binding
- An ASR model. Models are not downloaded with the package. After installation, run `openbbq models list`, then explicitly run `openbbq models pull ...`
- A local desktop browser if the video platform requires login, human verification, or a browser challenge

## Install

### Agent Install

```markdown
Read the [install guide](https://raw.githubusercontent.com/ACAne0320/OpenBBQ/main/docs/install-agent.md) and help me install [OpenBBQ](https://github.com/ACAne0320/OpenBBQ).
```

### Manual Install

```bash
uv tool install 'openbbq[whispercpp]'
openbbq doctor
openbbq models list
openbbq models pull large-v3-turbo
openbbq doctor
```

## Usage

For local files, YouTube login, ASS presets, outputs, and command details, see
the [Usage Guide](docs/usage.md).

For agent setup and the packaged OpenBBQ skill, see the
[Agent Install Guide](docs/install-agent.md) and the
[OpenBBQ Skill](src/openbbq/skills/openbbq-subtitles/SKILL.md).

## Roadmap

- [ ] Demo video
- [ ] Detailed documentation site
- [ ] Windows and Linux support
- [ ] More ASR backends
- [ ] More video-platform authentication support
- [ ] Agent-led discovery of videos worth translating
- [x] Visual translation review for manual translators
- [ ] More subtitle editing and publishing workflows

## License

Apache-2.0. See [LICENSE](LICENSE).
