Skip to main content

bragir translator cli

Project description

Bragir

Authors

License

Description

The bragir CLI is a command-line application built using Click. Its primary purpose is to handle and generate SubRip Subtitle (SRT) files using ChatGPT and Whisper from Openai.

Features

  • Translation: Translate the content of SRT files from one language to another using ChatGPT.
  • Transcription: Trancribe the content of video and audio files from one language to another using Whisper.
  • Batch Processing: Process a single file, multiple files, or an entire directory, providing flexibility and efficiency.
  • Easy-to-Use Interface: Utilize a user-friendly command-line interface powered by Click, making translation tasks straightforward.

Table of Contents

Installation

In order to use the full potential of Bragir, FFmpeg is needed to be installed on the system and you need to obtain an Openai key.

FFmpeg

Macos

Using brew

brew update && brew install ffmpeg

Linux

Update avaiable linux packages

 sudo apt update

Install ffmpeg

 sudo apt install ffmpeg

Windows

Download the .exe from official ffmpeg-website

Extract the contents of the zip file and rename the file to FFmpeg.

Move the folder into the main drive (Usually c:/)

Open command prompt as administrator, and add FFmpeg to your system path

setx /m PATH "C:\ffmpeg\bin;%PATH%"

Verifyting the installation In order to see if the installation of FFmpeg is correct, run the following command

ffmpeg --version 

If a version is displayed, then FFmpeg is installed correctly.

OpenAI

Currently, this tool relise on OpenAIs API. That means that an OpenAI api-key is crucial. See the following resource of how to get an OpenAI api-key

Bragir

Use pip to install Bragir

pip install bragir

Check if installation is complete

bragir --version

If a version is displayed, then Bragir is installed correctly.

Usage

Bragir comes with two commands, transcribe and translate. Transcribe will always generate an file with extension .srt. The translate command has only been tested with SRT-files, however other files would work. However, Bragir is not intended to translate other file types

In order to use bragir, the api key can be loaded into the session or saved in the config.ini file (Default at ~/.bragir/cli/config.ini).

Load Openai key as an enviroment variable into current session

export OPENAI_KEY=<VALUE>

Examples

Translate a single file to one language:

bragir translate <FILE_PATH> --language French

Translate one file to multiple languages:

bragir translate <FILE_PATH> --language French --language German

Translate files in a directory to multiple languages:

bragir translate <DIRECTORY_PATH> --language French --language German

Transcribe file:

bragir transcribe <FILE_PATH>

Transcribe files in a directory:

bragir transcribe <DIRECTORY_PATH>

Contributing

If you want to contribute to this project, please use the following steps:

  1. Fork the project.
  2. Create a new branch (git checkout -b feature/awesome-feature).
  3. Commit your changes (git commit -m 'Add some feature').
  4. Push to the branch (git push origin feature/awesome-feature).
  5. Open a pull request.

Commit Message Structure

This projects aims to follow the Conventional Commits guidelines.

When writing commit messages, use one of the following categories to clearly describe the purpose of your commit:

  • feat / feature: ✨ Introducing new features
  • fix / bugfix: 🐛 Addressing bug fixes
  • perf: 🚀 Enhancing performance
  • refactor: 🔄 Refactoring code - Not displayed in CHANGELOG
  • test / tests: ✅ Adding or updating tests - Not displayed in CHANGELOG
  • build / ci: 🛠️ Build system or CI/CD updates - Not displayed in CHANGELOG
  • doc / docs: 📚 Documentation changes - Not displayed in CHANGELOG
  • style: 🎨 Code style or formatting changes - Not displayed in CHANGELOG
  • chore: 🔧 Miscellaneous chores
  • other: 🌟 Other significant changes

Example Commit Messages

  • feat: Add cool new feature
  • fix: Resolve unexpected behavior with translation

License

This project is licensed under the MIT License.

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

bragir-1.4.2.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

bragir-1.4.2-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

Details for the file bragir-1.4.2.tar.gz.

File metadata

  • Download URL: bragir-1.4.2.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for bragir-1.4.2.tar.gz
Algorithm Hash digest
SHA256 e0139be38307a78e9f5265a6e77e8f2cf51747f8d653a70463922ca3d3fd5dee
MD5 941feef8c2fb050377a99e37287a57ac
BLAKE2b-256 2bdb9b14e84a14a86d69f9cc31bb39f0128c3b55c67585dc18e3a7cb1510e81f

See more details on using hashes here.

Provenance

The following attestation bundles were made for bragir-1.4.2.tar.gz:

Publisher: release.yaml on ArjanCodes/bragir

Attestations:

File details

Details for the file bragir-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: bragir-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for bragir-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dd21f622a842f507b50a9a4f5660dbd1de8089371370065e3f879f12d850ccca
MD5 ef1d1b1a64340f42eca4b9bed55f6104
BLAKE2b-256 fc75d26851019ca7bf6a38dac4de2aaa9dee9fa066a8f51ebe27425c84ea618a

See more details on using hashes here.

Provenance

The following attestation bundles were made for bragir-1.4.2-py3-none-any.whl:

Publisher: release.yaml on ArjanCodes/bragir

Attestations:

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page