Skip to main content

Command line tool to transcribe & translate audio from livestreams in real time

Project description

stream-translator-gpt

stream-translator-gpt is a command-line tool for real-time transcription and translation of live streams. We have now added an easier-to-use WebUI entry point.

Try it on Colab:

WebUI Command Line
Open In Colab Open In Colab

(Due to frequent scraping and theft of API keys, we are unable to provide a trial API key. You need to fill in your own API key.)

Prerequisites

  1. Python >= 3.8 (Recommend >= 3.10)
  2. FFmpeg (skip if already installed):
    • Windows: winget install ffmpeg
    • Linux (Debian/Ubuntu): sudo apt install ffmpeg
  3. Install CUDA on your system.
  4. Install cuDNN to your CUDA dir if you want to use Faster-Whisper.
  5. Install PyTorch (with CUDA) to your Python.
  6. Create a Google API key if you want to use Gemini API for translation.
  7. Create a OpenAI API key if you want to use OpenAI Transcription API for transcription or GPT API for translation.

WebUI

pip install stream-translator-gpt[webui] -U
stream-translator-gpt-webui

Command Line

Install release version from PyPI:

pip install stream-translator-gpt -U
stream-translator-gpt

or

Clone master version code from Github:

git clone https://github.com/ionic-bond/stream-translator-gpt.git
pip install -r ./stream-translator-gpt/requirements.txt -U
python3 ./stream-translator-gpt/stream_translator_gpt/main.py

Usage

The commands on Colab Open In Colab are the recommended usage, below are some other commonly used options.

  • Transcribe live streaming (default use Whisper):

    stream-translator-gpt {URL} --model large --language {input_language}

  • Transcribe by Faster-Whisper:

    stream-translator-gpt {URL} --model large --language {input_language} --use_faster_whisper

  • Transcribe by SimulStreaming:

    stream-translator-gpt {URL} --model large --language {input_language} --use_simul_streaming

  • Transcribe by SimulStreaming with Faster-Whisper as the encoder:

    stream-translator-gpt {URL} --model large --language {input_language} --use_simul_streaming --use_faster_whisper

  • Transcribe by OpenAI Transcription API:

    stream-translator-gpt {URL} --language {input_language} --use_openai_transcription_api --openai_api_key {your_openai_key}

  • Transcribe by a HuggingFace ASR model (requires pip install stream-translator-gpt[hf_asr]):

    stream-translator-gpt {URL} --model {hf_model_name} --use_hf_asr

    Only models with pipeline_tag: automatic-speech-recognition on Hugging Face Hub are supported.

  • Translate to other language by Gemini:

    stream-translator-gpt {URL} --model large --language ja --translation_prompt "Translate from Japanese to Chinese" --google_api_key {your_google_key}

  • Translate to other language by GPT:

    stream-translator-gpt {URL} --model large --language ja --translation_prompt "Translate from Japanese to Chinese" --openai_api_key {your_openai_key}

  • Using OpenAI Transcription API and Gemini at the same time:

    stream-translator-gpt {URL} --language ja --use_openai_transcription_api --openai_api_key {your_openai_key} --translation_prompt "Translate from Japanese to Chinese" --google_api_key {your_google_key}

  • Local video/audio file as input:

    stream-translator-gpt /path/to/file --model large --language {input_language}

  • Record system audio as input:

    stream-translator-gpt device --model large --language {input_language}

  • Record microphone as input:

    stream-translator-gpt device --model large --language {input_language} --mic

  • Sending result to Discord:

    stream-translator-gpt {URL} --model large --language {input_language} --discord_webhook_url {your_discord_webhook_url}

  • Sending result to Telegram:

    stream-translator-gpt {URL} --model large --language {input_language} --telegram_token {your_telegram_token} --telegram_chat_id {your_telegram_chat_id}

  • Sending result to Cqhttp:

    stream-translator-gpt {URL} --model large --language {input_language} --cqhttp_url {your_cqhttp_url} --cqhttp_token {your_cqhttp_token}

  • Saving result to a .srt subtitle file:

    stream-translator-gpt {URL} --model large --language ja --translation_prompt "Translate from Japanese to Chinese" --google_api_key {your_google_key} --hide_transcribe_result --retry_if_translation_fails --output_timestamps --output_file_path ./result.srt

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stream_translator_gpt-2026.5.12.tar.gz (2.8 MB view details)

Uploaded Source

Built Distribution

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

stream_translator_gpt-2026.5.12-py3-none-any.whl (2.8 MB view details)

Uploaded Python 3

File details

Details for the file stream_translator_gpt-2026.5.12.tar.gz.

File metadata

File hashes

Hashes for stream_translator_gpt-2026.5.12.tar.gz
Algorithm Hash digest
SHA256 9d28fd87eb98093f829aea17dc4839c0f23c2a510f9d585b7ebfe0b1c37b2fd4
MD5 9b13190a32c720f9b4d23b34abcd731d
BLAKE2b-256 292648da44a9805a6b7e54be02f171e757c93cdd6e4f698442fc8989235c6190

See more details on using hashes here.

File details

Details for the file stream_translator_gpt-2026.5.12-py3-none-any.whl.

File metadata

File hashes

Hashes for stream_translator_gpt-2026.5.12-py3-none-any.whl
Algorithm Hash digest
SHA256 bf36fd32f479dbe210e3a66a90aaf95104cbb11faba07a82d6abe29af91b5984
MD5 ec9f9eb62ce594543699ed8bb45ff05a
BLAKE2b-256 4aeda5f75747243be0c7cf9f98410a0b3ce9955301fa25b13b38776986d5da1a

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