Skip to main content

s2t (Speech-to-Text CLI)

A lightweight CLI tool for transcribing audio (.mp3, .opus, .m4a, .wav, .flac, .ogg, etc.) directly to plain text or clean multi-page PDF documents using DraxonLLMs.

Features

  • Multi-Format Support: Handles .mp3, .opus, .m4a, .wav, .flac, .ogg, etc. Auto-normalizes inputs to 16kHz mono WAV via ffmpeg if available.
  • Multilingual LLM Audio Models: Powered by audio-native models (gemini-flash, gemini-pro, qwen3.8-omni-flash, mimo-v2.5-asr).
  • Flexible Outputs:
    • Direct raw text to stdout
    • Output to plain text file (.txt)
    • Standalone multi-page PDF export (.pdf) with automatic page wrapping and zero external dependencies
  • Live Streaming: Stream tokens directly to terminal in real-time (--stream).

Installation

Via pip:

pip install s2t-py

From source:

git clone https://github.com/DraxonV1/Speech2Text.git
cd Speech2Text
pip install -e .

Quickstart

1. Set API Key

Set your DraxonLLMs API key via environment variable:

# Linux / macOS
export DRAXON_API_KEY="drx_your_api_key_here"

# Windows PowerShell
$env:DRAXON_API_KEY="drx_your_api_key_here"

# Windows Command Prompt
set DRAXON_API_KEY=drx_your_api_key_here

(You can also pass it explicitly with --api-key="drx_...")

2. Transcribe Audio

Print raw text directly to terminal:

s2t --input=voice.opus

Output to plain text file:

s2t --input=meeting.mp3 --output=transcript.txt

Output to formatted PDF document:

s2t --input=interview.m4a --output=interview.pdf

Real-time streaming transcription:

s2t --input=speech.wav --stream

CLI Options

usage: s2t [-h] -i INPUT [-o OUTPUT] [--api-key API_KEY] [--api-base API_BASE]
           [--model MODEL] [--stream]

options:
  -h, --help            show this help message and exit
  -i INPUT, --input INPUT
                        Input audio file (.mp3, .opus, .m4a, .wav, etc.)
  -o OUTPUT, --output OUTPUT
                        Output file (.txt or .pdf). If omitted, prints raw text to stdout.
  --api-key API_KEY     DraxonLLMs API key (default: env DRAXON_API_KEY)
  --api-base API_BASE   API base URL (default: https://ai.draxon.one/api/v1)
  --model MODEL         Model name (default: gemini-flash)
  --stream              Stream raw text from model in real time

Supported Models

Refer to models.txt for the current audio model roster:

  • gemini-flash (default): High accuracy, low latency, multilingual (English, Hindi, Spanish, etc.)
  • gemini-pro: Maximum reasoning and contextual transcription
  • qwen3.8-omni-flash: Omni-channel audio model
  • mimo-v2.5-asr: Specialized Chinese speech recognition

To select a different model:

s2t --input=audio.mp3 --model=gemini-pro

License

MIT

Metadata

Release files for s2t-py 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for s2t-py 0.1.0
File Size Uploaded
s2t_py-0.1.0.tar.gz 7.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for s2t-py 0.1.0
File Interpreter ABI Platform
s2t_py-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 14.6 kB

Release files / s2t_py-0.1.0.tar.gz

Download URL s2t_py-0.1.0.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e2bab2dcbe6fcd90263c7e9830c72fcf83f8d03c81a07108366798d071c8832e
BLAKE2b-256 checksum
How to use checksums
7c5d0772051def7db13ed5031b43574cd19584c5090c5bc146ed1e6a56f298d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

Release files / s2t_py-0.1.0-py3-none-any.whl

Download URL s2t_py-0.1.0-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c63c8347d0386ad94d379ef9f1f961a6cf17402737641b061f7d4ad87e05a469
BLAKE2b-256 checksum
How to use checksums
030a536f163aa04737ec576883299284c279aec4fd392d4341773ae58a342bc9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page