# WhisperSubs
[![PyPI: latest release](https://img.shields.io/pypi/v/whispersubs.svg?logo=pypi&label=PyPI)](https://pypi.org/project/whispersubs/)
[![PyPI: Python Version](https://img.shields.io/pypi/pyversions/whispersubs.svg?logo=python&label=Python&logoColor=gold)](https://pypi.org/project/whispersubs/)
[![CI: pre-commit](https://github.com/andreabak/whispersubs/actions/workflows/pre-commit.yml/badge.svg?branch=main)](https://github.com/andreabak/whispersubs/actions)
[![Build: Hatch](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](https://github.com/pypa/hatch)
[![Linting: ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Mypy: checked](https://img.shields.io/badge/mypy-checked-2A6DB2.svg)](https://mypy-lang.org/)
[![License: LGPL-3.0](https://img.shields.io/github/license/andreabak/whispersubs)](https://github.com/andreabak/whispersubs/blob/main/LICENSE)
*Generate subtitles for your video or audio files using the power of AI.*
## Installation
Prerequisites:
- git for cloning this repo
- Python 3.8 or higher, with pip
For faster results, it is recommended to use a GPU with CUDA support. Running transcription on the CPU is significantly slower (up to 10~20x slower, depending on the hardware).
The optional dependencies required for GPU acceleration can be installed with the `[cuda]` extra when installing the package.
### Install latest release
Use the following to install the latest release in an isolated environment using [`pipx`](https://pipx.pypa.io), with CUDA libraries for GPU acceleration:
```shell
pipx install whispersubs[cuda]
```
N.B. omit the `[cuda]` extra if you don't have a GPU or don't want to use it.
Replace `pipx` with `pip` from the command above if you want to manually manage your own environment (or install user- or system-wide).
### Install repository version
You can install the latest version from this repository with the following command:
```shell
pipx install 'whispersubs[cuda] @ git+https://github.com/andreabak/whispersubs.git'
```
Usually this is going to be the same as the latest release, but it might contain some additional features or bugfixes that are not yet released.
## Usage
WhisperSubs can be used from the command line. The basic usage requires an input file, which will be the source for the transcription. The output will be a subtitle file in the SRT format in the same directory as the input file. The language will be automatically detected.
```shell
whispersubs <input_file>
```
For a full list of options, run:
```shell
whispersubs --help
```
Raw data
{
"_id": null,
"home_page": null,
"name": "whispersubs",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "audio, subtitles, transcription, video, whisper",
"author": null,
"author_email": "abk16 <and.theunnamed@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/19/92/6f2312f7df9daecd15a6b6c7dcc2ef0dbc54d1bc1ebbc47efb582f60e578/whispersubs-0.1.3.tar.gz",
"platform": null,
"description": "# WhisperSubs\n\n[![PyPI: latest release](https://img.shields.io/pypi/v/whispersubs.svg?logo=pypi&label=PyPI)](https://pypi.org/project/whispersubs/)\n[![PyPI: Python Version](https://img.shields.io/pypi/pyversions/whispersubs.svg?logo=python&label=Python&logoColor=gold)](https://pypi.org/project/whispersubs/)\n[![CI: pre-commit](https://github.com/andreabak/whispersubs/actions/workflows/pre-commit.yml/badge.svg?branch=main)](https://github.com/andreabak/whispersubs/actions) \n[![Build: Hatch](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](https://github.com/pypa/hatch)\n[![Linting: ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Mypy: checked](https://img.shields.io/badge/mypy-checked-2A6DB2.svg)](https://mypy-lang.org/)\n[![License: LGPL-3.0](https://img.shields.io/github/license/andreabak/whispersubs)](https://github.com/andreabak/whispersubs/blob/main/LICENSE)\n\n*Generate subtitles for your video or audio files using the power of AI.*\n\n## Installation\n\nPrerequisites:\n- git for cloning this repo\n- Python 3.8 or higher, with pip\n\nFor faster results, it is recommended to use a GPU with CUDA support. Running transcription on the CPU is significantly slower (up to 10~20x slower, depending on the hardware). \nThe optional dependencies required for GPU acceleration can be installed with the `[cuda]` extra when installing the package.\n\n### Install latest release\nUse the following to install the latest release in an isolated environment using [`pipx`](https://pipx.pypa.io), with CUDA libraries for GPU acceleration:\n```shell\npipx install whispersubs[cuda]\n```\n\nN.B. omit the `[cuda]` extra if you don't have a GPU or don't want to use it.\n\nReplace `pipx` with `pip` from the command above if you want to manually manage your own environment (or install user- or system-wide).\n\n### Install repository version\nYou can install the latest version from this repository with the following command:\n```shell\npipx install 'whispersubs[cuda] @ git+https://github.com/andreabak/whispersubs.git'\n```\nUsually this is going to be the same as the latest release, but it might contain some additional features or bugfixes that are not yet released.\n\n## Usage\nWhisperSubs can be used from the command line. The basic usage requires an input file, which will be the source for the transcription. The output will be a subtitle file in the SRT format in the same directory as the input file. The language will be automatically detected.\n```shell\nwhispersubs <input_file>\n```\n\nFor a full list of options, run:\n```shell\nwhispersubs --help\n```\n",
"bugtrack_url": null,
"license": "LGPL-3.0",
"summary": "Transcribe audio/video files into subtitles",
"version": "0.1.3",
"project_urls": {
"Documentation": "https://github.com/andreabak/whispersubs#readme",
"Homepage": "https://github.com/andreabak/whispersubs",
"Issues": "https://github.com/andreabak/whispersubs/issues",
"Source": "https://github.com/andreabak/whispersubs"
},
"split_keywords": [
"audio",
" subtitles",
" transcription",
" video",
" whisper"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f1a0cb61306bb1baab20f004ea0558141c4a39e4d67dc2de670790a0f564c949",
"md5": "0b5711a2316e9512466ada4a72fbffac",
"sha256": "d3297a6243d4a08a99a8745d49849afd02a36259330269ed6cfb7f6a171bec88"
},
"downloads": -1,
"filename": "whispersubs-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0b5711a2316e9512466ada4a72fbffac",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 11076,
"upload_time": "2024-09-16T06:53:24",
"upload_time_iso_8601": "2024-09-16T06:53:24.981716Z",
"url": "https://files.pythonhosted.org/packages/f1/a0/cb61306bb1baab20f004ea0558141c4a39e4d67dc2de670790a0f564c949/whispersubs-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "19926f2312f7df9daecd15a6b6c7dcc2ef0dbc54d1bc1ebbc47efb582f60e578",
"md5": "725273d4d88a8b6cb4ea5298f5dc2d12",
"sha256": "88dca135766aed5b610201db629211c9be28011b951fc9060968e282a208cfc9"
},
"downloads": -1,
"filename": "whispersubs-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "725273d4d88a8b6cb4ea5298f5dc2d12",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 12923,
"upload_time": "2024-09-16T06:53:23",
"upload_time_iso_8601": "2024-09-16T06:53:23.417822Z",
"url": "https://files.pythonhosted.org/packages/19/92/6f2312f7df9daecd15a6b6c7dcc2ef0dbc54d1bc1ebbc47efb582f60e578/whispersubs-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-16 06:53:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "andreabak",
"github_project": "whispersubs#readme",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "whispersubs"
}